Теорія операційної системи

:: Меню ::

Головна
Представлення даних в обчислювальних системах
Машинні мови
Завантаження програм
Управління оперативною пам'яттю
Сегментна і сторінкова віртуальна пам'ять
Комп'ютер і зовнішні події
Паралелізм з точки зору програміста
Реалізація багатозадачності на однопроцесорних комп'ютерах  
Зовнішні пристрої
Драйвери зовнішніх пристроїв
Файлові системи
Безпека
Огляд архітектури сучасних ОС

:: Друзі ::

Карта сайту
 

:: Статистика ::

 

 

 

 

 

виагра почтой
 

Абсолютна адресація

При абсолютній адресації адресне поле команди безпосередньо містить номер цільового елементу пам'яті. В такий спосіб проводяться звернення до об'єктів з постійними адресами: статичним і зовнішнім змінним, точкам входу підпрограм.
Як і у випадку з літеральною адресацією, що обговорювалася в попередньому підрозділі, процесор, який використовує таку адресацію, або повинен мати команди змінної довжини, або його команда має бути довше за адресу. Друга умова виконується не лише в процесорів гарвардської архітектури, але і в багатьох старих комп'ютерів з невеликим адресним простором.

Абсолютна адресація в системі команд SPARC
В процесорів SPARC реалізація абсолютної адресації схожа на реалізацію адресації літеральної: під адресацію займається регістр, командою sethi %hi (addr), reg в нього завантажується старша частина адреси, а потім відбувається власне адресація. Для формування 64-розрядного адреси необхідно займати два регістри і виконувати ту ж програму, що і в прикладі 2.1.
Звернення до змінної в пам'яті відбувається так, як показано в прикладі 2.2.

Приклад 2.2. Звернення до змінної на процесорі SPARC

sethi %hi(var), %g1 ! поміщаємо старші біти адреси в %g1
Id [%gl+%lo(var)] %11 ! завантажуємо значення в %11
inc %11 ! проводимо операцію
st %11, [%gl+%lo(var)] ! зберігаємо результат.

У модулях, багато звернень, що містять, до змінних, рекомендується виділити для цієї мети регістр і використовувати зсуви відносно його — як, до речі, і зроблено в наведеному прикладі. Але це вже зовсім не абсолютна адресація.

 

:: Реклама ::

 

:: Посилання ::


 

 

 


Copyright © Kivik, 2017