3. 已知X和Y, 用变形补码计算X+Y, 同时指出运算结果是否溢出。 (1)X= 11011 Y= 0.00011 (2)X= 11011 Y=-10101 (3)X= -10110 Y=-00001 4. 已知X和Y, 用变形补码计算X-Y, 同时指出运算结果是否溢出。 (1) X=11011 Y=-11111 (2) X=10111 Y=11011 (3) X=11011 Y=-10011 5.用IEEE32位浮点格式表示如下的数: (1)-5 (2)-1.5 (3)384 (4)1/16 (5)-1/32 6.下列各数使用了IEEE32位浮点格式,写出对应的十进制数 (1)1 10000011 110 0000 0000 0000 0000 0000 (2)0 01111110 101 0000 0000 0000 0000 0000
时间: 2024-02-01 13:02:53 浏览: 108
好的,我来继续回答您的问题。
3. 下面是X和Y的变形补码计算X+Y的结果以及是否溢出:
(1) X=11011,Y=0.00011,将Y转换为补码:0.00011的原码为0.00011,反码为0.00011,补码为0.00011。将补码相加得到X+Y的结果为11011.00011,没有溢出。
(2) X=11011,Y=-10101,将Y转换为补码:-10101的原码为11010101,反码为10101010,补码为10101011。将补码相加得到X+Y的结果为00110.11000,发生了溢出。
(3) X=-10110,Y=-00001,将Y转换为补码:-00001的原码为00000001,反码为11111110,补码为11111111。将补码相加得到X+Y的结果为-10110.00001,没有溢出。
4. 下面是X和Y的变形补码计算X-Y的结果以及是否溢出:
(1) X=11011,Y=-11111,将Y转换为补码:-11111的原码为10000001,反码为11111110,补码为11111111。将补码相加得到X-Y的结果为01010.00000,没有溢出。
(2) X=10111,Y=11011,将Y转换为补码:11011的原码为011011,反码为100100,补码为100101。将补码相减得到X-Y的结果为00100.00000,没有溢出。
(3) X=11011,Y=-10011,将Y转换为补码:-10011的原码为10010011,反码为11101100,补码为11101101。将补码相加得到X-Y的结果为01000.00000,没有溢出。
5. 下面是用IEEE32位浮点格式表示各数:
(1) -5的二进制表示为-101,符号位为1,指数位为10000010,尾数位为01000000000000000000000,所以-5的IEEE754标准的32位浮点规格化数为1 10000010 01000000000000000000000。
(2) -1.5的二进制表示为-1.1,符号位为1,指数位为01111111,尾数位为10000000000000000000000,所以-1.5的IEEE754标准的32位浮点规格化数为1 01111111 10000000000000000000000。
(3) 384的二进制表示为110000000,符号位为0,指数位为10000101,尾数位为10000000000000000000000,所以384的IEEE754标准的32位浮点规格化数为0 10000101 10000000000000000000000。
(4) 1/16的二进制表示为0.0001,符号位为0,指数位为01111000,尾数位为00000000000000000010000,所以1/16的IEEE754标准的32位浮点规格化数为0 01111000 00000000000000000010000。
(5) -1/32的二进制表示为-0.00001,符号位为1,指数位为01111001,尾数位为00000000000000000010000,所以-1/32的IEEE754标准的32位浮点规格化数为1 01111001 00000000000000000010000。
6. 下面是使用IEEE32位浮点格式表示的数对应的十进制数:
(1) 1 10000011 11000000000000000000000的符号位为1,指数位为10000011,尾数位为11000000000000000000000,转换为十进制数为-6。
(2) 0 01111110 10100000000000000000000的符号位为0,指数位为01111110,尾数位为10100000000000000000000,转换为十进制数为1.5。
阅读全文