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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
哪位大神帮我将下面的ARM汇编转一下C语言吧,谢谢啦6 o& g/ A1 r- S: [/ y

) E9 ^2 \2 g: L, a1 u# J
) s" H# {! k* O& `. e  M6 K: l
//ARM汇编代码( A( g9 i( c% s0 `& g- u& Y8 p
0894        B570           PUSH      {R4-R6,LR}, W; J; M' }6 Z% m9 i4 V3 ?
0896        4938           LDR       R1,D00000978;[PC,#224] R1=0x20000FA8
! a1 A' Y+ J# q0898        2200           MOVS      R2,#0x0
  B7 G( M2 ~8 `" o$ c4 |7 {7 ~089A        2404           MOVS      R4,#0x4
9 L) o% H' F6 S" x" M089C        F891 5041    LDRB.W    R5,[R1,#0x41]
$ a, F% ]/ T/ w. z5 _08A0        2301           MOVS      R3,#0x1
7 a( M0 _- \7 S' {8 R3 r( S08A2        2D05           CMP       R5,#59 g! W: h' m$ U4 J2 n
08A4        D262           BCS       Q0000096C
* Q4 L- E; X& q4 j. V3 K3 T0 K, F1 D- ^8 K6 B
08A6        E8DF F005   TBB       [PC,R5]
9 ^8 n* ~8 G1 j8 ~% m* v! {08AA       DB  03 9 e+ H4 t  g* J1 v1 B3 b1 y! ?
              DB  25           A. d0 x4 l4 S; O5 g$ i
08AC       DB  3B, s6 u- j% q9 w" W& R8 m
              DB  44& a- F, o0 U, I) g" s" ?
              DB  59% E, W* b2 _0 u2 ?( }: U! W
              DB  00   + c, W$ w  Q7 [1 [- M0 x
//0---------------------------------------------------     - w% c+ @5 ~- i# {6 Y
08B0        F5A0 42AA    SUB.W     R2,R0,#0x55004 B3 R; _# I+ w/ ^9 g
08B4        3AAA         SUBS      R2,#0xAA
7 S* V& L/ @7 h3 P- ^+ ~08B6        D00F         BEQ       Q000008D8
- @( H; i' _( a; w% h" h, F  H, g. `) C! n8 r# H
08B8        3A11         SUBS      R2,#0x115 C3 n, e) @& q  L5 G
08BA        D11A         BNE       Q000008F2
% g' Q5 X' M* h7 G  ~  W- p+ l
, ^( K0 v. z0 P: R8 n0 Y% b; [08BC        F891 2086    LDRB.W    R2,[R1,#0x86]
0 Y- I2 F! `4 }6 A. a08C0        2A00         CMP       R2,#0' N4 ^) H+ y# U8 L2 F
08C2        D116         BNE       Q000008F2+ \1 D3 ~  j9 q( w/ V6 x
! P" J! B  M+ @( w: [. q0 P
08C4        F881 408A    STRB.W    R4,[R1,#0x8A]8 }% a7 t5 `3 _3 o" c
08C8        F8A1 0066    STRH.W    R0,[R1,#0x66]. ?" Y: Y3 o0 U! M
08CC        F881 3087    STRB.W    R3,[R1,#0x87]
4 R* W3 c. t# Q08D0        F8A1 0088    STRH.W    R0,[R1,#0x88]
) ~( E/ V- X8 m08D4        2003            MOVS      R0,#0x3
3 n6 x; e8 _6 T& V/ X08D6        E01D           B         Q00000914+ ?0 e6 c7 K& R0 J8 _" k$ y  @2 ^
/ K) e9 \$ M  {$ O( O
08D8        F891 2062    LDRB.W    R2,[R1,#0x62]+ \( N$ @* q9 n! q! ?* ~
08DC        2A00            CMP       R2,#09 p/ g: N& b& G% A
08DE        D108           BNE       Q000008F2, M+ z1 n; o" |1 q: K' X9 K

: h* J: O- w$ ?/ }" r08E0        F881 408A    STRB.W    R4,[R1,#0x8A], s5 C4 t; W8 ?! d( e
08E4        F821 0F42    STRH.W    R0,[R1,#0x42]!4 |( ~2 W3 G9 X2 n6 T: x
08E8        F881 3021    STRB.W    R3,[R1,#0x21]
; L  W. v' R' ?% t" p; O08EC        8448            STRH      R0,[R1,#0x22]/ I4 h7 s8 o) s2 j3 N, T( P
08EE        F801 3C01    STRB.W    R3,[R1,#-0x1]2 t2 V: j4 [* l4 k- k+ h5 X

% h6 Q4 D* P; z! m, U08F2        BD70            POP       {R4-R6,PC}5 y* X; p. z5 N- U$ [5 V: _/ ~

( _6 q& i8 ?( A/ \- R//1--------------------------------------------------% E  w) P5 g' H$ E  d% `# R' ~
08F4        F891 2063    LDRB.W    R2,[R1,#0x63]+ n# d, g1 r& }! r1 }

+ A* h9 c9 n2 Q  n5 u8 |08F8        EB01 0342    ADD.W     R3, R1,R2,LSL #1
# H9 W( v' o4 i9 q: p2 ~
. E# G' J7 `6 [' a2 o08FC        1C52            ADDS      R2,R2,#1
8 N2 R0 t  l' Z" A0 E) @
* N" K* y# {* ^8 q( o" A08FE        F8A3 0042    STRH.W    R0,[R3,#0x42]
+ G3 G5 \7 ]3 }' i, F% `
0 Q* K, x3 a  j% ~- @6 H/ G0902        F8B1 3064    LDRH      R3,[R1,#0x64]; X# s8 X9 A1 i) }
5 T7 y' ?$ q+ q# C* ?( D
0906        B2D2           UXTB      R2,R2
9 ~" q' r4 p8 {4 j. i1 B0908        4418            ADD       R0,R3
: s0 E. V1 _8 C6 {, \& {& c3 ]090A        F8A1 0064    STRH.W    R0,[R1,#0x64]) Y4 o# ]$ H, D% e- c
090E        2A0F            CMP       R2,#15
0 k! m2 R% T" y9 K; b9 D- m% r0910        D303            BCC       Q0000091A- t5 Y0 ~' h+ K9 G/ i6 Y4 x
0912        2002            MOVS      R0,#0x2
2 T; A0 o  i, E: Z3 J
3 A9 K1 ?3 ?! t: F9 W4 D0914        F881 0041    STRB.W    R0,[R1,#0x41]
. E7 ^, @* }9 E  K+ f3 T0918        BD70           POP       {R4-R6,PC}- x- I! z% j; k; q$ T. T! R( b
% @* o1 H/ U2 P* k
091A        F881 2063    STRB.W    R2,[R1,#0x63]6 \( c7 q4 r. E% O
091E        BD70           POP       {R4-R6,PC}. P4 v. \) l- i4 w% U/ s, \
//2---------------------------------------------------
# p# k, N: i8 J$ L0 F- f2 x% F0920        F8B1 4064    LDRH      R4,[R1,#0x64]
/ G! O9 Q8 B/ h1 _4 G0924        4284            CMP       R4,R08 e  D# ^0 \' `* L6 e7 v. p
0926        D121            BNE       Q0000096C
% o( Q) ]0 u  n- L2 D" v0928        F8A1 0060    STRH.W    R0,[R1,#0x60], Q% T  N' `, b! n7 `
092C        F881 3062    STRB.W    R3,[R1,#0x62]
5 K  F6 I/ }+ q: q/ \4 G0930        E01C            B         Q0000096C
; X  Q" W1 g% j% Q//3----------------------------------------------------; G2 _( i( ~! u! q% I) Z  ~/ P" y5 y
0932        F891 2087    LDRB.W    R2,[R1,#0x87], @0 R; x0 q0 u
0936        EB01 0342    ADD.W     R3, R1,R2,LSL #1/ v! I. b; F$ C0 a- ?- v$ q
093A        1C52            ADDS      R2,R2,#1
, r3 E% K! n! }% x! |, s093C        F8A3 0066    STRH.W    R0,[R3,#0x66]
/ v& x# o2 x9 E3 @& _
+ E" f# _0 a9 Q  s8 e% S0940        F8B1 3088    LDRH      R3,[R1,#0x88]
4 R) F, O' t5 o, W0944        B2D2           UXTB      R2,R2
. c' n# L/ a5 h+ L0946        4418            ADD       R0,R3
4 c: {  @) f/ @- q0948        F8A1 0088    STRH.W    R0,[R1,#0x88]
( U& Z( e" A  m094C        2A0F            CMP       R2,#15( L. B3 p. p7 v) O
094E        D302            BCC       Q00000956
3 n& J! r$ p( E0950        F881 4041    STRB.W    R4,[R1,#0x41]
) X2 E' r* G! t. |) t0954        BD70            POP       {R4-R6,PC}. U: v) Z4 Z% ~2 R7 @
//---------------------------------------------------! D' `0 c! n8 S' N: M, S
0956        F881 2087    STRB.W    R2,[R1,#0x87]
: _, P5 w; }$ j( D, W# K+ ^5 x095A        BD70           POP       {R4-R6,PC}
! N9 L. R# L) u2 h3 _//4-----------------------------------------------------
! N) c( o1 Y% C095C        F8B1 4088    LDRH      R4,[R1,#0x88]
/ C, z  z  N- A8 ]$ x0960        4284            CMP       R4,R06 |9 H- O" Y6 F2 R0 z& o  ^7 Y
0962        D103            BNE       Q0000096C  z! f1 ?+ f2 U; D5 _
0964        F8A1 0084    STRH.W    R0,[R1,#0x84]
" `# G; a- R. [. _0 H. L, J* y0968        F881 3086    STRB.W    R3,[R1,#0x86]) J+ ~1 P$ E! {: `& k: m
7 M& [! q# B5 A$ \8 s
096C        F881 208A    STRB.W    R2,[R1,#0x8A]
1 o6 ?8 L% o+ U0970        F881 2041    STRB.W    R2,[R1,#0x41]* B7 j5 ]% j, g+ c0 n# m* o+ B) {/ P
0974        BD70           POP       {R4-R6,PC}
9 |0 C" B" f: x* o3 K//-----------------------------------------------------------------

' F6 ]4 C$ k4 ?

该用户从未签到

2#
发表于 2019-7-16 17:16 | 只看该作者
下面的代码参考一下
' E9 j+ ~  W  Y+ ?! S! P& a6 t对应的C语言如下& R! J' g, s, e. B
  u16 x2,x3,x4;
5 ?. }0 Z) s8 u$ T8 H. A& N  J           u8  x5;4 D# h' P0 l+ T
           x2=0;! L9 V9 z  L+ V& l# m
           x4=4;3 X) f. }  @" t( u6 A, ?8 _
           x5=uxD0FA8.u841;; y/ N- F8 v5 C" Y% d
           x3=1;4 `5 I1 u7 D) {
           switch(x5){
9 J4 [! E* p/ ?2 H; J$ E$ ~                 case 0:
9 o6 @3 _2 C; t" k0 _  @                            if(u16a==0x55AA){. V( e' o1 e2 N
                                      if(uxD0FA8.u886==0){
2 |4 B! B2 t" M                                                uxD0FA8.u88A=x4;
3 _1 Z5 G+ \5 Q, ]! @8 j8 d) {2 R+ ?                                                uxD0FA8.u1666[0]=u16a;
' }, h" ^6 Q! t! S+ ~  E- ~                                               uxD0FA8.u887=x3;6 u: i! |8 B1 j& r% L) W- m
                                               uxD0FA8.u1688=u16a;
$ d) x, D  V9 C5 N7 o) g9 g                                               uxD0FA8.u841=3;3 [2 s$ s% [* @1 d" q0 S/ s7 h, i6 ?
                                     }   
5 a. V3 Z2 j6 H8 [6 |( N1 O                           }else if(u16a==0x55BB){
5 C' H* m0 {! z8 @1 w% ?                                      if(uxD0FA8.u862==0){
# a" T: o: b! ^) o                                                 uxD0FA8.u88A=x4;
3 G# D2 H0 k6 u  T  b3 h                                                 uxD0FA8.u1642[0]=u16a;
4 j; u/ G; ]7 y1 c& a2 i                                                 uxD0FA8.u863=x3;3 }& U: z! ]% l! I
                                                  uxD0FA8.u1664=u16a; 2 g2 a) {. H! ^5 ], l3 [
                                                 uxD0FA8.u841=x3;                 $ J, r; K) f" Y% Q. h( P; D, O
                                      }
7 R, f" ?' P! ?                            } 3 E' ]: l1 A) n4 Z& m. w* {9 N
                            break;
5 a! P5 \$ y( q! o2 x1 X# A) G                 case 1:
- V  H) f, a; E                            x2=uxD0FA8.u863;
' ?9 G* b! s9 v0 m# s/ X9 U0 P" S                            uxD0FA8.u1642[x2++]=u16a;' V! ]4 [. ^8 y/ Z* c/ g- l
                            uxD0FA8.u1664+=u16a;2 ?# h( i$ ^& N' x) P& b0 q# f
                            if(x2>=15){
  g, @2 u% Q- B9 `5 ~. p0 ~                                      uxD0FA8.u841=2;
4 s  `2 y# i8 `4 J$ V% ]                             }else{) x" B7 @, d0 K, M! `+ i1 {; |( x
                                      uxD0FA8.u863=x2;
* h8 E3 r# N! C: O                             }
8 Z; _. N% @# ~, `  V+ V                            break;* P& I" y, ^5 c
                 case 2:
' ?+ j6 h- h/ @# T$ {7 ^1 i( m                           if(uxD0FA8.u1664==u16a){+ i) {. C, A9 {2 h5 b- c/ P+ J
                                  uxD0FA8.u1642[15]=u16a;  e: x# f9 a# r5 ^
                                  uxD0FA8.u862=x3;) H& B: A, z0 s6 z/ J
                           }
0 d- K% D' a. m: I                            uxD0FA8.u88A=x2;9 k" U+ Q. m) m7 g7 Z( l" q8 p- G( c
                            uxD0FA8.u841=x2;( ^2 n' R5 G3 B3 I. s- \( w) N
                            break;' [2 W: \# e  F) S
                 case 3:. ~  J" h7 `, T1 q; D/ S0 p9 u
                            x2=uxD0FA8.u887;
* ~) M) r( Z( R: S  R- J2 v; P                            uxD0FA8.u1666[x2++]=u16a;
3 J6 t2 I& ], f* s7 M0 W                            uxD0FA8.u1688+=u16a;   3 Y( A4 |( M! |4 ]
                           if(x2>=15){
2 z; U: L7 g' w  ^7 j# H8 q/ \6 G                                    uxD0FA8.u841=x4;
4 m/ Z: R& T! z/ b: g8 {* E# N                            }else{
+ c& N+ R8 t" j. c/ n4 U/ B& j                                    uxD0FA8.u887=x2;
* B8 Q/ F4 p* R3 G                            }& w6 A/ f* Z8 W: e
                             break;+ o* k, {- Q" c0 l5 Y
                 case 4:$ c% y* Z/ _0 {& u( N3 L' ^8 @
                             x4=uxD0FA8.u1688;' G4 _* D+ P1 ?# E" m6 C+ r
                             if(x4==u16a){
' r4 o4 w# s7 A3 R% c* _# I                                       uxD0FA8.u1666[15]=u16a;
# B! G* v5 [' U9 J' G+ _                                       uxD0FA8.u886=x3;
# ~6 x/ _7 T+ u, S& @' U; W                             }else{
8 N: U* M* M! F2 E( k. L                                        uxD0FA8.u88A=x2;+ C, P- |" H2 e6 r4 q
                                        uxD0FA8.u841=x2;( o2 n* i2 i$ e6 J( t4 C
                            }                 
: Z" ]/ R" Z2 m% b                            break;5 Y9 f/ U1 p' a& N$ T# R
                 default:
( D( u; |' m# B- W                            break;' Z  F5 n/ k" H7 Q; q, ^6 }
                 }/ j  S5 X2 Z7 l" t
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 23:21 , Processed in 0.171875 second(s), 24 queries , Gzip On.

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

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

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