;cin.asm
section .data
num db 0
char db '0'
prompt db "Input a number (0~9): "
mult3 db " is a multiple of 3!", 10
index dw 0
myArr db 0
asc db '0'
section .text
global _start
_start:
mov cx, word[index]
inputLoop:
;cout << prompt
mov rax, 1
mov rdi, 1
mov rsi, prompt
mov rdx, 22
syscall
;cin >> num
mov rax, 0
mov rdi, 0
mov rsi, char
mov rdx, 1
syscall
mov al, byte[char+rcx]
and al, 0fh
mov byte[num], al
inc cx
cmp cx, 10
jne inputLoop
mov cx, word[index]
arrayLoop:
;if(num%2 == 0)
mov ah, 0
mov al, byte[num+(rcx)]
mov bl, 2
cmp ah, 0
jz multiple
inc cx
cmp cx, 10
jnz arrayLoop
multiple:
mov rax, 0
mov rdi, 0
mov rsi, al
mov rdx, 0
syscall
mov rax, 0
mov rdi, 0
mov rsi, mult3
mov rdx, 20
syscall
inc cx
cmp cx, 10
jnz arrayLoop
done:
mov rax, 60
mov rdi, 0
syscall
O2Npbi5hc20KCnNlY3Rpb24gLmRhdGEKCW51bQlkYgkwCgljaGFyCWRiCScwJwoJcHJvbXB0CWRiCSJJbnB1dCBhIG51bWJlciAoMH45KTogIgoJbXVsdDMJZGIJIiBpcyBhIG11bHRpcGxlIG9mIDMhIiwgMTAKCWluZGV4CWR3CTAKCW15QXJyCWRiCTAKCWFzYwlkYgknMCcKCQpzZWN0aW9uIC50ZXh0CglnbG9iYWwgX3N0YXJ0Cgpfc3RhcnQ6Cgltb3YJY3gsIHdvcmRbaW5kZXhdCmlucHV0TG9vcDoKCTtjb3V0IDw8IHByb21wdAoJbW92CXJheCwgMQoJbW92CXJkaSwgMQoJbW92CXJzaSwgcHJvbXB0Cgltb3YJcmR4LCAyMgoJc3lzY2FsbAoJCgk7Y2luID4+IG51bQoJbW92CXJheCwgMAoJbW92CXJkaSwgMAoJbW92CXJzaSwgY2hhcgoJbW92CXJkeCwgMQoJc3lzY2FsbAoJCgltb3YJYWwsIGJ5dGVbY2hhcityY3hdCglhbmQJYWwsIDBmaAoJbW92CWJ5dGVbbnVtXSwgYWwKCQoJaW5jCWN4CgljbXAJY3gsIDEwCglqbmUJaW5wdXRMb29wCgkKCW1vdgljeCwgd29yZFtpbmRleF0KYXJyYXlMb29wOgoJO2lmKG51bSUyID09IDApCgltb3YJYWgsIDAKCW1vdglhbCwgYnl0ZVtudW0rKHJjeCldCgltb3YJYmwsIDIKCWRpdglibAoJY21wCWFoLCAwCglqegltdWx0aXBsZQoJCglpbmMJY3gKCWNtcAljeCwgMTAKCWpueglhcnJheUxvb3AKbXVsdGlwbGU6CQoJbW92CXJheCwgMAoJbW92CXJkaSwgMAoJbW92CXJzaSwgYWwKCW1vdglyZHgsIDAKCXN5c2NhbGwKCQoJbW92CXJheCwgMAoJbW92CXJkaSwgMAoJbW92CXJzaSwgbXVsdDMKCW1vdglyZHgsIDIwCglzeXNjYWxsCgkKCWluYwljeAoJY21wCWN4LCAxMAoJam56CWFycmF5TG9vcApkb25lOgoJbW92CXJheCwgNjAKCW1vdglyZGksIDAKCXN5c2NhbGw=