IEEE浮点标准

2018-07-02  本文已影响0人  d3f59bfc7013

IEEE二进位浮点数算术标准

浮点数是指用符号位(正数为0,复数为1),指数,有效数字位来表示的小数。有单精度(32)和双精度表示(64)。

[图片上传失败...(image-d17584-1530461049799)]

浮点数0.75单精度示例

0.75的单精度浮点表示如下

image

我们也可以从上图计算出这个表示的浮点数是什么。

浮点数-4.75单精度示例

所以-4.75的浮点数表示是

-4.75的浮点数表示

可以通过C程序来测试一下:

#include <stdio.h>
#include<string.h>

int main()
{
    float data;
    unsigned long buff;
    int i;
    char s[34];
    data=(float)0.75;
    memcpy(&buff,&data,4);
    //逐一提取出每一位
    for(int i=33; i>=0; i--)
    {
        if(i==1||i==10)
        {
            s[i]='-';
        }
        else
        {
            if(buff%2==1)
            {
                s[i]='1';
            }
            else
            {
                s[i]='0';
            }
            buff/=2;
        }
    }
    s[34]='\0';
    printf("%s\n",s);
}

0.75浮点数表示:


image

-4.75浮点数表示


image
上一篇下一篇

猜你喜欢

热点阅读