移位存储详解

柔情痞子 提交于 2020-01-24 06:30:51

IEEE 754 浮点数存储标准

规定浮点数格式如下:
​​​

s表示符号位,当s=0,V为正数;当s=1,V为负数
E表示8位阶码,采用移位存储
M表示23位尾数,如M为10100....,那么M所代表的二进制浮点数为M'=1+1/2+1/2^2=1.75,2>M'>=1

根据32位数计算为十进制:V=(−1)^s × M' × 2^(E−127),

 

移位存储详解

如果采用传统的高bit表示正负的方法,将-127-127分为两个区间表示:

第一个区间:0 000000 0~ 0 111111 1 即 +0 到 127

第二个区间:1 000000 0~ 1 111111 1 即 -0 到 -127

很明显存在+0和-0的问题,如果采用移位存储技术,即在原始数值的基础上加 127进行表示:

第一个区间:0 000000 0~ 0 111111 1 即 -127 到 0

第二个区间:1 000000 0~ 1 111111 1 即 1 到 128

也就是可以使用 8位二进制来表示从 -127~128 共计 127个负数+零(0)+128个正数总共 256个数,且使用移位存储即没有+0和-0的问题,又充分的使用这个新生成的 8位二进制数来最大限度的表示单精度浮点数的幂指数(阶码)

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!