ARM 汇编中的语法

The*_*ker 1 arm

我一直在做更多的阅读并找到了这个链接。在这里,实现互斥锁的大部分步骤都非常直接且易于理解……但是在此代码段中有一些我不明白的事情:

    BEQ     %b1           ; Failed - retry from 1  
    ; Lock acquired  
    DMB                   ; Required before accessing protected resource  
    BX      lr  2         ; Take appropriate action while waiting for mutex to become unlocked  
    WAIT_FOR_UPDATE  
    B       %b1           ; Retry from 1  
Run Code Online (Sandbox Code Playgroud)

存在于lock_mutex过程中。%b1%f2是什么??它们与什么有关?

谢谢,维杰

vha*_*lac 5

%b/f用于引用指令周围的临时标签。%b表示“后退”,%f表示“前进”。数字是要使用的标签。例如,2您在代码中的 将%f2在前三行和%b2后两行中引用。