逻辑代数基础(二)(卡诺图)

目录

逻辑图表示

卡诺图表示 

卡诺图的标准格式 

二变量卡诺图

三变量卡诺图 

四变量卡诺图 

卡诺图表示逻辑函数 

从逻辑表达式到卡诺图

逻辑代数的三个规则 

代入规则

反演规则

对偶规则 

逻辑函数的化简方式

化简逻辑函数的意义

逻辑函数最简表示式的判别标准

公式化简法

并项法 

吸收法 

消去法

配项法

卡诺图化简法

化简依据 

用卡诺图化简逻辑函数的方法

例题 


逻辑图表示

逻辑图就是实现逻辑运算的电路图,每一个逻辑运算符号在逻辑电路中就是一个最基本的单元电路

卡诺图表示 
卡诺图的标准格式 

如果两个最小项中只有一个变量互为反变量,其余变量均相同,则称这两个最小项为逻辑相邻,简称相邻项
卡诺图(Karnaugh Map)是一种用小方格来构成的图形

n个变量的函数,有2^n个最小项,每一个小方格代表一个最小项,将全部小方格按照相邻性排列起来就构成了n变量的卡诺图

小方格的几何位置的规定:将全部变量按顺序分成两组,每组变量按循环码取值排列

2个变量的循环码
AB
00
01
11
10
 

3个变量的循环码
ABC
000
001
011
010
110
111
101
100

4个变量的循环码
ABCD
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000
 

即画卡诺图时,遵循每次只加一个1,或每次只减一个1的原则 

二变量卡诺图

二变量A、B共有2^2=4个最小项,卡诺图由4个小方格构成

将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量A、B对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号

三变量卡诺图 

三变量A、B、C共有2^3=8个最小项,卡诺图由8个小方格构成

将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量A、BC对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号

四变量卡诺图 

三变量A、B、C共有2^4=16个最小项,卡诺图由16个小方格构成

将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量AB、CD对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号

对于五变量及以上的卡诺图方格个数较多,在逻辑函数化简中很少使用,这里不再介绍

卡诺图表示逻辑函数 
从逻辑表达式到卡诺图

由于任何一个逻辑函数都可以变换成最小项表达式,而n个变量的卡诺图包含了n个变量所有最小项,所以n个变量的卡诺图可以表示n个变量的逻辑函数 

标准式填卡诺图

对于标准与或式,将逻辑函数中的最小项直接填入卡诺图,其中有最小项直接填入卡诺图,其中有最小项的方格填1,没有最小项的方格填0

对于标准或与式,根据逻辑函数的标准与或表示式和标准或与表示式之间存在对应的转换关系,将逻辑函数的标准或与式中没有的最大项编号作为标准与或式中有最小项的编号直接插入填入卡诺图,有最小项的方格填1,没有最小项的方格填0

非标准与或式填卡诺图

方法一:先将逻辑函数变换成最小项表达式(标准与或式后),再填卡诺图

方法二:利用与项中的变量(原变量取1,反变量取0)填特征值卡诺图


带约束条件的标准与或表示式填卡诺图
将约束条件对应的最小值编号的方格填×

逻辑代数的三个规则 
代入规则

在任何含有变量A的逻辑等式中,如果等式两边所有出现A的地方都用另一个逻辑变量或逻辑函数代替,则逻辑等式仍然成立

应用代入规则,可以扩大基本定律和常用公式的使用范围
即如将变量E,用C+D代替

反演规则

将一个逻辑函数Y进行下列变换:

·→+        +→·

0→1        1→0

原变量→反变量        反变量→原变量

所得新函数为原函数Y的反函数,用\bar{Y}表示


应用反演规则时应该注意以下两点:

反演运算前后,函数式中运算的优先顺序保持不变

多个变量上的非号(亦称长非号)应该保持不变

对偶规则 

将一个逻辑函数Y进行下列变换:

·→+        +→·

0→1        1→0

所得新函数为原函数Y的对偶函数,亦称对偶式,用Y'表示

应用对偶规则时应该注意以下两点:

对偶运算前后,函数式中运算的优先顺序保持不变

所有变量的非号都保持不变

逻辑函数的化简方式
化简逻辑函数的意义

同一个逻辑函数往往有多种不同的表示式,有的复杂,有的简单,差别很大
在逻辑电路设计时,对逻辑函数的化简就显得十分重要

逻辑函数最简表示式的判别标准

化简逻辑函数的目的就是要找出它的最简表示式

判别最简与或表示式的标准是:

表示式中的与项个数最少

每个与项中的变量数最少

公式化简法
并项法 

把两个与项合并为一项,消去互补变量



Y=ABC+AB\bar{C}+A\bar{B}

=AB+A\bar{B}

