Базовая адресация - Большая Энциклопедия Нефти и Газа, статья, страница 1
Сказки - это страшные истории, бережно подготавливающие детей к чтению газет и просмотру теленовостей. Законы Мерфи (еще...)

Базовая адресация

Cтраница 1


Базовая адресация, по существу, не отличается от модификации, и в обоих случаях используется чаще всего та же аппаратура. Различия проявляются главным образом в целях использования. Содержимое базового регистра складывается с адресами, появляющимися в программе при выполнении команд. Базовая адресация решает обычно две разные задачи: задачу переадресации и задачу пределов адресации. В современных ЭВМ со сложными системами программирования необходимо, чтобы программы на машинном языке могли составляться без знания абсолютного адреса ячеек памяти для данных и программ, которые будут использоваться во время прогона.  [1]

Базовая адресация обычно используется для подступа к элементам структур данных, когда смещение ( номер) элемента известно на стадии разработки программы ( при ее ассемблировании), а базовый ( начальный) адрес структуры должен вычисляться при выполнении программы. Модификация содержимого базового регистра позволяет обратиться к одноименному элементу различных структур данных.  [2]

Принцип базовой адресации помогает снять ограничения, налагаемые на адресацию форматом команды. Если длина слова настолько мала, что не допускает получения адреса, обеспечивающего адресацию по всей памяти, то адресную часть команды можно прибавлять к базовому числу, которое достаточно велико и в состоянии дать требуемое смещение адреса. Чтобы избежать выполнения операции сложения двух величин, что сопряжено с дополнительными затратами, включая временные, можно применить блочную, или страничную адресацию. Блочный адресный регистр дает старшие разряды действительного адреса, связывая его со старшими разрядами адреса в команде. Поэтому память разделяется на блоки, или страницы, размер которых определяется адресом в команде.  [3]

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

Без отдельного устройства управления памятью сегментные регистры обеспечивают базовую адресацию, необходимую для простого перемещения программ в памяти.  [5]

Перечислим основные способы адресации в порядке важности: модификация и базовая адресация, косвенная адресация и относительная адресация.  [6]

В правилах адресации данных существует три исключения. Так, если при обращении к данным используется один из способов базовой адресации по ВР, то в качестве указателя сегмента служит SS. Этот вариант адресации эффективен при передаче параметров через текущий кадр системного стека. Указателем кадра является адресный регистр ВР.  [7]

От этих факторов сильно зависят легкость внедрения и различия в характеристиках отдельных методов. Так, например, если центральный процессор имеет регистры базовой адресации, доступные любой команде при небольших затратах памяти или других ресурсов, легко применить программы повторного входа, причем их эффективность, вероятно, будет мало отличаться от эффективности стандартных программ.  [8]

Базовая адресация, по существу, не отличается от модификации, и в обоих случаях используется чаще всего та же аппаратура. Различия проявляются главным образом в целях использования. Содержимое базового регистра складывается с адресами, появляющимися в программе при выполнении команд. Базовая адресация решает обычно две разные задачи: задачу переадресации и задачу пределов адресации. В современных ЭВМ со сложными системами программирования необходимо, чтобы программы на машинном языке могли составляться без знания абсолютного адреса ячеек памяти для данных и программ, которые будут использоваться во время прогона.  [9]

Это требование является следствием как концепции мультипрограммирования, так и концепции независимой трансляции подпрограмм и программных сегментов, когда абсолютные адреса присваиваются командам и данным подпрограмм в процессе загрузки для выполнения. Если при генерации подпрограммы использовались абсолютные адреса, то все такие адреса должны быть изменены при перемещении подпрограммы в памяти на другое место. С этой точки зрения предпочтительнее использовать метод базовой адресации ( см. ниже разд.  [10]

Важным обстоятельством процесса обработки информации в АС является накопление текущей информации в определенном объема в ОЗУ. Оперативная ламять разбивается на части ( блоки) Л в пределах которых накапливается информация по определенному каналу. Специфической особенностью работы программы АС является использование большого количества списков, таблиц, отражающих размещение информации в памяти СВ. При таких условиях хранение полного адреса операнда в коде команды представляет избыточность, которая устраняется путем указания в коде команды только относительного адреса и использования принципа базовой адресации.  [11]

12 Схема обращения от подпрограммы I к подпрограмме II по ячейке ВЫХОД. Слева запись на алгоритмическом языке. Оператор ПО означает передачу управления по значению переменной ВЫХОД. Справа - запись на автокоде ЯУЗА. Ф Я означает операцию передачи управления по ячейке. [12]

Настройка блока, представляющего собой процедуру, может производиться либо по значению фактических параметров, либо по их имени. Для управляющих ЦВМ применяется главным образом настройка по значению, поскольку при этом программа блока не изменяется, но перед обращением к блоку в основной программе должно осуществляться вычисление и перепись значений фактических параметров в стандартные ячейки блока. При настройке по имени в программе блока все формальные параметры заменяются на адреса фактических параметров и программа работает непосредственно с ячейками фактических параметров без пересылок этих величин в стандартные ячейки блока. Настройка блока по имени связана с изменением программы для каждой совокупности фактических параметров и поэтому может применяться только для ЦВМ с памятью команд типа МОЗУ или с развитой системой базовой адресации.  [13]

Общая программная структура заключается во введении резидентного монитора операционной системы, действующего как регулировщик уличного движения. Монитор отвечает за выделение программе пространства памяти, передачу ее в основную память, инициирование ее выполнения и реализации ее ВВ посредством вызова и выполнения по мере необходимости подпрограмм ВВ. Так как положение программы в памяти изменяется от одного выполнения к другому, невозможно полностью определить адреса в загрузочном модуле. Одно из решений этой проблемы - заставить загрузчик модифицировать все адресные обращения путем прибавления коэффициента перемещения; но это связано с потерями времени. Другая процедура - использовать базовую адресацию и заставить резидентный монитор загружать коэффициент перемещения ( который присваивается самим монитором) в регистр базового адреса.  [14]

В командах обработки строк SI и DI являются регистрами автоинкрементной или автодекрементной адресации. Тип адресации определяется флажком DF в регистре F. Если DF 1, то реализуется автодекрементный способ адресации, в противном случае - автоинкрементный. При этом SI указывает на исходную строку, a DI - на результирующую строку. Регистры SI и DI в паре с регистрами ВХ и ВР ( Base Pointer) могут быть использованы при различных способах базовой адресации с индексированием.  [15]



Страницы:      1