当前位置: 第三章 数据表示、数据运算算法和逻辑电路实现 >> 第九讲
讲选: 6/7/8/9/10/11/12

本章主要内容

信息编码、码制转换与检错纠错码

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

二进制数值数据的编码与运算算法

基二码应用实例:数据表示逻辑型数据

字符型数据
ASCII 码 EBCDIC 码 字符串 汉字
检错纠错码
奇偶校验 海明校验 循环冗余校验
数值型数据
定点小数 整数 浮点数 二—十进制数(BCD码)

逻辑型数据

逻辑型数据只有两个值:
正好可以用二进制码的两个符号分别表示,
例如
1 表示
0 表示
不必使用另外的编码规则。
对逻辑型数据可以执行逻辑的
与 或 非等基本逻辑运算。其规则如下:

逻辑型数据基本运算规则

X Y XY XY X的
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0

字符型数据的表示

字符作为人—机联系的媒介,是最重要的数据类型之一,当前的西文字符集由 128 个符号组成,通常用 8 位二进制编码,即用一个字节来表示每一个符号,当前通用的两个标准字符集是:
ASCII 码: 即 American Standard Code for Information Interchange
EBCDIC码:即 Extended Binary Coded Decimal Interchage Code
ASCII码字符集具体编码如下表所示:

ASCII字符编码集

字符串的表示与存储

字符串是指连续的一串字符,它们占据主存中连续的多个字节,每个字节存放一个字符,对一个主存字的多个字节,有按从低位到高位字节次序存放的,也有按从高位到低位字节次序存放的。表示字符串数据要给出串存放的主存起始地址和串的长度。例如:IF A>B THEN READ(C)就可以有如下不同的存放方式:

汉字的表示

  通常用两个字节表示一个汉字
  为了与西文字符编码相区别(西文的ASCII码的最高一位编码值为0),表示一个汉字时,把两个字节的最高一位的编码值设定为 1,则该编码集的最多编码数量为 128 X 128。
  这种编码方案与西文传送中的把ASCII码的最高一位用作奇偶校验位有矛盾。

数值数据在计算机内的格式

定点小数: N = Ns N-1 N-2 …… N-n
整数: N =Ns Nn Nn-1 …… N1 N0

浮点数: N = Ms Es Em-1 …… E1 E1 M-1 M-2 M-n
基为2
IEEE 标准:阶码用移码尾数用原码

  符号位 阶码位 尾数数码位 总位数
短浮点数 1 8 23 32
长浮点数 1 11 52 64
临时浮点数 1 15 64 80

二-十进制编码(BCD编码)

  用四位二进制表示一位十进制,16个编码状态选用其中的10个编码有多种方案,例如:8421码,余 3 码,循环码
  又可区分为:
    有权码:每位上的 1 代表确定的值
    无权码:无法确定每位上的 1 代表的值

有权码 无权码

  8421 余3码 循环码 84-2-1
0 0000 0011 0000 0000
1 0001 0100 0001 0111
2 0010 0101 0011 0110
3 0011 0110 0010 0101
4 0100 0111 0110 0100
5 0101 1000 1110 1011
6 0110 1001 1010 1010
7 0111 1010 1000 1001
8 1000 1011 1100 1000
9 1001 1100 0100 1111
讲选: 6/7/8/9/10/11/12