1. 写出下列各数的原码、反码、补码表示(用8位二进制数)。其中MSB是最高位(又是符号位)LSB是最低位。如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。 (1) -35 (2) -127 (3)-35/64 (4) 23/128 2. 将下列十进制数表示成IEEE754标准的32位浮点规格化数。 (1) 27/64 (2) -27/64 3. 已知X和Y, 用变形补码计算X+Y, 同时指出运算结果是否溢出。 (1)X= 11011 Y= 0.00011 (2)X= 11011 Y=-10101 (3)X= -10110 Y=-00001
时间: 2024-04-03 07:34:11 浏览: 877
二进制-原码-补码-反码
5星 · 资源好评率100%
抱歉,我是一个语言模型,无法进行计算操作。但我可以解释一下问题的答案。
1.
-35的原码:10000011
-35的反码:11111100
-35的补码:11111101
-127的原码:10000000
-127的反码:11111111
-127的补码:10000001
-35/64的原码:11000010
-35/64的反码:10111101
-35/64的补码:10111110
23/128的原码:00101110
23/128的反码:00101110
23/128的补码:00101110
2.
(1) 27/64的二进制表示为0.010101,规格化后为1.010101 * 2^(-1),符号位为0,阶码为-1的移码表示为126,尾数为01010100000000000000000,故IEEE754标准的32位浮点规格化数为01000001001010100000000000000000。
(2) -27/64的二进制表示为-0.010101,规格化后为-1.010101 * 2^(-1),符号位为1,阶码为-1的移码表示为127,尾数为01010100000000000000000,故IEEE754标准的32位浮点规格化数为10100001001010100000000000000000。
3.
(1) X=11011的补码为-5,Y=0.00011的补码为0.09375,所以X+Y=11010.09375,没有溢出。
(2) X=11011的补码为-5,Y=-10101的补码为-21,所以X+Y=01010.11111,有溢出。
(3) X=-10110的补码为10,Y=-00001的补码为-1,所以X+Y=11001,没有溢出。
阅读全文