全国计算机考试三级PC技术第一章计算机应用基础知识(9)
整数(定点数)的表示
整数不使用小数点,或者说小数点是隐含在个位数右面的,所以它也称为定点数。计算机中的整数分为两类:不带符号的整数(unsigned integer),此数整数一定是正整数;带符号的整数(signed integer),此类整数既可表示整数,又可表示负整数。
不带符号的整数常常用于表示地址等正整数,它们可以是8位、16位甚至32位。8个二进位所能表示的正整数其取值范是0~255(28-1),16个二进位所能表示的正整数其取值范围是0~65 535(216-1),32个二进位所能表示的正整数其取值范围是0~232-1。
带符号的整数必须使用一个二进位作为其符号位,一般总是最高位(最左面的一位),0表示“+”(正数),1表示“-”(负数),其余名位则用来表示数值的大小。例如:
00101011=+43 10101011=-43
可见,8个二进位所能表示的带符号整数其取值范围是-127~+127(-27+1~+27-1),16个二进位所能表示的带符号整数其取值范围是-32 767~+32 767(-215+1~+215-1),32个二进位所能表示的带符号整数其取值范围是-231+1~+231-1,64个二进位所能表示的带符号整数其取值范围也可类似地推算出来。
为了内部运算处理方便,数值为负的整数在计算机内不止一种表示方法。上面的表示法称为“原码”,另外的两种表示方法分别称为反码和补码。
负数使用反码表示时,符号位为1,但绝对值部分却正好与原码相反(0变为1,1变为0)。例如:
(-43)原=10101011
(-43)反=11010100
负数使用补码表示时,符号位也是1,但绝对值部分却是反码的个位加1后所得到的结果。例如:
(-43)原=10101001
(-43)反=11010100
(-43)补=11010101
还有一种整数也经常在计算机内使用,称为“二进制编码的十进制”整数(binary coded decimal,BCD整数),它使用4个二进位表示1个十进制数字,符号的表示仍与上相同。例如:
(-56)BCD=1 0101 0110