; Name - Amoo Adeola Grace
; Matric No - 22:1206
; Department - Computer Science
section .data
message db "Hello, world", 0x0A
msg_len equ $ - message
section .text
global _start
_start
mov rax, 1
mov rdi, 1
lea rsi, [rel message]
mov rdx, msg_len
syscall
mov rax, 60
xor rdi, rdi
syscall
OyBOYW1lIC0gQW1vbyBBZGVvbGEgR3JhY2UKOyBNYXRyaWMgTm8gLSAyMjoxMjA2CjsgRGVwYXJ0bWVudCAtIENvbXB1dGVyIFNjaWVuY2UKCgpzZWN0aW9uIC5kYXRhCiAgICAgbWVzc2FnZSAgICBkYiAgICAgICJIZWxsbywgd29ybGQiLCAweDBBCiAgICAgbXNnX2xlbiAgICBlcXUgICAgICQgLSBtZXNzYWdlCiAgICAgCnNlY3Rpb24gLnRleHQKICAgIGdsb2JhbCBfc3RhcnQKICAgCl9zdGFydAogICAgbW92ICAgICByYXgsIDEKICAgIG1vdiAgICAgcmRpLCAxCiAgICBsZWEgICAgIHJzaSwgW3JlbCBtZXNzYWdlXQogICAgbW92ICAgICByZHgsIG1zZ19sZW4KICAgIHN5c2NhbGwKICAgIAogICAgbW92ICAgICByYXgsIDYwCiAgICB4b3IgICAgIHJkaSwgcmRpCiAgICBzeXNjYWxs
OyBoZWxsbzY0LmFzbSAmbWRhc2g7IHByaW50cyAmcXVvdDtIZWxsbywgd29ybGQmcXVvdDsgdGhlbiBleGl0cwpzZWN0aW9uIC5kYXRhCiAgICBtZXNzYWdlICAgICBkYiAgICAgICZxdW90O0hlbGxvLCB3b3JsZCZxdW90OywgMHgwQSAgICA7IHRoZSB0ZXh0ICsgbmV3bGluZQogICAgbXNnX2xlbiAgICAgZXF1ICAgICAkIC0gbWVzc2FnZSAgICAgICAgICAgICA7IGxlbmd0aCBvZiB0aGUgdGV4dAoKc2VjdGlvbiAudGV4dAogICAgZ2xvYmFsIF9zdGFydCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgZW50cnkgcG9pbnQgZm9yIHRoZSBwcm9ncmFtCgpfc3RhcnQ6CiAgICA7IHdyaXRlKDEsIG1lc3NhZ2UsIG1zZ19sZW4pCiAgICBtb3YgICAgIHJheCwgMSAgICAgICAgICA7IHN5c2NhbGwgbnVtYmVyOiB3cml0ZQogICAgbW92ICAgICByZGksIDEgICAgICAgICAgOyBmaWxlIGRlc2NyaXB0b3I6IHN0ZG91dAogICAgbGVhICAgICByc2ksIFtyZWwgbWVzc2FnZV0gOyBhZGRyZXNzIG9mIG1lc3NhZ2UKICAgIG1vdiAgICAgcmR4LCBtc2dfbGVuICAgICA7IGxlbmd0aCBvZiBtZXNzYWdlCiAgICBzeXNjYWxsICAgICAgICAgICAgICAgICA7IGludm9rZSB0aGUgc3lzdGVtIGNhbGwKCiAgICA7IGV4aXQoMCkKICAgIG1vdiAgICAgcmF4LCA2MCAgICAgICAgIDsgc3lzY2FsbCBudW1iZXI6IGV4aXQKICAgIHhvciAgICAgcmRpLCByZGkgICAgICAgIDsgZXhpdCBjb2RlIDAKICAgIHN5c2NhbGwgICAgICAgICAgICAgICAgIDsgaW52b2tlIGV4aXQ=
; hello64.asm — prints "Hello, world" then exits
section .data
message db "Hello, world", 0x0A ; the text + newline
msg_len equ $ - message ; length of the text
section .text
global _start ; entry point for the program
_start:
; write(1, message, msg_len)
mov rax, 1 ; syscall number: write
mov rdi, 1 ; file descriptor: stdout
lea rsi, [rel message] ; address of message
mov rdx, msg_len ; length of message
syscall ; invoke the system call
; exit(0)
mov rax, 60 ; syscall number: exit
xor rdi, rdi ; exit code 0
syscall ; invoke exit