余127码计算:对于一个用补码表示的8位二进制数,当其符号位为“0”时,表示是一个正数,这时它的真值就是补码本身。
例:已知[X]补=00101110,求其真值。
解:因为最高位为0,所以该数是一个正数,其数值部分就是真值的数值部分,即X=+0101110。
而对于一个用补码表示的8位二进制负数(符号位为1),求其真值的方法是将此补码数再求一次补,即将除符号位外的低7位按位取反再加1,所得结果就是它的真值。
例:已知[X]补=11010010B,求其真值。
解:X = [[X]补]补 = [11010010]补 = -0101110
假设当前时针指向8点
而准确时间是6点,调整时间可有以下两种拨法:一种是倒拨2小时,即8-2=6;另一种是顺拨10小时,8+10=12+6=6,即8-2=8+10=8+12-2(mod 12),在12为模的系统里,加10和减2效果是一样的,因此凡是减2运算,都可以用加10来代替。若用一般公式可表示为:a-b=a-b+mod=a+mod-b。对“模”而言,2和10互为补数。
一般是指计算机中存储浮点数 指数部分的 一种编码。一般用8位二进制数表示指数部分,这部分是用无符号数表示的,为了负数也能达到无符号表示,就把所有数 + 127 ( 2 的8 次方 / 2 - 1 ) ,如此就把所有的数移到了 非负部分 。你的等式是不是有问题呀,中间的应该是2^2 就是逢二进一存储实数(浮点数)
一个数字的浮点表示法由三个部分组成:符号、位移量(指数)、定点数。
例如:
实际数字:7425000000
科学计数法:7.425×10^9
这三部分为符号(+)、位移量(9)以及定点部分(7.425)。注意位移量就是指数。
类似的方法可以表示很小或者很大的存储在计算机中的二进制数字(整数和实数都可以)。
例如:
实际数字:101001000
科学计数法:1.01001×2^8
所以,为了使表示法的固定部分统一,无论是十进制的数还是二进制的数都写成以下形式
十进制——————±d.xxxxxxxxxxx 注意:d是0到9的数,每个x都是0到9的数
二进制——————±1.yyyyyyyyyyy 注意:每个y都是0或者1
在一个二进制数规范化之后,我们只存储该数的三部分信息:符号、指数、尾数。
例如:+1.0001110101×2^6
符号为+、指数6、尾数0001110101(注意小数点左边的1并不存储,它是隐含的)
尾数就是直接用无符号的数存储,指数部分应该用有符号的数存储,即补码存储,因为指数有可能是负数。但现在已经被一种叫余码系统的新方法所取代。在这种余码系统中,正的和负的数都可以作为无符号数存储,方法就是在指数的基础上统一加上一个数,这个数就是偏移量,它是2n-1,n是内存中存储指数的位数。如:指数占8位,那么偏移量就是127。这样做的好处就是指数经过加上偏移量后,所有的指数都将变成正数,统一用无符号数存储了!!
IEEE标准
如今我们在计算机中存储实数分为单精度和双精度。IEEE为我们制定了相关的格式和标准具体如下:
单精度共占32位
符号S 指数E 尾数M
占1位 占8位 占23位
因为指数位占8位,所以偏移量为127,即余127码
双精度共占64位
符号S 指数E 尾数M
占1位 占11位 占52位
因为指数位占11位,所以偏移量为1023,即余1023码
例题:写出5.75的单精度表示法?(余127码)
1、 符号为正,所以符号位S=0
2、 十进制5.75转换为二进制位(101.11)2
3、 规范化:101.11=1.0111×2^2
4、 所以指数E=2+127=129=(10000001)2 尾数M=0111,不够23位在后面添19个0
5、 最后该数的表示法为:
010000001 01110000000000000000000
符号 指数 尾数
6、所以5.75采用单精度存储,在计算机中应为01000000101110000000000000000000
大概就是这些知识点了
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)