
x=0.1011 y=-0.1001 用补码一位乘法和补码两位乘法计算X*Y的结...
x=0.1011y=-0.1001用补码一位乘法和补码两位乘法计算X*Y的结果有什么区别,具体怎么算?...
x=0.1011 y=-0.1001 用补码一位乘法和补码两位乘法计算X*Y的结果有什么区别,具体怎么算?
展开
1个回答
展开全部
没区别,两位乘法复杂点.具体两位乘法忘了.因为没必要纠结这个.要考试的话一般都是考存储和指令子类的,一位的话给你发个例题吧.原码一位乘法中,符号位与数值位是分开进行计算的.运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或.原码一位乘法的每一次循环的操作是最低位为1,加被乘数的绝对值后右移1位;最低位为0,加0后右移1位.几位乘法就循环几次.
「答案」:
x原=00011,y原=10101,|x|=0011,
|y|=0101结果的符号位1
0=1
循环
步骤
乘积(R0
R1)
0
初始值
0000
0101
1
加0011
0011
0101
右移1位
0001
1010
2
加0
0001
1010
右移1位
0000
1101
3
加0011
0011
1101
右移1位
0001
1110
4
加0
0001
1110
右移1位
0000
1111
所以结果为-00001111补码的话把原码变成补码算就行
「答案」:
x原=00011,y原=10101,|x|=0011,
|y|=0101结果的符号位1
0=1
循环
步骤
乘积(R0
R1)
0
初始值
0000
0101
1
加0011
0011
0101
右移1位
0001
1010
2
加0
0001
1010
右移1位
0000
1101
3
加0011
0011
1101
右移1位
0001
1110
4
加0
0001
1110
右移1位
0000
1111
所以结果为-00001111补码的话把原码变成补码算就行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |