该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

(1)阶码和尾数均为原码。

(2)阶码和尾数均为补码。

(3)阶码为移码,尾数为补码。

解:据题意画出该浮点数的格式:

阶符1位

阶码4位

数符1位

尾数10位

将十进制数转换为二进制: x1= -27/1024=

-0.0000011011B = 2-5*(-0.11011B)

x3=-86.5=-1010110.1B=27*(-0.10101101B)

则以上各数的浮点规格化数为:

(1)[x1]原=1,0101;1.110 110

000 0

[x3]原=0,0111;1.101 011 010 0

(2)[x1]补=1,1011;1.001 010

000 0

[x3]补=0,0111;1.010 100 110 0

(3)[x1]移补=0,1011;1.001 010

000 0

[x3]移补=1,0111;1.010 100

110 0

6.19. 设机器数字长为8位(含1位符号位),用补码运算规则计算下列各题。

(2)A=19/32,B=-17/128,求A-B。

(4)A=-87,B=53,求A-B。

解:(2)A=19/32=

0.100 1100B, B= -17/128= -0.001 0001B

[A]补=00.100 1100, [B]补=11.110 1111 , [-B]补=00.001 0001

[A-B]补=[A]补+[-B]补

=00.1001100

+ 00.0010001

=00.1011101

——无溢出

A-B= 0.101

1101B = 93/128B

(4)A= -87= -101 0111B, B=53=110 101B

[A]补=11, 010 1001, [B]补=00, 011 0101, [-B]补=11, 100 1011

[A-B]补=[A]补+[-B]补

= 11,0101001 + 11,1001011

= 10,1110100 —— 溢出

6.20. 用原码一位乘和补码一位乘(Booth算法)、两位乘计算x·y。

(1)x= 0.110 111,y=

-0.101 110;(4)x= 0.110 11,y= -0.111 01。

解:先将数据转换成所需的机器数,然后计算,最后结果转换成真值。

(1)[x]原=0.110111,[y]原=1.101110,x*=0.110111, y*=0.101110

原码一位乘:

部分积

乘数y*

说明

0.000 000

101110

乘数为0右移

0.000 000

+0.110 111

010111

乘数为1,加上x*

0.110 111

0.011 011

+0.110 111

010111

101011

右移一位

乘数为1,加上x*

1.010 010

0.101 001

+0.110 111

101011

010101

右移一位

乘数为1,加上x*

1.100 000

0.110 000

010101

001010

右移一位

乘数为0,右移一位

0.011 000

+0.110 111

000101

乘数为1,加上x*

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