有个概念必须弄清有个概念必须弄清,补码的引入是用加法运算实现减法运算。因此,正数的补码应是它本身(原
码), 二进制负数的补码是(最高位为1), 除符号位外其余位取反,然后加1。 其余进制的数的
补码在概念上应也如此。另外,一个负数的补码应与存放这个数的字长有关。是不是这样说就更
确切:
两位十进制数的“几”的补码是什么?例如两位十进制数 -1的补码可以这样得出:
因为 1-1=1+(-1)=0,
因为 1+99=100
又因为是二位十进制数,所以最高位的"1" 自然溢出,结果为00, 按十进制数的书写习惯只写一
个0。由此, 两位十进制数-1的补码为99, 一位时为9, 三位时为999......
BCD 只是一种用二进制数表示十进制的符号编码,它应该是无符号的,无符号数是不能补码表示
的。