/* * Aufgabe3_2.S * * Created on: 03.01.2021 * Author: Julia Kisela */ .text /* Specify that code goes in text segment */ .equ NUMVALS, 5 .code 32 /* Select ARM instruction set */ .global datastart datastart: .word 0x01 .word 0x02 .word 0x03 .word 0x04 .word 0x05 .global _startup /* Specify global symbol */ _startup: ldr sp, =0x40001000 /* RAM Start = 0x400100, Stack = 4kByte Offset */ ldr r5, =datastart mov r3, #NUMVALS ldr r0, =5 schleife: bl delay ldr r6, [r5], #4 add r4, r6 subs r3, r3, #1 bne schleife stop: nop bal stop delay: stmfd sp!, {r7, lr} /* Speichern des verwendeten Registers und des lr auf Stack */ mov r7,r0 wait: subs r7,r7,#1 bne wait ldmfd sp!, {r7, pc} /* Lesen des verwendetes Registers und des pc vom Stack */ .end