数值信息在计算机内的表示方法是怎么样的?计算机中的数值信息都是用二进制表示的。这些数值信息可以分为整数和实数两大类。这里的实数是既有整数又有小数的数。
一、整数和实数
1.整数
计算机中的整数可以分为“不带符号的整数”(或称为正整数)和“带符号的整数”两类。它们可以用8位、16位、32位甚至是64位来表示。
1.1 不带符号的整数(正整数)
1.2 带符号的整数(整数)
带符号的整数由于是带符号的,所以必须使用一个二进位作为其符号位,一般用最高位,即最左边的一位作为其符号位。
1.2.1 带正号(“+”)的整数(正数)
带正号的整数在计算机内的表示方法是:在其符号位上用“0”。例如用(二进制来表示):
+64——01000000; +127——01111111
1.2.2 带负号(“-”)的整数(负数)
带负号的整数(负数)在计算机内的有三种表示方法:原码、反码和补码。
负数的原码表示 方法是:在其符号位上用“1”。例如:
(-64)原=11000000; (-127)原=11111111
负数的反码表示 符号位上仍为1.但绝对值部分恰好与原码相反,“0”与“1”互变。例如:
(-64)反=10111111; (-127)反=10000000
负数的补码表示 符号位上仍为1.但绝对值部分是在反码的最低位加“1”所得到的结果。例如:
(-64)补=11000000; (-127)补=10000001
只有带“-”号的整数才有三码表示。
2.实数
任何一个实数,不论是用十进制还是二进制,均可以表示为一个纯小数和一个幂的乘积。例如:
也就是说,任何一个实数,在计算机内部都可以用一个指数(整数)和一个尾数(纯小数)来表示。这种表示实数的方法就是“浮点表示法”。在计算机中,实数也叫做“浮点数”,而整数和小数则叫做“定点数”。
二、数的表示
计算机中处理的数据分为数值型数据和非数值型数据两大类。计算机内表示的数值型数据,又分成整数和实数两大类。在计算机内部,数是以二进制的形式存储和运算的。数的正负用高位字节的最高位来表示,定义为符号位,用“0”表示正数,“1”表示负数。例如:二进制数+1101000在机器内的表示为:01101000
1、整数的表示
计算机中的整数一般用定点数表示,定点数指小数点在数中有固定的位置。整数又可分为无符号整数(不带符号的整数)和有符号整数(带符号的整数)。无符号整数中,所有二进制位全部用来表示数的大小,有符号整数用最高位表示数的正负号,其他位表示数的大小。如果用一个字节表示一个无符号整数,其取值范围是。如果用一个字节表示一个有符号整数,其取值范围则是。
需要注意的是,在计算机中为了便于计算,有符号整数采用的是补码表示。要求一个有符号整数的补码,对于正整 数,直接表示为二进制即可,如上面的+1101000的一个字节大小的补码表示是01101000.对于负整数,则先求出其绝对值的补码,然后按位取反 (即0变成1.1变成0),再将取反后的结果加1.例如-1101000的一个字节大小的补码表示是10011000
2、实数的表示
实数一般用浮点数表示,因为它的小数点位置不固定,所以称浮点数。它是既有整数又有小数的数,纯小数可以看作实数的特例。
在计算机中一个浮点数由指数(阶码)和尾数两部分组成,其机内表示形式如下:
其中数符和阶符分别表示尾数和阶码的符号位,在浮点数中占一位。阶码用来指示尾数中的小数点应当向左或向右移动的位数,值随浮点数数值的大小而 定,阶码的二进制位数决定了所能表示的数的范围。尾数表示数值的有效数字,其位数则依浮点数的精度要求而定,尾数的二进制位数决定了所表示的数的精度。小 数点约定在数符和尾数之间。