浮点数

做这个题目之前有必要好好了解一下浮点数的有关知识,怎样将浮点数转换为十进制形式,以及怎样将十进制形式转化为浮点数

浮点数_第1张图片

整个32位分为3部分:

sign:符号位,1 bit,0为正,1 为负

Exponent(bias):指数部分 8 bits 存储格式为移码存储,偏移量为127

Mantissa(fraction):尾数部分

比如:我们要存储4.25这个数

4.25->100.01->1.0001*2^2

所以指数部分为  2+127=129  ->  1000 001

位数部分为        0001    并补齐23位

浮点数_第2张图片

如果我们给定一个二进制数  1011 1101 0100 0000 0000 0000 0000 0000  转化为十进制数

最开始的1表示负数

指数部分为:0111 1010   -127  ->  -5

尾数部分为:100 0000 0000 0000 0000 0000 

所以为 -1.100 0000 0000 0000 0000 0000*2^-5=0.000011  ->0.0234375

 

那么回到原题给定我们十进制数,我们应该把它退回到2进制数。这个过程可以由上面2个例子仔细琢磨琢磨。

比如题目中给了我们

 

你可能感兴趣的:(浮点数)