It’s my second day I’m learning NASM and assembly language at all, so I’ve decided to write a kind of a calculator. The problem is that when user enters the operation, the program doesn’t compare it.I mean compares but it doesn’t consider that strings are equal when they are. I’ve googled a lot, but no results. What might be my broblem? Here’s source
operV resb 255 ; this is declaration of variable later used to store the input, in .bss of course
mov rax, 0x2000003 ;here user enters the operation, input is "+", or "-"
mov rdi, 0
mov rsi, operV
mov rdx, 255
syscall
mov rax, operV ; here is part where stuff is compared
mov rdi, "+"
cmp rax, rdi
je add
mov rdi, "-"
cmp rax, rdi
je substr
;etc...
You also press the enter key when you submit information like that. change rdi to “+”, 10 on linux, or “+”, 11 on windows
The answer came to me in a dream last night.
That’s the changes done 😛