I am trying to perform an arithmetic shift right in Delphi. I can't get it to work though, it keeps giving incorrect answers.
Here is my code;
lValue := offset;
asm
mov cl,32
sar lValue,cl
end;
hgh := lValue and $FFFFFFFF;
When offset is set to 1024 and the shift right is set to 32, hgh should equal 0. In my code, hgh = 1024.