с учетом следующей установки сегментных
с учетом следующей установки сегментных регистров: регистр CS со-
держит начальный адрес сегмента CODE, регистр DS указывает на DATA,
а регистр ES определяет сегмент BUFFER. Утверждение ASSUME
(полагать, считать - прим. перев.) означает именно то, что оно
предписывает ассемблеру. Ассемблер обрабатывает исходный текст
программы предполагая, что сегментные регистры установлены как
указано в этом утверждении. Установка сегментных регистров, сделан-
ная в этом утверждении, остается при ассемблировании в силе пока
другое такое же утверждение не определит новые установки. Ассемблер
обрабатывает эти утверждения последовательно, даже если программа
ветвится и закручивается в циклы. Утверждение ASSUME остается в
силе, пока ассемблер не встретит при последовательном просмотре
программы следующее. Заметим, что в утверждении ASSUME не обязано
определять все сегментные регистры. В нашем примере не объявлен
регистр SS. На практике содержимое сегментного ргистра может быть
временами и неизвестно в программе. В этих случаях утверждение
ASSUME должно указывать сегмент NOTHING. Например, утверждение
ASSUME ES:NOTHING
сообщает ассемблеру, что программа не знает, куда указывает допол-
нительный сегментный регистр. Поскольку значение регистра неизвест-
но, ассемблер не должен использовать его в адресных вычислениях.
Важно отметить, что утверждение ASSUME не генерирует команд ма-
шинного языка. Это директива ассемблеру полагать, что сегментные
регистры установлены в соответствии с указанной в этом утверждении
информацией. Добиться правильное установки сегментов - забота
программиста. Аналогично, ассемблер не может проверить, что утверж-
дение ASSUME при выполнении будет соответствовать содержимому
сегментных регистров. Из-за того, что программа может прийти к
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий