十进制数12345用32位补码整数和32位浮点数(IEEE754标准)表示的结果各是什么(用16进制表示)

题目:十进制数12345用32位补码整数和32位浮点数(IEEE754标准)表示的结果各是什么(用16进制表示)

十进制数12345的32位补码整数为:00003039H
十进制数12345的32位浮点数为:4640E400H

解析:
(1)十进制数12345的32位补码整数

首先列出12345的二进制形式:
(12345)10=(11000000111001)2(其中10、2为下标)
由于有32位,且小数点在32位后,前面用18个0补齐,有
(11000000111001)2(其中2为下标)=00003039H

(2)十进制数12345的32位浮点数

明确:IEEE754标准中32位定点机=数符1位+阶码(移码表示)8位+尾码(原码表示)23位,且默认尾数小数点前为1

如float型
这里写图片描述
如double型
这里写图片描述

由(1)可知
(12345)10=(11000000111001)2,即1.1000000111001*2^(1101B),那么尾数应为1 0000 0011 1001

阶码为移码表示,短浮点数中有[X]移=2^n-1+X,因此在此题中有13+127=140(140=128+8+4),即阶码为1000 1100

由于12345为正数,符号为正,因此数符为0

将所有连接起来则有浮点数二进制表示:0 10001100 1000 0001 1100 1000 0000000(尾数不足23位,则在尾数后面补0补足)

每4位转换为16进制,浮点数二进制表示:0100 0110 0100 0000 1110 0100 0000 0000

最后得结果:4640E400H

猜你喜欢

转载自blog.csdn.net/JxufeCarol/article/details/82718877