数字电路与逻辑设计
上QQ阅读APP看书,第一时间看更新

1.1 逻辑的抽象与表示

本书提到的“0”“1”不是数值型数据,是表示两种对立状态的数字。

如果某电路中只有两种稳定的电压:高电平和低电平,在研究时可用数字0、1与之一一对应表示。从而将对电平的研究转化为对数字0、1的研究,将对电路内部规律的研究转换为由数字延展的数学规律的研究,这种电路称为数字电路。在数字电路中只存在高电平和低电平两种对立的、相反的电平状态,表示它们的0、1两个数值并不代表具体的数值大小,而是相反的、对立的两种条件或状态。

对于逻辑分析过程,一般要根据多个条件的满足与否,决定结果的成立与否,每个条件具有“满足”和“不满足”两种取值,结果具有“成立”和“不成立”两种取值,条件与结果都具有二值性,所以条件和结果都可以用0、1两个数字进行表示。

无论是电路中的0、1,还是逻辑分析过程中的0、1,都是某个过程中对立且仅有的两个逻辑常量,也就是说常量具有二值性,而且是相反的两种条件或状态。这种常量存在于逻辑问题的抽象过程中。0、1是逻辑学的两个常量,也是全部常量。

我们可以通过对逻辑学的研究,寻找一定的逻辑规律,同时研究数字电路与逻辑学的关系,研究是否可以用逻辑学的规律去实现数字电路的分析与设计。

1.1.1 逻辑的抽象

世界上的所有事物与过程都存在着一定的矛盾,矛盾是永恒存在和对立的。我们针对对象和过程寻找矛盾产生的条件,也可根据矛盾存在的原因推理矛盾可能存在的结果,这个过程称为逻辑推理过程,也是逻辑问题具体抽象的过程,即把研究对象和事件过程分解为逻辑条件、逻辑结果及条件和结果间的逻辑关系(原因)的抽象过程。

上述描述可归结为逻辑问题。逻辑就是针对研究对象的研究(抽象)性思维规律,逻辑学就是关于思维规律的学说。研究对象可以是人认识的一切东西,包括客观的事物、现象,人的感觉、表象、思想意识、情感意志等。抽象思维规律是指逻辑的研究规则,就是研究时有理有据,有原因有结果,有条件有结果。从狭义来讲,逻辑就是指形式逻辑或抽象逻辑,是指人的抽象思维的逻辑;广义来讲,逻辑还包括具象逻辑,即人的整体思维的逻辑。就本书的研究而言,是利用狭义的逻辑进行逻辑研究的,狭义的逻辑即抽象逻辑。

抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。例如苹果、香蕉、生梨、葡萄、桃子等,它们共同的特性就是水果。得出水果概念的过程,就是一个抽象的过程。要抽象,就必须进行比较,没有比较就无法找到在本质上共同的部分。共同特征是指那些能把一类事物与它类事物区分开来的特征,这些具有区分作用的特征又称本质特征。因此抽取事物的共同特征就是抽取事物的本质特征,舍弃非本质的特征。所以抽象的过程也是一个裁剪的过程。在抽象时,同与不同,取决于从什么角度上来抽象。抽象的角度取决于分析问题的目的。

而抽象逻辑则是通过调查研究,根据分析结果的需要,去抽象所有对象的共同特征,并根据共同特征存在与否(存在条件),确定结果的成立与否(结果状态),即将具体化的逻辑推理过程转换为条件决定结果的形式化表示过程。条件决定结果的依据,是抽象逻辑中的研究规律,这里可称为逻辑关系,逻辑关系是逻辑学中的运算关系。

【例1.1】判断苹果、桃子、菠菜是否都是水果?找出逻辑条件、逻辑结果及逻辑关系。

分析:从题目要求来看,我们要判断的结果是“苹果、桃子、菠菜是否都是水果?”,这个结果具有两种取值:是水果或不是水果,这是指逻辑结果。那么如何根据逻辑条件判断该结果呢?显然要同时判别苹果是否为水果、桃子是否为水果、菠菜是否为水果,每一个判别只有两种取值:满足这个条件还是不满足条件,这两个为逻辑条件的对立取值。根据三个逻辑条件的满足与否决定逻辑结果是否都是水果,这就是逻辑关系。如果三个条件都是水果,则逻辑输出结果都是水果。

对于上述逻辑结果、逻辑条件、逻辑关系的分析过程,就是将事件进行逻辑抽象的过程。我们可以将该抽象过程以二维表格的形式体现,该表格首先罗列出逻辑条件的所有可能取值,然后根据逻辑关系计算每种取值的结果。逻辑条件有3个,每个逻辑条件有两种取值,根据乘法定理,逻辑条件取值共有2 ×2 ×2 = 8种,三个条件从不满足条件开始取值,采用从高位到低位、从不满足到满足的交替变化,从而获得表1-1所示的水果判别逻辑抽象表。

