机器数
定义
是数字在计算机中的二进制表示形式,机器数是带符号的,在计算机中,用一个数的最高位存放符号,正数为0,负数为1.
特点
一是符号数字化;
二是其数的大小受机器字长的限制。
真值
因为第一位是符号位,所以机器数的形式值就不等于真正的数值。机器数的真值是带符号位的机器数对应的真正的数值。
原码
正数的原码与负数的原码只有符号位不同,其它位都相同
正数的符号位为0,负数的符号位为1
八位二进制的原码取值范围:[11111111,01111111]即[-127,127]
[+5]原=00000101
[ -5]原=10000101
补码
正数的补码是原码本身
负数的补码是在其原码的基础上,符号位保持不变,其余位取反,最后+1,即反码+1
八位二进制的补码取值范围:[-128,-127] 【[110000000]补=-128,-128并没有原码和反码】
[+5]补=00000101
[ -5]补=11111011
反码
正数的反码是原码本身
负数的反码是在其原码的基础上,符号位保持不变,其余位取反
八位二进制的反码取值范围:[-127,127]
[+5]反=00000101
[ -5]反= 11111010
正数:原码=补码=反码
负数:补码=反码+1
负数的补码就是绝对值的原码全部取反+1,是负数的本身的数字位按位取反+1