ВУЗ:
Составители:
42
тата имеют четное число единиц;
• флаг вспомогательного переноса AF устанавливается в 1, если есть
перенос/заем из младшей тетрады в старшую 8- или 16-битного ре-
зультата в операциях десятичного сложения/вычитания;
• флаг нуля ZF устанавливается в 1 при нулевом результате операции;
• флаг знака SF устанавливается в 1 при отрицательном результате
операции
при использовании дополнительного кода;
• флаг переполнения OF устанавливается в 1 при потере старшего
бита результата сложения или вычитания;
• если флаг направления DF установлен в 1, то используется авто-
декрементная адресация при выполнении операции обработки строк,
если DF установлен в 0, то используется автоинкрементная адреса-
ция;
• если флаг прерывания IF установлен
в 1, то внешние маскируе-
мые прерывания разрешены, иначе запрещены;
• если флаг трассировки TF установлен в 1, то процессор переходит
в состояние прерывания после выполнения каждой операции, что
позволяет проводить пошаговую отладку программ.
2.2.3 Организация памяти
Хотя процессор имеет 20-разрядную адресную шину, которая соединяет
его с физической памятью, он оперирует с 16-битными логическими адре-
сами, состоящими из 16-разрядного базового адреса сегмента и 16-
разрядного смещения в сегменте. Физические, 20-разрядные адреса дан-
ных и команд формируются путем сложения содержимого регистров-
указателей и смещенного на 4 бита влево содержимого сегментных реги
-
стров. Т.н. эффективный адрес данных получается как сумма содержимо-
го регистров BX или BP, содержимого регистров SI или DI и смещения.
Затем из эффективного адреса и содержимого сегментного регистра фор-
мируется физический адрес (Рис. 2.6). В формировании физического адре-
са команды участвуют IP и CS. Таким образом, адресное пространство
разбивается на 4 сегмента емкостью 64К адресов по
числу сегментных ре-
гистров. Регистр CS указывает на текущий сегмент кода (программы), от-
куда выбираются команды. Регистр DS указывает на текущий сегмент
данных, в котором содержатся переменные. Регистр SS адресует текущий
сегмент стека, в котором реализуются все стековые операции. Наконец,
регистр ES определяет текущий дополнительный сегмент данных. Сме-
щенное содержимое сегментного регистра определяет положение сегмента
в 20-разрядном адресном пространстве, а регистры-указатели определяют
положение команды или данных внутри сегментов.
Поскольку при формировании эффективного адреса содержимое сег-
ментного регистра сдвигается на 4 бита, сегмент всегда начинается с адре-
42 тата имеют четное число единиц; • флаг вспомогательного переноса AF устанавливается в 1, если есть перенос/заем из младшей тетрады в старшую 8- или 16-битного ре- зультата в операциях десятичного сложения/вычитания; • флаг нуля ZF устанавливается в 1 при нулевом результате операции; • флаг знака SF устанавливается в 1 при отрицательном результате операции при использовании дополнительного кода; • флаг переполнения OF устанавливается в 1 при потере старшего бита результата сложения или вычитания; • если флаг направления DF установлен в 1, то используется авто- декрементная адресация при выполнении операции обработки строк, если DF установлен в 0, то используется автоинкрементная адреса- ция; • если флаг прерывания IF установлен в 1, то внешние маскируе- мые прерывания разрешены, иначе запрещены; • если флаг трассировки TF установлен в 1, то процессор переходит в состояние прерывания после выполнения каждой операции, что позволяет проводить пошаговую отладку программ. 2.2.3 Организация памяти Хотя процессор имеет 20-разрядную адресную шину, которая соединяет его с физической памятью, он оперирует с 16-битными логическими адре- сами, состоящими из 16-разрядного базового адреса сегмента и 16- разрядного смещения в сегменте. Физические, 20-разрядные адреса дан- ных и команд формируются путем сложения содержимого регистров- указателей и смещенного на 4 бита влево содержимого сегментных реги- стров. Т.н. эффективный адрес данных получается как сумма содержимо- го регистров BX или BP, содержимого регистров SI или DI и смещения. Затем из эффективного адреса и содержимого сегментного регистра фор- мируется физический адрес (Рис. 2.6). В формировании физического адре- са команды участвуют IP и CS. Таким образом, адресное пространство разбивается на 4 сегмента емкостью 64К адресов по числу сегментных ре- гистров. Регистр CS указывает на текущий сегмент кода (программы), от- куда выбираются команды. Регистр DS указывает на текущий сегмент данных, в котором содержатся переменные. Регистр SS адресует текущий сегмент стека, в котором реализуются все стековые операции. Наконец, регистр ES определяет текущий дополнительный сегмент данных. Сме- щенное содержимое сегментного регистра определяет положение сегмента в 20-разрядном адресном пространстве, а регистры-указатели определяют положение команды или данных внутри сегментов. Поскольку при формировании эффективного адреса содержимое сег- ментного регистра сдвигается на 4 бита, сегмент всегда начинается с адре-
Страницы
- « первая
- ‹ предыдущая
- …
- 40
- 41
- 42
- 43
- 44
- …
- следующая ›
- последняя »