Система команд МП КР580ИК80


 

Команды пересылки кодов обеспечивают пересылку данных без изменения между регистрами МП и ячейками памяти или регистрами.

Ниже приводится описание некоторых команд пересылки.

 

Команда пересылки данных из регистров МОV r1, r2 – содержимое регистра источника r2 пересылается в регистр-приемник r1, т. е. (r1) (r2). Команды эти однобайтовые. Например, команда пересылки содержимого регистра общего назначения В в регистр-аккумулятор А записывается в следующем виде: МОV А, В. В двоичной форме код этой команды представляется в МП в виде 011110002, где первая цифра (0) восьмеричного кода указывает на класс команды, вторая (1) – тип; 111 – код регистра А, а 000 – код регистра В. Шестнадцатеричный эквивалент этой команды – 7816. В качестве регистров r1 и r2 могут использоваться регистры общего назначения В, С, В, Е, Н, b и аккумулятор (А).

 

Команда пересылки данных из ячейки памяти, адрес которой хранится в регистровой паре Нb, в регистр МОY r, М – содержимое ячейки памяти, адрес которой хранится в регистрах Н и L, пересылается в регистр r, т. е.

(r)(Н) (L). Например, по команде МОV С, М осуществляется передача данных из ячейки памяти с адресом, хранящимся в регистровой паре НL, в регистр С. Шестнадцатеричный эквивалент этой команды – 4E16. Ячейка памяти, с адресом, определяемым парой НL, обозначается М (Меmоrу – память).

 

Команда прямой загрузки аккумулятора из памяти LDA addr обеспечивает загрузку в аккумулятор содержимого ячейки памяти, адрес которой указан во втором и третьем байтах команды, т. е. (А)(байт 3) (байт 2). Код команды – 3A16. Например, команда LDA 0216Н обеспечивает загрузку содержимого ячейки памяти с адресом 021616 в аккумулятор.

Команда прямой записи содержимого аккумулятора в память SТА аddr

обеспечивает запись содержимого аккумулятора в ячейку памяти, адрес которой указан во втором и третьем байтах команды, т. е. (байт 3) (байт 2)(А). Код команды – 321б. Например, по команде SТА 811РН осуществляется прямая запись содержимого аккумулятора в ячейку памяти с адресом 811р1б.

Арифметические команды выполняют арифметические операции над данными в регистрах МП и ячейках памяти. Команды изменяют состояние разрядов регистра признаков по стандартным правилам. Результат операции помещается в аккумулятор.

 

Команда сложения содержимого аккумулятора с содержимым регистра ADDr – содержимое регистра складывается с содержимым аккумулятора, т. е. (А)(А) + (r). Команды этого типа – однобайтовые. Например, команда сложения содержимого регистра В с содержанием аккумулятора имеет вид

АВО В. В кодовых комбинациях эта команда записывается в виде 100000002, а в шестнадцатеричной форме – 80}6.

 

Команда сложения содержимого аккумулятора с содержимым ячейки памяти, адрес которой хранится в регистровой паре НL: АDD М, – выполняется операция (A) (A) + (H)(L).

Логические команды обеспечивают выполнение логических операций между данными, хранящимися в регистрах МП, и ячейками памяти. Все эти команды воздействуют на разряды регистра признаков.

 

Команда логического умножения (И) содержимого регистра r и аккумулятора ANA r – над содержимым регистра r и аккумулятора выполняется операция логического умножения (И), т. е (А)(А) · (r).Результат помещается в аккумулятор. В качестве регистров r могут применяться регистры РОН: А, В, С, D, Е, Н, L. Команда эта – однобайтовая. Для случая, когда в качестве регистра r используется регистр В, команда представляется в виде ANA В. Шестнадцатеричный эквивалент этой команды – АО16.

 

Команды логического сложения (ИЛИ) аналогичны рассмотренным выше командам логического умножения (И). Например, команда логического сложения содержимого аккумулятора с содержимым регистра С в символичной форме записывается в следующем виде: ОRА С, а описание команды – (А)(А)+(С).

Команды передачи управления изменяют нормальное последовательное исполнение программы. Имеются два типа команд перехода: безусловного и условного. Команды безусловного перехода осуществляют передачу управления, изменяя значение программного счетчика (РС). Команды условного перехода сначала проверяют состояние одного из разрядов регистра признаков (S, Z, AC, P, C), чтобы определить, выполнено ли указание в команде условия.

Команда безусловного перехода JMP addr – управление передается команде, адрес которой указан во втором и третьем байтах команды, т. е.

(РС)(байт 3)(байт 2).

Команда условного перехода J cond addr. Если указанное условие (cond) выполняется (истинно), то управление передается команде, адрес которой указан во втором и третьем байтах команды перехода (addr).
Если условие не выполняется, то осуществляется переход к выполнению последующей команды. Например, команда, в которой проверяется условие неравенства нулю, т. е. NZ, представляется в виде JNZ addr. По этой команде, если результат предыдущей операции, помещенный в аккумулятор, не равен нулю, осуществляется переход к выполнению команды с указанным адресом.

 

Команда ввода и вывода информации. Команда ввода IN port обеспечивает передачу в аккумулятор данных, переданных на шину данных МП-системы с порта ввода с адресом (роrt), т. е. (А)(data 8). Команда вывода OUT роrt обеспечивает передачу данных из аккумулятора на шину данных, откуда они поступают в порт вывода, т. е. (data 8) ← (А). Обе рассмотренные команды – двухбайтовые. Второй байт содержит 8-битный адрес порта (роrt).

Подпрограммы – части программ, которые целесообразно размещать отдельно от главной программы. Обращение к подпрограмме из главной программы осуществляется с помощью команды САLL аddr. В команде САLL (вызвать) второй и третий байт – адрес первой команды подпрограммы, к выполнению которой предписывается перейти. Код этой команды – СD16.

Подпрограмма завершается командой RЕТ (возврат). Код этой команды – С916.

При обращении к подпрограмме необходимо данные, размещенные в регистрах МП, записать предварительно в стековую память. Осуществляется это по команде PUSH (поместить в стек). Извлечение данных из стековой памяти в те же регистры МП для продолжения работы осуществляется по команде РОР (извлечь из стека).

Команда NОP (нет операции) не вызывает никаких изменений в МП-системе, за исключением лишь того, что в программный счетчик заносится адрес следующей команды. Код команды – ОО16. По команде НLТ (останов.) микропроцессорная система переходит в состояние «Останов».

 



Дата добавления: 2020-07-18; просмотров: 524;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.