1.1概述 7 于计数脉冲的分频比从低位到高位依次为5:2:1:1。可见,5211码每一位的权正 好与8421码十进制计数器4个触发器输出脉冲的分频比相对应。这种对应关系 在构成某些数字系统时很有用。 余3循环码是一种变权码,每一位的1在不同代码中并不代表固定的数值。 它的主要特点是相邻的两个代码之间仅有·位的状态不同。因此,按余3循环码 接成计数器时,每次状态转换过程中只有一个触发器翻转,译码时不会发生竞争- 冒险现象(详见第3.4节)。 1.1.3算术运算和逻辑运算 在数字电路中,1位二进制数码的0和1不仅可以表示数量的大小,而且可以 表示两种不同的逻辑状态。例如,可以用1和0分别表示一件事情的是和非,真和 伪,有和无、好和坏,或者表示电路的通和断、电灯的亮和暗等等。这种只有两种对 立逻辑状态的逻辑关系称为二值逻辑。 当两个二进制数码表示两个数量大小时,它们之间可以进行数值运算,这种 运算称为算术运算。二进制算术运算和十进制算术运算的规则基本相同,唯一的 区别在于二进制数是逢二进一而不是十进制数的逢十进一 例如,两个二进制数1001和0101的算术运算有 加法运算 减法运算 1001 1001 +0101 -0101 1110 0100 乘法运算 除法运算 1001 .11. ×0101 01011001 1001 0101 1000 0101 0000 0111 0101101 0101 0010 在数字电路和数字电子计算机中,二进制数的正、负号也是用0和1表示的。 在定点运算的情况下,以最高位作为符号位,正数为0,负数为1:以下各位为0和 1表示数值。用这种方式表示的数码称为原码。例如
·8 第一章逻精代数基础 (:01011001)2÷(189)n 符号位 (11011001).=(-89)m 符号位 为了简化运算电路,在数字电路中两数相减的运算是州它]的补码相加来完 成的。二进制数的补码是这样定义的: 最高位为符号位,正数为0,负数为1: 正数的补码和它的原码相同: 负数的补码可通过将原码的数值位逐位求反,然后在最低位上加【得到 【例1.1.1】计算(1001)2-(0101)2。 解:根据二进制数的运算规则可知 001 -0101 0100 在采用补码运算时,首先求出(+1001):和(-0101)2的补码,它们是 [+1001]4=0:1001 符号位 〔-0101]4=1:1011 符号位 然后将两个补码相加并舍去进位 01001 +11011 含去-100100 则得到与前面同样的结果。这样就把减法运算转化成了加法运算。 此外,我们也不难发现,乘法运算可以用如法和移位两种操作实现,而除法运 算可以用减法和移位操作实现。因此,一进制数的加、减,乘、除运算都可以用加法 运算电路完成,这就大大简化了运算电路的钻构 当两个二进制数码表示不同的逻辑状态时,它们之间可以按照指定的某种因 果关系进行所谓逻辑运算。这种逻辑运算和算术运算有本质上的不问。下面将重 点介绍逻辑运算的各种规律。 1.2逻辑代数中的三种基本运算 1849年,英国数学家乔治·布尔(George Boole)首先提出了描述客观事物逻辑
【.2逻辑代数中的三种基本运算 .9 关系的数学方法一布尔代数。后来,由于布尔代数被广泛地应用于解决开关电 路和数字逻辑电路的分析与设计上,所以也把布尔代数叫做开关代数或逻辑代数, 本章所讲的逻辑代数就是布尔代数在二值逻辑电路中的应用。 逻辑代数中也用字丹表示变量,这种变量称为逻辑变量。在二值逻辑中,每 个逻辑变量的取值只有0和1两种可能。这里的0和1已不再表示数量的大小, 只代表两种不同的逻辑状态。 逻辑代数的基本运算有与、或、非三种。为便于理解它们的含意,先来看一个 简单的例子 图1.2.1中给出了三个指示灯的控制电路。在图()电路中,只有当两个开关 同时闭合时,指示灯才会亮:在图(b)电路中,只要有任何一个开关闭合,指示灯就 亮;而在图(c)电路中,开关断开时灯亮,开关闭合时灯反而不亮。 图1.2.1用于说明与、或、非定义的电暗 如果把开关闭合作为条件(或导致事物结渠的原因),把灯亮作为结果,那么图 1.2.1中的三个电路代表了三种不同的因果关系: 图(a)的例子表明,只有决定事物结果的全部条件同时具备时,结果才发生, 这种因果关系叫做逻辑与,或者叫逻辑相乘。 图(b)的例子表明,在决定事物结果的诸条件中只要有任何一个满足,结果就 会发生。这种因果关系叫做逻辑或,也叫做逻辑相加 图()的例子表明,只要条件具备了,结果便不会发生;而条件不具备时,结果 一定发生。这种因果关系叫做逻辑非,也叫做逻辑求反。 若以A、B表示开关的状态,并以1表示开关闭合,以0表示开关断开:以Y 表示指示灯的状态,并以1表示灯亮,以0表示不亮,则可以列出以0、1表示的与、 或、非逻辑关系的图表,如表1.2.1,1.2.2和1.2.3所示。这种图表叫做逻辑真值 表,或简称为真值表。 在逻辑代数中,把与、或、非看作是逻辑变量A、B间的三种最基本的逻辑运 算,并以“,”表示与运算,以“+”表示或运算,以变量上边的“一”表示非运算。因 此,A和B进行与逻辑运算时可写成 Y=A·B (1.2.1) A和B进行或逻辑运算时可写成
10 第一章逻辑代数蒸础 表1.2.1与逻辑 表1.22或逻辑 表1.2.3非罗州 运算的值表 运算的真值表 运算的真值表 A 0 0 a 0 0 0 1 110 1 0 0 1 1 11 Y=A+B (1.2.2) 对A进行非逻辑运算时可写成 Y=A (1.2.3) 同时,把实现与逻辑运算的单元电路叫做与门,把实现或逻辑运算的单元电 路叫做或门,把实现非逻辑运算的单元电路叫做非门(也叫做反相器)。 与、或、非逻辑运算还可以用图1.2.2所示的图形符号表示。这些图形符号也 用于表示相应的门电路。图中上边一行是目前国家标准局规定的符号,下边一行 是常见于国外一些书刊和资料上的符号。 与 非 A=D-YAD-¥A9-Y 图1.2.2与、或,非的图形符号 实际的逻辑问题往往比与、或、非复杂得多,不过它们都可以用与、或、非的组 合来实现。最常见的复合逻辑运算有与非、或非、与或非、异或、同或等。表1.2.4 ~1.2.8给出了这些复合逻辑运算的真值表。图1.2.3是它们的图形逻辑符号和 运算符号。 表1,2,4与非逻辑的真徽表 表1.2.5或非逻辑的真值 A A 011 0 1 1 0 01 0 1 1 1 1 0
12逻辑代数中的三种基本运算 11 表1.2.6与或非逻辑的真值表 A BC DY 表1,2.7异或逻辑的真值表 001 BY 0 0 0 11 01 1 10 0 1 0 1 1 表1.2.8同或逻舞的真值表 10 0 1 10 0 1 10 001 10 1 0 1 图- 与非 或非 A□-y A-D-Y Y=A Y-A+B 与或非 a 异或 同或 Y=A·B+C,D AD-Y oY YA⊕B Y-A⊙B 图1,2.3复合逻细的图形符号和运算符号 出表1.2.4可见,将A、B先进行与运算,然后将结果求反,最后得到的即A、B 的与非运算结果。因此,可以把与非运算看作是与运算和非运算的组合。图 1.2.3中图形符号上的小圆圈表示非运算