刚刚拿到了EASYARM2200的开发板,照着书上一个个的做实验,结果第二个就有问题了。是一个算乘方的程序。我自己改了一下,结果就错了,哪位高手告诉我错在哪里啊。原程序如下 X EQU 2 N EQU 4
AREA Example4,CODE,READONLY ENTRY CODE32 START LDR SP,=0x40003F00 LDR R0,=X LDR R1,=N BL POW HALT B HALT
POW STMFD SP!,{R1-R12,LR} CMP R1,#0 MOVEQ R0,#1 BEQ POW_END CMP R1,#1 BEQ POW_END SUB R1,R1,#1 POW_L1
BL DO_MUL SUBS R1,R1,#1 BNE POW_L1 POW_END
LDMFD SP!,{R1-R12,PC} DO_MUL MOV R2,R0 MUL R0,R2,R0 MOV PC,LR END |