NOP指令的作用

通常NOP用于对齐指令的地址。
NOP指令的特性:

  • 因为NOP是X86指令中最短的,只有1byte
  • 处理器执行NOP指令时,不进行任何的操作,不会影响系统的状态

NOP也有其他的用途:

1)编程时如果使用了支持lable标记的编译器,如果使用JXX someLabel1(JXX是条件跳转),编译器将会将someLabel替换为Label对应的地址。然而如果我们手动修改了汇编代码,那么指令的长度就会发生了变化,Label的地址也会发生变化,因此可以使用NOP来将Label的地址恢复到之前的地址

2)NOP sled 如果我们想跳转到某条具体的指令,但是却不知道指令的地址,那么可以在目标指令前加入足够数量的NOP指令。跳转的地址设置到NOP的范围内,那么执行完毕跳转之后,就会持续的执行NOP指令,直到最终跳转到期望的目标指令

3)NOP也可以进行代码替换,比如想非法的避开软件的写保护操作,原来的软件代码是if(genuineCopy),会进行自动的拷贝,我们可以通过将genuineCopy这样的检查条件替换为NOP,这样就不会在if中进行任何有效地操作,从而非法的改动代码。

欢迎关注我的公众号《处理器与AI芯片》

X86指令:NOP指令相关推荐

  1. 汇编 整数常量 实数常量 字符常量 字符串常量 保留字 标识符 伪指令 指令 nop指令

    整数常量 [{ + | - }] digits { radix } 符号 含义 h 十六进制 q/o 八进制 d 十进制 b 二进制 r 编码实数 t 十进制(备用) y 二进制(备用) 24 ; 十 ...

  2. X86汇编---寄存器+指令

    文章目录 X86汇编常见的寄存器 x86汇编指令集大全 X86汇编常见的寄存器 4个数据寄存器(EAX.EBX.ECX和EDX) 2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP ...

  3. NOP 指令作用[转]

    nop指令的作用是什么,我就想起来一条,就是通过nop指令的填充(nop指令一个字节),使指令按字对齐,从而减少取指令时的内存访问次数.(一般用来内存地址偶数对齐,比如有一条指令,占3字节,这时候使用 ...

  4. (1)51单片机NOP指令

    提问:什么是NOP指令?干什么用的?单片机程序里执行一条nop指令需要多长时间? (1)一个NOP就是一个机器周期 (2)空指令,延时一个机器周期 (3)这个与单片机型号.指令类型和使用的晶振频率有关 ...

  5. c51语言语句 指令集,关于 NOP 指令 汇编

    nop函数可以用来延时,请问1个NOP延时多少时间,怎么计算? 附一段说明: void _nop( void ); A NOP instruction is generated, before and ...

  6. cmd指令大全指令_汇编语言常用指令大全

    MOV 指令为双操作数指令,两个操作数中必须有一个是寄存器. MOV DST , SRC // Byte / Word 执行操作: dst = src 1.目的数可以是通用寄存器, 存储单元和段寄存器 ...

  7. 汇编指令 栈现场保护 算数运算 位运算 比较指令 跳转指令 循环指令 寻址方式

    文章目录 1 nop 指令 2 现场保护指令 2.1 push 与 pop 2.2 pushad 与 popad 2.3 pushfd 与 popfd 3 内存操作 3.1 mov指令 3.2 mov ...

  8. cmd指令大全指令_Linux 超全实用指令大全 | CSDN 博文精选

    作者 | 沉晓 责编 | 屠敏 出品 | CSDN 博客 运行级别和找回root密码指定运行级别运行级别说明:0:关机1:单用户[找回丢失密码]2:多用户状态没有网络服务3:多用户状态有网络服务4:系 ...

  9. cmd指令大全指令_干货 | Linux 超全实用指令大全

    运行级别和找回root密码 指定运行级别 运行级别说明: 0:关机 1:单用户[找回丢失密码] 2:多用户状态没有网络服务 3:多用户状态有网络服务 4:系统未使用保留给用户 5:图形界面 6:系统重 ...

最新文章

  1. Android Animation (安卓动画)概念简介
  2. 2021年大数据Hive(二):Hive的三种安装模式和MySQL搭配使用
  3. java简单纸牌游戏_2020年最佳2人棋盘游戏:拼凑,Kingdomino等
  4. windows php的Memcache安装和使用方法
  5. Threejs javascript 3D建模 框架
  6. 彻底理解python3的编码和解码过程
  7. FIX协议教程1-什么是FIX会话和管理消息
  8. 《中国通史 2016》_12_读后感
  9. 基于深度学习目标检测和人体关键点检测的不健康坐姿检测
  10. 英语语法笔记——状语从句(五)
  11. 2011年的赢家和输家
  12. html怎么添加音乐改大小,给视频添加背景音乐 或者更换音频ppt添加视频文件幻灯片尺寸设置...
  13. 基于HASM模型的土壤高精度建模matlab仿真
  14. 从幕后走向舞台中央,微软NLP有何新进展?
  15. 学习LInux命令(17)
  16. R语言绘图——组间差异箱线图图,小提琴图、聚类热力图、相关系数热力图
  17. java网络传输压缩数据_Java数据压缩与传输实例Java源码
  18. Manjaro搭建无密访问samba服务器
  19. 教育类app开发的基本流程是什么?
  20. (原創) 11/10/1982 セカンド・ラブ (中森明菜)

热门文章

  1. mac上使用sips命令快速裁剪、旋转、翻转图片
  2. i9 12900k配什么主板 酷睿i9 12900k配什么显卡
  3. 【Android组件开发】自定义的多宫格布局
  4. 中文文本分类之TextRNN
  5. 无论是单片机还是自动控制(PLC)都是该专业的必修专业课
  6. 【论文写作】企业投资价值分析系统绪论参考
  7. 【C语言】大小端字节序判断 常见笔试题型
  8. EXCEL中汉字转拼音
  9. 最强天文模拟软件:Starry Night Pro Plus 8 for Mac
  10. html 中几次方,平方米,立方米.