您的位置 首页 FPGA

空操作NOP指令在ARM和C51的差异

(一)C51调用方法includeintrinsh>_nop_();(二)ARM下调用方法__asmvoidnop(void){NOP}然后在之后的C代码中调用该函数:voidmain(){

(一)C51调用办法

#include

_nop_();

(二)ARM下调用办法

__asmvoidnop(void)
{
NOP

}

然后在之后的C代码中调用该函数:

voidmain()
{

nop();


}

关于NOP指令
在MCS-51单片机指令会集NOP的指令码为0x00,而ARM指令会集的NOP是一条伪指令,编译体系用一条MOV指令代替其履行。

NOP
编译体系生成的机器码:[0xe1a00000] nop
MOV r0, r0, lsl #0
编译体系生成的机器码:[0xe1a00000] nop

那么ARM指令会集有没有指令码为0x00的指令呢?有!
ANDEQ r0,r0,r0
编译体系生成的机器码:[0x00000000] andeq r0,r0,r0

单片机0xFF对应的指令如下

MOV R7,A

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/fpga/276755.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部