=A

吸收法 

吸收掉多余的与项

Y=\overline{A\bar{B}}+\bar{A}D+BC

=\bar{A}+B+\bar{A}D+BC

=\bar{A}+B

消去法

消去与项中多余的因子


Y=\overline{A\bar{B}}+AD+\bar{B}C

=\bar{A}+B+AD+\bar{B}C

=\bar{A}+B+C+D

配项法

利用A+\bar{A}=1进行配项,将某个与项变为两项,再和其他项合并,以消去更多的与项,从而获得最简与或式

Y=AB+\bar{A}\bar{B}C+BC
=AB+\bar{A}\bar{B}C+BC(A+\bar{A})

=AB+\bar{A}\bar{B}C+ABC+\bar{A}BC

=AB+\bar{A}C(B+\bar{B})
=AB+\bar{A}C

只要熟悉逻辑代数的基本定律和常用公式,以上四种方法可以很容易理解 

卡诺图化简法
化简依据 

相邻最小项相加规律:
两个相邻最小项有一个变量相异,相加可以消去这一个变量,化简结果为相同变量的与

四个相邻最小项有两个变量相异,相加可以消去这两个变量,化简结果为相同变量的与
以此类推

2^n个相邻最小项有n个变量相异,相加可以消去这n个变量,化简结果为相同变量的与

用卡诺图化简逻辑函数的方法

用卡诺图化简逻辑函数的基本原理就是利用相邻最小项相加规律和卡诺图的图形特征结合起来,通过画包围圈,把卡诺图上表征相邻最小项的相邻1方格圈在一起进行合并,达到用一个简单与项代替若干个最小项的目的


在表示逻辑函数的卡诺图中,画包围圈规则如下:

包围圈必须包含2^n个相邻1方格,n=0,1,2,…

同一个1方格可以被不同的包围圈重复圈多次,但新增加的包围圈必须有原先没有被圈过的1方格

包围圈中相邻1方格的个数尽量多

包围圈的个数尽量少

例题 

用卡诺图化简法化简以下式子

Y=AB+AC+BC+B\bar{C}



这个式子里有四项,每个加号隔开的在这里称为一项

从第一项开始看,第一项为AB,没有非符号,没有出现C,C为无关变量,所以要在110,111上写1
第二项AC,同理,B为无关变量,所以要在101,111上写1
第三项BC,同理,A为无关变量,所以要在011,111上写1
第四项B\bar{C},有非符号,A为无关变量,所以要在010,110上写1

二进制数分别对应ABC

010

A为0,BC为10

尽可能大的包裹圈

注意每次包裹方格的个数必须是2^n,n可以是任意自然数,边界的也视为相邻

 

此图中有两个圈,即有两项,同时出现0和1的变量为无关变量

如果变量单独出现的为1则直接写下

如果为0则需要在变量上加上-符号

包裹两个方格的圈中,A变量出现了一个1,B变量出现了0和1,C变量出现了一个1,所以第一项为AC

包裹四个方格的圈中,A变量出现了0和1,B变量出现了一个1,C变量出现了0和1,所以第二项为B

所以

Y=AC+B

Y=\bar{A}\bar{B}+\bar{A}\bar{C}D+AC+\bar{B}C

包裹四个方格的圈中

上方的,变量A出现了一个0,B中出现了一个0,C中出现了0和1,D中出现了0和1,所以此项为\bar{A}\bar{B}
右下角的,变量A出现了一个1,B出现了0和1,C中出现了一个1,D中出现了0和1,所以此项为AC

包裹两个方格的圈中

A出现了一个0,B出现了0和1,C出现了一个0,D出现了一个1,所以此项为\bar{A}\bar{C}D
所以

Y=\bar{A}\bar{B}+\bar{A}\bar{C}D+AC

F(A,B,C)=\sum m(0,1,5,7)


两个包围圈所以有两项

包裹两个方格的圈中

上方的,变量A出现了0,B出现了一个0,C出现了0和1,所以此项为\bar{A}\bar{B}
下方的,变量A出现了1,B出现了0和1,C出现了一个1,所以此项为AC

所以

Y=\bar{A}\bar{B}+AC

F(A,B,C,D)=\sum m(0,1,2,3,5,7,8,10,13,15)

以下两种都可以,包围圈都合法

蓝色包围圈包裹了四个角,边界可以看作是相邻的

 

Y=\bar{A}\bar{B}+BD+\bar{B}\bar{D}

Y=\bar{A}D+BD+\bar{B}\bar{D}

 F(A,B,C,D)=\sum m(0,3,4,9,10,12,13)+\sum d(1,2,6,7,8,11,14)


对于这种形式的式子,只需要看最小项的编号,以及无关项的编号即可

