【发布时间】:2014-06-24 01:10:12
【问题描述】:
查看amtel avr instruction set,我注意到分支指令如果执行则需要2 个周期,如果不执行则需要1 个周期,而跳转指令需要3 个周期。
这是为什么?
【问题讨论】:
-
我读到 jmp 允许访问整个程序内存。这可能是为什么?
-
另外,如果我想分支但没有条件,我该怎么做而不是 jmp
-
JMP只是一个 4 字节指令。请注意,RJMP是一条 2 字节指令,执行时间为 2 个时钟。 -
@Jester:RJMP 可以转到标签而不是特定数量的指令(我知道它是同一回事,但我的意思是我可以只写标签吗?)
-
是的,汇编器会为你计算出距离。但是,它应该在 2k 范围内。