/* * Aufgabe4_1.S * * Created on: 11.01.2021 * Author: Julia Kisela */ .text /* Specify that code goes in text segment */ .code 32 /* Select ARM instruction set */ .global _startup /* Specify global symbol */ _startup: ldr sp, =0x40001000 mov r0, #4 mov r4, #5 mov r5, #9 bl verdoppelnundquadrieren stop: nop bal stop verdoppeln: stmfd sp!, {lr} add r0, r0 ldmfd sp!, {pc} quadrieren: stmfd sp!, {r4, r5, lr} mov r4, r0 mov r5, #0 nochnichtnull: add r5, r0 subs r4, r4, #1 bne nochnichtnull mov r0, r5 ldmfd sp!, {r4, r5, pc} verdoppelnundquadrieren: stmfd sp!, {lr} bl verdoppeln bl quadrieren ldmfd sp!, {pc} .end