ARM汇编指令编程

作者: HurryChen | 来源:发表于2018-10-04 17:30 被阅读10次

    ARM汇编指令编程之寄存器中数据调换顺序


    题目:将R0中的数据调换顺序;例如:R0=0XAABBCCDD调换顺序后为R0=0XDDCCBBAA


    实验环境:ARM Developer Suite V1.2

    代码:

            AREA test,CODE,READONLY

            ENTRY

            CODE32

    START

            LDR R0,=0XAABBCCDD

            MOV R1,R0,LSR #28

            MOV R2,R0,LSR #24

            MOV R2,R2,LSL #28

            MOV R2,R2,LSR #24

            MOV R3,R0,LSR #20

            MOV R3,R3,LSL #28

            MOV R3,R3,LSR #20

            MOV R4,R0,LSR #16

            MOV R4,R4,LSL #28

            MOV R4,R4,LSR #16

            MOV R5,R0,LSR #12

            MOV R5,R5,LSL #28

            MOV R5,R5,LSR #12

            MOV R6,R0,LSR #8

            MOV R6,R6,LSL #28

            MOV R6,R6,LSR #8

            MOV R7,R0,LSR #4

            MOV R7,R7,LSL #28

            MOV R7,R7,LSR #4

            MOV R8,R0,LSL #28

            MOV R0,#0

            ADD R0,R0,R1

            ADD R0,R0,R2

            ADD R0,R0,R3

            ADD R0,R0,R4

            ADD R0,R0,R5

            ADD R0,R0,R6

            ADD R0,R0,R7

            ADD R0,R0,R8

    STOP

            B STOP

            END


    思路:把每个数字都放在镜像的位置,将其左右通过逻辑左右移移空,并放入独立的寄存器,最后将几个寄存器的值相加即可。


    结果截屏:

    此文章本人原创,如有问题底部留言,如有转载请标明出处。

    --HurryChen


                                                                          Happy   Coding!

                                                                        *\( ^ v ^ )/*

    相关文章

      网友评论

        本文标题:ARM汇编指令编程

        本文链接:https://www.haomeiwen.com/subject/utwxaftx.html