2011-06-24 47 views

回答

4

Test,是这样的:

value = 000100h 

mov eax, your_word 
test eax, value 
jnz was_set 
+0

我想你的分支逻辑倒置 - s/jnz wasnt_set/jz wasnt_set /'或's/jnz wasnt_set/jnz was_set /'也许? –

+0

@保罗R:哎呀,是的,你说得很对。谢谢。 –

+0

一个单词是16位,所以你将不得不使用'ax'而不是'eax'这是一个双字。 – DipSwitch

2

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(跳扛设置)