Assembler: логічні та фізична адреси

0
3718

Assembler

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

  1. можна скористатися псевдооператором assume, щоб вказати який сегмент буде застосовуватися за замовчуванням при зверненні до пам'яті.
  2. в команді безпосередньо є можливість вказати по відношенню, до якого сегменту буде застосовуватися зміщення.

біт Фізична адреса являє собою двадцатибітне беззнакове ціле, яке ідентифікує розташування байту в просторі пам'яті. Логічна адреса являє собою два шістнадцятибітних беззнакових цілих: базова (вихідна) адреса сегменту і ефективна адреса (зміщення), яка визначає відстань в байтах від осередку, що адресується до початку сегменту.

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

Автор: Світ перекладів
ОЦІНИТИ НОВИНУ
5 (голосів: 2)

Комментарии:

ВВЕРХ