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

台式机

8人已加入

描述

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


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

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分