rendered paste body.section .data
.equ open, 5
.equ write, 4
.equ read, 3
.equ rdonly, 0
.equ stdin, 0
.equ stdout, 1
.equ linux, 0x80
.equ eof, 0
.section .comment
.section .text
.globl _start
_start:
pushl $104
call printc
subl $4, %esp
pushl $101
call printc
subl $4, %esp
pushl $108
call printc
subl $4, %esp
pushl $108
call printc
subl $4, %esp
pushl $111
call printc
subl $4, %esp
pushl $32
call printc
subl $4, %esp
pushl $119
call printc
subl $4, %esp
pushl $111
call printc
subl $4, %esp
pushl $114
call printc
subl $4, %esp
pushl $108
call printc
subl $4, %esp
pushl $100
call printc
subl $4, %esp
pushl $33
call printc
subl $4, %esp
pushl $10
call printc
subl $4, %esp
jmp exit
print:
mov $write, %eax
mov $stdout, %ebx
mov %esp, %ecx
mov $1, %edx
int $linux
exit: #we'll make this function more complex laters
movl $0,%ebx # first argument: exit code
movl $1,%eax # system call number (sys_exit)
int $linux # call kernel
.type printc, @function
printc:
popl %ebp
#movl $, %ebp
movl $write, %eax
movl $stdout, %ebx
movl %esp, %ecx
movl $1, %edx
int $linux
pushl %ebp
ret
#So, let's do something?