Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodicheskie_ukazania_k_kursovomu_proektu_VMSi....doc
Скачиваний:
4
Добавлен:
20.04.2019
Размер:
4.98 Mб
Скачать

4.4. Система команд

Обычно микропроцессор выполняет команды из некоторого фик­сированного набора, называемого системой команд. Разные микро­процессоры имеют различные системы команд. Детальное описание системы команд нашего иллюстративного микропроцессора приведено в табл. 4.1 и 4.2. Для каждой команды приводится ее символическое обозначение, формат, а также символическое и словесное описание выполняемого действия. Никаких других команд наш микропроцес­сор выполнять не может, следовательно, решение любой задачи должно быть представлено в виде последовательности этих команд.

Формат каждой команды в табл. 4.2 полностью определяет пред­ставление команды в памяти компьютера. Таким образом, команда в памяти хранится как последовательность из нулей и единиц. С дру­гой стороны, для человека много удобнее символические обозначения. Поэтому при написании программ можно пользоваться символиче­ской формой, преобразуя ее в машинный двоичный формат непосредст­венно перед вводом в машину. Во всех наших описаниях мы также для удобства будем пользоваться символической формой представле­ния команд.

4.4.1. Фаза выборки и дешифрации

Обычно команды выполняются в последо­вательном порядке. Будем предполагать, что все программы начи­наются с команды в ячейке 000016. Время, нужное, чтобы прочитать команду из памяти, декодировать ее и выполнить, называется командным циклом. Ввиду того что команды могут состоять из одного, двух и трех байтов и что время их выполнения может быть разным, команд­ный цикл не является постоянной величиной. Следовательно, нам необходима .некоторая меньшая единица времени. В предыдущем разделе такая единица была введена в виде машинного цикла, состоя­щего из трех тактов синхронизации.

Таблица 4.1

Обозначения, используемые при описании команд,

приведенных в таблице 2

Обозначение

Комментарий

(X)

Содержимое Х

r

Код из 2 битов, обозначающий один из общих регистров 0000, 0001 и 0010 (т. е. Асс, Н и L) двухбитовыми комбинациями 00, 01 и 10 соответственно

R

Номер любого общего регистра от 0000 до 1111

d

Указатель направления передачи. 0 соответствует «tо» 1 - «from» (т. e. «в» и «от»)

— >

Передается на

Асс

Аккумулятор, т. е. общий регистр 0000

Ассi

Разряд аккумулятора с номером i. Разряды нумеруются от младших к старшим, i = 0, 1, … ,7

С

Триггер переноса

Н

Общий регистр 0001

L

Общий регистр 0010

HL

Пара регистров Н и L

М

Ячейка главной памяти с адресом (Н) (L); ссылка на нее зада­ется как ссылка на общий регистр 1111

2>

Второй байт команды

3>

Третий байт команды

M[X]

Ячейка главной памяти с адресом X

PC

Программный счетчик

Stacki

Регистр стека с номером i

Stack L2

Младшая половина второго регистра стека

Stack HO2

Младший разряд старшей половины второго регистра стека

+

Арифметическое сложение

Логическое умножение (И)

Логическое сложение (ИЛИ)

Логическое ИСКЛЮЧАЮЩЕЕ ИЛИ

Таблица 4.2

Система команд иллюстративного микропроцессора

Замечание: При всех передачах содержимое регистра, из которого передаются дан­ные, не изменяется, если это особо не оговорено.

Команды пересылки

Команда: MOVE (пересылка)

Символическая форма: MOVr to R или MOV r from R

d = 0 d = 1

Описание: (r) R или (R)  r

Если d=0, то содержимое общего регистра r передается в общий регистр R.

Если d=l, то содержимое общего регистра R передается в общий регистр r.

Команды с непосредственной адресацией

Команда: LOAD REGISTER IMMEDIATE (загрузка регистра непосредственная) Символическая форма: LRI R

Описание: <В2> R

Второй байт команды передается в общий регистр R.

Команды обращения к памяти

Команда: LOAD REGISTER (загрузка регистра)

Символическая форма: LDR r

Описание: (М [<В2> <В3>])  r

Содержимое ячейки памяти передается в общий регистр r.

Старшие 8 разрядов адреса ячейки берутся из второго байта команды, а младшие 8 разрядов — из третьего байта.

Команда: STORE REGISTER (запоминание регистра)

Символическая форма: STR r

Описание: (г)  М [<В2> <В3>]

Содержимое общего регистра r передается в ячейку главной памяти.

Старшие 8 разрядов адреса ячейки указаны во втором байте команды, а младшие 8 раз­рядов—в третьем байте.