十进制数+100.25的用64位浮点数表示是什么?
展开全部
只能给32位的。64位也是类似的,只不过指数/尾数的位数不同而已。
<
将原始数据进行整数化:
(100.25)10*(2^2)10
=(100.25)10*(4)10
=(401)10
=(191)16
=(0001 1001 0001)2
=(110010001)2
因为最初乘了4,即2的2次方,所以换算成二进制时应右移2位,去掉前导零,
即(1100100.01)2
单精度浮点数保存的字节格式如下:
地址:+0 +1 +2 +3
内容:SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
根据IEEE浮点数的定义,将上述二进制数规格化:
(100.25)10
>(1100100.01)2
>+1.10010001 * (2^6)
符号S为正,等于0 B;
指数EEEEEEEE为6+127=133,等于10000101 B;
尾数为10010001000000000000000 B;
合成后为
0 10000101 100 1000 1000 0000 0000 0000
重新分割:
0100 0010 1100 1000 1000 0000 0000 0000
若将上述值表示为十六进制数,则为(42 C8 80 00)16。
<
将原始数据进行整数化:
(100.25)10*(2^2)10
=(100.25)10*(4)10
=(401)10
=(191)16
=(0001 1001 0001)2
=(110010001)2
因为最初乘了4,即2的2次方,所以换算成二进制时应右移2位,去掉前导零,
即(1100100.01)2
单精度浮点数保存的字节格式如下:
地址:+0 +1 +2 +3
内容:SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
根据IEEE浮点数的定义,将上述二进制数规格化:
(100.25)10
>(1100100.01)2
>+1.10010001 * (2^6)
符号S为正,等于0 B;
指数EEEEEEEE为6+127=133,等于10000101 B;
尾数为10010001000000000000000 B;
合成后为
0 10000101 100 1000 1000 0000 0000 0000
重新分割:
0100 0010 1100 1000 1000 0000 0000 0000
若将上述值表示为十六进制数,则为(42 C8 80 00)16。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询