; ; 代码演示 ; ;定义数据段 AREA p1Data, DATA, READWRITE buf1 dcd 1,2,3,4,5,6 ;定义字 buf2 dcw 1,2,3,4,5,6 ;定义半字 buf3 dcb 1,2,3,4,5,6 ;定义字节 str dcb "123456", 0 ;定义字符串 align 4 buf4 space 256 ;分配256字节空间 AREA p1Code, CODE, READONLY ENTRY start ;buf1 copy to buf4 ldr r0, =buf1 ;源基址 ldr r1, =buf4 ;目的基址 mov r2, #0 ;循环计数器 cploop ldr r3, [r0, r2, lsl#2] ;读出源数据字到r3,把r0+r2*4位置的值送入r3寄存器 str r3, [r1, r2, lsl#2] ;写入到目的缓冲区,把r3寄存器的值送入r1+r2*4位置处 cmp r2, #5 beq cpend add r2, r2, #1 b cploop cpend stop mov r0, #0x18 ldr r1, =0x20026 swi 0x123456 end