Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АРХ. ИНФ. СИСТЕМ / ПОСОБИЕ .docx
Скачиваний:
24
Добавлен:
19.05.2015
Размер:
349.85 Кб
Скачать

Глава 5

Структура и общие принципы организации

запоминающих устройств, использующихся

для внутри машинного размещения информации

После ввода в ЭВМ информация может располагаться и храниться в основной памяти (ОП), на жестком магнитном диске (МД), в сверхоперативной памяти (СОП), входящей в состав центрального процессора. Она может также располагаться и быть доступной для обработки на сменных дисках, флэш-картах и т. д. Поскольку задачей данного пособия является рассмотрение принципов и способов представления «данных» и «управляющей информации» внутри ЭВМ, то, безусловно, необходимо дать характеристику и самим основным устройствам, в которых размещается эта информация: ОП и СОП. В ЭВМ 3 и 4-го поколений используется абсолютная и относительная адресация. Абсолютная адресация используется при указании адресов операндов, которые располагаются в СОП, относительная – для адресации операндов, которые располагаются в ОП. Выбор относительной адресации был обусловлен возможностью сокращения адресных полей операндов и длины машинной команды.

5.1. Структура основной памяти (оп)

ОП является адресной памятью, состоит из огромного количества 8-разрядных ячеек, каждая из которых имеет свой уникальный 16-ричный адрес.

Структура ОП приведена на рис. 5.1. Реализация относительной адресации связана с условным разбиением ОП на блоки по 4096 байтов. Справа от структуры ОП в общем виде представлена структура адреса произвольного байта ОП.

Рис. 5.1. Блочная организация ОП

Формирование адреса осуществляется при помощи двух частей: пять старших битов соответствуют номеру блока, а три младших – смещению относительно начала блока. Начало каждого блока совпадает с адресом ее первого байта, значение которого кратно 4096. Этот адрес получил называние базового. Поскольку объем блока равен 4096, то базовым может считаться адрес. кратный 4096, или адрес, в котором 3 младшие шестнадцатеричные цифры равны 0. Отсчет блоков начинается с 0.

Самые верхние 4096 байтов образуют «0» блок ОП. Понятие базового адреса используется при вычислении абсолютных или исполнительных адресов операндов, размещающихся в ОП. В пределах каждого блока адрес любого байта определяется 12-ти разрядным двоичным или 3-х разрядным 16-ричным числом, которое называется смещением и обозначается в машинных командах латинской буквой «D». Смещение может принимать значение от ООО16 до FFF16. Если при помощи выражения [В] обозначить содержимое регистра СОП, в котором находится значение базового адреса, то значение любого абсолютного адреса «А» ОП можно определить по формуле

А=[В]+D, (5.1)

где А, [В] и D представляются в 16-ричной системе счисления.

Если программы и данные располагаются в нескольких блоках основной памяти, то в регистрах общего назначения приходится хранить несколько базовых адресов (БА). Местом хранения базовых адресов являются регистры общего назначения СОП. Применение относительной адресации упрощает процесс перемещения программ в ОП. Для этого достаточно поменять значения базовых адресов в регистрах СОП. Распределение ОП и назначение БА осуществляется автоматически управляющей программой операционной системы. При программировании на машинно-ориентированных языках (Ассемблерах) программистам, как правило, самим приходится назначать базовые адреса и распределять основную память. Эти операции приходится выполнять и при составлении программ для микроконтроллеров. Назначение нескольких базовых адресов для одной и той же программы происходит в тех случаях, когда объем программы и данных требуют объема, большего, чем 4096 байтов. Распределение ОП между несколькими программами, исходя из блочной организации памяти, осуществляется исключительно блоками со стандартными объемами 4096 байтов. При оперировании с «данными», имеющими длины полуслов, слов или двойных слов, в качестве абсолютных адресов в командах выступают адреса самых младших байтов полей ОП, закрепленных за этими переменными.