这个式子中最小项有0,3,4,9,10,12,13

因此对于最小项编号十进制数对应的二进制数即为需要写1的位置

0对应0000,3对应0011,4对应0100,9对应1001,10对应1010,12对应1100

13对应1101

AB为二进制数前两位,CD为二进制数后两位,在相应位置写1

无关项有1,2,6,7,8,11,14

1对应0001,2对应0010,6对应0110,7对应0111,8对应1000,11对应1011,14对应1110
AB为二进制数前两位,CD为二进制数后两位,在相应位置写×


画圈时可以将×当作1圈上,图中有两个黄色圈,分别包裹左右,上下八个方格

注意每次包裹方格的个数必须是2^n,n可以是任意自然数,边界的也视为相邻

图中有几个圈就有几项,其中如果变量的0和1同时出现则该变量在此项中无关

如果变量单独出现的为1则直接写下

如果为0则需要在变量上加上-符号


包裹四个方格的圈中,A变量出现了一个1,B变量出现了0和1,C变量出现了一个0,D变量出现了0和1,所以此项为A\bar{C}
包裹八个方格的圈中

其中上下圈,A中出现了0和1,B出现了一个0,C出现了0和1,D出现了0和1,所以此项为\bar{B}

其中左右圈,A中出现了0和1,B中出现了0和1,C出现了0和1,D出现了一个0,所以此项为\bar{D}

所以

Y=\bar{D}+\bar{B}+A\bar{C}

 


对于上边式子

一共四项

第一项中,A变量为非,为0,B变量为非,为0,C为1,D为1,所以找0011处写1

第二项中,A变量为1,B没出现所以是0和1,C为非,为0,D为1,所以找1001,1101写1

第三项中,A变量为1,B为非,为0,C为非,为0,D没出现,所以D为0和1,所以找1000,1001写1

第四项中,A没出现,所以A为0和1,B没出现,所以B为0和1,C为非,为0,D为1,所以找0001,0101,1001,1101写1

此式子中下面为无关项,无关项中有两项

第一项A没出现,所以A为0和1,B为1,C为1,D为1,找0111,1111写×

第二项A为1,B没出现,所以B为0和1,C为1,D没出现,所以D为0和1,找1010,1011,1110,1111写×

尽可能大的画包围圈,×可以当作1

化简方法同上

Y=D+A\bar{B}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/434005.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Software Platform Bundle】

https://www.ni.com/zh-cn/support/downloads/software-products/download.software-platform-bundle.html

【python】六个常见爬虫案例【附源码】

大家好,我是博主英杰,整理了几个常见的爬虫案例,分享给大家,适合小白学习 一、爬取豆瓣电影排行榜Top250存储到Excel文件 近年来,Python在数据爬取和处理方面的应用越来越广泛。本文将介绍一个基于Python的爬虫程序&a…

linux系统的进程管理

文章目录 前言一、系统的进程的运转方式1、系统时间:(jiffies 系统滴答)2、task_struct 二、如何创建一个新的进程(重要)三、进程调度①、主要函数②、辅助函数 四、进程的退出内核的销毁 前言 本文讲解系统的进程管理…

LeetCode142题:环形链表II(python3)

代码思路: 双指针的第一次相遇: 设两指针 fast,slow 指向链表头部 head 。 令 fast 每轮走 2 步,slow 每轮走 1 步。 fast 指针走过链表末端,说明链表无环,此时直接返回 null。 如果链表存在环,…

学习Java的第二天

如何使用文本文档在cmd里打印出HelloWorld 1、创建一个文本文档,并命名为HelloWorld,将后缀改为java(需要自己去把后缀打开显示出来) 2、打开编辑 也可以双击打开 3、在里面写出以下代码 上面红框里为你要打印的语句,…

Mybatis-Plus——05,乐观锁(新注解)

乐观锁(新注解) 一、数据库添加一个字段二、实体类添加version注解三、注册乐观锁插件四、测试一下4.1成功的乐观锁4.2失败的乐观锁————————创作不易,笔记不易,如觉不错,请三连,谢谢~~ 乐观锁实现方…

zabbix监控中间件服务

zabbix监控Nginx 自定义nginx访问量的监控项,首先要通过脚本将各种状态的值取出来,然后通过zabbix监控。找到自定义脚本上传到指定目录/etc/zabbix/script/ 在zbx-client客户端主机操作 #创建目录,然后将脚本上传到该目录mkdir /etc/zabbix/…

信息安全与阿里云等保三级方案实践总结

信息安全在当今数字化时代变得至关重要,企业和组织需要采取有效措施来保护其数据和信息资产。阿里云作为中国领先的云服务提供商,提供了等保三级方案,帮助用户满足国家信息安全等级保护的要求。本文将探讨信息安全和阿里云等保三级方案的重要…

