1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
.section .data
elem0:
.8byte 8
elem1:
.8byte 9
elem2:
.8byte 2
elem3:
.8byte 13
elem4:
.8byte 203
elem5:
.8byte 1
array:
.space 48
.section .text
.globl _start
_start:
movq $elem0, array
movq $elem1, array+8
movq $elem2, array+16
movq $elem3, array+24
movq $elem4, array+32
movq $elem5, array+40
movq $array, %rdi
movq $6, %rsi
movq $0, %rdx
movq $insertion_sort, %rcx
call sorter
movq $0, %r15
loop:
cmp $6, %r15
je end
movq array(,%r15,8), %rbx
movq (%rbx), %rdi
call printNum
addq $1, %r15
jmp loop
end:
movq $60, %rax
movq $0, %rdx
syscall
|