From 2bb4f7e34806054fa15174b2586241c2b82e040c Mon Sep 17 00:00:00 2001 From: Arslaan Pathan Date: Sat, 6 Jun 2026 10:51:20 +1200 Subject: Basic loops test --- main.asm | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'main.asm') diff --git a/main.asm b/main.asm index 7d824c1..f0b6221 100644 --- a/main.asm +++ b/main.asm @@ -1,17 +1,12 @@ global _start -section .data ; defines a section - msg db "Hello, x86 Assembly Language!", 0x0a - len equ $ - msg ; subtract the location before the message (msg) from the location after the message ($) to get the length - section .text _start: - mov eax, 4 ; sys_write syscall - mov ebx, 1 ; stdout file descriptor - mov ecx, msg ; bytes to write - mov edx, len ; number of bytes to write - int 0x80 ; perform syscall + mov ebx, 1 ; start at 1 + mov ecx, 4 ; num iterations +label: + add ebx, ebx ; ebx += ebx + dec ecx ; ecx -= 1 + cmp ecx, 0 ; compare ecx with 0 + jg label ; jump if greater than label - mov eax, 1 ; sys_exit syscall - mov ebx, 0 ; exit status 0 - int 0x80 ; perform syscall -- cgit v1.2.3