使用vite创建一个vue3项目

创建一个vue3项目 1.使用命令npm create vuelatest来创建一个vue3项目,注意:官网说明了必须node版本是18及以上的,这边需要注意下 2.然后根据提示进入项目目录 先npm install安装依赖,然后npm run dev启动项目 大家可以看到&am…

TCP与UDP基础

思维导图&#xff1a; TCP&#xff1a; 服务器 #include<myhead.h> #define SER_IP "192.168.252.163" #define SER_PORT 6666 int main(int argc, const char *argv[]) {//&#xff11;、创建用于监听的套接字int sfd-1;sfdsocket(AF_INET,SOCK_STREAM,0);/…

2023 电脑PC FetchV网页视频下载器 浏览器插件

FetchV&#xff0c;它可以下载网页视频&#xff0c;下载速度快到离谱&#xff0c;非常好用&#xff01; FetchV:网页视频下载器(HLS|m3u8|mp4|blob) 下载和录制各种格式的在线网页视频&#xff0c;包括HLS、m3u8、blob、mp4、webm等各种类型的视频。 这是一个通用的网页视频…

保留数据的重装系统教程!(win11系统)

上车警告&#xff01;&#xff01;&#xff01; 本教程无需思考&#xff0c;跟着操作一步一步来就能完成系统的重装。原理是将C盘系统重装&#xff0c;其他盘符数据保存。适用于系统盘重装数据或更改系统版本。 重要提示&#xff01;&#xff01;&#xff01; C盘有重要学习资…

视频产品介绍:国标28181网关(GB/T28118网关)

目 录 一、概述 二、产品功能 &#xff08;一&#xff09;功能描述 &#xff08;二&#xff09;功能展示 1、国标接入 2、资源绑定 三、产品能力 &#xff08;一&#xff09;接入能力 &#xff08;二&#xff09;多级架构 四、特点优势 &#xff08;一&am…

用硬盘空间管理工具TreeSize拯救C盘容量

一、软件简介 TreeSize 是一款卓越的硬盘空间管理工具&#xff0c;能智能检测磁盘文件和存储量&#xff0c;为您提供详尽的磁盘空间信息&#xff0c;帮助您根据需求删除无用文件&#xff0c;释放更多空间。使用该工具可有效分析硬盘存储情况&#xff0c;找出大文件和未使用文件…

【React Native】修改Android端应用的图标

简言 修改android应用的图标的步骤&#xff0c;效果如下&#xff1a; 修改图标 Android应用的app图标在 /android/app/src/main/res 下&#xff1a; 准备图标 在替换之前要准备好图标各精度的图片。 图标工厂&#xff0c;这个网站可以快速免费生成图标文件供使用。 可以…

MySQL 空间碎片详解

文章目录 前言1. 空间碎片如何产生2. 空间碎片如何查看3. 空间碎片如何回收后记 前言 MySQL 数据库在运行过程中&#xff0c;随着时间的推移&#xff0c;可能会出现空间碎片的问题。空间碎片是指数据库表中不再使用的空间&#xff0c;但由于各种原因&#xff0c;这些空间并没有…

Linux 下安装 Git

Linux 下安装 Git 1 参考2 安装2.1 通过 yum方式安装&#xff08;不推荐&#xff09;2.2 通过源码编译安装&#xff08;推荐&#xff09; 3 配置SSH 1 参考 Linux 下安装 Git 2 安装 2.1 通过 yum方式安装&#xff08;不推荐&#xff09; 在Linux上安装git仅需一行命令即可…

[R] How to communicate with your data? - ggplot2

We have gone through the basic part of how to clean and process before analyzing your data. How to communicate with your data? R语言具有生成各种图形的多种可能性。 并非所有图形功能对初学者来说都是必要的。 复杂的图形需要长代码。 我们将从简单的图形元素开…

基于SSM的医院挂号系统

1 引言 1.1 课题背景及意义 社会发展迅速&#xff0c;以往的管理方式已经满足不了人们对获得信息的方式、方便快捷的需求。医院门诊挂号系统慢慢的被人们关注。网上获取信息十分的实时、便捷&#xff0c;只要系统在线状态&#xff0c;无论在哪里都能第一时间查找到理想的信息…

深度解析速卖通商品详情API:Python实战与高级技术探讨

速卖通商品详情API接口实战&#xff1a;Python代码示例 一、准备工作 在开始之前&#xff0c;请确保你已经完成了以下步骤&#xff1a; 在速卖通开放平台注册账号并创建应用&#xff0c;获取API密钥。阅读速卖通商品详情API接口的文档&#xff0c;了解接口的使用方法和参数要…