1,书上一到题目的要求是这样的“将内存地址0x3000开始的100个字内存填入0x10000001~0x10000064”字数据。。 
代码是这样的    
MOV R0 ,#0X3000 
MOV R1,#0X10000001 
MOV R2,#100 
LOOP_1: 
        STR R1,[R0],#4  ;问下这里为什么要加4啊??难道一个地址相对应的内存空间存不下??        ADD R1,R1,#1 
   .................................. 
 
2, 还有个就是  将数据从源数据区Src(18内存字单元)拷贝到目标数据区Dst,要求以4字节拷贝,如果不足4字节时则以字尾单元拷贝。SRC: 
                                                   .long 1,2,3,4,5,6,7,8,9,0xa,,,,,,,,,,,,,,,,, 
 
                                             DST: 
                                                   .long 0,0,0,0,0,00,0,0,,,,,,,,,,,,,,,,,, 
 书上的代码是这样的。。                                             
NUM EQU 18 
           AREA Copy_Data,CODE,READONLY 
           ENTRY 
           CODE32 
START 
           LDR R0,=Src 
           LDR R1,=Dst 
           MOV R2,#NUM 
           MOV SP,#0x9000 
           MOVS R3,R2,LSR #2 
           BEQ Copy_Words 
           STMFD SP!,{R5-R8} 
Copy_4Word  ;进行快拷贝每次4个字          ;问下这里要拷贝4次,,每次都是LOMIA                      LDMIA R0!,{R5-R8}         ;R0! {R5-R8}咋么不会重复的啊??就是,刚                   STMIA  R1!,{R5,R8}      ;R0取出的地址是从0-3,然后R0自己会从变成                   SUBS   R3,R3,#1          ;从4-7开始传数据???                    BNE     Copy_4Word 
                   LDMFD   SP!,{R5-R8} 
Copy_Words     ;将剩余的数据以字为单位拷贝 
                ANDS R2,R2,#3 
                BEQ  Stop 
Copy_Word 
                LDR R3,[r0],#4 
                STR R3,[r1],#4         ;;问下这里咋么出现了小写的r0了啊???                SUBS R2,R2,#1 
                BNE Copy_Word 
Stop    
                B Stop 
                LTORG 
                 
Src     
        DCD   1,2,3,4,5,6,7,8,9,0XA,0XB,0XC,0XD,0XE,0XF,0X10,0X11,0X12 
         
Dst   
                DCD    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 
                END |