home projects random project
Goal: 61 / 1000

R100P0610A00 - assembly/00

Static Badge copy

« back 0610A00 next »

This is a part of R100P0917A00 .

This was the first out of six little projects to help me learn assembly. This one is pretty simple. I was getting the hang of syscalls for Linux and how to output into stdout. main.s is dated September 7th, 2023 – about nine days before my birthday. What a nerd.

By this point, I didn’t figure out what PIE meant, so to compile you’ll have to add some options to your compiler. For example: gcc -nostdlib -no-pie -o program main.s. This could be fixed with a one line change. I challenge you to find it.

	.global _start
	.text

_start:
	mov 	$1, %rax
	mov 	$1, %rdi
	mov 	$message, %rsi
	mov 	$14, %rdx
	syscall
	
	mov $60, %rax
	xor %rdi, %rdi
	syscall

message:
	.string "Hello, world!\n"

Raw file