русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Способи адресації інформації


Дата додавання: 2014-11-28; переглядів: 1523.


Механізм адресації в значній мірі впливає на ефективність обробки інформації в МП.

Для долання обмежень через малу розрядність слів команд використовуються різноманітні способи адресації, які дозволяють визначити повну адресу пам‘яті меншим числом бітів, вичисляти адреси під час обробки, вичисляти адреси даних відносно позиції команди таким чином, що можна завантажувати програму в будь-яку область пам’яті без змін адрес в програмі.

Існує дві групи способів адресації:

1. Способи, в яких виконавча адреса визначається одним значенням коду в команді:

Це адресації:

- Пряма – код адреси в команді є виконавчою адресою звертання до пам‘яті;

- Регістрова – оброблюване слово(операнд) міститься в одному з регістрів МП;

- Опосередкована регістрова – опосередкована адреса вибирається з внутрішнього регістра МП;

- Безпосередня – при цій команді операнд задається в команді;

- Автоінкрементна – основана на обчисленні виконавчої адреси так, як при регістровії опосередкованій, а далі здійснюється збільшення регістру на деяку константу;

- Автодекрементна – при ній спочатку з вмісту регістра віднімається константа, а далі отриманий результат використовується в якості виконавчої адреси.

Сумісне використання автоінкрементної і автодекрементної адресації забезпечує застосування будь-якого регістра в якості стека.

2. Друга група способів адресації, в яких використовується вміст адресної частини команди і кількох регістрів для формування виконавчої адреси.

Це адресації:

- Сторінкова;

- Індексна;

- Відносна.

При сторінковій адресації пам’ять розбивається на кілька сторінок однакової довжини. Адресація сторінок здійснюється за допомогою регістра сторінок, а адресація комірок пам‘яті в межах сторінки – адресою в команді. Номери всіх сторінок знаходяться у таблиці сторінок, яка є нульовою сторінкою.

Індексна адресація використовується при звертанні до масивів слів і таблиць. Для утворення виконавчої адреси до адресної частини команд додається зміщення(індекс) з регістру, який називається індексний. Вміст індексного регістра можна змінювати; це дозволяє змінювати виконавчу адресу без модифікації адресної частини команд.

При відносній адресації виконавча адреса утворюється сумуванням базової адреси з адресою команди. В якості базової адреси використовується вміст програмного лічильника. Така адресація дозволяє будувати вільно зміщувані в пам‘яті програми.

9.6. Організація переривань роботи МП

При обміні даними МП з великою кількістю асинхронно працюючих зовнішніх пристроїв необхідною є реалізація механізму переривань по сигналах запитів зовнішніх пристроїв.

Всі МП мають окремі виводи для вводу і виводу сигналів при визначенні запитів і задоволення запитів на переривання.

Сигнали запитів переривань біжучої програми поступають в довільний момент часу. Тому МП повинен закінчити виконання біжучої мікрокоманди або команди і тільки після цього приступити до задоволення запиту. При цьому проміжні результати роботи МП по програмі повинні бути зафіксовані в регістрах і передані на зберігання в пам’ять. Після задоволення запиту і обробки переривання зафіксовані в пам‘яті проміжні результати повинні бути повернені назад в регістри МП.

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

Якщо процесор побудований так, що не можна перервати перериваючу програму, то вважається, що МП має нульовий рівень програмного переривання.

Для більшості МП є можливість забезпечувати багаторазове переривання переривань. У цьому випадку формується переривання в межах переривань, що веде до появи послідовності вкладених одна в одну підпрограм. Для зберігання і повернення даних при реалізації переривань використовується стек – цесукупністькомірок пам’яті, організованих таким чином,що звертання до списку слів може проходити в процесі, зворотньому до запису. В стеку останнє з записаних слів вважається першим. При задоволенні запиту на переривання біжучої програми здійснюється запис стану робочих регістрів МП в стек, при цьому автоматично додається у вказівник стану одиниця після кожного запису. Тому за допомогою одної команди «записати стан в стек» здійснюється зчитування регістрів і зберігання вмісту в стеку.

Відновлення також здійснюється автоматично по команді «відновити стан перерваної програми», яка ставиться останньою у підпрограмі переривань.

Запити переривань у більшості МП поділяються на:

- Немасковані;

- Масковані.

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

Масковані запити на переривання керуються командами програми і забезпечують можливість гнучкого управління обчислювальними процесами.


<== попередня лекція | наступна лекція ==>
Принципи управління і функціонування МП | Організація вводу-виводу даних


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн