ソースを参照

testing cmp and conditional jumps

Phil 5 年 前
コミット
63f22ee212
1 ファイル変更22 行追加11 行削除
  1. 22 11
      spaghetti.asm

+ 22 - 11
spaghetti.asm

@@ -2,29 +2,40 @@ section .bss
 	st resb 6 ; 6 byte for death
 
 section .data
-	n dw 0;
-
+	ge db 'greater/equal' , 0xa
+	gec equ $ - ge
+	lt db 'lower then' , 0xa
+	ltc equ $ - lt
+	
 section .text 
 
 	global _start
 	
 _start:
 
-	mov [st+5], byte 0xa
-	mov [st+4], byte 0x68
-	mov [st+3], byte 0x74
-	mov [st+2], byte 0x61
-	mov [st+1], byte 0x65
-	mov [st+0], byte 0x44
-
+	mov eax, 55
+	mov ebx, 100
 	
+	cmp eax,ebx
+	jge greater
+ 
+lower:	
+	mov eax, 4
+	mov ebx, 1
+	mov ecx, lt
+	mov edx, ltc
+	int 0x80
+	jmp exit
+
+greater:	
 	mov eax, 4
 	mov ebx, 1
-	mov ecx, st
-	mov edx, 6
+	mov ecx, ge
+	mov edx, gec
 	int 0x80
 
 
+exit:
 	mov eax, 1
 	mov ebx, 0
 	int 0x80