AVR汇编:如何继续分支指令?

时间:2014-03-29 20:16:17

标签: assembly avr

说你有一个分支指令带你到其他一些子程序,是否有可能返回到调用子程序并继续?..这样的事情:

prog:
cp r16,r17
breq true
...

true:
out PORTA,r16
HOW DO I RETURN TO EXECUTE THE REST OF prog?

我希望这说明了这个问题。

谢谢!

3 个答案:

答案 0 :(得分:1)

使用无条件分支(rjmp)重新分支,或将true处的代码转换为子例程,并将breq转换为brne以跳转超过您放置的rcall true

prog:
    cp r16,r17
    brne false
    rcall true
false:
    ...

 ...

true:
    out PORTA,r16
    ret

答案 1 :(得分:0)

prog:
    cpse r16,r17
    rjmp continue
    out PORTA,r16
continue:
    ...

答案 2 :(得分:0)

B and C