-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patheven_odd.asm
More file actions
30 lines (27 loc) · 798 Bytes
/
Copy patheven_odd.asm
File metadata and controls
30 lines (27 loc) · 798 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
section .text
global _start ;must be declared for using gcc
_start: ;tell linker entry point
mov ax, 10 ;getting 8 in the ax
and ax, 1 ;and ax with 1
jz evnn
mov eax, 4 ;system call number (sys_write)
mov ebx, 1 ;file descriptor (stdout)
mov ecx, odd_msg ;message to write
mov edx, len2 ;length of message
int 0x80 ;call kernel
jmp outprog
evnn:
mov eax, 4 ;system call number (sys_write)
mov ebx, 1 ;file descriptor (stdout)
mov ecx, even_msg ;message to write
mov edx, len1 ;length of message
int 0x80 ;call kernel
outprog:
mov eax,1 ;system call number (sys_exit)
mov ebx,0
int 0x80 ;call kernel
section .data
even_msg db 'Even Number' ;message showing even number
len1 equ $ - even_msg
odd_msg db 'Odd Number' ;message showing odd number
len2 equ $ - odd_msg