NOP(No Operation)意为无操作,是汇编语言的一个指令。NOP指令既空指令。NOP指令通常作为伪指令。但是,如果在ARMv6K、ARMv6T2、ARMv7、ARMv8-M结构体系中,NOP不是伪指令。
伪指令(Pseudo Instruction)是用于对汇编过程进行控制的指令,该类指令并不是可执行指令,没有机器代码,只用于汇编过程中为汇编程序提供汇编信息。伪指令包括ADR、ADRL、LDR、NOP。
NOP伪指令使用以及描述如下:
Syntax
NOP在汇编过程中,将r0寄存器的数据赋值给r0寄存器,相当于做了一次无用功。下图也给出了NOP的语法、描述。
此图来自IAR的帮助文档。
根据百度百科的解释,NOP的主要作用如下:
1. 字节填充对齐
2. 精确延时和计时3. 破解程序的call验证4. 等待其他设备执行完毕5. 清除由上一个算术逻辑指令设置的flag位6. 辅助jmp、call等指令
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网
网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
指令
+关注
关注
1文章
607浏览量
35692 -
nop
+关注
关注
0文章
9浏览量
1924
发布评论请先 登录
相关推荐
STM8S的NOP指令一个周期是多少?
大家好,STM8S的NOP指令一个周期是多少?现在外部晶振16MHZ,CPU不分频,请问NOP的周期是多少?因为想用NOP做延时,谢谢!
发表于 04-09 07:54
ST芯片中nop指令的延时问题
如题,在程序运行中经常用到延时。出了常用的定时器以外,还有一种直接调用指令nop()来产生 延时的方法。这条指令的延时是取决于时钟频率的,我的疑惑是,直接调用nop()
发表于 06-02 09:54
请问在C语言调用汇编指令asm (" NOP ");便是等待一个指令周期,asm (" NOP 5");表示什么意思?
您好TI:在C语言调用汇编指令asm (" NOP ");便是等待一个指令周期,asm (" NOP 5");表示什么意思?
发表于 07-24 09:00
__NOP();延时函数 精选资料分享
不用系统时钟与通用外设时钟的延时函数介绍下__NOP();函数;它类似于汇编里的伪指令,也称作“空指令”;它不执行操作,但占一个程序步。空指令使用时会占用执行一个
发表于 08-18 07:26
如何在s32k中添加NOP指令?
所以我需要生成一些等待延迟几微秒,我需要在延迟循环中添加 NOP 指令,我找不到 s32k146 的 NOP 指令。
我在用
ARM 的 S32 设计工作室
版本:2018.R1
内
发表于 04-28 07:12
#define NOP() _nop_() /* 定义空指令 */这个空指令怎么用的啊?
#defineNOP() _nop_()/* 定义空指令 */
这个空指令怎么用的啊?
发表于 06-19 07:47
单片机C语言中如何使用nop函数进行短延时的效果资料和程序说明
单片机C语言中如何使用nop函数进行短延时的效果资料和程序说明
标准的C语言中没有空语句。但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果。这在汇编语言中很容易实现,写几个no
发表于 03-05 11:01
•10次下载
51单片机C语言的nop_()指令有什么作用和详细资料说明
C语言中没有_nop_()函数。在51C中一般包含在#include “intrins.h” 头文件中。该函数是在51单片机中用的延时函数,表示执行一条没有什么意义的指令,延时一个指令周期,有的
发表于 07-05 17:41
•1次下载
如何用NOP指令覆盖相关代码绕开鉴权
启动后检查一次注册码是否有效——一个 if 判断,他也认定,若反汇编软件只要 欺骗过这条判断加密措施荡然无存。 群里我给他一个破解设计思想:“利用NOP指令覆盖相关代码绕开鉴权”。 2. 演示 下面是我做的一个例子演示运用NOP
plc中常见指令的操作方法
与母线连接,也不能象指令表中的OR、ORI、ORP、ORF指令那样单独使用。 2、NOP(空操作指令) 是一条空操作指令,用于程序的修改。它
发表于 12-17 14:14
•5100次阅读
nop不同晶振频率下的延时时间
_nop_()函数包括在库函数intrins.h中的表示空循环一个机器指令的时间,12M中表示1us;6M中表示2us;24M中表示0.5us(微妙)1S=1000ms=1000000us;NOP
发表于 01-18 10:22
•7次下载
评论