找回密码
 立即注册

QQ登录

只需一步,快速开始

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

_nop_();这句什么意思,有什么作用。

  [复制链接]
跳转到指定楼层
楼主
ID:263267 发表于 2018-1-12 15:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10黑币

最佳答案

查看完整内容

NOP指令即“空指令”,在51单片机中机器码为0x00(0)。执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP后面的一条指令。所以NOP指令自然也会占用执行一个指令的CPU时间片。 常用于程序延时或精确计时,不过在较快的CPU上不明显。 主要作用: 1、字节填充对齐 2、精确延时和计时 3、破解程序的call验证 4、等待其他设备执行完毕 5、清除由上一个算术逻辑指令设置的flag位 6、辅助jmp[1] 、call[2] ...
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:155507 发表于 2018-1-12 15:46 | 只看该作者
NOP指令即“空指令”,在51单片机中机器码为0x00(0)。执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP后面的一条指令。所以NOP指令自然也会占用执行一个指令的CPU时间片。
常用于程序延时或精确计时,不过在较快的CPU上不明显。
主要作用:
1、字节填充对齐
2、精确延时和计时
3、破解程序的call验证
4、等待其他设备执行完毕
5、清除由上一个算术逻辑指令设置的flag位
6、辅助jmp[1]  、call[2]  等指令
回复

使用道具 举报

板凳
ID:57657 发表于 2018-1-12 16:04 | 只看该作者
空白指令,只有延时作用。
回复

使用道具 举报

地板
ID:274868 发表于 2018-1-12 16:15 | 只看该作者
空指令,延时一个指令周期,如果是传统51单片机,外部晶振是12M,那么延时时间为1us、12M*12=1us
回复

使用道具 举报

5#
ID:274834 发表于 2018-1-12 16:34 | 只看该作者
空指令,延时一个指令周期,如果是传统51单片机,外部晶振是12M,那么延时时间为1us、12M*12=1us
回复

使用道具 举报

6#
ID:275310 发表于 2018-1-12 18:09 | 只看该作者
空指令
回复

使用道具 举报

7#
ID:267230 发表于 2018-1-12 18:38 | 只看该作者
这个函数是延时一个机器周期的意思,它包含在头文件intrins.h中,只要程序应用到_nop_(),就需要有头文件intrins.h的声明。
回复

使用道具 举报

8#
ID:123732 发表于 2018-1-12 20:28 | 只看该作者
空操作,用来延时很短暂的时间
回复

使用道具 举报

9#
ID:261000 发表于 2018-1-12 22:31 | 只看该作者
呵呵,就是等一等用的。
回复

使用道具 举报

10#
ID:265553 发表于 2018-1-13 23:45 | 只看该作者
空指令
回复

使用道具 举报

11#
ID:453966 发表于 2018-12-25 19:32 | 只看该作者
一个Nop指令大概多长时间
回复

使用道具 举报

12#
ID:426861 发表于 2018-12-26 10:40 | 只看该作者
空指令。常用于程序延时或精确计时,不过在较快的CPU上不明显。
主要作用:
1、字节填充对齐
2、精确延时和计时
3、破解程序的call验证
4、等待其他设备执行完毕
5、清除由上一个算术逻辑指令设置的flag位
6、辅助jmp、call等指令
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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