Студопедия

Мы поможем в написании ваших работ!




Адресное пространство памяти и ввода-вывода

Память ВМ86 логически организована как одномерный массив байтов, каждый их которых имеет 20-битовый физический адрес в диапазоне 0..FFFFFh. Любые два смежные байта могут использоваться как 16-битовое слово в памяти. Младший байт слова имеет меньший адрес, а старший байт - больший. Адресом слова считается адрес его младшего слова.
Полная информация, необходимая для определения физического адреса, содержится в адресном объекте «сегмент: смещение», который называется указателем адреса и содержит адрес сегмента и внутрисегментное смещение. Для запоминания указателя адреса требуется два 16-битовых регистра или два слова памяти, причем слово с меньшим адресом содержит смещение, а слово с большим адресом - базовый адрес сегмента.
Команды, байты и слова данных можно свободно размещать по любому адресу, что позволяет экономить память благодаря ее плотной упаковке. Однако для экономии времени выполнения программы целесообразно размещать слова данных в памяти по четным адресам, т.к. МП передает такие слова за один цикл шины. Слово с четным адресом называется выровненным на границе слов. Слова с нечетным адресом (не выровненные слова) также допустимы, но для их передачи требуется два цикла шины.
Особенно важно иметь выровненные слова для операций со стеком, т.к. в таких операциях участвуют только слова. Следовательно, указатель стека SP необходимо всегда инициализировать на четный адрес.
Команды всегда выбираются словами по четным адресам, за исключением первой выборки после передачи управления по нечетному адресу.


<== предыдущая страница | следующая страница ==>
Классификация регистров | Сегментация памяти и вычисление адресов

Дата добавления: 2015-06-30; просмотров: 183; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.103 сек.