找回密码
 注册
关于网站域名变更的通知
查看: 238|回复: 2
打印 上一主题 下一主题

ARM中局部标号的跳转问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-1-26 11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
添加RW数据初始化程序断后,完整的程序代码如下:   
7 x) W; `% U$ }% E& B;正文段=========================================================================
- g6 F3 d& c. @7 j2 h3 G! F+ `     AREA EXP6_1,CODE,READONLY
% I  P& i) j. u     ENTRY6 k' k/ N: O: b8 D
     ARM
3 W& f" G1 ]& A, W, T" W     ;数据区初始化代码段---------------------------------------------------------------, L5 ?% e- [# n8 E
     IMPORT|Image$$RO$$Limit|
* W+ b( \& o4 Q) ~6 ~0 t3 G  W& W7 g; a     IMPORT|Image$$RW$$Base|' g5 w5 ^' A0 ^5 `( W4 U- v% W
     IMPORT|Image$$ZI$$Base|
/ ~0 e1 B+ |7 I6 T# q* e     IMPORT|Image$$ZI$$Limit|0 d- x5 P! v, k  p- n
     LDR RO,=|Image$$RO$$Limit|            ;初始化数据首地址送RO# e9 A. g1 |, h0 j% n1 q/ |6 ]
     LDR R1,=|Image$$RW$$Base|             ;RW区首地址送R13 ]: `: x$ Z$ Q) P$ P- q, f' \; v
     LDR R3,=|Image$$ZI$$Base|             ;ZI区首地址送R3
8 D' x0 {7 l0 ^" a2 B- b5 s" e% ]* F$ a0 g
     CMP RO,R1
) r& j- |1 \9 ?2 O5 `- T* a4 ]9 R     BEQ %F1% f, K8 }; L1 i" Y2 _# R1 s
06 R2 Z# e, n( Q* m6 t
     CMP R1,R3
4 Q5 K9 v0 ^' N5 E. x     LDRCC R2,[R0],#4, h0 t# y' L7 x1 I. e; W$ N
     STRCC R2,[R1],#4/ U2 u) k; E: s' X( g
     BCC %B0
7 c, P7 s  y6 B1 O1
* U6 V1 p8 ?4 F1 T8 \' r/ l  _- P     LDR R1,=|Image$$ZI$$Limit|: `) n9 u& ]. S8 Y
     MOV R2,#0
) J8 S3 ]1 U  A# g  {. p' u2 R2, W# F2 e( E' y  I
     CMP R3,R1
" q6 l* u" e! |     STRCC R2,[R3],#49 I3 L0 T. d5 W2 }0 @# v
     BCC %B24 L4 G- T# ?8 l& P9 l
     ;用户逻辑代码段---------------------------------------------------------------9 h4 j/ U; ?+ c6 O5 ]2 V
     LDR R0,=DATA1* k  ]6 h) H% z3 l2 k2 v  P
     LDR R1,[R0]   : d/ e) \8 F; I5 L: @
     LDR R3,=0x55555555
, {2 a5 |  l8 Y" b2 g: AHALT
6 ?% T) M, h1 I/ t) q: o     B HALT! Y% K. o- ?, E/ a
    ;静态数据区===================================================================
" I! \) E4 f8 @0 |# G/ C    AREA EXP6_1DT,DATA,READWRITE
( B  N' f" N! ~/ r3 A" d' c. uDATA1  DCD 0x88888888
; a; Y* U* _+ ^0 R9 J       DCD 0x99999999& x0 }2 E. V1 H; E* c
    END  $ s% f+ @1 i4 j  ^
, j9 ~. N9 o6 v/ {
问题:
) `8 n, ?( T4 t' E程序运行到
& r: y3 L6 T( d' hCMP R0,R1# |- ?3 k  L0 d1 `/ M  ~
BEQ %F1$ p5 C- G1 D) o/ n/ A: q
后如果R0=R1,跳转到局部标号1的段落后,执行完. ?7 n' r8 n' s* R+ Z9 n
LDR R1,=|Image$$ZI$$Limit|* n! [; b2 |& u: u4 q  V2 w; c" I/ E
MOV R2,#0+ U% i9 d5 [  M6 x5 r7 B5 Q1 V; r2 g
后,
- i2 x& L  h& {5 y是顺序执行标号2的语句/ Q3 j* l! Z7 u$ `3 p1 y7 I
CMP R3,R1
) g/ d1 ]6 ~: x$ bSTRCC R2,[R3],#4$ b* e& T% w9 ]( a) X2 T
BCC %B2
4 k4 A1 ^$ M1 K" Z还是直接跳到 用户逻辑代码段
7 }9 {' G' o3 w执行9 ^5 P$ L& ]2 w: `
     LDR R0,=DATA1
( t9 ]1 {8 A- d2 ~+ `     LDR R1,[R0]   
- `" F- ^! ^  f3 x9 F( I     LDR R3,=0x55555555
. T+ V2 D, Y. l4 `HALT
" |2 X  M3 R2 B& D- e     B HALT
- C) u, `# f; r6 U, b8 o还有:
% `8 U5 R$ V% i5 O      LDRCC R2,[R0],#4
- E( x7 v0 j6 ?1 `7 J1 P* h     STRCC R2,[R1],#4" o) s" P" a' x0 w: O
是实现什么工能的+ A& B9 S+ [3 _, m; i% [$ D
请高人指点!
5 Z: s2 o4 ]! Q6 w. ]; U: k

该用户从未签到

2#
发表于 2022-1-26 11:22 | 只看该作者
程序运行到+ D( a1 c, [* v
CMP R0,R1. k8 s/ i2 S7 m! m" D/ J
BEQ %F1" f7 _0 Z9 B' L( `1 P, n! y% v
后如果R0=R1,跳转到局部标号1的段落后,执行完
+ _. ^$ [3 _9 C, u) bLDR R1,=|Image$$ZI$$Limit|. ^. F' x) d) `5 ]5 |  G
MOV R2,#0" X5 f' i9 b! ?( z4 k3 N
后,: H; v9 X& Y; A7 {% ~! E* r
是顺序执行标号2的语句  t0 `% Q1 w% X- s4 N# F; F
CMP R3,R1$ H" K, T/ \& Z
STRCC R2,[R3],#4& X1 k2 w! O  P
BCC %B2
7 R+ G; H9 Y) `& S+ d还是直接跳到 用户逻辑代码段
3 f- u  [3 R4 j% |) E1 W执行
/ p$ x4 R5 ]3 |+ _     LDR R0,=DATA1
0 N' d; C/ w9 _8 E' h$ C( Q. v/ r     LDR R1,[R0]   ' r/ ]1 ^2 e4 p& S7 r  B" d5 X
     LDR R3,=0x55555555, P3 n; b  F* W% i9 H
HALT
9 h/ q$ g  v! K/ y  C     B HALT
+ D4 u( E( q% b# [( L+ ^
" g& |$ o( l% l5 b" j0 p7 P" k+ ?---------------------------------------------------& l$ v8 h' A# I2 P* q  }$ k# _
顺序执行标号2的语句

该用户从未签到

3#
发表于 2022-1-26 13:07 | 只看该作者
CMP     r1, r3          ; 拷贝初始化数据
+ m: U0 c6 C9 P/ SLDRCC   r2, [r0], #4    ;--> LDRCC r2, [r0] + ADD r0, r0, #4        
0 y: X. M" `; j: l4 F2 iSTRCC   r2, [r1], #4    ;--> STRCC r2, [r1] + ADD r1, r1, #4
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 20:27 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表