что сегментные регистры устанавливаются до
любому конкретному ASSUME множеством разных путей, за его
корректность отвечает программист. В нашем примере предполагается,
что сегментные регистры устанавливаются до выполнения данного кус-
ка программы. Если они установленыы неверно, то программа будет вы-
полняться неправильно даже если ассемблирование прошло успешно.
Первая команда увеличивает значение VAR1, находящейся в сегмен-
те данных. Ассемблер полагает, что регистр DS указывает на сегмент
DATA в соответствии с утверждением ASSUME. Поскольку регистр DS
предполагается при использовании данных по умолчанию, то для этой
команды ассемблер не генерирует сегментный префикс. Сформированная
этой инструкцией 4-байтовая машинная команда не содержит сегментно-
го префикса.
Вторая команда определяет переменную VAR2, которая находится в
сегменте названном BUFFER. Программа сообщила ассемблеру, что
дополнительный сегментный регистр указывает на сегмент BUFFER. Для
увеличения VAR2 ассемблер генерирует четырехбайтовую команду машин-
ного языка, но ей предшествует команда с однобайтовым префиксом,
которая отменяет использование регистра DS в этой команде.
Префиксный байт 26H говорит процессору использовать при создании
20-битового адреса памяти регистр ES. В колонке объектных кодов на
листинге ассемблер отмечает префиксную команду двоеточием.
Третья команда изменяет переменную VAR3 в сегменте CODE.
Утверждение ASSUME связывает этот сегмент с регистром CS. Ассемблер
автоматически генерирует соответствующий префикс переназначения
сегмента. В данном случае префикс 2EH предписывает процессору
использовать при вычислении испольнительного адреса регистр CS.
Вначале утверждение ASSUME покажется излишеством. В первое
время при написании программы естественно забывать о его примене-
нии. Ассемблер выдаст массу сообщений об ошибках чтобы помочь вам в
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий