Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МСУзаочники2013 / Аппаратная база и программирование микропроцессорных систем управления.doc
Скачиваний:
37
Добавлен:
10.06.2015
Размер:
1.51 Mб
Скачать

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

Для описания системы команд используются следующие обозначения:

A - аккумулятор;

Rn - регистр общего назначения с номером n;

Direct - любой регистр специального назначения или ячейка внутреннего ОЗУ;

#Data - байт данных, содержащийся во втором байте кода команды.

Met - метка в командах переходов, указывающая какая команда будет выполняться следующей.

Bit – имя прямоадресуемого бита (например: A.1, P2.3)

Наиболее часто используемые команды:

1.Сложение содержимого аккумулятора и содержимого второго операнда, результат записывается в аккумулятор.

ADD A,Rn ; A+Rn A - прибавить к содержимому аккумулятора содержимое регистра общего назначения с номером n

ADD A,Direct ; A+DirectA - прибавить к содержимому аккумулятора содержимое ячейки внутреннего ОЗУ или регистра специального назначения

ADD A,#Data ; A+DataA - прибавить к содержимому аккумулятора данные, содержащиеся во втором байте команды

2.Вычитание из содержимого аккумулятора содержимого второго операнда, результат записывается в аккумулятор.

SUBB A,Rn ; A-Rn A

SUBB A,Direct ; A-DirectA

SUBB A,#Data ; A-Data A

3.Увеличение содержимого указанного операнда на 1.

INC A ; A+1 A

INC Direct ; Direct+1Direct

INC Rn ; Rn+1 Rn

4.Уменьшение содержимого указанного операнда на 1.

DEC A ; A-1 A

DEC Direct ; Direct-1 Direct

DEC Rn ; Rn-1 Rn

5.Логическое умножение («И») содержимого аккумулятора и содержимого второго операнда, результат записывается в аккумулятор.

ANL A,Rn ; A AND Rn A

ANL A,Direct ; A AND Direct A

ADD A,#Data ; A AND Data A

6.Логическое сложение («ИЛИ») содержимого аккумулятора и содержимого второго операнда, результат записывается в аккумулятор.

ORL A,Rn ; A OR Rn A

ORL A,Direct ; A OR DirectA

ORL A,#Data ; A OR Data A

7.”Исключающее или” содержимого аккумулятора и содержимого второго операнда, результат записывается в аккумулятор.

XRL A,Rn ; A XOR Rn A

XRL A,Direct ; A XOR DirectA

XRL A,#Data ; A XOR DataA

8.Очистка аккумулятора – содержимое всех разрядов аккумулятора сбрасывается в ноль.

CLR A ; 0А

9. Переслать содержимое второго операнда в первый.

MOV A,Rn ; Rn A

MOV A,Direct ;DirectA

MOV A,#Data ;DataA

MOV Rn,A ; A Rn

MOV Rn,Direct ;DirectRn

MOV Rn,#Data ;DataRn

MOV Direct,Rn ; Rn Direct

MOV Direct,A ;ADirect

MOV Direct,#Data ;DataDirect

10.Безусловный (обязательный) переход на команду, обозначенную указанной в команде меткой.

LJMP Met

11.Осуществить переход на команду, обозначенную указанной в команде меткой, если содержимое аккумулятора

равно 0:

JZ Met

не равно 0:

JNZ Met

12.Осуществить переход на команду, обозначенную указанной в команде меткой, если содержимое операнда не равно заданным в команде данным.

CJNE A,#Data,Met ;перейти на метку Met, если A ≠ Data

CJNE Rn,#Data,Met ;перейти на метку Met, если Rn≠Data

13.Уменьшить на единицу содержимое указанного регистра Rn и, если содержимое Rn не ноль, - переход на метку, указанную в команде.

DJNZ Rn,Met

14.Установка в «1» прямоадресуемого бита.

SETB Bit; 1Bit

15.Сброс в «0» прямоадресуемого бита.

CLR Bit; 0 bit

16.Инвертирование содержимого прямоадресуемого бита.

CPL Bit; /Bit Bit

11.Осуществить переход на команду, обозначенную указанной в команде меткой, если содержимое прямоадресуемого бита

равно 0:

JNB Bit,Met

не равно 0:

JB Bit,Met

Замечание: при использовании команд переходов необходимо учитывать, что при невыполнении заданного в команде условия будет выполняться следующая за ней команда. При задании метки перед командой, после метки ставится двоеточие.

С другими функциональными возможностями ОМЭВМ и полным перечнем команд можно ознакомиться в [2].