c语言问题 关与nop函数

2019-08-19 17:44发布

如果外部晶振为11.0592MHz的话  nop延时的时间应该就是1.08us左右 但是为何nop函数放到一个函数里延时时间会变长
比如
delay()
{
    _nop_();
}
main()
{
   _nop_()://这个延时1.08us
  delay();//这个延时5us左右
while(1);
}
请问这是为什么呢???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
d1z1y2
1楼-- · 2019-08-19 18:38
本帖最后由 d1z1y2 于 2017-5-11 22:19 编辑

调用函数,会有入栈、出栈,以及LCALL类形的指令来跳转,面NOP直接成nop指令,应该是这样其实可以查看编译后的汇编指令就知道了
Electronic
2楼-- · 2019-08-19 18:42
调用函数也是需要时间的
jiaozhu
3楼-- · 2019-08-19 20:04
先看看啥叫指令周期吧

一周热门 更多>