第一章 数字逻辑基础
话号码、邮政编码等等。而在数字电路中,用一组二进制数来代替某 一特定的对象,这组二进制数就是代表该对象的代码了。代替的方法 有非常多的种类,数字电路中常用的有:
1 . 二—十进制代码(BCD码) 十进制的十个数码0,1,…,9分别用一组二进制数码代替。由于 三位二进制数只有8种组合,代表不了10个数字,只能用四位二进制数 的16种组合中选出10种,来代替十进制的10个数,所以,二—十进制 代码的表示方法非常之多,我们只介绍主要的几种,其它可用此法方 便地推出。常用的二—十进制代码(BCD码):
。高位至低位的权值为:
。 (3)八进制数 有0,1,…,6,7等八个数码元素,基数r=8,逢八进一,如:
(356.71)8或(356.71)O,写成通式展开后为:
。 高位至低的权值为: 。
(4)十六进制数 有0,1,2,…,9,A,B,C,D,E,F等十六个数码元素,基数 r=16,逢十六进一,如:(5A8D.C6) 16或(5A8D.C6) H,写成通式展开 后为: 。 高位至低位的权值为: 。 十进、二进、八进和十六进制数间关系表:
。
(b) 三变量A、B、C卡诺图 三变量的八个最小项: 。8个最小项在卡诺图小方格上的位置必须以相邻放置→相邻方格
中的最小项只差一个变量不同,其他相同。
(c) 四变量卡诺图和五变量卡诺图
3. 逻辑函数的卡诺图表示 方法:首先将函数化成标准的“与—或”式,(最小项之和表达 式),将式中最小项相应的小方格填“1”,式中没有的最小项代表的 小方格填“0”。填写好后的图形就是该函数的卡诺图了。 4. 卡诺图化简的依据
。它表明:进制数为10(即r=10),高低位之间关系为逢十进一,高 位至低位的权值为:
。因此有通式:
。式中n是该数整数部分的位数,m是小数部分的位数, Ki是i位的 数码,r是表示任意进制时的基数,如二进制数、八进制数和十六进制 数等。
(2)二进制数 有0,1二个数码元素,基数r=2,逢二进一,如:B,写成通式展开后为:
(2) 同或逻辑关系 二个条件相同时,结果成立,二个条件相异时,结果不成立。 函 数式: 。 逻辑符号:
(3)复合逻辑关系 它由“与”、“或”、“非”三种基本逻辑关系组合而成。
二、逻辑运算中的运算定律,常用公式,运算规则 逻辑运算中只有逻辑加、逻辑乘和求反三种运算。 1 . 运算定律 0-1律:
重叠律: 互补律: 否定之否定律: 交换律: 结合律: 分配律: 荻魔根定律: ,其中后四个定律可以用前四个进行证明成立,也可用真值表证明 等式成立。 2 .常用公式 , , , ,
代数法是利用逻辑代数工具来达到使式子简化的目的。化简依据: 逻辑代数定律、常用公式、和运算规则进行化简。常用方法:有吸收 法、配项法、合并法、消去法、 冗余法等。代数法化简虽然简单,但 必须熟悉逻辑代数运算规则等,且具有一定的试探性,否则达不到最 简的目的。
三、逻辑函数的卡诺图法化简 1. 卡诺图:用方格图来描述逻辑函数,由于该方法由卡诺首先提 出,所以把方格图称为卡诺图。 2. 如何画卡诺图:n个变量的函数,就有 个小方格,一个小方格对应一个最小项,下面是2~5变量卡诺图。 (a) 二变量A、B卡诺图: ,
例1:1100-1001=01100+10111=100011,其中,最高位丢失,留下 符号位为0,所以结果是+3。
例2:1001-1100=01001+10100=11101,其中,11101是补码,符号 位不变,数值再求补后得实际数,所以结果是-0011,即-3。
2.1.2逻辑代数及运算
一、逻辑运算 1. “与”逻辑关系及运算
有了二—十进制代码后,任何一个十进制数都可以用它们来代替 了。
2.循环码(格莱码) 是一种可靠性编码。因为这种代码中任何二组相邻代码之间具有只 有一位码不同,其它码相同的特性。
3.字符代码 它是国际标准组织制定的8位二进制代码,它包括英文26个字母, 运算符号等56个特定对象。另一种是ASCII,美国国家信息交换标准代 码。这两种代码都可在有关的计算机书中找到。 三、数字系统中的正负数表示 数字电路只认识二进制数,所以正负数肯定也用二进制数表示。其 方法是在一个数的最高位前设置一位符号位。符号位为“0”时,表示 该数为正数,符号位为“1”时,表示该数为负数。这样规定后的表示 形式有三种: 1 . 正负数的“原码”表示 原码表示规定:符号位加上原数的数值部分组成,即[X]原=符号位 +原数值。 如:X1=+1001010→ [X1]原=01001010;X2=-1001010→ [X2]原 =11001010,这种原码表示方法,适用于两数相乘,因为乘积的符号位 只要将两乘数符号位相异或即可。 2 . 正负数的“反码”表示 反码表示有二种情况:如果原数值为正数,则该数的反码为符号位 加上原数值;如果原数值为负数,则该数的反码为符号位加上原数值 的反码。即[X]反=符号位+原数值,X为正数;[X]反=符号位+原数值反 码,X为负数。 如: X1=+1001010→ [X1]反=01001010;X2=-1001010→ [X2]反 =10110101。 3 . 正负数的“补码”表示 补码(补数)可以从生活中来认识:如早晨7:00起床时,发现时钟 停在10:00,要校到7:00时,有二种方法,一种是顺时针拔9个小 时,另一种是反时针拔3个小时,都可以将时钟校到7:00。由于时钟 走一圈是12小时,12将自动丢失,所以,对走一圈12小时这个最大数
。 只差一个变量不同的二个最大项,逻辑上称相邻,可合并成一项,
并消去一个变量。 上述可见:最小项之和和最大项之积式只是同一个逻辑问题的二种
不同表示方法。是一种互补的表示方法,有:
。
2.1.3逻辑函数化简
一、逻辑函数化简的意义 逻辑函数的化简就是使一个最初的逻辑函数经过化简后得到式中 的“与”项,“或”项项数最少,而每项中的变量数也最少。从而使 组成的逻辑电路最简(逻辑门数和每门的输入端数最少)。 二、逻辑函数的代数法化简
3. 逻辑函数的标准“或—与”表达式 “或—与”表达式由各“或”项之积组成,而每个“或”项是一个 最大项。
最大项:最大项中的变量个数和函数中的变量数相同,最大项中的 变量同样可以是原变量,也可以是反变量。因此,三只开关控制电灯 例子的标准“或—与”表达式应该是:
与最小项时对应,最大项对输入变量的任何一种取值,只有一个最 大项的值为0;任何二个最大项相或,结果为1,即: 。全部最大项之积,其值恒为0,即:
利用了相邻二个小方格代表的最小项只差一个变量的相邻性,它们 可以合并成一项,消去一个变量的性质进行。下面用四变量卡诺图为例 加以说明。
逻辑关系式为: 。
逻辑运算为逻辑加0+0=0,0+1=1,1+0=1,1+1=1,逻辑符号如下:
真值表:
3. “非”逻辑关系及运算 条件具备时,结果不成立,条件不具备时结果成立,这种条件与结 果之间的关系称为“非”逻辑。逻辑式为: ,是求反运算。 逻辑符号如下:
4.复杂和复合逻辑关系 (1) 异或逻辑关系 二个条件相同时,结果不成立,二个条件相异时,结果成立。 函 数式: 。 逻辑符号:
第1章 数字逻辑基础
第一章 数字逻辑基础 2.1.1数制、码制及相互间的转换 2.1.2逻辑代数及运算 2.1.3逻辑函数化简 2.1.4逻辑功能的硬件语言描述(HDL)
2.1.1数制、码制及相互间的转换
一、数制及相互间的转换 1. 计数体制 (1)十进制数 有0,1,2,…,9等十个数码元素,任何一个大小的数字都由这十 个元素组成。例如(475.8)10或(475.8)D,这个十进制数可以写成
2 . 各种进制数之间的相互转换
数字电路运行在二值的二进制数字信号下,但为书写方便,常用八 进和十六进制数表示,而日常又习惯于十进制数,所以要进行数制间 的转换。
(1)十进制数整数部分—二、八、十六进制 具体方法:将待转换的十进制数整数除以进制数(二、八、十六)取 余数,不断地进行,直至商为零。第一次的余数为转换后进制数的最 低位(LSB:Least Siginificant Bit),最后的余数为转换后进制数的 最高位(MSB:Most Siginificant Bit)。 十进制转换成二进制为例:
而言,顺拔时的10+9=12+7和反拔时10-3=7是等价的。因此,+9和-3就 称为最大数12的互为补数(或补码),最大数(12)又称模。从上述可 见,用补码表示可以把一个减法运算变换成加法。
一个n位的二进制补码用下式求得:
。 如:二进制数1010的补码是:
。但实际操作时,有二种直接求法,一是原二进制数的反码加1求 得补码;另一种是:从原二进制数的最低位开始,在遇到1(包括该1) 之前,原数不变,其后数码按位求反,也可得到一个二进制数的补 码。所以正负数的补码表示为:[X]补=符号位+原数值,X为正数;[X] 补=符号位+原数值补码,X为负数。如: X1=+1001010→[X1]补 =01001010;X2= -1001010→[X2]补=10110110。补码的运算规则:补 码+补码=补码,补码再求补=原码。因此,减法运算X1-X2可用[﹢X1] 补码+[-X2]补码的加法运算处理。
2. “或”逻辑关系及运算 决定结果成立的所有条件只要有一个具备时,结果就成立,这种条
件与结果之间的关系称为“或”逻辑。这种关系在日常生活中也是非 常普遍的。以二只并联开关控制一只电灯为例,当其中一只开关闭合
时,电灯就亮。 令开关闭合和灯亮为逻辑“1”,开关断开和灯暗为 逻辑“0”时,有如表所示的真值表。
组成转换后的二进制数为:
。 (2)十进制数小数部分的转换 方法:待转换的十进制小数乘进制数(二、八、十六)取整,不断地
进行,直至积的小数为零为止。必须注意:若积的小数达不到零时, 根据转换的精度来取位数。另外,第一次的整数为转换后进制数的最 高位(MSB),即: