首先介绍一下什么是原码,反码,移码以及补码。
原码:首先把一个数转成二进制的表达方式,然后把这个二进制的首位用0或1表示,0表示正数,1表示负数
反码、补码指的是:一种计算机中对数字的二进制定点表示方法。首位是符号位(0表示正数,1表示负数)
移码指的是:用来做浮点运算的接码,在补码的基础上,把首位做取反,在移码中,符号位0代表负数,1代表正数。
数值1 | 数值-1 | 1-1 | |
原码 |
1 | -1 | -2 |
反码 | 1 | - | |
正数-------------符号位:0
负数-------------符号位:1
所以正1,原码为0000 0001
负一,原码就是1000 0001
正数:
原码的反码和补码都与原码相同,
负数:
反码,先把符号位提取出来(不变),然后其余的位置按位取反(0变1,1变0)
补码,在原来反码的基础上加一,
表示的取值范围
n表示位数,在规定位数内,可以表示的范围求解