打印

关于nop()使用的问题?

[复制链接]
2505|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yoyowodeai|  楼主 | 2009-11-16 12:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
for (n=1;n<187;n++)
    {
        NOP();    //▲执行nop()要时间不?不要该句呢?
    }

大家好,我的问题就是:
▲执行nop()要时间不?不要该句呢?

这引起过你的思考吗?
沙发
6019赵文| | 2009-11-16 12:19 | 只看该作者
问个问题在中颖MCU中,机器周期与时钟周期是等同的吗?或者不等同的话,是一个机器周期等于几个时钟周期!

使用特权

评论回复
板凳
BLACKFIN| | 2009-11-16 12:20 | 只看该作者
nop 当然需要时间

使用特权

评论回复
地板
huziliu| | 2009-11-16 12:24 | 只看该作者
不要该句时间短一些了呗!

使用特权

评论回复
5
bit6019| | 2009-11-16 13:20 | 只看该作者
NOP就是00, 一个NOP占1字节程序空间,占1指令周期。
是否“作用很大”说不准,但有用是肯定的。
大概可以找到以下用途:
1)需要精确时间时,  用NOP混时间,使时间精度能达到1指令周期。
2)各子程间填几个NOP(实际是用DS做),二进制码看起来清晰点,有一点象写**分段空格,而且程序跑飞时,这些空格能带来点好处(这是题外话了)
3)有的高手愿意在程序内填一块块的NOP(实际是用DS,DW做),便于在调试时对指令(代码级的)做小的修正
4)有的仿真设备在做断点调试时,如果断点处的指令不是3字节的,就可能出些莫名其妙的问题,在此断点的前面或后面用NOP补足到3,就避免了。
肯定还会有别的用处, 看各人怎么用了.

使用特权

评论回复
6
huziliu| | 2009-11-16 18:59 | 只看该作者
一句汇编nop 就需要一个机器周期,
机器周期=时钟周期

使用特权

评论回复
7
yoyowodeai|  楼主 | 2010-2-25 00:34 | 只看该作者
楼主,huziliu兄弟怎么了?

使用特权

评论回复
8
warm_ice| | 2010-2-26 11:50 | 只看该作者
楼主,huziliu兄弟怎么了?
yoyowodeai 发表于 2010-2-25 00:34

huziliu 可能是发布了广告贴之类的,被屏蔽了.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

191

主题

1265

帖子

2

粉丝