Архитектура набора команд

Содержание

Слайд 2

Размер команды

Фиксированный
переменный

Размер команды Фиксированный переменный

Слайд 3

Структура команды

Битовые поля:
Адреса операндов
Код команды
Уточнения типа операции
Методы адресации
Размер операндов

Структура команды Битовые поля: Адреса операндов Код команды Уточнения типа операции Методы адресации Размер операндов

Слайд 4

Ассемблер

Автокодовый язык
Взаимно-однозначное соответствие команды процессора и записи на языке ассемблера
Макровозможности ассемблера

Ассемблер Автокодовый язык Взаимно-однозначное соответствие команды процессора и записи на языке ассемблера Макровозможности ассемблера

Слайд 5

Регистры pdp11

Общего назначения:
R0 R1 R2 R3 R4 R5 R6 R7
R6 – указатель

Регистры pdp11 Общего назначения: R0 R1 R2 R3 R4 R5 R6 R7
стека
R7 – счетчик команд

Слайд 6

Служебные регистры

SP (KSP, SSP, USP)
PC
PSW

Служебные регистры SP (KSP, SSP, USP) PC PSW

Слайд 7

Структура команды

Двухадресная
Р КОП М1 Р1 М2 Р2
Одноадресная
Р КОП М1 Р1
Со

Структура команды Двухадресная Р КОП М1 Р1 М2 Р2 Одноадресная Р КОП
смещением
КОП смещение
Регистровая адресация
КОП Р1 М2 Р2

Слайд 8

Методы адресации

0 регистровый
1 регистровый косвенный
2 регистровый с автоувеличением
3 косвенно-регистровый с автоувеличением
4 регистровый

Методы адресации 0 регистровый 1 регистровый косвенный 2 регистровый с автоувеличением 3
с автоуменьшением
5 косвенно-регистровый с автоуменьшением
6 индексный
7 косвенно-индексный

Слайд 9

Типы команд по адресности

Двухадресные
Обноадресные
Безадресные
Неполной адресации
Регистровой адресации
Относительной адресации (смещение)

Типы команд по адресности Двухадресные Обноадресные Безадресные Неполной адресации Регистровой адресации Относительной адресации (смещение)

Слайд 10

Двухадресные команды

Р – размер операнда (1)
КОП – 0 - одноадресные
1 mov

Двухадресные команды Р – размер операнда (1) КОП – 0 - одноадресные
2 cmp
3 bit
4 bic
5 bis
6 add, sub (только слова)
7 дополнительные

Слайд 11

Одноадресные команды

Р – размер операнда (1)
КОП (6)

Одноадресные команды Р – размер операнда (1) КОП (6)

Слайд 12

Работа с памятью

Оба операнда могут находиться в памяти
Адресуются 64 кб памяти
Диспетчер памяти

Работа с памятью Оба операнда могут находиться в памяти Адресуются 64 кб
позволяет использовать большее адресное пространство, но каждая задача ограничена размером 64 кб
Доступ к ячейке произвольный, слово имеет только четный адрес
Можно адресовать байты

Слайд 13

Команды перехода

br
beq
bne
bge
ble
bcc
bcs

bvs
bvc
bpl
bmi
bgt
blt

Команды перехода br beq bne bge ble bcc bcs bvs bvc bpl bmi bgt blt

Слайд 14

Управляющие команды

Sec
Sev
Sez
Sen
Scc
Halt
Reset
emt

Clc
Clv
Clz
Cln
Ccc
Bpt
iot

Управляющие команды Sec Sev Sez Sen Scc Halt Reset emt Clc Clv

Слайд 15

Ассемблирование

Сборка команды по ее мнемонике
mov R5, (R4)+ 010524
01 – код команды
0

Ассемблирование Сборка команды по ее мнемонике mov R5, (R4)+ 010524 01 –
– тип адресации первого операнда
1 – регистр первого операнда
2 – тип адресации второго операнда
4 – регистр второго операнда

Слайд 16

Ввод - вывод

Через регистры устройств, расположенных в адресном пространстве памяти
Нет особых команд

Ввод - вывод Через регистры устройств, расположенных в адресном пространстве памяти Нет
ввода-вывода
Верхние 4к памяти отведено под регистры
Распределение адресного пространства I/O

Слайд 17

Пример программы

EKS=177564
EDS=177566
mov 20,r1
A: mov #52,@#EDS
B: tstb @#EKS
bpl b
sob r1,a

Пример программы EKS=177564 EDS=177566 mov 20,r1 A: mov #52,@#EDS B: tstb @#EKS bpl b sob r1,a

Слайд 18

Адресация через счетчик команд

27 mov #4,r5
37 tst @#12
67 mov adres, r4
77 ror

Адресация через счетчик команд 27 mov #4,r5 37 tst @#12 67 mov
@adres