1、联系 QQ1165557537第 17 章 数制、编码及逻辑代数17.1 数字电路中的数制及相互转换所谓数制就是记数的方法,它是进位记数制的简称。在数字电路中,常用的有十进制、二进制、八进制和十六进制。1十进制 十进制是以 10 为基数的计数体制。在十进制中,每一位有 0、1、2、3、4、5、6、7、8、9 十个数码,它的进位规律是逢十进一,即 1+9=10。在十进制数中,数码所处的位置不同时,它所代表的数值是不同的,如(246.134) 10=2102+4101+6100+110-1+310-2+410-3上式称为十进制数的按权展开式。式中 102、10 1、10 0为整数部分百位、十位、个
2、位的权,而10-1、10 -2、10 -3为小数部分十分位、百分位和千分位的权,它们都是 10 的幂。数码与权的乘积,称为加权系数,因此,十进制数的数值为各位加权系数之和。2 二进制、八进制和十六进制二进制是以 2 为基数的计数体制。在二进制中,每位只有 0 和 1 两个数码,它的进位规律是逢二进一,即 1+1=10。在二进制数中,各位的权都是 2 的幂,如 (1001.01) 2 = 123+022+021+120+02-1+12-2 =(9.25)10式中整数部分的权分别为 23、2 2、2 1、2 0,小数部分的权分别为 2-1、2 -2。八进制是以 8 为基数的记数体制,在八进制中,每
3、位有 0、1、2、3、4、5、6、7 八个数码,它的进位规律是逢八进一,各位的权为 8 的幂。如八进制数(437.25) 8可表示为(437.25)8=482+381+780+28-1+58-2=(287.328 125)10式中 82、8 1、8 0、8 -1、8 -2 分别为八进制数各位的权。十六进制是以 16 为基数的记数体制,在十六进制中,每位有0、1、2、3、4、5、6、7、8、9、A(10)、B(11)、C(12)、D(13)、E(14)、F(15)十六个不同的数码,它的进位规律是逢十六进一,各位的权为 16 的幂。如十六进制数(3BE.C4) 16可表示为(3BE.C4)16=3
4、162+11161+14160+1216-1+416-2=(958.765 625)10式中 162、16 1、16 0、16 -1、16 -2 分别为十六进制数各位的权。 表中列出了十进制、二进制、八进制、十六进制不同数制的对照关系表 十进制、二进制、八进制、十六进制对照表十进制 二进制 八进制 十六进制十进制 二进制 八进制 十六进制012345670000000100100011010001010110011101234567012345678910111213141510001001101010111100110111101111101112131415161789ABCDEF不同数制
5、间的转换1. 非十进制转换为十进制可以将非十进制数写为按权展开式,求出各加权系数之和,就是与其对应的十进制数。2. 十进制转换为非十进制整数部分转换可用“除基取余法” ,即将原十进制数连续除以要转换的记数体制的基数,每次除完所得余数就作为要转换数的系数(数码) 。先得到的余数为转换数的低位,后得到的为高位,直到除得的商为 0 为止。这种方法概括起来可说成“除基数,得余数,作系数,从低位到高位” 。符号LSB 表示最低位,符号 MSB 表示最高位。3. 二进制与八进制、十六进制数间的转换。由于八进制的基数 8=23 ;十六进制的基数 16=24 。故每位八进制数码都可以用 3 位二进制数来表示;
6、每位十六进制数码都可以用 4 位二进制数来表示。所以二进制数转换为八进制数的方法是:整数部分从低位开始,每三位二进制数为一组,最后不足三位的,则在高位加 0 补足三位为止;小数点后的二进制数则从高位开始,每三位二进制数为一组,最后不足三位的,则在低位加 0 补足三位,然后写出每组对应的八进制数,按顺序排列即为所转换成的八进制数。同理,二进制数转换为十六进制数与上述方法一样,所不同的是每四位为一组。 例(11100101.11101011)2 =(011 100 101.111 010 110)2 =(345.726)8(10011111011.111011)2 =(0100 1111 1011
7、.1110 1100)2 =(4FB.EC)16上述方法是可逆的,将八进制数的每一位写成 3 位二进制数;十六进制数的每一位写成 4 位二进制数,左右顺序不变,就能从八进制、十六进制直接转化为二进制。如(745.361)8 =(111 100 101.011 110 001)2 =(111100101.011110001)2(3BE5.97D)16 =(0011 1011 1110 0101.1001 0111 1101)2 =(11101111100101.100101111101)217.2 常用代码17.2.1 二十进制码二进制编码方式有多种,二十进制码,又称 BCD 码(Binary-
8、Coded-Decimal) ,是其中一种常用的码。BCD 码用二进制代码来表示十进制的 09 十个数。要用二进制代码来表示十进制的 09 十个数,至少要用 4 位二进制数。4 位二进制数有 16 种组合,可从这 16 种组合中选择 10 种组合分别来表示十进制的 09 十个数。选哪 10 种组合,有多种方案,这就形成了不同的 BCD 码。具有一定规律的常用的 BCD 码见表 1。注意,BCD 码用 4 位二进制码表示的只是十进制数的一位。如果是多位十进制数,应先将每一位用 BCD 码表示,然后组合起来。表 常用 BCD 码十进制数 8421 码 2421 码 5421 码 余三码012345
9、67890 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 10 0 0 00 0 0 10 0 1 00 0 1 10 1 0 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 10 0 0 00 0 0 10 0 1 00 0 1 10 1 0 01 0 0 01 0 0 11 0 1 01 0 1 11 1 0 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 0位权 8 4 2 1b3b2b1
10、b02 4 2 1b3b2b1b054 2 1b3b2b1b0无权例 7 将十进制数 83 分别用 8421 码、2421 码和余 3 码表示。解:由表 可得(83)D(1000 0011) 8421(83)D(1110 0011) 2421(83)D(1011 0110) 余 317.2.2 可靠性代码还有一种常用的四位无权码叫格雷码(Gray) ,其编码如表 2 所示。这种码看似无规律,它是按照“相邻性”编码的,即相邻两码之间只有一位数字不同。格雷码常用于模拟量的转换中,当模拟量发生微小变化而可能引起数字量发生变化时,格雷码仅改变 1 位,这样与其他码同时改变两位或多位的情况相比更为可靠,
11、可减少出错的可能性。表 2 格雷码十进制数 G3 G2 G1 G001234567891011121314150 0 0 00 0 0 10 0 1 10 0 1 00 1 1 00 1 1 10 1 0 10 1 0 01 1 0 01 1 0 11 1 1 11 1 1 01 0 1 01 0 1 11 0 0 11 0 0 017.2.3 字符代码二进制代码也可以用来表示字符。例如,计算机内常用的 ASCII(American Standard Code for In formation Interchange)码,是美国标准信息交换码的缩写。该代码由 7 位二进制码组成,共有27=12
12、8 种状态,可以用来表示 128 个字符,这些字符包括 09 这 10 个十进制数、26 个英文字符及其他一些符号和标记,见表 ASCII 码常用在计算机的输入、输出设备上。17.3 三种基本逻辑关系和运算(1)基本概念逻辑代数又称为布尔代数。它描述客观事物间的逻辑关系。与普通代数一样,逻辑代数也用字母表示变量,称为逻辑变量。逻辑变量的取值只有两个值,即和。但这两个值不具有数量大小的意义,仅表示客观事物的两种相反的状态,如开关的闭合与断开;电位的高与低等。因此,逻辑代数有其自身独立的规律和运算法则,而不同于普通代数。数字电路在早期又叫开关电路,因为它主要是由一系列开关元件组成,具有相反的二状态
13、特征,所以特别适于用逻辑代数来进行分析和研究,因此逻辑代数广泛应用于数字电路。(2)基本逻辑运算基本的逻辑关系有与逻辑、或逻辑和非逻辑三种,与之对应的逻辑运算为与运算(逻辑乘) 、或运算(逻辑加) 、非运算(逻辑非) 。)与逻辑若决定某一事物结果的所有条件同时具备时,结果才会发生,这种因果关系称为与逻辑。开关(条件)A 与 B 都闭合时,灯 L 亮(结果)才会发生,那么 L 与 A 和 B 的关系就是与逻辑关系。对逻辑变量进行逻辑赋值,1 表示灯亮及开关闭合,0 表示灯灭及开关断开。则 L 与 A 和 B 的关系可写成一个逻辑函数表达式AL就是与逻辑的函数表达式,式中“”表示“与”运算。显然对
14、于输入变量的不同取值,输出变量均有与其对应的逻辑值。把输入、输出变量所有相互对应的逻辑值(状态)列在一个表格内,这种表格称为逻辑函数的真值表,简称真值表。二输入变量与逻辑函数的真值表如表所示。与逻辑函数真值表、逻辑符号及规律真值表 逻辑符号 逻辑规律A B L0 00 11 01 10001有 0 出 0全 1 出 1对于多变量的逻辑乘可写成 ,简记为 ,其逻辑符号如图所示CBAZABCZ2) 或逻辑若决定某一事物结果的诸条件中只要有一个或一个以上条件具备时,结果就会发生,这种因果关系叫做或逻辑。图所示电路就是一个或逻辑事例。只要开关 A 或者 B 有一个或者两个都合上时,灯 L 就会亮。逻辑
15、变量赋值同上述与逻辑,则可得到或逻辑的不同表示方法如表所示。表 或逻辑的几种表达方法逻辑表达式 逻辑真值表 逻辑符号 逻辑规律A B LL=A+B0 00 11 01 10111有 1 出 1全 0 出 0逻辑式中的“+”表示“或”运算,即逻辑加法运算。3)非逻辑只要某一条件具备了,事件便不发生,而当此条件不具备时,事件一定发生,这样的因果关系叫做非逻辑,也称逻辑求反。图就是一个非逻辑的事例。按照与逻辑的赋值规则,可得到非逻辑关系的不同表示方法如表所示。逻辑表达式中变量 A 上边的“”号表示“非”运算,即逻辑求反运算。逻辑符号中的“”代表非运算。非逻辑的几种表达方法逻辑表达式 逻辑真值表 逻辑符号 逻辑规律A LL0110进 0 出 1进 1 出 0