3
如何檢查,如果字中的某些位置的比特爲1與IA32彙編語言?如何在IA32彙編語言中讀取一點?
如何檢查,如果字中的某些位置的比特爲1與IA32彙編語言?如何在IA32彙編語言中讀取一點?
Test
,是這樣的:
value = 000100h
mov eax, your_word
test eax, value
jnz was_set
NASM:
bt ax, <POS> ; test if bit at position is set: 1 means carry will be set 0 means carry will be unset
adc eax, 0 ; add 0 + carry to eax
你也使用jc
(跳躍進集)jnc
(跳扛設置)
我想你的分支邏輯倒置 - s/jnz wasnt_set/jz wasnt_set /'或's/jnz wasnt_set/jnz was_set /'也許? –
@保羅R:哎呀,是的,你說得很對。謝謝。 –
一個單詞是16位,所以你將不得不使用'ax'而不是'eax'這是一個雙字。 – DipSwitch