原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位),该位为0表示正数,该位为1表示负数,其余位表示数值的大小。
原码的优点是简单直观。
例如 我们用8位表示一个数,则+11的原码为00001011。-11的 原码就是10001011
缺点:原码不能直接参加运算,可能会在运算中出错,例如在十进制中1+(-1)=0
而在二进制中00000001+10000001=10000010,换算成十进制为130。显然出错了。
所以原码的符号位不能直接参与运算,必须和其他为分开,这就增加了硬件的开销和复杂性
具体定义还分小数和整数:
①小数原码的定义
[X]原 =
X 0≤X <1
1- X -1 < X ≤ 0
例如: X=+0.1011 , [X]原= 01011
X=-0.1011 [X]原= 11011
②整数原码的定义
[X]原 =
X 0≤X <2n
2n-X - 2n < X ≤ 0