Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
програм.docx
Скачиваний:
5
Добавлен:
16.04.2019
Размер:
78.79 Кб
Скачать

2. Адресация памяти

На логическом уровне ОП ЭВМ рассматривает­ся как упорядоченная последовательность ячеек памяти. Каждая ячейка памяти имеет уникальный адрес, по которому осуществляется обраще­ние к ней при записи и считывании. ОП является памятью с непосредст­венным доступом, так как обращение к информации, хранящейся в любой ячейке, осуществляется по известному адресу без перебора содер­жимого всех остальных ячеек памяти.

Информационные единицы, размещаемые в ОП, могут иметь фикси­рованную или переменную длину. Единицами фиксированной длины являются машинное слово, полуслово и двойное машинное слово. В ЕС ЭВМ машинное слово содержит 4 байта (32 двоичных разряда), полусло­во - 2 байта (16 двоичных разрядов), двойное слово - 8 байтов (64 двоичных разряда). В СМ ЭВМ машинное слово равно 2 байтам. Единицей переменной длины является поле. Оно может иметь любую длину от 1 до 256 байтов.

Данные, представленные в двоичной форме, располагаются в указанных единицах машинной памяти так, что веса разрядов двоичных чисел возрастают справа налево. Позиции же двоичных цифр нумеруются слева направо начиная с нуля.

При обращении к памяти обычно производится запись или считыва­ние целого слова, однако в большинстве ЭВМ наименьшей адресуемой единицей является байт, т.е. в ОП возможен прямой доступ к одному байту информации. Байт, являясь минимальным элементом адресации, боты с полями переменной длины.

Адрес любой единицы машинной памяти определяется адресом старшего (крайнего левого) байта. Так как байты являются адресуе­мыми единицами памяти, то адрес полуслова кратен двум (в самом младшем двоичном разряде кода адреса должен быть ноль), адрес машинного слова кратен четырем, адрес двойного слова — восьми (нули в трех младших двоичных разрядах). Правильность задания адресов автоматически контролируется в машине. При обнаружении ошибки в задании адреса вычислительный процесс прерывается.

Если имеет место абсолютная (иначе говоря, прямая) адре­сация, то в команде указывается истинный адрес ячейки памяти, где хранится операнд. По этому адресу, называемому исполнительным, осу­ществляется обращение к ОП.

В современных ЭВМ обычно используется относительная ад­ресация, при которой в специальном регистре, базовом или индексном, хранится один адрес Абаз, называемый базовым адресом. В адресном поле команды указывается относительный адрес Аотн, или смещение. В этом случае исполнительный адрес Аисп = Aбаз + Aотн, т.е. при выпол­нении команды осуществляется обращение к ячейке ОП, адрес которой является суммой содержимого индексного регистра и адреса, указанного в команде.

В ЭВМ используются также непосредственная и косвенная адресации. При непосредственной адресации в адресном поле команды содержится значение операнда. В случае косвенной адресации в ад­ресном поле команды содержится адрес ячейки, в которой хранится не сам операнд, а его адрес. Косвенная адресация используется для органи­зации списков и списковых структур данных.