РефератыИнформатика, программированиеМиМикроконтроллеры семейства MCS51 Intel

Микроконтроллеры семейства MCS51 Intel

Инструкции
MCS51
TM
Intel


Инструкции,
модифицирующие
флаги (1)






























































Инструкция C
OV AC
Инструкция C
OV AC
ADD X X
X
CLR
C
O
ADDC X X
X
CPL
C
X
SUBB X X
X
ANL
C,bit
X
MUL O X ANL
C,/bit
X
DIV O X ORL
C,bit
X
DA X ORL
C, bit
X
RRC X MOV
C,bit
X
RLC X CJNE X
SETB
C
1

Замечание.
Операции с
регистром
специальных
функций с регистром
PSW или с его битами
также модифицируют
флаги.


Условные
обозначения
операндов:


Rn
Регистр
R7-R0 текущего банка
рабочих регистров


direct
8-bit
прямой адрес.
Это может быть
ячейка внутреннего
ОЗУ данных
(0-7F h) или SFR (7Fh - 0FFh).


@Ri
8-bit
косвенный
адрес внутреннего
ОЗУ (00 - 0ffh) равен
содержимому
указателя R0
или R1.


#data
8-bit
непосредственная
константа,
включенная
в инструкцию.


#data
16
16-bit
непосредственная
константа,
включенная
в инструкцию.


addr
16
16-bit адрес
длинного перехода,
используемый
командами
LCALL и LJMP.


addr
11
11-bit адрес
относительного
перехода,
используемый
командами
ACALL и AJMP.


rel
8-bit
смещение со
знаком, используемое
командой SJMP и
командами
условных переходов.


bit
Прямой
адрес бита
внутреннего
ОЗУ или SFR.


Таблица
1. Список инструкций
MCS51
TM Intel.























































































































































































































































































































































































































































































































































































































































































































Мнемоника Содержание Byte Tact

1.
Арифметические
операции.


ADD
A,Rn
(A)
+ (Rn) -> A Сложение
1 12
ADD
A,direct
(A) +
(direct) -> A
2 12
ADD
A,@Ri
(A) + (
(Ri) ) -> A
1 12
ADD
A,#data
(A) + #data
-> A
2 12
ADDC A,Rn (A)
+ (Rn) + c -> A Сложение
с учетом переноса
1 12
ADDC
A,direct
(A) +
(direct) + c -> A
2 12
ADDC A,@Ri (A) + (
(Ri) ) + c -> A
1 12
ADDC
A,#data
(A) - #data
- c -> A
2 12
SUBB
A,Rn
(A)
- (Rn) - c -> A Вычитание
с учетом заема
1 12
SUBB
A,direct
(A) -
(direct) - c -> A
2 12
SUBB A,@Ri (A) - (
(Ri) ) - c -> A
1 12
SUBB
A,#data
(A) - #data
- c -> A
2 12
INC
A
(A)
+ 1 -> A Инкремент
( увеличение
на единицу )
1 12
INC Rn (Rn) + 1 ->
Rn
1 12
INC direct (direct) +
1 -> direct
2 12
INC @Ri ( (Ri) ) +
1 -> ( Ri )
1 12
INC DPTR (DPTR) + 1
-> DPTR
1 24
DEC
A
(A)
- 1 -> A Декремент
( уменьшение
на единицу )
1 12
DEC Rn (Rn) - 1 ->
Rn
1 12
DEC direct (direct) -
1 -> direct
2 12
DEC @Ri ( (Ri) ) -
1 -> ( Ri )
1 12
MUL
AB
(A)
* (B) -> AB Умножение
(AB - произведение)
1 48
DIV
AB
(A)
/ (B) -> AB Деление
(A - частное B -
остаток)
1 48
DA
A
Десятичная
коррекция
аккумулятора
1 12

2.
Логические
операции.


ANL
A,Rn
(A)
и (Rn) -> A Логическое
побитовое И
1 12
ANL
A,direct
(A)
и
(direct) -> A
2 12
ANL A,@Ri (A)
и
( (Ri) ) -> A
1 12
ANL A,#data (A)
и
#data -> A
2 12
ANL
direct,A
(direct)
и
(A) -> direct
2 12
ANL
direct,#data
(direct)
и
#data -> direct
3 24
ORL A,Rn (A)
или (Rn) -> A Логическое
побитовое
ИЛИ
1 12
ORL
A,direct
(A)
или
(direct) -> A
2 12
ORL A,@Ri (A)
или
( (Ri) ) -> A
1 12
ORL A,#data (A)
или
#data -> A
2 12
ORL
direct,A
(direct)
или
(A) -> direct
2 12
ORL
direct,#data
(direct)
или
#data -> direct
3 24
XRL A,Rn (A)
^ (Rn) -> A Логическое
побитовое
исключающее
ИЛИ
1 12
XRL
A,direct
(A) ^
(direct) -> A
2 12
XRL A,@Ri (A) ^ (
(Ri) ) -> A
1 12
XRL A,#data (A) ^ #data
-> A
2 12
XRL
direct,A
(direct) ^
(A) -> direct
2 12
XRL
direct,#data
(direct) ^
#data -> direct
3 24
CLR A 00h
-> A Обнуление
1 12

Мнемоника



Содержание



Byte



Tact


