#%edi holds the current position #%ebx hold the current highest value #%eax hold the current element being examined .section.data data_items: .long 3, 4, 5, 65, 44, 36, 99, 6, 7, 8, 9, 0 data_end:.section.text.globl _start _start:movl $ (data_items), %edi movl (%edi), %eax movl % eax, %ebx start_loop:cmpl $ (data_end), %edi je loop_exit addl $4, %edi movl (%edi), %eax cmpl % ebx, %eax jle start_loop movl % eax, %ebx jmp start_loop loop_exit:movl $1, %eax int $0x80