[英]jb in Assembly and value in register
以下是給我們的(評論是我自己的):
mov edx, 1 ; moves 1 into edx register
mov eax, 7FFFh ; moves 7FFFh into eax register
cmp eax, 8000h ; compares 8000h to whatever is in the eax register (7FFFh)
jb L1 ; jump to L1 if below (if leftOp < rightOp)
mov edx, 0 ; moves 0 into edx register
L1: ; label
在執行此代碼后,我們被要求在EDX中給出最終值。 現在,對eax的操作是否會影響edx中的值? 我不認為他們這樣做,並且edx的最終值將為0.我是正確還是? 謝謝!
對eax
操作不會直接影響edx
的值,但由於它已初始化為1
且歸零取決於eax
操作的結果,因此它會間接受到影響。
jb
是一個未簽名的操作,並按照你說的做。 需要注意的是7FFFh
低於 8000h
所以跳將采取,從而跳過mov edx, 0
。 因此, edx
的最終值將為1
。
您可以運行此代碼並親自查看。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.