- •Вычислительные машины, системы и сети. Микроконтроллеры и микропроцессоры в системах управления
- •Содержание
- •Глава 1. Архитектура семейства mcs51 14
- •Глава 2. Особенности микроконтроллера 80c51gb 46
- •Глава 3. Программирование mk 8051gb 94
- •Глава 4. Язык программирования asm-51 117
- •Глава 5. Язык программирования с-51 139
- •Глава 6. Подготовка программ в интегрированной среде разработки Keil μVision2 187
- •Глава 7. Описание учебного контроллера 204
- •Введение
- •Глава 1. Архитектура семейства mcs51
- •1.1 Общие характеристики
- •1.2 Структурная схема
- •1.4 Организация памяти
- •1.4.1 Память программ (пзу)
- •1.4.2 Память данных (озу)
- •1.4.3 Регистры специальных функций
- •1.4.4 Регистр флагов (psw)
- •1.5 Устройство управления и синхронизации
- •1.6 Организация портов ввода-вывода
- •1.6.1 Общие сведения
- •1.6.2 Альтернативные функции
- •1.7. Таймеры / счетчики микроконтроллеров семейства 8051
- •1.7.1. Структура таймеров-счетчиков
- •1.7.2 Режимы работы таймеров-счетчиков
- •1.8. Последовательный порт
- •1.8.1. Структура последовательного порта
- •1.8.2. Регистр управления/статуса приемопередатчика scon
- •1.8.3. Регистр управления мощностью pcon
- •1.9. Система прерываний
- •1.9.1. Структура системы прерываний
- •1.9.2 Выполнение подпрограммы прерывания
- •Глава 2. Особенности микроконтроллера 80c51gb
- •2.1 Функциональные особенности
- •2.2 Порты I/o p0-p5
- •2.2.1 Функционирование портов ввода-вывода
- •2.2.2 Запись в порт
- •2.3 Особенности системы прерываний 8xc51gb
- •Разрешение/запрещение прерываний
- •Регистр iе
- •Регистр iеа
- •Управление приоритетами прерываний
- •Регистр ip
- •Регистр iрн кристаллов 8xc51gb
- •Регистр ipа кристалла 8xc51gb
- •Регистр iрна кристаллов 8xc51gb
- •Внешние прерывания
- •Регистр exicon
- •2.3. Узел ацп
- •Регистры результатов преобразований ацп
- •Регистр результатов сравнения ацп - асмр
- •Регистр результата сравнения асмр
- •Режим сравнения ацп
- •Режим запуска ацп
- •Режимы входа ацп
- •Использование ацп для меньшего количества каналов
- •Ацп в режиме микропотребления.
- •2.4. Аппаратный сторожевой таймер
- •2.5. Обнаружение сбоя тактового генератора
- •2.6. Матрица программируемых счётчиков рса
- •2.6.1. Структура pca
- •2.6.2. Регистр режима счётчика рса (cmod)
- •2.6.3. Регистр управления счётчика рса (con)
- •Регистр управления рса - ccon
- •Режим 16-битного программного таймера
- •Высокоскоростной выход - hso
- •Режим сторожевого таймера (рис. 2.22)
- •Широтно-импульсный модулятор — pwm (рис.2.23, рис.2.24)
- •2.7. Расширенный последовательный порт
- •2.8. Таймеры/счетчики
- •Таймер 0 и Таймер 1
- •Таймер 2
- •Режимы работы таймера 2
- •Режим захвата
- •Генерирование импульсов
- •Глава 3. Программирование mk 8051gb
- •3.1. Программная модель (рис. 3.1, рис. 3.2)
- •3.2 Типы данных
- •3.3 Способы адресации данных
- •3.4 Система команд
- •3.4.1 Общая характеристика
- •3.4.2 Типы команд
- •3.4.3 Типы операндов
- •3.4.4 Команды пересылки данных микроконтроллера
- •3.4.5 Команды арифметических операций 8051
- •3.4.6 Команды логических операций микроконтроллера 8051
- •3.4.7 Команды операций над битами микроконтроллера 8051
- •3.4.8. Команды передачи управления микроконтроллера 8051
- •3.5 Отладка программ
- •Глава 4. Язык программирования asm-51
- •4.2 Запись текста программы
- •4.3 Алфавит языка.
- •4.4 Идентификаторы.
- •4.5 Числа
- •4.6 Директивы
- •4.7 Реализация подпрограмм на языке asm51
- •4.7.1 Структура подпрограммы-процедуры на языке asm51
- •4.7.2 Передача переменных-параметров в подпрограмму
- •4.7.3 Реализация подпрограмм-функций на языке asm51
- •4.7.4. Реализация подпрограмм обработки прерываний на языке asm51
- •4.8 Структурное программирование на языке ассемблера
- •4.9 Особенности трансляции многомодульных программ
- •4.10 Использование сегментов
- •4.10.1 Разбиение памяти мк на сегменты (рис. 4.9)
- •4.10.2 Абсолютные сегменты памяти
- •4.10.2 Перемещаемые сегменты памяти.
- •Глава 5. Язык программирования с-51
- •5.1 Общая характеристика языка
- •5.3 Структура программ с-51
- •5.3. Элементы языка программирования с-51
- •5.3.1. Символы
- •5.3.2. Лексические единицы, разделители и использование пробелов
- •5.3.3 Идентификаторы
- •5.3.4 Ключевые слова
- •5.3.5 Константы
- •5.4. Выражения в операторах языка программирования
- •5.5. Приоритеты выполнения операций
- •5.6. Операторы языка программирования c-51
- •5.6.1. Операторы объявления
- •5.6.2 Исполняемые операторы
- •5.6.3 Оператор присваивания
- •5.6.4 Условный оператор
- •5.6.5 Структурный оператор {}
- •5.6.6 Оператор цикла for
- •5.6.7 Оператор цикла с проверкой условия до тела цикла while
- •5.6.8 Оператор цикла с проверкой условия после тела цикла do while
- •5.6.9 Оператор break
- •5.6.10 Оператор continue
- •5.6.11 Оператор выбора switch
- •5.6.12 Оператор безусловного перехода goto
- •5.6.13 Оператор выражение
- •5.6.14 Оператор возврата из подпрограммы return
- •5.6.15 Пустой оператор
- •5.7. Объявление переменных в языке программирования
- •5.7.1. Объявление переменной
- •5.7.2 Категории типов данных
- •5.7.3 Целые типы данных
- •5.7.4 Числа с плавающей запятой
- •5.7.5 Переменные перечислимого типа
- •5.7.6. Объявление массивов в языке программирования c-51
- •5.7.7. Структуры
- •5.7.8. Объединения (смеси)
- •5.8. Использование указателей в языке c-51
- •5.8.1. Объявление указателей
- •5.8.2. Нетипизированные указатели
- •5.8.3. Память зависимые указатели
- •5.9. Объявление новых типов переменных
- •5.10. Инициализация данных
- •5.11. Использование подпрограмм в языке программирования с-51
- •5.11.1. Определение подпрограмм
- •5.11.2. Параметры подпрограмм
- •5.11.3. Предварительное объявление подпрограмм
- •5.11.4 Вызов подпрограмм
- •5.11.5 Рекурсивный вызов подпрограмм
- •5.11.6 Подпрограммы обработки прерываний
- •5.11.7 Области действия переменных и подпрограмм
- •5.12. Многомодульные программы
- •Глава 6. Подготовка программ в интегрированной среде разработки Keil μVision2
- •6.1 Создание проекта на языке asm-51
- •6.2 Пример создания проекта на языке c для учебного контроллера в интегрированной среде разработки Keil μVision2
- •Глава 7. Описание учебного контроллера
- •7.1. Структура контроллера (рис. 7.1)
- •7.2. Адресное пространство
- •7.2.1. Распределение памяти (рис. 7.2)
- •7.2.2 Внешняя память
- •7.2.3. Внутренняя память данных
- •7.3. Распределение портов ввода-вывода
- •7.4. Последовательный порт
- •7.5. Работа с жки
- •Приложение п1. Список рекомендуемых лабораторных работ
- •Конкретные задания для обучаемых составляет преподаватель. Для отладки каждой из программ необходимо:
- •7. Текст программы.
- •8. Перечень выявленных в примерах ошибок
- •9. Выводы.
- •Список литературы
- •195251, Санкт-Петербург, Политехническая ул., 29.
- •194021, Санкт-Петербург, Политехническая ул., 21
7. Текст программы.
Строки программы должны быть пронумерованы. Для лучшего понимания все операторы, модули и программу в целом необходимо комментировать. Целесообразно комментарии структурировать. В тексте программы должны быть трёхуровневые комментарии:
- в шапке программного модуля должно быть указано назначение этого модуля, местонахождение входных данных и указание на место размещения результата выполнения этого программного модуля;
- следующий уровень – комментарии к фрагментам программы. Например, «Сортировка массива по убыванию»;
- построчные комментарии, в них должно быть указано назначение команды или инструкции, а не действие, выполняемое этой инструкцией. Чтобы комментарии легко выделялись и читались, они должны быть записаны разными шрифтами.
8. Перечень выявленных в примерах ошибок
9. Выводы.
В выводах необходимо выполнить анализ результатов выполненной работы. Кроме того, требуется определить объем памяти, занимаемый разработанной программой, и рассчитать время выполнения программы.
Приложение П3 Коды машинных команд
Мнемоническое обозначение машинной команды |
Код ком.
|
K-bo байт |
|
Мнемоническое обозначение машинной команды |
Код ком. |
К-во байт |
|
Мнемоническое обозначение машинной команды |
Код ком. |
К-во байт |
ACALL 000H-0FFH |
11 |
2 |
|
ANL A, R3 |
5B |
1 |
|
DEC @R1 |
17 |
1 |
ACALL 100H-1FFH |
31 |
2 |
|
ANL A, R4 |
5C |
1 |
|
DIV AB |
84 |
1 |
ACALL 200H-2FFH |
51 |
2 |
|
ANL A, R5 |
5D |
1 |
|
DJNZ R0, rel |
D8 |
2 |
ACALL 300H-3FFH |
71 |
2 |
|
ANL A, R6 |
5E |
1 |
|
DJNZ R1, rel |
D9 |
2 |
ACALL 400H-4FFH |
91 |
2 |
|
ANL A, R7 |
5F |
1 |
|
DJNZ R2, rel |
DA |
2 |
ACALL 500H-5FFH |
В1 |
2 |
|
ANL A, #data |
54 |
2 |
|
DJNZ R3, rel |
DB |
2 |
ACALL 600H-6FFH |
D1 |
2 |
|
ANL A, direct |
55 |
2 |
|
DJNZ R4, rel |
DC |
2 |
ACALL 700H-7FFH |
F1 |
2 |
|
ANL A, @R0 |
56 |
1 |
|
DJNZ R5, rel |
DD |
2 |
ADD A, R0 |
28 |
1 |
|
ANL A, @R1 |
57 |
1 |
|
DJNZ R6, rel |
DE |
2 |
ADD A, R1 |
29 |
1 |
|
ANL direct, A |
52 |
2 |
|
DJNZ R7, rel |
DF |
2 |
ADD A, R2 |
2A |
1 |
|
ANL direct, #data |
53 |
3 |
|
DJNZ direct, rel |
D5 |
3 |
ADD A, R3 |
2B |
1 |
|
ANL C, bit |
82 |
2 |
|
INC A |
04 |
1 |
ADD A, R4 |
2C |
1 |
|
ANL C, /bit |
В0 |
2 |
|
INC direct |
05 |
2 |
ADD A, R5 |
2D |
1 |
|
CJNE A, #data, rel |
B4 |
3 |
|
INC DPTR |
A3 |
1 |
ADD A, R6 |
2E |
l |
|
CJNE A, direct, rel |
В5 |
3 |
|
INC R0 |
08 |
1 |
ADD A, R7 |
2F |
1 |
|
CJNE R0, #data, rel |
В8 |
3 |
|
INC R1 |
09 |
1 |
ADD A, #data |
24 |
2 |
|
CJNE R1, #data, rel |
В9 |
3 |
|
INC R2 |
0A |
1 |
ADD A, direct |
25 |
2 |
|
CJNE R2, #data, rel |
ВА |
3 |
|
INC R3 |
0B |
1 |
ADD A, @R0 |
26 |
1 |
|
CJNE R3, #data, rel |
ВВ |
3 |
|
INC R4 |
0С |
1 |
ADD A, @R1 |
27 |
1 |
|
CJNE R4, #data, rel |
ВС |
3 |
|
INC R5 |
0D |
1 |
ADDC A, R0 |
38 |
1 |
|
CJNE R5, #data, rel |
BD |
3 |
|
INC R6 |
0E |
1 |
ADDC A, R1 |
39 |
1 |
|
CJNE R6, #data, rel |
BE |
3 |
|
INC R7 |
0F |
1 |
ADDC A, R2 |
ЗА |
1 |
|
CJNE R7, #data, rel |
BF |
3 |
|
INC @R0 |
06 |
1 |
ADDC A, R3 |
3B |
1 |
|
CJNE @R0 ,#data, rel |
В6 |
3 |
|
INC @R1 |
07 |
1 |
ADDC A,R4 |
3C |
1 |
|
CJNE @R1, # data, rel |
В7 |
3 |
|
JB bit, rel |
20 |
3 |
ADDC A, R5 |
3D |
1 |
|
CLR A |
Е4 |
1 |
|
JBC bit, rel |
10 |
3 |
ADDC A, R6 |
3E |
1 |
|
CLR bit |
С2 |
2 |
|
JC rel |
40 |
2 |
ADDC A, R7 |
3F |
1 |
|
CLR С |
C3 |
1 |
|
JMP @A+DPTR |
73 |
1 |
ADDC A, #data |
34 |
2 |
|
CPL A |
F4 |
1 |
|
JNB bit, rel |
30 |
3 |
ADDC A, direct |
35 |
2 |
|
CPL bit |
В2 |
2 |
|
JNC rel |
50 |
2 |
ADDC A, @R0 |
36 |
1 |
|
CPL С |
ВЗ |
1 |
|
JNZ rel |
70 |
2 |
ADDC A, @R1 |
37 |
1 |
|
DA A |
D4 |
1 |
|
JZ rel |
60 |
2 |
AJMP 000H-0FFH |
01 |
2 |
|
DEC A |
14 |
1 |
|
LCALL addr l6 |
12 |
3 |
AJMP 100H-1FFH |
21 |
2 |
|
DEC direct |
15 |
2 |
|
LJMP addr l6 |
02 |
3 |
AJMP 200H-2FFH |
41 |
2 |
|
DEC R0 |
18 |
1 |
|
MOV A, R0 |
E8 |
1 |
AJMP 300H-3FFH |
61 |
2 |
|
DEC R1 |
19 |
1 |
|
MOV A, Rl |
E9 |
1 |
AJMP 400H-4FFH |
81 |
2 |
|
DEC R2 |
1А |
1 |
|
MOV A, R2 |
EA |
1 |
AJMP 500H-5FFH |
Al |
2 |
|
DEC R3 |
1В |
1 |
|
MOV A, R3 |
EB |
1 |
AJMP 600H-6FFH |
C1 |
2 |
|
DEC R4 |
1С |
1 |
|
MOV A, R4 |
EC |
1 |
AJMP 700H-7FFH |
El |
2 |
|
DEC R5 |
1D |
1 |
|
MOV A, R5 |
ED |
1 |
ANL A, R0 |
58 |
1 |
|
DEC R6 |
1E |
1 |
|
MOV A, R6 |
ЕЕ |
1 |
ANL A, R1 |
59 |
1 |
|
DEC R7 |
1F |
1 |
|
MOV A, R7 |
EF |
1 |
ANL A, R2 |
5A |
1 |
|
DEC @R0 |
16 |
1 |
|
MOV A, #data |
74 |
2 |
-
Мнемоническое обозначение машинной команды
Код ком.
К-во байт
Мнемоническое обозначение машинной команды
Код ком.
К-во байт
Мнемоническое обозначение машинной команды
Код ком.
К-во байт
MOV A, direct
E5
2
MOV R3, direct
AB
2
SETB С
D3
1
MOV A, @R0
E6
1
MOV R4, direct
AC
2
SJMP rel
80
2
MOV A, @R1
E7
1
MOV R5, direct
AD
2
SUBB A, R0
98
1
MOV bit, С
92
2
MOV R6, direct
AE
2
SUBB A, R1
99
1
MOV C, bit
A2
2
MOV R7, direct
AF
2
SUBB A, R2
9A
1
MOV direct, A
F5
2
MOV @R0, direct
A6
2
SUBB A, R3
9B
1
MOV direct, #data
75
3
MOV @R1, direct
A7
2
SUBB A, R4
9C
1
MOV direct, direct
85
3
MOVC A, @A+DPTR
93
1
SUBB A, R5
9D
1
MOV direct, R0
88
2
MOVC A, @A+PC
83
1
SUBB A, R6
9E
1
MOV direct, R1
89
2
MOVX A, @DPTR
E0
1
SUBB A, R7
9F
1
MOV direct, R2
8A
2
MOVX A, @R0
E2
1
SUBB A, #data
94
2
MOV direct, R3
8B
2
MOVX A, @R1
E3
1
SUBB A, direct
95
2
MOV direct, R4
8C
2
MOVX @DPTR, A
F0
1
SUBB A, @R0
96
1
MOV direct, R5
8D
2
MOVX @R0, A
F2
1
SUBB A, @R1
97
1
MOV direct, R6
8E
2
MOVX @R1, A
F3
1
SWAP A
C4
1
MOV direct, R7
8F
2
MUL AB
A4
1
XCH A, R0
C8
1
MOV direct, @R0
86
2
NOP
00
1
XCH A, R1
C9
1
MOV direct, @R1
87
2
ORL A, R0
48
1
XCH A, R2
CA
1
MOV DPTR, #data l6
90
3
ORL A, R1
49
1
XCH A, R3
CB
1
MOV R0, A
F8
1
ORL A, R2
4A
1
XCH A, R4
CC
1
MOV R1, A
F9
1
ORL A, R3
4B
1
XCH A, R5
CD
1
MOV R2, A
FA
1
ORL A, R4
4C
1
XCH A, R6
CE
1
MOV R3, A
FB
1
ORL A, R5
4D
1
XCH A, R7
CF
1
MOV R4, A
FC
1
ORL A, R6
4E
1
XCH A, direct
C5
2
MOV R5, A
FD
1
ORL A, R7
4F
1
XCH A, @R0
C6
1
MOV R6, A
FE
1
ORL A, #data
44
2
XCH A, @R1
C7
1
MOV R7, A
FF
1
ORL A, direct
45
2
XCHD A, @R0
D6
1
MOV @R0, A
F6
1
ORL A, @R0
46
1
XCHD А, @R1
D7
1
MOV @R1, A
F7
1
ORL A, @R1
47
1
XRL A, R0
68
1
MOV R0, #data
78
2
ORL C, bit
72
2
XRL A, R1
69
1
MOV R1, #data
79
2
ORL C, /bit
А0
2
XRL A, R2
6A
1
MOV R2, #data
7A
2
2
ORL direct, A
42
2
XRL A, R3
6B
1
MOV R3, #data
7B
ORL direct, #data
43
3
XRL A, R4
6C
1
MOV R4, #data
7C
2
POP direct
D0
2
XRL A, R5
6D
1
MOV R5, #data
7D
2
PUSH direct
C0
2
XRL A, R6
6E
1
MOV R6, #data
7E
2
RET
22
1
XRL A, R7
6F
1
MOV R7, #data
7F
2
RETI
32
2
XRL A, #data
64
2
MOV @R0, #data
76
2
RL A
23
1
XRL A, direct
65
2
MOV @R1, #data
77
2
RLC A
33
l
XRL A, @R0
66
1
MOV R0, direct
A8
2
RR A
03
1
XRL A, @R1
67
1
MOV R1, direct
A9
2
RRC A
13
l
XRL direct, A
62
2
MOV R2, direct
AA
2
SETB bit
D2
2
XRL direct, #data
63
3
Код ком. |
Мнемоническое обозначение машинной команды |
К-во байт |
|
1 |
Мнемоническое обозначение машинной команды |
К-во байт |
|
Код ком. |
Мнемоническое обозначение машинной команды |
К-во байт |
00 |
NOP |
1 |
|
2A |
ADD A, R2 |
1 |
|
54 |
ANL A, #data |
2 |
01 |
AJMP 000H-0FFH |
2 |
|
2B |
ADD A, R3 |
1 |
|
55 |
ANL A, direct |
2 |
02 |
LJMP addrl6 |
3 |
|
2C |
ADD A, R4 |
1 |
|
56 |
ANL A, @R0 |
1 |
03 |
RR A |
1 |
|
2D |
ADD A, R5 |
1 |
|
57 |
ANL A, @R1 |
1 |
04 |
INC A |
1 |
|
2E |
ADD A, R6 |
1 |
|
58 |
ANL A, R0 |
1 |
05 |
INC direct |
2 |
|
2F |
ADD A, R7 |
1 |
|
59 |
ANL A, Rl |
1 |
06 |
INC @R0 |
1 |
|
30 |
JNB bit, rel |
3 |
|
5A |
ANL A, R2 |
1 |
07 |
INC @R1 |
1 |
|
31 |
ACALL 100H-1FFH |
2 |
|
5B |
ANL A, R3 |
1 |
08 |
INC R0 |
1 |
|
32 |
RETI |
2 |
|
5С |
ANL A, R4 |
1 |
09 |
INC R1 |
1 |
|
33 |
RLC A |
1 |
|
5D |
ANL A, R5 |
1 |
0А |
INC R2 |
1 |
|
34 |
ADDC A, #data |
2 |
|
5Е |
ANL A, R6 |
1 |
0В |
INC R3 |
1 |
|
35 |
ADDC A, direct |
2 |
|
5F |
ANL A, R7 |
1 |
0С |
INC R4 |
1 |
|
36 |
ADDC A, @R0 |
1 |
|
60 |
JZ rel |
2 |
0D |
INC R5 |
1 |
|
37 |
ADDC A, @R1 |
1 |
|
61 |
AJMP 300H-3FFH |
2 |
0Е |
INC R6 |
1 |
|
38 |
ADDC A, R0 |
1 |
|
62 |
XRL direct, A |
2 |
0F |
INC R7 |
1 |
|
39 |
ADDC A, R1 |
1 |
|
63 |
XRL direct, #data |
3 |
10 |
JBC bit, rel |
3 |
|
ЗА |
ADDC A, R2 |
1 |
|
64 |
XRL A, #data |
2 |
11 |
ACALL 000H-0FFH |
2 |
|
3B |
ADDC A, R3 |
1 |
|
65 |
XRL A, direct |
2 |
12 |
LCALL addrl6 |
3 |
|
3C |
ADDC A, R4 |
1 |
|
66 |
XRL A, @R0 |
1 |
13 |
RRC A |
1 |
|
3D |
ADDC A, R5 |
1 |
|
67 |
XRL A,@R1 |
1 |
14 |
DEC A |
1 |
|
3E |
ADDC A, R6 |
1 |
|
68 |
XRL A, R0 |
1 |
15 |
DEC direct |
2 |
|
3F |
ADDC A, R7 |
1 |
|
69 |
XRL A, R1 |
1 |
16 |
DEC @R0 |
1 |
|
40 |
JC rel |
2 |
|
6А |
XRL A, R2 |
1 |
17 |
DEC @R1 |
1 |
|
41 |
AJMP 200H-2FFH |
2 |
|
6В |
XRL A, R3 |
1 |
18 |
DEC R0 |
1 |
|
42 |
ORL direct, A |
2 |
|
6С |
XRL A, R4 |
1 |
19 |
DEC R1 |
1 |
|
43 |
ORL direct, #data |
3 |
|
6D |
XRL A, R5 |
1 |
1А |
DEC R2 |
1 |
|
44 |
ORL A, #data |
2 |
|
6Е |
XRL A, R6 |
1 |
1B |
DEC R3 |
1 |
|
45 |
ORL A, direct |
2 |
|
6F |
XRL A, R7 |
1 |
1С |
DEC R4 |
1 |
|
46 |
ORL A, @R0 |
1 |
|
70 |
JNZ rel |
2 |
1D |
DEC R5 |
1 |
|
47 |
ORL A, @R1 |
1 |
|
71 |
ACALL 300H-3FFH |
2 |
1E |
DEC R6 |
1 |
|
48 |
ORL A, R0 |
1 |
|
72 |
ORL C, bit |
2 |
1F |
DEC R7 |
1 |
|
49 |
ORL A, Rl |
1 |
|
73 |
JMP @A+DPTR |
1 |
20 |
JB bit, rel |
3 |
|
4A |
ORL A, R2 |
1 |
|
74 |
MOV A, #data |
2 |
21 |
AJMP 100H-1FFH |
2 |
|
4B |
ORL A, R3 |
1 |
|
75 |
MOV direct, #data |
3 |
22 |
RET |
1 |
|
4C |
ORL A, R4 |
1 |
|
76 |
MOV @R0, #data |
2 |
23 |
RL A |
1 |
|
4D |
ORL A, R5 |
1 |
|
77 |
MOV @R1, #data |
2 |
24 |
ADD A, #data |
2 |
|
4E |
ORL A, R6 |
1 |
|
78 |
MOV R0, #data |
2 |
25 |
ADD A, direct |
2 |
|
4F |
ORL A, R7 |
1 |
|
79 |
MOV R1, #data |
2 |
26 |
ADD A, @R0 |
1 |
|
50 |
JNC rel |
2 |
|
7А |
MOV R2, #data |
2 |
27 |
ADD A, @R1 |
1 |
|
51 |
ACALL 200H-2FFH |
2 |
|
7В |
MOV R3, #data |
2 |
28 |
ADD A, R0 |
1 |
|
52 |
ANL direct, A |
2 |
|
7С |
MOV R4, #data |
2 |
29 |
ADD A, R1 |
1 |
|
53 |
ANL direct, #data |
.3 |
|
7D |
MOV R5, #data |
2 |
Код ком. |
Мнемоническое обозначение машинной команды |
К-во байт |
|
Код ком. |
Мнемоническое обозначение машинной команды |
К-во байт |
|
Код ком. |
Мнемоническое обозначение машинной команды |
К-во байт |
7Е |
MOV R6, #data |
2 |
|
A9 |
MOV R1, direct |
2 |
|
D4 |
DA A |
1 |
7F |
MOV R7, #data |
2 |
AA |
MOV R2, direct |
2 |
|
D5 |
DJNZ direct, rel |
3 |
|
80 |
SJMP rel |
2 |
|
AB |
MOV R3, direct |
2 |
D6 |
XCHD A, @R0 |
1 |
|
81 |
AJMP 400H-4FFH |
2 |
AC |
MOV R4, direct |
2 |
D7 |
XCHD A, @R1 |
1 |
||
82 |
ANL C, bit |
2 |
AD |
MOV R5, direct |
2 |
D8 |
DJNZ R0, rel |
2 |
||
83 |
MOVC A, @A+PC |
1 |
|
AE |
MOV R6, direct |
2 |
D9 |
DJNZ Rl, rel |
2 |
|
84 |
DIV AB |
1 |
|
AF |
MOV R7, direct |
2 |
DA |
DJNZ R2, rel |
2 |
|
85 |
MOV direct, direct |
3 |
B0 |
ANL C, /bit |
2 |
DB |
DJNZ R3, rel |
2 |
||
86 |
MOV direct, @R0 |
2 |
B1 |
ACALL 500H-5FFH |
2 |
|
DC |
DJNZ R4, rel |
2 |
|
87 |
MOV direct, @Rl |
2 |
|
B2 |
CPL bit |
2 |
DD |
DJNZ R5, rel |
2 |
|
88 |
MOV direct, R0 |
2 |
|
B3 |
CPL С |
1 |
DE |
DJNZ R6, rel |
2 |
|
89 |
MOV direct, Rl |
2 |
|
B4 |
CJNE A, #data, rel |
3 |
DF |
DJNZ R7, rel |
2 |
|
8А |
MOV direct, R2 |
2 |
B5 |
CJNE A, direct, rel |
3 |
|
E0 |
MOVX A, @DPTR |
1 |
|
8B |
MOV direct, R3 |
2 |
|
B6 |
CJNE @R0, #data, rel |
3 |
El |
AJMP 700H-7FFH |
2 |
|
8С |
MOV direct, R4 |
2 |
|
B7 |
CJNE @R1, #data rel |
3 |
|
E2 |
MOVX A, @R0 |
1 |
8D |
MOV direct, R5 |
2 |
|
B8 |
CJNE R0, #data, rel |
3 |
E3 |
MOVX A, @R1 |
1 |
|
8Е |
MOV direct, R6 |
2 |
B9 |
CJNE R1, #data, rel |
3 |
|
E4 |
CLR A |
1 |
|
8F |
MOV direct ,R7 |
2 |
|
BA |
CJNE R2, #data, rel |
3 |
|
E5 |
MOV A, direct |
2 |
90 |
MOV DPTR, #datal6 |
3 |
BB |
CJNE R3, #data, rel |
3 |
E6 |
MOV A, @R0 |
1 |
||
91 |
ACALL 400H-4FFH |
2 |
ВС |
CJNE R4, #data, rel |
3 |
|
E7 |
MOV A, @R1 |
1 |
|
92 |
MOV bit, С |
2 |
BD |
CJNE R5, #data, rel |
3 |
|
E8 |
MOV A,R0 |
1 |
|
93 |
MOVC A, @A+DPTR |
1 |
BE |
CJNE R6, #data, rel |
3 |
|
E9 |
MOV A, R1 |
1 |
|
94 |
SUBB A, #data |
2 |
|
BF |
CJNE R7, #data, rel |
3 |
EA |
MOV A, R2 |
1 |
|
95 |
SUBB A, direct |
2 |
C0 |
PUSH direct |
2 |
|
EB |
MOV A, R3 |
1 |
|
96 |
SUBB A, @R0 |
1 |
C1 |
AJMP 600H-6FFH |
2 |
EC |
MOV A, R4 |
1 |
||
97 |
SUBB A, @R1 |
1 |
|
C2 |
CLR bit |
2 |
ED |
MOV A, R5 |
1 |
|
98 |
SUBB A, R0 |
1 |
|
C3 |
CLR С |
1 |
ЕЕ |
MOV A, R6 |
1 |
|
99 |
SUBB A,R1 |
1 |
|
C4 |
SWAP A |
1 |
EF |
MOV A, R7 |
1 |
|
9А |
SUBB A, R2 |
1 |
|
C5 |
XCH A, direct |
2 |
F0 |
MOVX @DPTR, A |
1 |
|
9В |
SUBB A, R3 |
1 |
C6 |
XCH A, @R0 |
1 |
F1 |
ACALL 700H-7FFH |
2 |
||
9С |
SUBB A, R4 |
1 |
|
C7 |
XCH A, @R1 |
1 |
|
F2 |
MOVX @R0, A |
1 |
9D |
SUBB A, R5 |
1 |
|
C8 |
XCH A, R0 |
1 |
F3 |
MOVX @R1, A |
1 |
|
9Е |
SUBB A, R6 |
1 |
C9 |
XCH A, R1 |
1 |
|
F4 |
CPL A |
1 |
|
9F |
SUBB A, R7 |
1 |
CA |
XCH A, R2 |
1 |
|
F5 |
MOV direct, A |
2 |
|
А0 |
ORL C, /bit |
2 |
|
CB |
XCH A, R3 |
1 |
F6 |
MOV @R0, A |
1 |
|
А1 |
AJMP 500H-5FFH |
2 |
CC |
XCH A, R4 |
1 |
F7 |
MOV @R1, A |
1 |
||
А2 |
MOV C, bit |
2 |
CD |
XCH A, R5 |
1 |
F8 |
MOV R0, A |
1 |
||
A3 |
INC DPTR |
1 |
CE |
XCH A, R6 |
1 |
|
F9 |
MOV R1, A |
1 |
|
А4 |
MUL AB |
1 |
CF |
XCH A, R7 |
1 |
FA |
MOV R2, A |
1 |
||
А5 |
|
|
|
D0 |
POP direct |
2 |
FB |
MOV R3, A |
1 |
|
А6 |
MOV @R0, direct |
2 |
Dl |
ACALL 600H-6FFH |
2 |
|
FC |
MOV R4, A |
1 |
|
А7 |
MOV @R1, direct |
2 |
D2 |
SETB bit |
2 |
|
FD |
MOV R5, A |
1 |
|
А8 |
MOV R0, direct |
2 |
D3 |
SETB С |
1 |
|
FE |
MOV R6, A |
1 |
|
|
|
|
|
|
|
|
|
FF |
MOV R7, A |
1 |
