通常将数值数据在计算机内部编码表示的数称为机器数,而机器数真正的值(即原来带有正负号的数)称为机器数的真值。
通常将数值数据在计算机内部编码表示的数称为机器数。
数值数据是指有确定的值的数据。数值数据在数轴上能找到其对应的点,可以比较其大小。确定一个数值数据的值有三个要素:进位计数制、定/浮点表示和数的编码表示。也就是说,给定一个数字序列,如果不说明这个数字序列是几进制数、小数点的位置在哪里、采用什么编码方式,那么这个数字序列的值是无法确定的。也就是说,同一个数字序列可能有不同的值。在计算机中数值数据有无符号数和有符号数两种。
数值数据是指在数轴上没有确定的值的数据。像逻辑数据、西文字符、汉字字符等都是非数值数据。
进位计数制(或称数字系统)的“底数”或“基”。例如,二进制数的基数是“2”,十进制数的基数为“10”,十六进制的基数为“16”。
可以用程序没有其他任何负载的情况下的响应时间来表示系统性能。
当一个编码的所有二进位都用来表示数值时,该编码表示的就是无符号数。可以看成是一种正整数。常用无符号数来进行地址运算。
在计算机内部对正、负号进行编码的数。有符号数又分为定点数和浮点数。定点数有定点整数和定点小数两种。现实世界中的整数在计算机内部由定点整数表示。现实世界中的实数在计算机内部由浮点数表示。
定点数是计算机中小数点固定在最左边或最右边的有符号数,有定点整数和定点小数两种。定点整数的小数点总是约定在数的最右边,主要用来表示现实世界中的整数和浮点数中的指数。定点小数的小数点总是约定在数的最左边,主要用来表示浮点数中的尾数。 定点数的编码方式有原码、反码、补码和移码。整数常用补码来表示;浮点数的尾数一般用原码小数来表示;浮点数的指数一般用移码来表示 。
一种对定点整数或定点小数进行二进制编码的编码方案。它的编码规则是:正号“+ ”用符号位“0”表示,负号“-” 用符号位“1”表示,数值部分不变。这种编码简单,但计算机处理不方便,50年代以后,就不用它来表示整数。但现代计算机中,一般用它来表示浮点数的尾数,如:IEEE754标准。
一种对定点整数或定点小数进行二进制编码的编码方案。由于计算机处理反码没有补码方便,反码已经不被再用了。
一种对定点整数或定点小数进行二进制编码的编码方案。其编码规则如下:正号“+ ”用符号位“0”表示,负号“-” 用符号位“1”表示,正数的数值部分不变,负数的数值部分是各位取反,末位加1。这种编码较原码复杂,但由于它是一种模运算系统,计算机处理很方便,50年代以后,整数就都用它来表示。
变型补码是一种双符号位补码。早期计算机用双符号位来检测定点整数是否发生溢出。采用双符号位的补码相当于在原来的数位上增加了一位。所以也称为4-补码。采用“变形补码”进行溢出检测时的判断规则为:“当结果的两个符号位不同时,发生溢出”。有时用双符号位来保存运算时进到高位的数值部分。
浮点数是计算机中可以指定小数点在不同位置的有符号数。任意一个浮点数F可写成:F=M x 2E 的形式。这样,一个浮点数就可以有两个定点数表示,M称为浮点数的尾数,用一个定点小数来表示;E称为浮点数的指数或阶码,用一个定点整数来表示。 尾数(mantissa, significand)。
任意一个浮点数F 可写成:F=M x 2E 的形式,因而由两部分组成。这里,M称为浮点数的尾数,用一个定点小数来表示 。
任意一个浮点数F 可写成:F=M x 2E 的形式,因而由两部分组成。这里,E称为浮点数的指数或阶码,用一个定点整数来表示
移码是一种用来表示浮点数阶码的编码方案。它的编码规则是:将真值加上一个偏置常数。因为在浮点数的加减运算中,要进行对阶操作,需要比较两个阶的大小。用移码表示阶码后,使得所有数的阶码都是一个正整数,比较大小时,就只要按高位到低位顺序比较就行了,因而,移码主要用来表示阶码,可以简化阶码的比较过程。
IEEE754标准规定的32位浮点数格式表示的浮点数。阶码是8位,用移码表示,偏置常数为127,尾数用原码表示,规格化浮点数的最高位“1”隐含不表示,显式表示的尾数有23位,所以一共有24位尾数。
IEEE754标准规定的64位浮点数格式表示的浮点数。阶码是11位,用移码表示,偏置常数为1023,尾数用原码表示,规格化浮点数的最高位“1”隐含不表示,显式表示的尾数有52位,所以一共有53位尾数。
用一种专门的位序列表示“机器0”。例如,IEEE754单精度浮点数中,用“0000 0000H”表示“+0”,用“8000 0000H”表示“– 0”。当运算结果出现阶码过小时,计算机将该数近似表示为“机器0”。
十进制数用二进制编码的形式表示称为BCD码。
逻辑数据用来表示命题的“真”和“假”,分别用 “1”和“0”来表示。进行逻辑运算时,按位进行。
目前计算机中使用最广泛的西文字符集及其编码,即美国标准信息交换码(American Standard Code for Information Interchange),简称ASCII码。
具有不同代码的位的个数叫码字间的“距离”。一种码制可能有若干个码字,各码字间的最小距离称为“码距”。
主要用于存储器中数据存取校验,将数据按某种规律分成若干组,对每组进行相应的奇偶检测。最终比较时,按位进行异或操作,根据异或操作结果,确定在哪一位发生了差错。