# Another example of using indexed memory locations
.section .data
output:
.asciz "The value is %d\n"
values:
.int 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60
.section .text
.globl main
main:
nop
movl $0, %edi
loop:
movl values(, %edi, 4), %eax
push %eax
push $output
call printf
add $8, %esp
inc %edi
cmp $11, %edi
jne loop
movl $0, %ebx
movl $1, %eax
int $0x80
# gcc -o 01-mov 01-mov.s -m32
The value is 10
The value is 15
The value is 20
The value is 25
The value is 30
The value is 35
The value is 40
The value is 45
The value is 50
The value is 55
The value is 60