CPL A not
(A) -> A Инверсия
1 12
RL
A
Циклический
сдвиг аккумулятора
влево на один
бит
1 12
RLC
A
Циклический
сдвиг аккумулятора
в
лево на один
бит через бит
переноса
1 12
RR
A
Циклический
сдвиг аккумулятора
вправо на один
бит
1 12
RRC
A
Циклический
сдвиг аккумулятора
вправо на один
бит через бит
переноса
1 12
SWAP
A
Обмен
тетрадами в
аккумуляторе
1 12

3.
Пересылка
данных.


MOV
A,Rn
(Rn) ->
A
1 12
MOV
A,direct
(direct)
-> A
2 12
MOV A,@Ri ( (Ri) ) ->
A
1 12
MOV A,#data #data ->
A
2 12
MOV Rn,A (A) ->
Rn
1 12
MOV
Rn,direct
(direct) ->
Rn
2 24
MOV
Rn,#data
#data ->
Rn
2 12
MOV
direct,A
(A) ->
direct
2 12
MOV
direct,Rn
(Rn) ->
direct
2 24
MOV
direct,direct
(direct) ->
direct
3 24
MOV
direct,@Ri
( (Ri) ) ->
direct
2 24
MOV
direct,#data
#data ->
direct
3 24
MOV @Ri,A (A) ->
(Ri)
1 12
MOV
@Ri,direct
(direct) ->
(Ri)
2 24
MOV
@Ri,#data
#data ->
(Ri)
2 12
MOV
DPTR,#data16
#data16 ->
DPTR
3 24
MOVC
A,@A+DPTR
(
( A) + ( DPTR ) ) -> A Обмен с
внешне памятью
программ
1 24
MOVC
A,@A+PC
( ( A) + (
PC ) ) -> A
1 24
MOVX A,@Ri (
( Ri) ) -> A Обмен
с внешней памятью
данных
1 24
MOVX
A,@DPTR
( ( DPTR )
) -> A
1 24
MOVX
@Ri,A
(A) ->
( Ri)
1 24
MOVX
@DPTR,A
(A) ->
( DPTR )
1 24
PUSH direct (direct)
-> Stack Запись в
стек
2 24
POP direct (Stack)
-> direct Извлечение
из
стека
2 24
XCH A,Rn

(A)
(Rn) Обмен
содержимым


1 12
XCH
A,direct

(A)
(direct)


2 12
XCH A,@Ri

(A)
( (Ri) )


1 12
XCHD A,@Ri

(A)
( (Ri) ) Обмен младшей
тетрадой


1 12

4.
Битовые операции.


CLR
C
0
-> с
1 12
CLR bit 0 -> bit 2 12
SETB C 1 -> c 1 12
SETB bit 1 -> bit 2 12
CPL C not(c) ->
c
1 12
CPL
bit
not(bit) ->
bit
2 12
ANL C,bit (
с ) и (bit) -> c
2 24
ANL C,/bit (
c ) и
not(bit) -> c
2 24
ORL C,bit (
c ) или (bit) -> c
2 24
ORL C,/bit (
c ) или
not(bit) -> c
2 24
MOV C,bit (bit) ->
c
2 12
MOV bit,C ( c ) ->
bit
2 24
JC rel если
с = 1 , то переход
по смещению
rel
2 24
JNC
rel
если
с = 0 , то переход
по смещению
rel
2 24
JB bit,rel если
bit = 1 , то переход
по смещению
rel
3 24
JNB bit,rel если
bit = 0 , то переход
по смещению
rel
3 24
JBC bit,rel если
bit = 1 , то переход
по смещению
rel и сброс bit
3 24

5.
Команды передачи
управления.


ACALL
addr11
Вызов
процедуры по
адресу addr11
2 24
LCALL
addr16
Вызов
процедуры по
адресу addr16
3 24
RET Возврат
из процедуры
1 24
RETI Возврат
из процедуры
обработки
прерывания
1 24
AJMP
addr11
Безусловный
переход по
адресу addr11
2 24
LJMP
addr16
Безусловный
переход по
адресу addr16
3 24
SJMP
rel
Безусловный
переход по
смещению rel
2 24
JMP @A+DPTR Безусловный
переход по
смещению (A)
относительно
(DPTR)
1 24
JZ
rel
Условный
переход, если
равно 0, по смещению
rel
2 24
JNZ
rel
Условный
переход, если
не равно 0, по
смещению rel
2 24
CJNE
A,direct,rel
Условный
переход, если
(A) не равно (direct),
по смещению
rel
3 24
CJNE
A,#data,rel
Условный
переход, если
(A) не равно #data, по
смещению rel
3 24
CJNE
Rn,#data,rel
Условный
переход, если
(Rn) не равно #data, по
смещению rel
3 24
CJNE
@Ri,#data,rel
Условный
переход, если
( (Ri) ) не равно
#data, по смещению
rel
3 24
DJNZ Rn,rel Декремент
Rn и условный
переход, если
не равно 0, по
смещению rel
2 24
DJNZ
direct,rel
Декремент
direct и условный
переход, если
не равно 0, по
смещению rel
3 24
NOP

Пустой
оператор.


1 12
Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Микроконтроллеры семейства MCS51 Intel

Слов:3210
Символов:22378
Размер:43.71 Кб.