歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> ARM匯編程序---用ARM匯編實現R0寄存器中數據調換數據

ARM匯編程序---用ARM匯編實現R0寄存器中數據調換數據

日期:2017/3/1 10:06:09   编辑:Linux編程

具體思路:

本題本人的思路很簡單,就是通過以為操作來實現,注意此時不要使用循環移位,用算數移位和邏輯移位即可,每次移位保存其中一個16進制數,知道每個數都保存,然後再將這些數據反序存儲到R0寄存器中。

ARM代碼:

AREA HOMEWORK4,CODE,READONLY
ENTRY
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

Copyright © Linux教程網 All Rights Reserved