NOP指令概述及作用

/*********************************************************************
 * Author  : Samson
 * Date    : 08/03/2014
 * Test platform:
 *              Linux ubuntu 3.2.0-58-generic-pae
 *              GNU bash, version 4.2.39
 * *******************************************************************/

计算机科学中,NOP或NOOP(No Operation或No Operation Performed的缩写,意为无操作)是汇编语言的一个指令,一系列编程语句,或网络传输协议中的表示不做任何有效操作的命令。

NOP是用执行一条具有操作数,具有相同效果的指令;
NOP指令通常用于控制时序的目的,强制内存对齐,防止流水线灾难,占据分支指令延迟),或是作为占位符以供程序的改善(或替代被移除的指令)。

C语言中最简单的NOP块被称为空语句;其只包括一个分号。
;

但是至于是否是把这样的一个分号在编译的时候编译为NOP指令,则是需要确定编译器是如何进行编译的,有可能对此句进行了优化,不一定就是完全能够对上号的;

NOP通常在破解软件时有特殊用途,例如检查序列号,特定硬件或软件需求,加密狗等的软件。这是通过更改函数和/或子程序以跳过安全检查,直接返回期望的检测值实现的。由于大多数安全检查子程序中的指令会被废弃,它们会被NOP所代替。即是使用NOP指令将进行检查的原来的代码给替换掉。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值