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

哪位大神帮我将下面的ARM汇编转一下C语言吧,谢谢啦

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-7-16 17:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

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

x
哪位大神帮我将下面的ARM汇编转一下C语言吧,谢谢啦% ~" R' o1 a1 X- W( o; K5 D3 K0 C

' o$ W) p  t2 C

) W1 q: `- U& j" j' i7 q; P//ARM汇编代码
% F4 `3 Z8 v1 d  {4 n0894        B570           PUSH      {R4-R6,LR}0 e2 w7 a6 X+ s) T% J4 V' p
0896        4938           LDR       R1,D00000978;[PC,#224] R1=0x20000FA8
6 b! L  h" S( m6 s* |0 Y# s0898        2200           MOVS      R2,#0x0
& ]' p. Y2 X- B6 F" }- X089A        2404           MOVS      R4,#0x4+ E( T) U3 t/ q' H4 _
089C        F891 5041    LDRB.W    R5,[R1,#0x41]2 e  Q* h; _, t: A6 }  l+ X7 o
08A0        2301           MOVS      R3,#0x1: ~, p: l, [5 ~
08A2        2D05           CMP       R5,#57 q1 O/ }" D4 G- f; d8 B3 L3 V) X
08A4        D262           BCS       Q0000096C
2 A" S* P- b2 @8 N0 _8 e& f6 ^4 |8 Z/ ^4 L3 W% E/ T2 B
08A6        E8DF F005   TBB       [PC,R5]  C2 V  P; C+ i5 L% i3 ^# B
08AA       DB  03
* h. w; S% R: ?+ h9 N3 E              DB  25         
  A/ x  r9 C' |: R9 P6 l0 p: ~0 n08AC       DB  3B
  P9 i# h* m0 j% n8 z+ A$ t, k+ w              DB  44
. H; C2 L5 b5 D6 }1 q& v' R6 ~3 n              DB  59
; b! ^1 b0 D% ]0 Z( ?! [7 U& M              DB  00   " L4 ?$ e# d4 K  T  i! ?. v) y
//0---------------------------------------------------     # g- n0 M  s- t
08B0        F5A0 42AA    SUB.W     R2,R0,#0x5500
( Y' t# U% g% @4 @  {3 K9 q! e; o08B4        3AAA         SUBS      R2,#0xAA6 T+ t+ h. N, `& x4 s
08B6        D00F         BEQ       Q000008D8
9 j8 Z& g4 l. [2 |# \1 ~0 m9 f3 T
08B8        3A11         SUBS      R2,#0x11* ?8 h; V: H9 Q' ~0 Y* q7 h
08BA        D11A         BNE       Q000008F2
5 F5 D5 p# A' Y1 y; y
9 }3 F! x8 D9 I+ U08BC        F891 2086    LDRB.W    R2,[R1,#0x86]. p; x1 d# p" X7 o+ \
08C0        2A00         CMP       R2,#0
. K; H: L/ J, D9 t2 p  k9 F08C2        D116         BNE       Q000008F2  j0 `0 B+ J$ C7 e$ u; P

4 o1 {/ f' ], `+ Z( W08C4        F881 408A    STRB.W    R4,[R1,#0x8A]$ s% y* K4 M( ]( m- c" [( }( `
08C8        F8A1 0066    STRH.W    R0,[R1,#0x66]
$ c9 G$ w" X* {1 O3 j) E8 C08CC        F881 3087    STRB.W    R3,[R1,#0x87]% |0 s1 m. f6 J1 ?  [
08D0        F8A1 0088    STRH.W    R0,[R1,#0x88]
5 Y$ x9 m" D/ p. v08D4        2003            MOVS      R0,#0x3
8 q- K5 c) J$ v* l( u& X$ |08D6        E01D           B         Q000009142 e  L  Q2 o* }' o1 A% Q9 a7 \. u) r' f
: Z0 U% N2 n& J" ^! ]
08D8        F891 2062    LDRB.W    R2,[R1,#0x62]' G( T  y. V2 H( i. r" U2 \
08DC        2A00            CMP       R2,#0% p$ u0 x* P9 L! i2 N) U* Y
08DE        D108           BNE       Q000008F23 c! f6 O  I$ [# U4 y9 |

4 Y+ }4 G: ?& K) Y# V7 S/ g08E0        F881 408A    STRB.W    R4,[R1,#0x8A]4 S1 `' S8 d, E7 P# {
08E4        F821 0F42    STRH.W    R0,[R1,#0x42]!- w* L4 e0 e( Y1 f2 w0 B
08E8        F881 3021    STRB.W    R3,[R1,#0x21]' }) b  o- k5 R' i
08EC        8448            STRH      R0,[R1,#0x22]4 ?; V2 ^4 G* v& v* G7 [2 d
08EE        F801 3C01    STRB.W    R3,[R1,#-0x1]  C8 |0 g4 E5 z, d* ]
, \0 W, u9 {4 x  p4 a
08F2        BD70            POP       {R4-R6,PC}  ~. W, u, l# Y7 R: I+ R
: j/ L& W) x( S9 R1 N
//1--------------------------------------------------+ u" _& J( o* z# o; H1 W
08F4        F891 2063    LDRB.W    R2,[R1,#0x63]# m* m$ _2 A. H: i

7 N, r; Z5 D2 h- B: V! k% C4 i08F8        EB01 0342    ADD.W     R3, R1,R2,LSL #17 `9 J5 V: ~$ f: Q+ ^- m: U

2 }, J$ _4 l& {; S* C) I4 d08FC        1C52            ADDS      R2,R2,#1
8 s6 k( M+ m, W, J0 N" N# Y- a4 b' F
: j7 }- R4 e1 N. y9 P1 i08FE        F8A3 0042    STRH.W    R0,[R3,#0x42]
7 `! [& W8 U$ R& u7 G: V4 j5 ^' K/ a
0902        F8B1 3064    LDRH      R3,[R1,#0x64]7 w$ k2 _6 @( _- N2 K- X0 l

% ~8 u9 w+ `1 F5 b; G; y, ~% ^0906        B2D2           UXTB      R2,R2
4 B2 M+ a1 b, U8 v: Y0908        4418            ADD       R0,R33 A: H, i$ z+ X8 a3 p
090A        F8A1 0064    STRH.W    R0,[R1,#0x64]
2 A  r5 k2 V" F) {5 m  v7 m090E        2A0F            CMP       R2,#15
* n$ X1 u- C. m( }+ P# U0910        D303            BCC       Q0000091A7 ?2 ^( M4 n. h/ L
0912        2002            MOVS      R0,#0x2
; Q% r" J$ D/ ^3 b/ K
- _% o( d/ {  m+ q0 ^; X0914        F881 0041    STRB.W    R0,[R1,#0x41]3 P0 j" z) {1 E
0918        BD70           POP       {R4-R6,PC}
# {  p$ O9 L9 o$ T7 E3 ~; T* p, q; S3 `4 j1 w8 b
091A        F881 2063    STRB.W    R2,[R1,#0x63]1 g  g- c7 k+ `$ P: Q
091E        BD70           POP       {R4-R6,PC}! E7 T/ a0 @1 Y0 B6 I$ V. y8 w3 k
//2---------------------------------------------------! U4 o5 E$ {: v& |
0920        F8B1 4064    LDRH      R4,[R1,#0x64]
5 b: Z' _, T3 o  P1 u* n- F0924        4284            CMP       R4,R0
" G- X1 r9 Y$ O" Q5 S0926        D121            BNE       Q0000096C
# p) k+ O( ?8 A- ]: q0928        F8A1 0060    STRH.W    R0,[R1,#0x60]" Q; a% E1 D9 ^. @" b- _1 r
092C        F881 3062    STRB.W    R3,[R1,#0x62]
7 E. c/ E0 a+ J' _6 x. ^6 A0930        E01C            B         Q0000096C1 k. ^3 O9 s8 {/ `
//3----------------------------------------------------* v) j; r4 H% b0 F/ _$ M
0932        F891 2087    LDRB.W    R2,[R1,#0x87]% H8 _6 B$ e/ h9 A/ B
0936        EB01 0342    ADD.W     R3, R1,R2,LSL #1$ v) T2 I( f9 X0 h" k
093A        1C52            ADDS      R2,R2,#1
; P/ Y9 r' O' Z& ]093C        F8A3 0066    STRH.W    R0,[R3,#0x66]
( u% t& ^9 `7 o8 F' Z7 Z2 D
  h6 V1 `, B7 {4 _- u0940        F8B1 3088    LDRH      R3,[R1,#0x88]
" I) z4 L6 W( E0944        B2D2           UXTB      R2,R2
: h7 O2 @+ t$ a- H. _; j0946        4418            ADD       R0,R3+ \. `: @7 _1 J4 e7 \
0948        F8A1 0088    STRH.W    R0,[R1,#0x88]
. Q& w( ~7 J* K4 d% _: N4 w094C        2A0F            CMP       R2,#15
) |! N. f3 t, Y* L3 g2 k094E        D302            BCC       Q00000956
" ^0 y1 ^; P( Q/ H& i2 C5 h0950        F881 4041    STRB.W    R4,[R1,#0x41]; M) B  x) E( O& \  q( B
0954        BD70            POP       {R4-R6,PC}
% A+ e* @# U7 f//---------------------------------------------------4 ~( x9 [: {; V3 m3 Z* f( _
0956        F881 2087    STRB.W    R2,[R1,#0x87]+ a6 i2 q! n) ^5 ]1 s
095A        BD70           POP       {R4-R6,PC}$ B) p4 T. U9 H& E* U
//4-----------------------------------------------------7 R) t2 V8 U# g9 a& w
095C        F8B1 4088    LDRH      R4,[R1,#0x88]
5 f6 n. x  V0 n# }0960        4284            CMP       R4,R0* \* U  H+ I. Q- @1 B8 O  O
0962        D103            BNE       Q0000096C3 u1 I& X# ?* k" n8 u0 |
0964        F8A1 0084    STRH.W    R0,[R1,#0x84]
9 Z  A# i1 W% J# T* V0968        F881 3086    STRB.W    R3,[R1,#0x86]% v3 a2 g' h& f( L$ q1 p: V
3 h: y! l# l3 B& ]8 a7 T% t& u
096C        F881 208A    STRB.W    R2,[R1,#0x8A]. x3 N6 w$ e  k1 L* d7 j/ K6 u
0970        F881 2041    STRB.W    R2,[R1,#0x41]
% E3 d) C! I5 B& L+ l; Q. v0974        BD70           POP       {R4-R6,PC}
0 t( N+ @' g+ {//-----------------------------------------------------------------

; T* a% r& a+ ?4 u& p& z

该用户从未签到

2#
发表于 2019-7-16 17:16 | 只看该作者
下面的代码参考一下
4 F" L9 R, P0 Z对应的C语言如下
) ]( d( R; M8 Q" Y- U3 Q  u16 x2,x3,x4;
$ h$ m7 G" \3 Q, _' |           u8  x5;
2 c" S$ r5 ?6 ?7 A! s' U           x2=0;% r  f0 I4 @. ]# y4 i/ r  \: p1 I
           x4=4;$ k& v  v. N- |+ ]( ~
           x5=uxD0FA8.u841;3 ^! [9 }+ _7 O! I, d2 ^
           x3=1;
# V" N5 e" w9 o           switch(x5){
' }$ _5 T1 T# d& ?                 case 0:
9 R5 v* u  r( w. m7 g                            if(u16a==0x55AA){: F) X5 ^0 n: G1 P" g6 y
                                      if(uxD0FA8.u886==0){
7 f6 D- N+ A  v0 R0 T& S                                                uxD0FA8.u88A=x4;  s* [' x/ M) s
                                                uxD0FA8.u1666[0]=u16a;
$ m% x$ o1 Q' l' |                                               uxD0FA8.u887=x3;2 Q. T, ~& M0 L6 U" w, f5 Y. y
                                               uxD0FA8.u1688=u16a;
# }, c, ]9 }, r0 G8 |                                               uxD0FA8.u841=3;3 _9 u6 W6 v8 Y9 P8 y4 R; q# o
                                     }    . {& b2 `# n4 M# E( x
                           }else if(u16a==0x55BB){
5 H" _: A, |$ f: `6 N5 a, r: C                                      if(uxD0FA8.u862==0){. N; @7 g  M) t6 J0 J
                                                 uxD0FA8.u88A=x4;+ \: r2 f0 ]2 a8 {% g
                                                 uxD0FA8.u1642[0]=u16a;
6 a9 t6 P! c+ e) V; X  h- @5 _7 ?& f                                                 uxD0FA8.u863=x3;
1 a7 h" C- a6 Y                                                  uxD0FA8.u1664=u16a; 3 h1 {' |# ^3 h6 B- S" X
                                                 uxD0FA8.u841=x3;                 
; l5 c- u/ E/ m$ n% Y                                      }
: n# k/ ~! Z/ Q* ^/ a                            }
0 N6 z7 s/ J7 m1 u/ E5 h9 g                            break;
8 V! U# h. K- y: N2 b7 \' Q                 case 1:
9 `, F% `5 _9 g' k; F, O8 a                            x2=uxD0FA8.u863;
) s4 M  y) m" F                            uxD0FA8.u1642[x2++]=u16a;
/ T( [; x5 g$ v# W0 X                            uxD0FA8.u1664+=u16a;
; b& ]6 l" T. J$ S! s                            if(x2>=15){. \$ C1 T& G2 y4 P' \
                                      uxD0FA8.u841=2;
4 G# }7 ^9 u+ j" K% K8 i                             }else{# i! T  y0 ?; g! A
                                      uxD0FA8.u863=x2; / @+ m; P, J; j
                             }
: M# k  q7 V/ W' a                            break;
, o3 W; A( N+ Q$ r0 @" F                 case 2:
  C# m5 e( d8 Q* b! p                           if(uxD0FA8.u1664==u16a){
. L3 L  T+ ?0 D2 u& |                                  uxD0FA8.u1642[15]=u16a;
, d- F0 r  u: [7 m  E# s- T                                  uxD0FA8.u862=x3;
% X5 l& t$ Q4 s) Z; L* P5 a                           }! W# \- u  M2 \( _6 D: S2 K
                            uxD0FA8.u88A=x2;1 C1 _% P( \& v' J- j
                            uxD0FA8.u841=x2;
- B8 G. U' Q( G" z, q                            break;- M# P+ z6 u: |+ `) t" f
                 case 3:
5 a* |& g3 V. ]' R                            x2=uxD0FA8.u887;5 V' A8 v0 K, A9 }" W$ Q& Z5 C- l
                            uxD0FA8.u1666[x2++]=u16a;
* w0 Q: e% a/ C                            uxD0FA8.u1688+=u16a;   
0 Z7 L: a; D  ]  z# t# d  A( [2 U" y                           if(x2>=15){
  }" p9 Y, ~4 n- E- k" }                                    uxD0FA8.u841=x4;
9 z  t* v* u# m8 m* d                            }else{
. K/ ], m1 w# Q5 j/ B) r                                    uxD0FA8.u887=x2;; M( k" g, t- u$ f4 C9 }1 i. K* x
                            }
# Q7 c. {5 H8 g: s6 l# @                             break;
" N8 J" h; l, K) i# T. [                 case 4:( \2 |+ p) Q! X3 ]& B
                             x4=uxD0FA8.u1688;6 A. C9 d4 A  g: t. Y- T
                             if(x4==u16a){8 }* A* B+ E: w
                                       uxD0FA8.u1666[15]=u16a;
* G5 y. H# P4 \                                       uxD0FA8.u886=x3;7 H, [0 B) G$ Y. X9 z
                             }else{
( Y8 w. l( O( m! |! E1 M                                        uxD0FA8.u88A=x2;, a; n& r. l' _) `
                                        uxD0FA8.u841=x2;: D! c) s7 J! g) l4 V/ V
                            }                 
( V6 K+ i+ p  F2 ~% ^                            break;
) t% C! R( M( [/ m4 C. R( Q                 default:
7 N  O9 y: o. i                            break;4 _! N4 x+ V& A5 o% z/ {' I
                 }
, u- w- ]1 i+ R
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-25 02:09 , Processed in 0.171875 second(s), 25 queries , Gzip On.

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

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

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