标准是一种浮点数表示标准一般分为单、双精度两种位的二进制数一个浮点数的组成分为三个部分。
软件说明
第1位是数符s s=1表示负数 s=0表示正数
第2-9位为阶码E (双精度为2-12位)
第10-32位为尾数M (双精度为13-64位)
转换大致过程如下:
将十进制数转为二进制数 用类似于科学计数法的形式表示成
V=(-1)^s*(1+M)*2^(E-127)(单精度)
V=(-1)^s*(1+M)*2^(E-1023)(双精度)
然后将每部分算出的数值按顺序排列
例如:
-0.0625=-1.0*2^(-4)
s=1,M=1-1=0,E=-4 +127=123=0111 1011 ,E(双精度)=-4 +1023=1019 =0111 1111 011
单精度:1011 1101 1000 0000 0000 0000 0000 0000
双精度:1011 1111 1011 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
软件用法
用法:你可以把一些通过选择button-bar的二进制表示,其他字段将立即更新。或者您可以输入一个二进制数,hexnumber或十进制表示成相应的文本框和按return键更新其他领域。,让它更容易发现最终的舍入误差,选择浮动显示数量后转换为双精度。
特殊值:您可以输入单词“无限”、“-Infinity”或“NaN”获得相应的特殊值ieee - 754。请注意有两种零:+ 0,0。
转换:ieee - 754数字计算的值为:
* 2指数*尾数迹象
信号存储在32位。指数可以从位24-31减去127计算。尾数(也称为有效数字或分数)存储在1位。一个看不见的领先位(即它不是实际存储)和值1.0是放在前面,然后23的值为1/2,22位有价值1/4等等。因此,尾数有价值1.0至2。如果指数达到-127(二进制00000000),领先1不再是用于启用逐渐下溢。
舍入误差:并不是每一个十进制数可以表示完全作为一个浮点数。这可以看到当输入“0.1”和检查它的二进制表示这是略小或大,这取决于最后一点。
其他表示形式:十六进制表示的整数值bitstring印刷十六进制。不要将此和真正的十六进制浮点值0 xab.12ef的风格。
∨ 展开