把补数用到计算机对数的处理上,就是补码。以补码定义式为基础,沿数轴列出典型的真值、原码与补码表示,可清楚了解补码的有关性质。(1)在补码表示中,最高位(符号位)表示数的正负,在形式上与原码相同,即 0正 1负。但补码的符号位是数值的一部分,由补码定义式计算而得。例如,负小数补码中为 1,这个 1是真值(负)加模 2后产生。(2)在补码表示中,数 0只有一种表示,[+0]补 =[-0]补 =0.000……0.(3)负数补码表示的范围比原码稍宽,多一种数码组合。对于定点数,若为纯小数,表示范围为:,若为纯整数,表示范围为:。求给定数值的补码分以下两种情况:正整数的补码是其二进制表示,与原码相同。例:+9的补码是00001001。(备注:这个+9的补码是用8位2进制来表示的,补码表示方式很多,还有16位二进制补码表示形式,以及32位二进制补码表示形式,64位进制补码表示形式等。每一种补码表示形式都只能表示有限的数字。)求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。例:求-5的补码。-5对应正数5(00000101)→所有位取反(11111010)→加1(11111011)所以-5的补码是11111011。数0的补码表示是唯一的。[+0]补=[+0]反=[+0]原=00000000[ -0]补=11111111+1=00000000