所以我正在研究source code for Redox OS(一个用Rust制作的操作系统),看看我是否可以学到一些东西。
我正在阅读bootloader
文件夹中的汇编文件start.s。在interrupt_vector_table
标签中我们有:
interrupt_vector_table:
b . @ Reset
b .
b . @ SWI instruction
b .
b .
b .
b .
b .
究竟是什么b .
?
我不是一个完整的装配初学者,我以前从来没有见过这个。
答案 0 :(得分:4)
ARM CPU的b
指令与x86 CPU的jmp
指令几乎相同:跳转指令
使用GNU工具链.
表示:指令本身的地址。
所以b .
等于:
temporaryLabel:
b temporaryLabel
或(对于x86 CPU):
temporaryLabel:
jmp temporaryLabel