RosettaCodeData/Task/A+B/ARM-Assembly/a+b-2.arm
2020-02-17 23:21:07 -08:00

27 lines
543 B
Text

.text
.global main
.extern printf
.extern scanf
main:
push {lr}
ldr r0, =scanf_lit
ldr r1, =num_a
ldr r2, =num_b
bl scanf // scanf("%d %d", &num_a, &num_b);
ldr r0, =printf_lit
ldr r1, =num_a
ldr r1, [r1]
ldr r2, =num_b
ldr r2, [r2]
add r1, r1, r2
bl printf // printf("%d\n", num_a + num_b);
pop {pc}
.data
scanf_lit: .asciz "%d %d"
printf_lit: .asciz "%d\n"
.align 4
.bss
num_a: .skip 4
num_b: .skip 4