|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
很多人在写简单的裸机代码或分析uboot时,常常遇到adr ldr指令。却分不清这2者的区别,今天就来谈谈adr与ldr指令。
, C6 d5 l2 J$ L, i6 P
2 `4 T# Q* \+ z
" U; }0 p3 u7 |8 @1 k. \先写启动代码test_adr.S:
C( s/ @1 B/ s# {
9 g# A2 Q! B0 o$ `' O) o% Z! k; d7 C, q- S( ?7 Q
- .text
- .globl _start
- _start:
- ldr r0, test
- adr r0, test
- ldr r0, =test
- nop
- test:
- nop
. R& j% k' ?& k, V) a/ ?( M3 ~& z 9 w* [- g. a) ]6 O/ m
9 I5 t1 P- K k. T* D& i t+ a/ B
6 l: ^ ]( |# D0 d4 ~1 ^5 A
Makefile:$ U \% P* R; f+ k. Q8 P2 S
8 s% X% ?8 x3 i3 E
) z( }. r& i6 `! N, k9 Z( W1 f) q `/ Z% M
2 Z( w5 B2 t3 h. @- n; r
( ^1 U8 w5 V9 y
/ d/ N: L1 b5 m. V
: {1 K' ?% c' T7 A# v# P0 v |
|