在谈这个问题之前先费一点精力去谈谈初等代数的基础知识:
用等号连接两个代数式所成的式子,叫做“等式”。等号左边的代数式,叫做等式的“左边”;等号右边的代数式,叫做等式的“右边”。例如,在等式(a+b)(a-b)= a^2-b^2 里,左边是(a+b)(a-b),右边是a^2-b^2 。
若一个等式,不论用任何数值(只要是允许的)代替其中的字母,它都是成立的,则这样的等式叫做“恒等式”。只含有数字的等式也叫恒等式。如:1994-1957=37 也叫恒等式。
等式里字母的值需要根据它(或它们)跟等式里的已知数之间的关系来确定的,这样的字母叫做“未知数”。含有未知数的等式叫做“方程”。
什么叫“逻辑方程”?
类似《初等代数》里对“方程”的定义,《逻辑代数》里对“方程”的定义是:含有“未知命题”的“逻辑等式”叫做“逻辑方程”。
什么叫“函数”?
在相对静止状态下数值保持不变的量叫“常量”,可以取不同数值的量叫做“变量”。
在一个过程中有相依变化着的两种变量,一种变量是可以在一定范围内自由取值的,这种变量叫做“自变量”;另一种变量的值是由“自变量”所取的值来确定的,这种变量叫做“因变量”。
在某一变化过程中,对于“自变量”的任何一个种取值,“因变量”都有唯一确定的值与之对应。这时,“因变量”叫做自变量的“函数”。
函数的思想,是用运动和变化的观点,分析和研究变量间的相依关系; 方程的思想,就是分析相依变量的关系中变量间特定的关系,方程思想是动中求静。
函数解析式表示因变量于自变量的关系。方程表示特定的因变量的自变量解。 按照定义,方程是含有未知数的等式,函数是两个非空数集之间的一个映射。函数是一种关系,这种关系是一个集合里的每一个元素对应到另一个(可能相同的)集合里的唯一元素。
在《普通代数》里: A+A=2A ;
在《逻辑代数》里: A+A= A 。
这两个“等式”只能叫“恒等式”,而不能叫“方程”。
它们只能叫“恒等式”的原因是:
不论用任何数值(只要是允许的)代替式中的字母,等式都是成立的。
而它们不能叫“方程”的原因是:
根据“方程”的定义,等式里字母(或“命题”)的值需要根据它(或它们)跟等式里的已知数(逻辑代数里,则指已知逻辑命题)之间的关系来确定的,这样的字母(或“命题”)叫做“未知数”(逻辑代数里,则叫“未知命题”)。含有未知数(未知命题)的等式叫做“方程”。
这两个“等式”里字母A的值,不需要跟等式里已知数(已知逻辑命题)之间的关系来确定。所以,这两个“等式”不能叫“方程”。
大家看出问题来没嘛?绕开“中间函数”,直接建立“输出位(Y0)”于7个“输入变量(X0、X1……X6)”之组合状态对应的函数关系也是符合编程语法规矩的,且更具优势!
请网友们注意:这个《图1》正是我在《殊途同归》一帖中贴出来的《图1》。<通讯网>(魏东)一看,就踏削说:输入都是X,输出是Y。直接用X输入、直接用Y输出会发生事故!“专业”的人会用M。
本来“辅助继电器M”是用来暂存“运算”中间结果,或用作状态暂存、移动运算等。用了它们可以使程序的编写变得简单。但是,不问情况,滥用“辅助继电器M”,相反还使程序变得复杂!那么这种滥用就是笨拙的!如果认为:只有用了“辅助继电器M”才标志着写程序的人“有水平”。那就是极端无知的,可笑的外行观点!!
把前面6个片断的内容综合到一个片断里(如图1所示),给我们研究这个Y0于7个“输入变量(X0、X1……X6)”之组合状态对应的函数关系,带来了极大的方便!一目了然了嘛!
这个《图1》所示的逻辑函数所对应的“定义域”为“0000000 ”至“1111111 ”的128种组合状态。不论是用“真值表”还是用“卡诺图”表达,都是很繁杂的。在孩子们上大学用过的教科书里这样写到:在变量不多的情况下,用卡诺图解决逻辑问题有很直观的优点。但是,变量个数每增加一个,卡诺图的小格子(代表“最小项”)数量就要翻一倍,成几何级数的增长。所以,卡诺图一般用于变量个数不超过6个的逻辑函数的表达。