Floating point 对于以下浮点数字,这是正确的解决方案吗?

Floating point 对于以下浮点数字,这是正确的解决方案吗?,floating-point,computer-science,cpu-architecture,Floating Point,Computer Science,Cpu Architecture,问题: 将以10为底的数字(+465)表示为24位的浮点数(二进制)。标准化分数,尾数有16位,指数有8位 回答: 1) 将465转换为等于111010001的二进制 2) 规范化二进制数,即1.11010001*2^8 3) 添加127的偏差,并将其转换为二进制,即1.11010001*2^(8+127)=>1.11010001*2^10000111(二进制表示为135) 4) 这样组合在一起:10000111(8位的指数)1101000100000000(16位的尾数) 注意:我没有包括符号

问题:

将以10为底的数字(+465)表示为24位的浮点数(二进制)。标准化分数,尾数有16位,指数有8位

回答:

1) 将465转换为等于111010001的二进制

2) 规范化二进制数,即1.11010001*2^8

3) 添加127的偏差,并将其转换为二进制,即1.11010001*2^(8+127)=>1.11010001*2^10000111(二进制表示为135)

4) 这样组合在一起:10000111(8位的指数)1101000100000000(16位的尾数)


注意:我没有包括符号位,因为问题没有提到它。

是的,你的结果看起来是正确的,尽管你仍然需要为尾数中不太重要的位加上零位,才能得到16;现在您只显示了8个。

像这样的“11010000000”?还有一件事,如果我有一个指数,比如说300,那么单精度下的偏差值应该是多少?顺便说一句,谢谢你的好意,先生或妈妈,不管你是什么人;)我还必须在这个问题中包含符号位吗?@Ahti:300的指数不能用单精度表示。在二进制中,只能得到大约从-127到+127(大约)的值,在十进制中大约是-38到+38。至于符号位…很难猜到你的老师可能想要什么。好吧,这意味着我可以在单精度下得到最大值为-38或+38的指数,如果我的指数大于-39或+39或更大,那么我应该使用双精度?是的,双精度是明显的选择。你应该在发布作业之前做一些研究。例如,回答你的问题,是“float to bin”的前两个谷歌结果。@MargaretBloom这不是家庭作业,我很困惑,加上这里的老师什么都不知道,谷歌也没有帮助。@MargaretBloom,我也不确定这是不是正确的方法“你的转换网站”只是转换,他们没有给出解释。所以你应该先分析这个问题,然后再投票否决。