不同数制间的转换
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意:一个十进制小数不一定能完全准确地转换成二进制小数,这时可以根据精度要求只转换到小数点后某一位为止即可。将其整数部分和小数部分分别转换,然后组合起来的得(35.25)[10]=(100011.01)[2]
二进制加法:
1011+1000=10011
1011+1001=10100
二进制数加法,逢2进1.
即0+0=0,1+0=1,1+1=2,逢2向前位进1,=10 二进制数中,只有1和0.
二进制数的减法
例如:00011110
-00010101
——————
00001001
即:30-21=9
可当:100
-101
————
1111
怎么会这样呢?
是的,正常的,如果用四位的10进制数,那么0001-0002的结果也会是9999。
注意看你的二进制100-101,结果其实始终前面有借位。
二进制乘法运算
一、定点数移位乘法
1、定点原码一位乘法
设X=Xf.X1X2…Xn、Y= Yf.Y1Y2…Yn,乘积为P,乘积的符号为Pf,则求P的规则:
1) 被乘数和乘数均取绝对值参加运算,符号位单独考虑。
2) 被乘数取双符号,部分积的长度同被乘数,初始值0。
3) 从乘数的最低位Yn开始判断,若Yn=1,则部分积加上被乘数,然后右移1位;若Yn=0,则部分积加
上0,然后右移1位。
4) 重复3),判断n次。
举例3.3.1:设X=0.1101 Y=0.1011,求[X]原 [Y]原
2、定点补码一位乘法:又称作Booth算法
运算规则:
1) 符号位参与运算,运算的数均以补码表示。
2) 被乘数一般取双符号位,参加运算,部分积初始值为0。
3) 乘数可取单符号位,以决定最后一步是否需要校正,即是否加[-X]补。
4) 乘数末尾增设附加位Yn+1,且初值为0。
5) 按下表进行操作
部分积右移1位
1
1
部分积加(-X)补,右移1位
1
部分积加X补,右移1位
1
部分积右移1位
操作
Yn+1低位
Yn高位
法则: 二进制的运算算术运算二进制的加法:0+0=0 0+1=1 1+0=1 1+1=10(向高位进位) 二进制的减法:0-0=00-1=1(向高位借位) 1-0=11-1=0 (模二加运算或异或运算) 二进制的乘法:0 * 0 = 00 * 1 = 0 1 * 0 = 0 1 * 1 = 1 二进制的除法:0÷0 = 00÷1 = 01÷0 = 0 (无意义)1÷1 = 1 逻辑运算二进制的或运算:遇1得1 二进制的与运算:遇0得0 二进制的非运算:各位取反