首页 > 其他分享 >卡诺图学习

卡诺图学习

时间:2024-04-27 12:33:53浏览次数:16  
标签:化简 变量 最小 学习 相邻 方格 卡诺图

目录

1、最小项

逻辑函数表达式可以使用其最小项相加来表示

  • 最小项的定义
    一个函数的某个乘积项包含了函数的全部变量,其中每个变量都以原变量或反变量的形式出现,且仅出现一次,则这个乘积项称为该函数的一个标准积项,通常称为最小项。

  • 表示方法
    通常使用 \(m_i\) 来表示最小项;
    下表\(i\)的确认:
    把最小项中原变量记为1,反变量记为0,当变量顺序确定后,可以按顺序排列成一个二进制数,则与这个二进制数相对应的十进制数,就是这个最小项的下标i。

2、最小项与卡诺图之间转换

卡诺图

  • 一种描述逻辑函数的特殊方格图
  • 方格图中,每一个方格代表逻辑函数的一个最小项,而且几何相邻(在几何位置上,上下或左右相邻)的小方格具有逻辑相邻性,即两相邻小方格所代表的最小项只有一个变量取值不同
  • 有n个变量,其所有的最小项个数就有\(2^n\)个,则卡诺图中就对应有这么多数量的小方格,每个小方格都满足相邻项的要求

根据最小项填写卡诺图

根据最小项,确认变量的顺序,然后将卡诺图填0/1,填写示例如下:

image

根据逻辑函数填写卡诺图

\( F(A,B,C,D)=\Sigma m(0,1,2,5,7,8,10,11,14,15) \)
绘制四变量的卡诺图,如下:
image

3、卡诺图化简方法

卡诺图相邻性的特点保证了几何相邻两方格所代表的最小项只有一个变量不同。因此,若相邻的方格都为1(简称1格)时,则对应的最小项就可以合并。合并的结果是消去这个不同的变量,只保留相同的变量。

卡诺图的特性:

  1. 两个相邻1格的最小项可以合并成一个与项,并消去一个变量
  2. 四个相邻1格的最小项可以合并为一个与项,并消去两个变量
  3. 以此类推,八个相邻一格的最小项可以合并为一个与项,并消去三个变量
    image

根据这种特性,可以使用卡诺图化简求最简与或表达式,例如:
\( F(A,B,C)=\Sigma m(1,2,3,6,7) \)
其卡诺图为:
image

化简后可得:
image

卡诺图化简步骤与规则:

  1. 列出逻辑函数的最小项表达式,由最小项表达式确定变量的个数(如果最小项中缺少变量,应按例的方法补齐)。
  2. 画出最小项表达式对应的卡诺图。
  3. 将卡诺图中的1格画圈,一个也不能漏圈,否则最后得到的表达式就会与所给函数不等;1格允许被一个以上的圈所包围。
  4. 圈的个数应尽可能得少。即在保证1格一个也不漏圈的前提下,圈的个数越少越好。因为一个圈和一个与项相对应,圈数越少,与或表达式的与项就越少。
  5. 按照2k个方格来组合(即圈内的1格数必须为1,2,4,8等),圈的面积越大越好。因为圈越大,可消去的变量就越多,与项中的变量就越少。
  6. 每个圈应至少包含一个新的1格,否则这个圈是多余的。
  7. 用卡诺图化简所得到的最简与或式不是唯一的。

具体示例可查阅相关资料进行练习,也可参考最后给的链接

参考链接:

1、卡诺图化简法

标签:化简,变量,最小,学习,相邻,方格,卡诺图
From: https://www.cnblogs.com/ziany/p/18161891

相关文章

  • 芯科SiWx917学习笔记:1-测试Out of Box Demo
    实验目的:测试OutofBoxDemo实验环境:SimplicityStudioV5实验器材:WirelessStarterKitMainboard(BRD4002ARevA06)+ SiWG917SingleBandWi-FiandBLE8MBFlashRadioBoard(BRD4338ARevA01)实验开始:1.新建工程:在demos中找到OutofBoxDemo(SoC)应用演示工程......
  • ROS2学习-节点名随记
    1.节点名定义:主函数中的node=WriterNode("he")定义了该节点的名称defmain(args=None):"""ros2运行该节点的入口函数,可配置函数名称"""rclpy.init(args=args)#初始化rclpynode=WriterNode("he")#新建一个节点rclpy.spin(nod......
  • LLM学习(5)——系统评估与优化
    5.1如何评估LLM应用5.1.1验证评估的一般思路通过不断寻找BadCase并进行针对性优化,将这些案例逐步加入验证集,形成一个具有一定样本数量的验证集。针对这种验证集,逐个进行评估变得不切实际,需要一种自动评估方法来对整体性能进行评估。验证迭代是构建以LLM为核心的应用程序的......
  • ROS1学习记录(14.0)(古月ROS入门终章:怕什么真理无穷,进一寸有进一寸的欢喜)
    学习视频:21.课程总结与进阶攻略_哔哩哔哩_bilibili   机械臂:     机器人深入书籍:机器人学导论(推荐)   ......
  • ROS1学习记录(13.0)
    学习视频:20.常用可视化工具的使用_哔哩哔哩_bilibili 打开roscore核心先跑起来,再开海龟仿真器,对于qt指令可视化运行可以查看全部指令,方法就是输入rqt_再按两下tab就好先用rqt_console看看,输出日志信息出现问题就会发出一些日志,比如下面的撞墙 下面的HighlightMessages......
  • ROS1学习记录(12.0)
    学习视频:19.launch启动文件的使用方法_哔哩哔哩_bilibili使用launch启动可以减少不断打开终端重复输入调用不同节点的工作; 使用:其中name的意义是取代掉程序文件中的初始化的节点名字,相当于另取一个别名进行代表,代表这个节点,这样在调用相同节点时名字不同就不会起冲突;pkg,na......
  • 我刚开始学习java,我什么也不懂,框架到底是什么,没有框架可以使用java吗
    我刚开始学习java,我什么也不懂,框架到底是什么,没有框架可以使用java吗2024/4/1916:00:01当你刚开始学习Java时,"框架"可能是一个比较抽象的概念。简单来说,框架是一组预先编写好的代码结构和库,它们提供了一种组织和设计你的应用程序的方式。框架旨在简化开发过程,提高代码的可重用......
  • Blazor 和Known 框架学习
    [框架后台首页在\Known.AntBlazor\Admin.razor <AntMenuAccordion="Context.UserSetting.Accordion"Items="UserMenus"OnClick="e=>Context.Navigate(e)"/><PageTabs@ref="tabs"Menu="CurrentMenu"Ite......
  • markdown学习
    markdown学习一级标题二级标题三级标题四级标题五级标题六级标题+++字体HelloworldHelloworldHelloworldHelloworld列表有序列表kkkiiiiooo无序列表ssss111113333图片超链接我的博客引用“盖茨比一生的信念就寄托在这盏绿灯上。对于他,这是代表未......
  • 【pytorch学习】之线性神经网络-softmax回归
    softmax回归回归可以用于预测多少的问题。比如预测房屋被售出价格,或者棒球队可能获得的胜场数,又或者患者住院的天数。事实上,我们也对分类问题感兴趣:不是问“多少”,而是问“哪一个”:某个电子邮件是否属于垃圾邮件文件夹?某个用户可能注册或不注册订阅服务?某个图像描绘的是驴、......