-39的原码:(1000000000100111)二
-39的反码:(1111111111011000)二
-39的补码:(1111111111011001)二
-0.28的原码:(1010010010010010)二
-0.28的反码:(1101101101101101)二
-0.28的补码:(1101101101101110)二
-39.28的原码:(1000000000100111 .0100100100100100)二
-39.28的反码:(1111111111011000 .1011011011011011)二
-39.28的补码:(1111111111011001 .1011011011011100)二
原码原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值. 比如如果是8位二进制:
[+1]原 = 0000 0001
[-1]原 = 1000 0001
第一位是符号位. 因为第一位是符号位, 所以8位二进制数的取值范围就是:
[1111 1111 , 0111 1111]
即
[-127 , 127]
原码是人脑最容易理解和计算的表示方式.
2. 反码
反码的表示方法是:
正数的反码是其本身
负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
[+1] = [00000001]原 = [00000001]反
[-1] = [10000001]原 = [11111110]反
可见如果一个反码表示的是负数, 人脑无法直观的看出来它的数值. 通常要将其转换成原码再计算.
3. 补码
补码的表示方法是:
正数的补码就是其本身
负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
[+1] = [00000001]原 = [00000001]反 = [00000001]补
[-1] = [10000001]原 = [11111110]反 = [11111111]补
对于负数, 补码表示方式也是人脑无法直观看出其数值的. 通常也需要转换成原码在计算其数值.
十进制数(-39.28)的原码、反码、补码各是多少了?
-39的原码:(1000000000100111)二
-39的反码:(1111111111011000)二
-39的补码:(1111111111011001)二
-0.28的原码:(1010010010010010)二
-0.28的反码:(1101101101101101)二
-0.28的补码:(1101101101101110)二
-39.28的原码:(1000000000100111 .0100100100100100)二
-39.28的反码:(1111111111011000 .1011011011011011)二
-39.28的补码:(1111111111011001 .1011011011011100)二
在计算机中,-39.28,必须使用【浮点数】格式来保存。
而原码反码补码都是【定点数】格式。
定点数,只能保存整数和纯小数,并不能保存-39.28。
-39.28 的二进制是:
-010 0111.0100 0111 ≈ -39. 27734375。
原码:1 010 0111 0100 0111;
反码:1 101 1000 1011 1000;
补码:1 101 1000 1011 1001。