Как получить немного на языке ассемблера IA32? - PullRequest
3 голосов
/ 24 июня 2011

Как проверить, равен ли бит в некоторой позиции слова 1 на языке ассемблера IA32?

Ответы [ 2 ]

4 голосов
/ 24 июня 2011

Test, что-то вроде:

value = 000100h

mov eax, your_word
test eax, value
jnz was_set
2 голосов
/ 24 июня 2011

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 (переход переноса не установлен)

...