Тогда для получения действительных адресов достаточно реали зовать следующую простую формулу:
Ап; = АУ) + В> |
(10.3) |
где A^j — действительный адрес; Ayj — условный адрес;
У —1. 2...... L.
Число В называется базовым адресом. При параллельной реа лизации нескольких рабочих программ и динамическом распреде лении памяти базовые адреса определяются управляющей програм мой по зависимости (10.4), отвечающей последовательному рас положению информационных массивов в памяти:
d- 1
(10.4)
где Ва — базовый номер для d-ro информационного массива при счете номеров массивов по порядку ввода их в память.
Если некоторые информационные массивы в процессе работы машины удаляются из памяти, то при определении базовых адре сов управляющая программа должна иметь возможность учиты вать это обстоятельство. Еще более сложной оказывается задача определения базовых адресов при размещении информационных массивов как в оперативной, так и во внешней памяти. Действи тельно, в этом случае при активизации очередного информацион ного массива управляющая программа должна сначала найти со ответствующий свободный массив ячеек оперативной памяти, опре делить для него начальный адрес, оказывающийся базовым для активизируемого массива, а уже затем передавать его из внешней
памяти в ОЗУ. Отметим, что |
преобразовывать условные адреса |
||
в действительные по формуле |
(10.3) целесообразно |
не программ |
|
ным путем, |
а с помощью дополнительных базовых регистров, |
||
в которые |
помещаются значения fi,-, и сумматора |
адресов. До |
|
полнительная аппаратура несколько усложняет устройство управ ления, но уменьшает непроизводительные затраты машинного времени.
Динамическое распределение памяти всегда должно организо вываться так, чтобы максимально загрузить процессор универсаль ной многопрограммной ЦВМ. Это возможно, как отмечалось выше, только при сведении к минимуму времени, затрачиваемого на об мен информацией между оперативной и внешней памятью. Рас пределение оперативной памяти посредством простого введения базовых адресов, определяемых управляющей программой в про цессе решения задачи, не обеспечивает во всех случаях мини мизацию времени, затрачиваемого на обмен информацией, а также исключение перемещения информационных массивов в оператив ной памяти. Поэтому при динамическом распределении часто ис пользуется так называемая страничная организация памяти, когда
3U