From 2fd0a9911bed7ee16e4df3fbdf519e4287acb9cf Mon Sep 17 00:00:00 2001 From: 98WuG Date: Sun, 5 Aug 2018 11:22:11 -0400 Subject: [PATCH] cleanup asm --- asm/zero-or-not-zero.asm | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/asm/zero-or-not-zero.asm b/asm/zero-or-not-zero.asm index d4824d8..296d193 100644 --- a/asm/zero-or-not-zero.asm +++ b/asm/zero-or-not-zero.asm @@ -16,9 +16,6 @@ section .data notzero: db 'That one is NOTZERO',0xA notzeroLen: equ $-notzero - ; Zero - equal: db 30h,0xA - section .bss num resb 8 @@ -39,17 +36,11 @@ section .text mov eax, 3 ; Syscall: read i guess? i just learned assembly today int 0x80 ; Kernel interrupt 0x80 - ; If ecx == 0 setZero else setNotZero + ; If ecx == 0 then setZero else setNotZero cmp byte[ecx], '0' ; Compare character value of user input to ascii char 0 je setZero ; Jump to setZero if equal jmp setNotZero ; Jump to setNotZero - ; Exit the program - exit: - mov ebx, 0 ; Arg 1: status - mov eax, 1 ; Syscall: 1 = exit(3) - int 0x80 ; Kernel interrupt 0x80 - ; Set edx and ecx registers to print zero message setZero: mov edx, zeroLen @@ -68,3 +59,9 @@ section .text mov eax, 4 ; Syscall: 4 = write(2) int 0x80 ; Kernel interrupt 0x80 call exit ; Exit program + + ; Exit the program + exit: + mov ebx, 0 ; Arg 1: status + mov eax, 1 ; Syscall: 1 = exit(3) + int 0x80 ; Kernel interrupt 0x80