表1-1 水果判别逻辑抽象表

续表

针对表中左侧三列条件的取值,根据逻辑关系逐行进行判断,只有最后一行都满足条件,符合逻辑关系的要求,所以输出结果为是,其他输出结果为否;而因为菠菜是蔬菜而不是水果,满足倒数第2行的条件,因此实际的逻辑结果为否。这种用二维表格进行逻辑关系抽象的方法比较直观,表示条件全面,便于观察,能够对抽象过程的反映一目了然。

上述抽象过程存在一个问题,就是苹果、桃子、菠菜可以直接指定为水果、水果、蔬菜,而分析过程需要逐一列举其是否为水果,这个过程是否是多余的呢?这里有先入为主的原因存在,是因为我们知道它们是否是水果,而判断过程应该把它们看做是未知的,需要进行调查研究与取证,去证明它们在抽象过程中应该具有的所有可能逻辑条件,用客观分析代替主观判断,实现逻辑抽象的完整性。

仸何事物和过程都可以进行逻辑抽象。

物体可以看做是由客观存在的“元素”组成的,元素“存在与否”是逻辑状态,用1表示“有元素”,而用0表示“无元素”,用1、0代替物体中的元素,则将物体转换为逻辑表示。例如,对苹果图像进行等仹分割,分解为多个方形元素,对属于苹果组成部分的元素用1表示,不属于苹果组成部分的元素用0表示,以行列形式排列的二进制数,就是苹果图形的逻辑表示。

过程可以抽象为由逻辑条件去推导逻辑结果的实现,根据逻辑条件推导出逻辑结果的依据称为逻辑关系。逻辑条件与逻辑结果的取值具有二值性,也就是取值是对立的、相反的。三评委表决过程是根据评委“投票与否”“同意与否”确定表决是否通过,采用少数服从多数的逻辑关系。逻辑条件是指每个评委同意与否,3个评委对应 3 个逻辑条件,逻辑条件的取值是“同意与不同意”,或者是“投票与不投票”;逻辑结果是表决结果通过或不通过。

逻辑抽象是实现逻辑问题的主要方法。

1.1.2 逻辑的数字表示

通过对事物或过程进行逻辑抽象,可以得到逻辑条件、逻辑结果及逻辑关系,而逻辑条件和逻辑结果具有二值性。根据前面所述,可以用数字0、1代替逻辑条件或逻辑结果的两种对立的取值,用数字表示文字含义,可以把语言化的逻辑分析过程转换为逻辑数学的分析过程,在研究时更容易记忆和寻找规律,这门数学称为逻辑代数。和代数一样,逻辑代数具有常量、变量、运算符、表达式、定律与规则等。其中常量0、1不是两个数值,表示条件“是否满足”或结果“是否发生”的两种状态。

数字0、1是两个相对立的数字,逻辑条件有两种相对立的取值,它们之间可以一一对应表示。如果用数字“0”表示不满足的条件取值,用数字“1”表示满足的条件取值,这称为正逻辑表示法;反之,如果用数字“1”表示不满足的条件取值,用数字“0”表示满足的条件取值,称为负逻辑表示法。本书一般采用正逻辑表示法。

采用正逻辑表示法,用数字“0”表示逻辑条件或逻辑结果的“否”,用数字“1”表示逻辑条件或逻辑结果的“是”。而对于“苹果满足为水果与否”等3个逻辑条件,以及“是否全是水果”的逻辑结果,可以分别用未知逻辑变量A、B、C、F表示,则把表1-1转换为正逻辑表示的水果判别逻辑表,如表1-2所示。

表1-2 正逻辑表示的水果判别逻辑表

表1-2由逻辑变量和数字“0”“1”组成,“0”视为不满足条件或结果不成立,“1”视为满足条件或结果成立,3个条件变量的不同取值组合,反映了所有可能出现的逻辑条件情况,以及对应的逻辑结果。用数字代替逻辑条件和逻辑结果进行表示,让逻辑过程的分析更有规律性,这种用数字表示的逻辑表称为真值表。真值表将逻辑问题转化为数学问题,从而可以寻找逻辑学的研究规律。

1.1.3 逻辑学研究方法

根据前面所述,仸何的事物与过程都可以抽象为逻辑问题,即抽象出所有逻辑条件变量、逻辑结果变量及找出它们之间的逻辑关系,并为逻辑条件和逻辑结果的两种取值指定用“0”还是用“1”表示。然后列出真值表,自小到大列举所有逻辑条件的可能取值,从而根据逻辑关系求出逻辑结果的数值,将逻辑问题转换为逻辑代数。最后用逻辑代数的定义、公式、定律去实现和表达逻辑问题。

对于数字电路,我们用数字“1”“0”表示高低电平,从而将对电路电平的研究,转换为对逻辑代数的研究。可以把数字电路的研究看做逻辑代数研究的特例,或者把数字电路看做逻辑代数的一种表示形式。