首页|资源下载
登录|注册

您现在的位置是:首页 > 技术阅读 >  数据表示—常用的信息编码

数据表示—常用的信息编码

时间:2024-05-09

数据表示—常用的信息编码

一.逻辑数据的表示 逻辑数据是用来表示二值逻辑中的“是”与“否”或“真”与“假”两个状态的数据。在计算机中用“1”表示“真”,用“0”表示假。

二.字符数据的表示 1.ASCII码: ASCII是美国标准信息交换码的简称。ASCII码是7位基2码,共有128个。其中编码值为0~31及127的不对应任何可印刷字符。通常称它们为控制字符。其它字符为可印刷字符,这种字符编码中有如下两个规律: (1)字符0~9这10个数字符的高3位编码为011,低4位为0000~1001,当去掉高3位的值时,低4位正好是二进制形式 0~9。 (2)英文字母的编码值满足正常的字母排序关系,且大,小写英文字母编码有一定的对应关系。

2.字符串的表示 字符串是指连续的一串字符,通常方式下,它们占用主存中连续的多个字节,每个字节存一个字符。字符串在主存中可从低地址向高地址顺序存放,又可从高地址向低地址顺序存放。

3.汉字编码:用2个字节表示一个汉字,为了与ASCII区别将表示汉字的两个最高位均置“1”。

 1  7 位  1  7 位 

因此汉字编码最多有27 ╳ 27=16384个 GB2312中实际上仅编码常用一级,二级字共6763个汉字。

三.数值型数据的表示: 数值型数据的特点是可以有正负,还可以是整数,小数,混和数.

如: 0, 10, -125, 3.1415 若直接这种形式的数据存储和运算是非常困难的,主要是人机交互的形式,计算机输入/输出的格式

1.定点小数的表示方法:一般都把小数点固定在最高数据位的左边,实际上小数位并不占用空间,默认在该位置。

 符号.  1  0  1  1  0  1  1 

若有m+1位的二进制位,一个纯小数的表示,N=N S .N -1 N -2 …N -m

N S 数据位, 若N S =0表示正数或0,N S =1表示负数

N的取值范围 最大值:0.1111111 最小值:-0.1111111

2.整数的表示方法:

1  1  0  0  1  1  1  1 

一般把小数点定在数值最低位右面,因此对于n+1位不带符号的整数的表示范围为: 0≤N ≤2n+1-1

若最高位表示符号位,带符号的整数的表示范围为: N ≤2n+1-1

3.浮点数的表示方法:

 Ms  E  M  1位  n+1位  m位 

Ms:数的符号位 ,用0表示正数,用1表示负数 M:浮点数的尾数部分,用定点小数形式表示 E:浮点数的阶码部分,为整数,用移码表示

浮点数规格化表示:当尾数的值不为0时,其绝对值应大于等于0.5,即∣Ms ∣≥0.5,如 0.10010101× 2 +11 为规格化的浮点数,而 0.01010101× 2 +110 为非规格化的浮点数,必须通过左移尾数并同时修改阶码使其变为规格化的浮点数,这种操作被称为规格化处理。

隐藏位技术:因为规格化的浮点数中的尾数不为0时,其最高位必为1,所以在将这样的浮点数写入内存或磁盘时,不必给出该位,可左移一位去掉它,这种处理技术称为隐藏位技术。目的是用同样多的位能多保存一位二进制位。

4. 十进制数的编码与运算:

①十进制有权码:一个十进制数位的4位基2码的每一位有确定的位权,如8421码,由高到低的位权分别为8,4,2,1, ②十进制无权码:一个十进制数位的4位基2码的每一位没有确定的位权,如余三码,是把原二进制的每个代码都加0011值得到的。

例题:判断如下一个二元码的编码系统是有权码还是无权码,写出判断的推导过程: 十进制数 二元码的编码 1 0000 2 0111 3 0101 4 0100 5 1011 6 1010 7 1001 8 1000 9 1111 解:是有权码,从高到低位每位的位权分别为8,4,-2,-1。 推导过程: 先假定该编码系统为有权码,且 (1) 从8的编码为1000判断出最高位的位权应为8; (2) 从4的编码位0100判断出次高位的位权应为4; (3) 从3的编码为0101,结合(2)计算出最低位的位权应为-1; (4) 从2的编码为0110,结合(2)计算出次低位的位权应为-2; (5) 用已求得的各位位权验证分别0,1,5,6,7,9各数的编码值,结果均正确。结论:该编码系统确实为有权码load()