b 1f 和 b 1b 汇编解释
2014-02-20 13:35
148 查看
b 1b 中的b是backward的意思,------>跳到程序的前面(往上)
b 1f 中的f是forward的意思, ------>跳到程序的后面(往下)
1表示标号(局部标号)
分支跳转到局部标号“1”,往下跳
start:
.type start,#function
.rept 8
mov r0, r0
.endr
b 1f
.word 0x016f2818 @ Magic numbers to help the loader
.word start @ absolute load/run zImage address
.word _edata @ zImage end address
1: mov r7, r1 @ save architecture ID
mov r8, r2 @ save atags pointer
分支跳转到局部标号“1”,往上跳
1: ldmia r2!, {r9 - r12, r14} @ copy relocation code
stmia r1!, {r9 - r12, r14}
ldmia r2!, {r9 - r12, r14}
stmia r1!, {r9 - r12, r14}
cmp r2, r3
blo 1b
mov sp, r1
add sp, sp, #128 @ relocate the stack
以上代码摘自内核代码head.S文件中
b 1f 中的f是forward的意思, ------>跳到程序的后面(往下)
1表示标号(局部标号)
分支跳转到局部标号“1”,往下跳
start:
.type start,#function
.rept 8
mov r0, r0
.endr
b 1f
.word 0x016f2818 @ Magic numbers to help the loader
.word start @ absolute load/run zImage address
.word _edata @ zImage end address
1: mov r7, r1 @ save architecture ID
mov r8, r2 @ save atags pointer
分支跳转到局部标号“1”,往上跳
1: ldmia r2!, {r9 - r12, r14} @ copy relocation code
stmia r1!, {r9 - r12, r14}
ldmia r2!, {r9 - r12, r14}
stmia r1!, {r9 - r12, r14}
cmp r2, r3
blo 1b
mov sp, r1
add sp, sp, #128 @ relocate the stack
以上代码摘自内核代码head.S文件中
相关文章推荐
- ARM汇编里面的关于cpsid.n中的.n解释
- 汇编OF溢出位的解释!溢出条件是什么?到底是怎么造成溢出的?
- 汇编寄存器英文解释
- 用自己的语言解释一段简单的汇编
- 从概念及汇编角度解释指针本质
- 源程序、目标程序、汇编程序、编译程序、解释程序
- 汇编角度解释溢出段错误
- 精确解释java的volatile之可见性、原子性、有序性(通过汇编语言)
- 汇编语言代码解释
- 一个简单的双重for循环的汇编语句解释
- 汇编语言常见术语解释
- 函数调用的原理4点:函数产生名不同,压栈顺序不同,不应由客户清理,客户清理则可执行文件大小更大(许多参考文章,有汇编解释)
- 运算符汇编解释
- C++反汇编揭秘1 一个简略地C++程序反汇编解释分析
- 汇编基础---寄存器的完整解释
- 《软考》——汇编,编译,解释
- 两篇图文并茂,兼有汇编解释的函数调用
- 简单的双重for循环的汇编解释
- GNU 汇编中的#define 等宏定义解释
- 汇编语言中寄存器的完整解释