欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是:首页  > 科技知识

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

科普小知识2021-09-01 01:16:07
...

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

一.逻辑数据的表示 逻辑数据是用来表示二值逻辑中的“是”与“否”或“真”与“假”两个状态的数据。在计算机中用“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()