真值
在日常的书写习惯中,往往用正、负号加绝对值表示数值,用这种形式表示的数值为真值。
简单来说 真值 就是我们平时用的数本身
机器数
在计算机内部使用的,连同数符一起数字化了的数称为机器数。
你可以这么理解,在计算机组成原理这块,除了真值就是机器数。
机器数有两个特点:
- 只能采用二进制数,每位数码非0即1;
- 符号位也由数字表示,用0表示正号,用1表示负号;
机器数有四种码制:原码、补码、反码和移码。
原码
原码表示法约定:让数码序列的最高位为符号位,符号位为0表示该数为正,为1表示该数为负,数码序列的其余部分为有效数值,用二进制数绝对值表示。
简单地说,原码就是符号位+数的绝对值(二进制)。
反码
约定如下:正数的反码表示与原码相同;负数的反码的符号位为1,尾数由原码尾数逐位变反。
即:
- 正数:正数的反码与原码相同。
- 负数:负数的反码,符号位为“1”,数值部分按位取反。
补码
要想知道补码是什么,首先得知道引入补码的目的——让符号位也作为数值的一部分直接参与运算,以化简加、减运算的规则,同时又能化减为加。
一个负数可以用一个与它互为补码的正数来代替。
补码的表示:
正数:正数的补码和原码相同。
负数:负数原码转换为补码有两种方式:
- 符号位保持为1不变,其余各位变反,再在末尾加1。可简称为“变反加1”
- 符号位保持为1不变,尾数部分自低位向高位逐个计数,遇到的第一个1及其之前的各低位0都保持不变,之后的各高位按位变反。