|
|
|
| Например, есть 2 цифры десятично-двоичных чисел: 9h и 8h. Складываю их:
format binary
use16
org 100h
MOV AL, 9h
ADD AL, 8h ; 9 + 8 = 17 (11h)
XOR AH, AH
AAA
INT 20h
|
После сложения по идее должно измениться значение флага AF на "1". Вот это не могу проверить - работаю в отладчике TD и не вижу где можно значение этого флага посмотреть :(
После AAA в теории должно получиться так: AH = 1h, AL = 7h, т.е. AX = 0x0107h, верно? Но выходит, что AX = 0x0001h - такое поведение, словно флаг AF был равен нулю перед применением AAA! Подскажите, пожалуйста, где же ошибка. | |
|
|
|
|
|
|
|
для: Kano
(23.02.2009 в 12:14)
| | XOR AH, AH => MOV AH, 0 | |
|
|
|
|
|
|
|
для: Kano
(23.02.2009 в 12:14)
| | Перенесите XOR строкой выше.
Эта команда может менять состояние флага AF, отсюда и ошибка.
Либо замените её командой MOV AH, 0 | |
|
|
|