Принцип программного управления. Выполнение команд в микро – ЭВМ. Структура ЭВМ, страница 15

Относительный. Операнд Е адресуется относительно текущего содержимого программного счётчика. Предполагается, что операнд Е имеет значение 12460. Если команда имеет адрес 1500, а Е адрес 1726, то в машинном представлении команды её второе слово хранит число 1726-1504=222. Оно явл. относительным адресом операнда Е. Число 1504- адрес слова, следующего за последним словом команды. Таково содержимое программного счётчика после доступа к операнду Е.

MOV E, R2           до      после

R2/0     R2/12460

Относит. косв. Хар-ся тем, что слово памяти, соответствующее записанному в команде символич. имени Е, сод. адрес операнда. Предполагается, что имени Е соответствует слово памяти с адресом 1726. И в этом слове хранится число 12460. Но это число интерпретируется как адрес операнда.

56. Организация памяти.

Единицы памяти.

-бит

-байт(8 бит)

-слово(16 бит)

-двойное слово(32 бита)

-учетверенное слово(64 бита)

Слово запис-ся в двух смежных байтах, начиная с младшего. Адресом слова явл-ся адрес его младшего байта.

Старший байт, наход-ся в ячейке с адресом: адрес младшего байта +1. Слово может размещаться как по четному, так и по нечетн. адресу. Выравнивание по границе слова означает, что адрес четный.

Все пространство памяти разбивается на параграфы--облости и 16 смежных байт, начиная с нулевого адреса. Выравнивание по границе параграфа означает, что 4 младших бита адреса нулевые. Более крупными единицами памяти явл-ся: страницы и сегменты. Объем страницы 4КБ, а объем сегмента произвольный. Сегментация явл-ся организацией памяти на прикладном уровне. Разбиение на страницы применяется на системном уровне. Шина адреса Intel 80X86 имеет 20 разрядов. Физический адрес памяти(20 бит) сост. из двух частей (адреса сегмента; исполнительного адреса),суммируемых со смещением на 4 бита.Сдвиг адреса сегмента на 4 бита влево эквивалентно умножению на 16, следовательно физический адрес можно вычислить:

PA=16*Seg+EA

57. Режимы адресации Intel 80X86.

1.  Непосредственный режим. Данные явл-ся частью программы.

MOV  DX, 12H ; (DX)-12h

1.  Регистровый косвенный режим. Адрес данных находится как смещение, записанное в регистр BX.      (SI, DI).               MOV DS : [BX], 12H

DS=2000                  

BX=120              

3. Регистровый относительный режим. Адрес данных определяется как сумма значения рег. BX и числа.

MOV DS : [BX+27H], 12h

Фазовый индексный режим. Адрес данных определяется как смещение записанное одновременно в базовом и индексном регистрах.

                                   MOV DS : [BX+SI], 12h

DS : 2000                 

BX : 120                 

SI   : 6                              

5. Относительный базовый индексный. Опр-ся виде смещения, формирующего виде суммы значения базового и индексного рег-ра и смещения виде const.

                                    MOV DS : [BX+SI+4h], 12h

DS : 2000                       

BX : 120                          

SI   : 6                                     6

59. Правила записи программы на языке Ассемблер.

Общие регистры      Регистры       Регистр

           данных и адресов     сегментов     флагов (FLAGS)  16 разр.                     

CS

SS

DS

ES

FS

GS

код          

стек

 


данные

Рег. AX исп-ся при умножении, делении, вводе-выв. инф.

AL-младшие биты.

AH-старшие биты.

Рег. BX исп-ся при различных режимах адресации памяти.

Рег. CX исп-ся в кач-ве счетчика цикла и указателя длины строковых операций.

Рег. DX исп-ся при умножении и делении слова, а также ввода-выв. с косвенной адресацией.

Рег. SP-указатель стека.

Рег. SI,DI-рег-ры исп-ые при стековых операциях.

CS-сигмент кодов команд.

SS-рег. сигмента стека.

DS-рег. сигмента данных.

ES, FS, GS-дополнительные рег. сигмента данных.

Содержимое сигментных рег-ов не может быть модифицировано. Они допускают лишь загрузку сохранения содержимого.

Рег. флагов.

0 разряд - CF-флаг переносов.

2 разряд - PF- флаг паритета.

4 разряд - AF- флаг дополнительного переноса в тетраде.

6 разряд - ZF- флаг нулевого результата.

7 разряд - SF- флаг знака.

8 разряд - TF- флаг пошагового режима.

11 разряд - OF-флаг переполнения.