3. 01/70 01
MOV @-(R0),R1
|
|||||||||||||
|
|||||||||||||
4. 01/70 01
200
MOV @200(R0),R1
Адресация относительно счётчика команд
27 – непосредственная адресация
37 – косвенная(за кодом лежит адрес)
47 – в качестве данных берём саму команду
Группы:
Прямые Косвенные
КОП
М Rх М Rх
М – Метод адресации
Rх – Регистр 8 регистров и 8 методов
Методы(Принадлежат прямым и косвенным):
Прямая: М:
3. Декремент 4
4. Индексный 6
Косвенный: М
1. Регистровый 1
2. Инкремент 3
3. Декремент 5
4. Индексный 7
ПРЯМАЯ:
0 1 |
0 0 |
0 1 |
MOVR0, R1
Если метод M не равен 0, то метод адресации можно считать косвенным
0 1 |
2 0 |
0 1 |
R0 = 1000 1002
1000 = 77 77 на 2 – если слово
R1 = 00 77 на 1 – если байт
Метод автоинкремент требует от 2 циклов.
3. Декремент (4)
MOV – (R0), R1 – Мнемоника записи.
4. Индексный (6)
0 1 |
6 0 |
0 1 |
R0 = 1000
R1 = 0 200 - Индекс
1200 = 77 R1 = 77
Индексный метод требует от 3 циклов.
Пример:
0 1 |
6 0 |
6 1 |
Требуется 6 машинных циклов.
КОСВЕННАЯ:
0 1 |
1 0 |
0 1 |
1.Регистровая (1):
Метод требует от 3 циклов.
R0 = 1000
R1 = 0 MOV (R0), R1
1200 = 7 В R0 – содержится адрес.
0 1 |
3 0 |
0 1 |
R0 = 1000
R1 = 0
1000 = 2000 В регистре адрес, в котором адрес
1002 = 2000 данных.
2000 = 10 R0 – автоинкремент на 2(1) (=1002)ж
R1 = 10
MOV @ (R0) +, R1 – Мнемоника записи.
Данный способ позволяет обеспечить независимость программ(Позиционно независимое кодирование).
R7 – Счетчик команд MOV @ (R7) +, R1;
Содержит адрес выполняемой команды.
4. Индексный (7):
MOV @ 200 (R0), R1
1. Код команды
2. Считаем индекс
3. Считаем адрес
R0 = 1000 R1 = 70
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.