Sha256: 48b7b9b2a590d8cb5ad796701ce3fb1f254fa69b754fd74dc088d5ee686da614

Contents?: true

Size: 709 Bytes

Versions: 7

Compression:

Stored size: 709 Bytes

Contents

section	.text
    global _start			;must be declared for linker (ld)

_syscall:		
	int	0x80		;system call
	ret

_start:				;tell linker entry point

	push	dword len	;message length
	push	dword msg	;message to write
	push	dword 1		;file descriptor (stdout)
	mov	eax,0x4		;system call number (sys_write)
	call	_syscall	;call kernel

				;the alternate way to call kernel:
				;push	eax
				;call	7:0

	add	esp,12		;clean stack (3 arguments * 4)

	push	dword 0		;exit code
	mov	eax,0x1		;system call number (sys_exit)
	call	_syscall	;call kernel

				;we do not return from sys_exit,
				;there's no need to clean stack
section	.data

msg	db	"Hello, world!",0xa	;our string
len	equ	$ - msg			;length of our string

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
language_templates-0.1.5.2 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.5.1 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.5 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.4 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.3 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.2 bin/languages/a/assembler_nasm_freebsd.asm
language_templates-0.1.1 bin/languages/a/assembler_nasm_freebsd.asm