КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Особенности адресации миниЭВМ PDP-11
Кроме одноадресных команд в PDP-11 используются также и двухадресные команды. Приведем формат двухразрядной команды.
В двухразрядных командах режимы адресации могут быть разными. В командах широко используется косвенная адресация, то есть, когда в адресуемом РОНе находится не операнд, и даже не адрес операнда, а адрес адреса операнда. Формально, когда в РОНе находится адрес операнда, такая адресация уже является косвенной. Однако, поскольку РОНы находятся внутри процессора на обращение к ним затрачивается минимум времени, то РОНы могут рассматривать как продолжение самих команд.
Рассмотрим различные варианты адресации.
1.«Регистровая прямая». В этом случае в адресуемом РОНе находится операнд. 2.«Регистровая косвенная».
Операнд находится в памяти по адресу, содержащемуся в адресуемом РОНе.
3.«Автоинкрементная косвенная».
Операнд находится в памяти по адресу, который находится в другой ячейке памяти, на которую указывает содержимое выбранного РОНа.
Приведем таблицу, в которую сведены все восемь основных типов адресации.
При использовании содержимого РОНа в качестве адреса или адреса адреса операнда необходимо предварительно занести этот адрес в выбранный РОН. Поскольку на это занесение требуется определенное дополнительное время, то указанный способ адресации применяется только при обработке массивов информации. Например, при обработке матриц или БД. В этом случае однажды установленный адрес в РОНе может многократно автоматически увеличиваться, адресуя различные операнды. При этом содержимое РОНа изменяется на 1-цу при адресации байт или на 2 при адресации слов.
Следует отметить, что при использовании косвенных режимов 3 и 5 увеличение содержимого РОНа всегда производится на 2, поскольку в этом случае РОН содержит адрес адреса, который является 16-ти разрядным. При использовании индексной адресации команда как бы увеличивается до 2 или 3 слов, поскольку приращение Х можно рассматривать как продолжение команды. Если индексную адресацию имеет только один операнд, применяются двухсловные команды, в которых приращение Х помещается во второе слово. Если оба операнда имеют индексную адресацию, то используются трехсловные команды, причем для адресации источника используется второе, а для адресации приемника – третье слово команды.
Рассмотрим некоторые примеры использования режимов адресации.
Одноадресные команды.
INC - к содержимому приемника прибавляется 1. (операнд, записанный по адресу приемника, увеличивается на 1). 1.1.Регистровая прямая (УА=0) INC R3 До операции (R3)=000777, тогда после операции (R3)=001000 1.2.Автоинкрементная косвенная (УА=3) INC @R3+ До операции (R3)=001000, тогда после операции (R3)=001002. Содержимое R3 является адресом адреса операнда (001000)=002000 До операции (002000)=002002, после операции (002000)=002003.
Для работы с отдельными ячейками ОЗУ в качестве РОНа может использоваться и регистр R7 (счетчик команд). Этот счетчик всегда содержит адрес ячейки следующей за выполняемой командой. Счетчик можно использовать в любом из основных режимов адресации. Однако на практике целесообразно работа СК только в 4-х из этих режимов. Поэтому с точки зрения программиста возможны 4 дополнительных режима адресации через счетчик команд: 1)непосредственный; 2)абсолютный; 3)относительный; 4)косвенно-относительный. Аппаратурно эти 4 режима ничем не отличаются от соответствующих режимов с использованием других регистров процессора. Дополнительные типы адресации можно свести в таблицу.
При выполнении команд с непосредственной адресацией после выборки первого слова команды, содержимое СК автоматически увеличивается на 2. Содержимое СК интерпретируется как адрес операнда. То есть, операндом является второе слово команды. Таким образом, этот режим позволяет задавать операнды в программе путем запоминания операнда во втором слове команды с автоматическим увеличением СК еще на 2. Это увеличение на 2 необходимо, чтобы СК указывал на следующую команду, а не на второе слово текущей команды.
В режиме абсолютной адресации операция выполняется аналогично предыдущему режиму. Однако, содержимое СК интерпретируется как адрес адреса операнда, то есть адресом является 2-ое или 3-е слово команды. В отличие от предыдущего режима во втором и третьем слове команды находятся адреса операндов:
В режиме относительной адресации после выборки 1-ого слова команды и увеличения содержимого СК на 2, процессор вновь обращается в ОЗУ за индексным словом Х по адресу, содержащемуся в СК. СК получает приращение на 2. Процессор суммирует выбранное индексное слово Х (то есть, 2-ое слово команды А1) с содержимым СК. Полученная сумма является адресом операнда: (СК) + ∆А1=(a+4)+А1-(a+4)=А
Если команда трехсловная, то описанная процедура проделывается и над 3-им словом команды и содержимым СК. Косвенно-относительный режим адресации аналогичен предыдущему с той лишь разницей, что сумма индексного слова Х и содержимого СК интерпретируется как адрес адреса операнда.
Относительный режим адресации используется при написании позиционно-независимых программ, то есть, программ, место расположение которых не зависит от их нахождения в ОЗУ.
Некоторые команды.
Дата добавления: 2014-01-06; Просмотров: 354; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |