📄 testfile2.s
字号:
;文件名:TESTFILE2.S
;功能:验证ARM内存访问指令寻址方式
;说明:使用ARMulate软件仿真调试
AREA Example,CODE,READONLY ;声明代码段Example1
ENTRY ;标识程序入口
CODE32 ;声明32位ARM指令
START MOV R1,#0x01 ;
MOV R2,#0x02
MOV R3,#0x03
MOV R4,#0x04
MOV R5,#0x05
; SWP R1,R2,[R4]
LDR R0,=0x10
STMFD R0!,{R1-R3,lr} ;多寄存器寻址
MOV R1,#0x00 ;
MOV R2,#0x00
MOV R3,#0x00
LDMFD R0!,{R1-R3,pc}^
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;测试LDMIA,STMIA 0x10
MOV R1,#0x01 ;
MOV R2,#0x02
MOV R3,#0x03
LDR R0,=0x30
STMFA R0!,{R1-R3} ;块拷贝寻址
MOV R1,#0x00 ;
MOV R2,#0x00
MOV R3,#0x00
LDMFA R0!,{R1-R3}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;测试LDMDA,STMDA 0x30
MOV R1,#0x01 ;
MOV R2,#0x02
MOV R3,#0x03
LDR R0,=0x40
STMED R0!,{R1-R3} ;多寄存器寻址
MOV R1,#0x00 ;
MOV R2,#0x00
MOV R3,#0x00
LDMED R0!,{R1-R3}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;测试LDMIB,STMIB 0x40
MOV R1,#0x01 ;
MOV R2,#0x02
MOV R3,#0x03
LDR R0,=0x60
STMEA R0!,{R1-R3} ;多寄存器寻址
MOV R1,#0x00 ;
MOV R2,#0x00
MOV R3,#0x00
LDMEA R0!,{R1-R3}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;测试LDMDB,STMDB 0x60
MOV R0,#0x0 ;非跳转的指令最后一条无法运行
B START
END ;文件结束
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -