目录
原码
反码
补码
移码
小数表示方法(IEEE 754标准)
定义:数值为X的原码记为原,如果机器字长为n,则原码为
如字长为8时,[+1]原=00000001,[-1]原=10000001;[+127]原=01111111,[-127]原=11111111
PS:其实这里有个简易记法:字长为几,码长(转为原码后的长度)为几,最高符号位(0为正1为负),其余二进制。(记住这个之后,后面的就很简单了!!!)
还不会二进制?点下面!
计算机系统知识-数值及其转换_wooovi的博客-CSDN博客https://blog.csdn.net/wooovi/article/details/122312320
通俗的说,就是在负数原码的基础上最高位不变,其余位0改1,1改0。(正数反码和他的原码相同)
如字长为8时,[+1]反=00000001,[-1]反=11111110;[+127]原=01111111,[-127]原=1000000
通俗的说,就是在负数反码的基础上将最低位+1(不要忘了进位)(正数补码和他的原码相同)
如字长为8时,[+1]补=00000001,[-1]补=11111111;[+127]补=01111111,[-127]补=1000001
通俗的说,就是在原码的基础上,最高位符号位0改1,1改0。(这里正数负数都要改!!!)
如字长为8时,[+1]移=10000001,[-1]移=00000001;[+127]移=11111111,[-127]移=01111111
目前计算机主要使用3种形式的IEEE 754浮点数
参数 | 单精度浮点数 | 双精度浮点数 | 扩充精度浮点数 |
浮点数字长 | 32 | 64 | 80 |
尾数长度 P | 23 | 52 | 64 |
符号位 S | 1 | 1 | 1 |
指数长度 E | 8 | 11 | 15 |
最大指数 | +127 | +1023 | +16383 |
最小指数 | -126 | -1022 | -16382 |
指数偏移量 | +127 | +1023 | +16383 |
可表示的实数范围 | ![]() |
![]() |
![]() |
补充:
1.浮点数表示法:二进制数N=,其中E称为阶码,F称为尾数
阶符(0正1负) | 阶码(指数) | 数符 | 尾数 |
如二进制数可1011.10101写为
2.规格化
1'若尾数M0,则其规格化的尾数形式为M=0.1XXXX...X,其中,X可为0,1,即将尾数限定在[0.5,1]
2'若尾数M0,则其规格化的尾数形式为M=1.0XXXX...X,其中,X可为0,1,即将尾数限定在[-1,0.5]
改写步骤:
1.将10进制数改为2进制数
2.将二进制数规格化
3.求阶码
例:176.0625
第一步:(176.0625)=(10110000.0001)
第二步:规格化10110000.0001 = 1.01100000001X,所以尾数为01100000001000000000000
第三步:求阶码,单精度浮点数偏移量为127,所以E=7+127=134,所以指数的移码表示为10000110
最后就得到0(符号)10000110(阶码)01100000001000000000000(尾数)
wooovi的博客_CSDN博客-笔记,C语言,中级软考领域博主
https://blog.csdn.net/wooovi
欢迎您的关注!
如有转载,请注明出处(如不注明,盗者必究)