机器数
在计算机中表示的带符号的二进制数称为机器数。这个数有正负之分,在计算机中用一个数的最高位(符号位)用来表示它的正负,其中0表示正数,1表示负数。
机器数包含原码、反码和补码三种表示形式。
例如正数1,在计算机中用一个8位的二进制数来表示,是00000001,而负数-1,则用10000001表示,这里的00000001和10000001是机器数
真值
计算机中的机器数对应的真实的值就是真数,对最高位(符号位)后面的二进制数转换成10进制,并根据最高位来确定这个数的正负。
如对于00000111和10000111来说,对最高位后面的二进制数转换成10进制是7,在结合最高位的值,得出对应的真数分别是7和-7
原码
用第一位表示符号,其余位表示值。
因第一位是符号位,所以8位二进制数的取值范围就是:[1111 1111 , 0111 1111] 即 [-127 , 127] 。
反码
正数的补码反码是其本身;
负数的反码是符号位保持不变,其余位取反。
补码
正数的补码是其本身;
负数的补码是在其反码的基础上+1;