I have such code:
mov eax, 0
mov [left], eax
mov eax, [len]
dec eax
mov [right], eax
I need to get 0 in left and len - 1 in right. But somehow left gets 0 and after line gets len - 1 too. I try to use another register for right, but result same.
mov eax, 0
mov [left], eax
mov ebx, [len]
dec ebx
mov [right], ebx
So, it gives same result.
Full code:
section .data
len dd 10
section .bss
left resd 0
right resd 0
section .text
global main
push rbp
mov rbp, rsp
mov eax, 0
mov [left], eax
mov eax, [len]
dec eax
mov [right], eax
and at this line I already have a problem