Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
 |
[ASM]Как установятся флаги? 23.08.01 14:19 Число просмотров: 1005
Автор: Chingachguk Статус: Незарегистрированный пользователь
|
> В справочнике по Ассамблеру в описании команды TEST есть > следующая строка: "флаги SF, ZF и PF устанавливаются в > соответствии с полученным показателем" > ??? Я не понял... > Как установятся флаги в данном примере: > mov dl,241 > test dl,0Fh > ?
Забей на флаги ! :)
Запомни тока, какие команды переходов(jz, ja и тд) или команды типа сложения со флагом переноса (adc) уместо использовать после команд, которые именяют флаги. Например, в твоем случае:
mov dl,241
test dl,0Fh
маска в команде test - 0Fh - первые 4 бита - она же число 15, и она накладывается на число 241 - шестнадцатеричное 0F1h. Тем самым ты можешь что-то выяснить ТОЛЬКО о первых 4-х битах числа 241.
Можешь, например, проверить, есть в них хоть один ненулевой бит:
test dl,0Fh
jnz @@NotNullBits
; NullBits
;...
@@NotNullBits:
А можешь проверить, четное ли число ненулевых битов в этих самых первых 4-х битах:
test dl,0Fh
jnp @@NotParityBits
; ParityBits
;...
@@NotNotParityBits
Chingachguk.
|
|
<programming>
|
[ASM]Как установятся флаги? 27.06.01 13:59
Автор: Padla Статус: Незарегистрированный пользователь
|
В справочнике по Ассамблеру в описании команды TEST есть следующая строка: "флаги SF, ZF и PF устанавливаются в соответствии с полученным показателем"
??? Я не понял...
Как установятся флаги в данном примере:
mov dl,241
test dl,0Fh ?
|
 |
[ASM]Как установятся флаги? 23.08.01 14:19
Автор: Chingachguk Статус: Незарегистрированный пользователь
|
> В справочнике по Ассамблеру в описании команды TEST есть > следующая строка: "флаги SF, ZF и PF устанавливаются в > соответствии с полученным показателем" > ??? Я не понял... > Как установятся флаги в данном примере: > mov dl,241 > test dl,0Fh > ?
Забей на флаги ! :)
Запомни тока, какие команды переходов(jz, ja и тд) или команды типа сложения со флагом переноса (adc) уместо использовать после команд, которые именяют флаги. Например, в твоем случае:
mov dl,241
test dl,0Fh
маска в команде test - 0Fh - первые 4 бита - она же число 15, и она накладывается на число 241 - шестнадцатеричное 0F1h. Тем самым ты можешь что-то выяснить ТОЛЬКО о первых 4-х битах числа 241.
Можешь, например, проверить, есть в них хоть один ненулевой бит:
test dl,0Fh
jnz @@NotNullBits
; NullBits
;...
@@NotNullBits:
А можешь проверить, четное ли число ненулевых битов в этих самых первых 4-х битах:
test dl,0Fh
jnp @@NotParityBits
; ParityBits
;...
@@NotNotParityBits
Chingachguk.
|
 |
A v debagere tiazhelo posmotret`?? 27.06.01 21:28
Автор: + <Mikhail> Статус: Elderman
|
|
|
|
|