找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4511|回复: 13
打印 上一主题 下一主题
收起左侧

if+子程序和中断有什么区别

  [复制链接]
跳转到指定楼层
楼主
ID:306591 发表于 2019-7-26 08:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果我在一段不长而且是循环执行的程序中直接加入  if 按键按下  (子程序)  那么这不就和中断一样了么= =
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:546770 发表于 2019-7-26 09:16 | 只看该作者
中断就是主程序执行中被打断去做另一件事,而if是满足条件执行,中断的优先级更高,这样子来说吧,在if和中断同时满足的条件下,先执行中断,中断完了再执行if。
回复

使用道具 举报

板凳
ID:589815 发表于 2019-7-26 09:51 | 只看该作者
这样子就不能互相打断了呀,只能执行完上一个if里的内容再继续,而中断是可以根据优先级打断正在执行的中断处理程序的哦
回复

使用道具 举报

地板
ID:47286 发表于 2019-7-26 09:55 | 只看该作者
程序是一条一条顺序执行的  中断可以随时打断这个顺序优先执行 执行完中断后再从断点恢复顺序

多数时候是一样的 因为片子执行语句时间很短 但细分的话 假如需要随时响应或者时序很紧密的时候 中断就更好
回复

使用道具 举报

5#
ID:516863 发表于 2019-7-26 10:13 | 只看该作者
  在程序中if是判断作用,如果中途按下if按键,程序会执行一个程序段后停止,表面上形似于中断,但实际上程序处于等待状态,等等你输入判断条件,如果你没有输入条件,程序处于无限等待状态,无法执行其他,假死状态;而中断则不同,中断是逻辑判断后的结果,有跳出(程序结束停止)或转向(启动执行其他),可以进行其他操作。
回复

使用道具 举报

6#
ID:282095 发表于 2019-7-26 10:23 | 只看该作者
优先级顺序不同
回复

使用道具 举报

7#
ID:316613 发表于 2019-7-26 10:25 | 只看该作者
逻辑上不一样,中断时去中断服务函数执行,执行完服务函数在回到被打断的地方继续执行
回复

使用道具 举报

8#
ID:398075 发表于 2019-7-26 17:04 | 只看该作者
if语句在While循环里满足相应的条件才能执行,然而中断能够打断if的运行,简单来说中断的优先级比较高
回复

使用道具 举报

9#
ID:147266 发表于 2019-7-26 22:05 | 只看该作者
完全没有可比性……
回复

使用道具 举报

10#
ID:388197 发表于 2019-7-26 23:08 | 只看该作者
如果程序就两行三行,那的确体会不出什么区别.
回复

使用道具 举报

11#
ID:306591 发表于 2019-7-27 08:02 | 只看该作者
感谢楼上各位大佬的解答  我明白啦
回复

使用道具 举报

12#
ID:511461 发表于 2019-7-28 15:50 | 只看该作者
中断的优先级比if的优先级高
回复

使用道具 举报

13#
ID:589379 发表于 2019-7-28 17:55 | 只看该作者
中断时在做一件事时间时达到那个条件直接跳过去,后面回来的时候还是继续做之前的事,条件语句是你执行到那里时才进行判断如果达到就执行不达到就往后走
回复

使用道具 举报

14#
ID:841073 发表于 2020-11-17 20:34 | 只看该作者
小黑屋525 发表于 2019-7-26 09:16
中断就是主程序执行中被打断去做另一件事,而if是满足条件执行,中断的优先级更高,这样子来说吧,在if和中 ...

请问在程序中该如何写呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表