_nop_在c语言里怎么用呢?

 我来答
小星星教育知识分享
高粉答主

2019-12-10 · 用教师的智慧点燃学生的智慧火花
小星星教育知识分享
采纳数:202 获赞数:67136

向TA提问 私信TA
展开全部

c语言里没有这个_nop_函数,这个函数是在51单片机里使用的。

作用:对于延时很短的,要求在us级的,采用“_nop_”函数,这个函数相当汇编NOP指令,延时几微秒。

NOP指令为单周期指令,可由晶振频率算出延时时间,对于12M晶振,延时1uS。对于延时比较长的,要求在大于10us,采用C51中的循环语句来实现。

扩展资料

nop指令在C语言中的使用

示例:

#inluce<stdio.h>

assemblyinlinevoidinsert_nop()

{

asm_begin

nop

asm_end

}

天云小店
推荐于2017-09-02 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:780万
展开全部

C语言中没有_nop_()函数,该函数是在51单片机中用的延时函数,延时一个指令周期。


例如用6MHz的晶振,则如下for循环大约延时1秒。

int i;
for(i=0; i<6000000; i++)
    _nop_();  // 延时一个指令周期,相当于执行一条无意义的语言
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王爱飞waffaw
2011-02-19 · TA获得超过317个赞
知道小有建树答主
回答量:353
采纳率:0%
帮助的人:217万
展开全部
实现方法各异,如果你使用的编译器中有这个函数的话,恭喜你,你可以直接调用,如果没有,那你可以使用内联汇编来自己实现这个函数(当然,涉及到汇编语言的东西一般是平台相关的)
追问
它不是相当于一个机器周期吗,在头文件包含吗,那怎么调用函数呢,谢了
追答
不知道阁下的头文件包含是指什么,如果是函数形式,那你就可以想一般的函数调用一样调用就可以 啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-02-19
展开全部
__asm{
nop
nop
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式