Наша совместная команда Banwar.org

Связаться с нами

  • (097) ?601-88-87
    (067) ?493-44-27
    (096) ?830-00-01

Статьи

методи адресації

У більшості команд адреса складається з двох частин: покажчик методу адресації (3 розряду) і номер РОН, через який адресується операнд. Є вісім методів адресації. Якщо в якості РОН використовується лічильник команд (СК), то з числа цих же восьми методів виділяються чотири, які відіграють особливе значення і мають спеціальні назви.

Важливою особливістю системи є введення непрямої адресації - операції подвійний штрихування. Це дозволяє досягти більшої простоти і динамізму в роботі зі структурами даних. Молодший розряд покажчика методу адресації визначає опосередковану (1) і пряму (0) адресацію. Два інших розряду визначають один з чотирьох типів адресації: регістровий (00), автоінкрементний (01), автодекрементний (10), індексний (11).

Якщо використовується пряма адресація, то при реєстрової адресації операнд розміщений в регістрі, номер якого слід за покажчиком методу адресації (рис. 1.11, а). Всі інші типи припускають розміщення операнда в пам'яті, а в регістрі розміщується його адресу (або частина адреси). При Автоінкрементний і автодекрементной адресації (рис. 1.11,6 і е) відбувається вибірка операнда за адресою, вказаною в регістрі, і модифікація цього регістра (зміна адреси). Якщо використовуються байтові команди, вміст регістра змінюється на 1, якщо команди, які оперують словами, - на 2. При Автоінкрементний адресації відбувається збільшення адреси після вибірки, при автодекрементном - зменшення адреси до вибірки. Ці команди підтримують організацію циклів з переадресацією (т. Е. Обробку масивів), а також магазинну (стекову) структуру пам'яті, широко використовується під час організації вкладених процедур (підпрограм, переривань, рекурсій) і при обробці рядків (наприклад, трансляції арифметичних виразів). При індексної адресації (рис. 1.11, г) адреса операнда визначається як сума вмісту регістра і слова, розміщеного слідом за командою. Цей тип адресацій широко поширений і служить для обробки масивів даних. При цьому одна і та ж команда обробляє різні елементи структури при зміні вмісту регістра (індексу).

У більшості команд адреса складається з двох частин: покажчик методу адресації (3 розряду) і номер РОН, через який адресується операнд

Всі ці типи використовуються і з непрямою адресацією. При цьому операнд, отриманий в результаті описаних перетворень, буде і адресою операнда.

Так як лічильник команд є одним з РОН (R7), він може брати участь в адресації за допомогою будь-якого з восьми описаних методів. Чотири методи мають окремі назви, що відображають їх особливості: відносний (індексний), побічно-відносний (опосередковано-індексний), безпосередній (побічно-автоінкрементний), абсолютний (побічно-автоінкрементний).

Відносна адресація є основним методом адресації всередині тіла процедури (т. Е. При використанні міток), що забезпечує перемещаемость процедур в оперативній пам'яті. При цьому методі в слові, наступного за командою, вказується зміщення операнда (воно може бути як позитивним, так і негативним) щодо поточного місця програми (рис. 1.12, а). Таким чином, при передачі управління програмою вона відразу орієнтована в пам'яті, не потрібно завантаження базових регістрів і т. Д. Такий спосіб реалізації відносної адресації слід визнати вельми ефективним. Безпосередня адресація реалізується оригінально, без явного розміщення операнда в команді. Операнд розміщується слідом за командою; перед його вибіркою лічильник команд (R7) вказує на нього (рис. 1.12,6). При Автоінкрементний методі після вибірки відбувається збільшення вмісту R7, і він вказує на наступну команду (або на слово, що відноситься до другого операнду в команді; тоді після вибірки другого операнда вміст R7 ще збільшиться, і до закінчення вибірки операндів лічильник буде вказувати на наступну команду. На відміну від інших систем команд, безпосередній операнд є рівноправним з іншими, т. е. має такі ж формати і може брати участь у всіх операціях присвоювання поряд зі звичайними операціями.

має такі ж формати і може брати участь у всіх операціях присвоювання поряд зі звичайними операціями

При побічно-Автоінкрементний адресації слідом за командою розміщується абсолютний адреса операнда. Використання абсолютної адресації дозволяє реалізувати, зокрема, операцію типу завантаження адреси як звичайну операцію пересилання. Абсолютні адреси всередині переміщуваної програмної секції (т. Е. Розміщення в пам'яті якої на етапі написання програми невідомо) є переміщуваними операндами і мають модифікуватися при обробці компоновщиком. Крім того, абсолютна адресація застосовується для операцій з фіксованими осередками пам'яті, наприклад регістрами зовнішніх пристроїв.

Новости

Banwar.org
Наша совместная команда Banwar.org. Сайт казино "Пари Матч" теперь доступен для всех желающих, жаждущих волнения и азартных приключений.