diff --git a/ES/Lab/Lab3/ADDER.asm b/ES/Lab/Lab3/ADDER.asm new file mode 100644 index 0000000..abd58e3 --- /dev/null +++ b/ES/Lab/Lab3/ADDER.asm @@ -0,0 +1,34 @@ + AREA RESET, DATA, READONLY + EXPORT __Vectors + +__Vectors + DCD 0x10001000 + DCD Reset_Handler + ALIGN + AREA MYCODE, CODE, READONLY + ENTRY + EXPORT Reset_Handler + +Reset_Handler + LDR R0, =SRC + MOV R3, #10 + +UP + LDR R1, [R0], #4 + ADDS R2, R1 + ADC R5, #0 + SUBS R3, #1 + BNE UP; + + LDR R4, =Result + STR R2, [R4] + STR R5, [R4] + +SRC DCD 0x12345678, 0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009 + + AREA mydata, DATA, READWRITE + +Result + DCD 0 + + END \ No newline at end of file