Скачиваний:
48
Добавлен:
21.02.2014
Размер:
839.17 Кб
Скачать

2.2 Система команд к1816ве51

Система насчитывает 111 команд, из них 49 однобайтовых, 45 двухбайтовых и 17 трехбайтовых. Появление трехбайтовых команд связано с расширением объемов CSEG и XSEG. а также вводом прямой адресации в DSEG.

Все команды выполняются за один или два машинных цикла (12 тактов ALE) за исключением команд MUL и DIV, которые требуют четыре цикла. Большинство двухбайтовых команд одно цикловые, а все трехбайтовые команды двух цикловые. Это объясняется тем, что за один машинный цикл в ВЕ51 может вводиться до двух байтов, программного кода.

Все множество команд ВЕ51 удобно разбить на пять групп: пересылки (28), логической обработки (25), арифметической обработки (24), передачи управления (17), булевого процессора (17).

Группа команд пересылки (таблица 1) содержит команды MOV (пересылки данных между DSEG и RSEG), MOVC (между CSEG и A), MOVX (между XSEG и А или RSEG), команды обращения к стеку PUSH и POP, а также две команды обмена ХСН и XCHD. Наиболее емкой инструкцией является команда MOV, которая использует четыре способа адресации: регистровый (A,

Rn, DPTR), прямой (direct), косвенный (@Ri) и непосредственный (#data, #data 16). Для указания приемника служат три способа адресации (кроме непосредственного), для указания источника все четыре.

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

Обращение к внешней памяти осуществляется с помощью команды MOVX. Обмен производится по байтам между аккумулятором и ячейкой внешней памяти данных. Ячейка XSEG может быть адресована двумя способами: косвенно через 16-разрядный указатель DPTR и косвенно через 8-разрядный

указатель Ri. i =0-1. В последнем случае регистром страниц служит выходной регистр Р2.

В состав группы команд арифметической обработки (таблица 2) входят: операция сложения ADD, сложения с учетом переноса ADDC, вычитания с учетом займа SUBB, увеличения и уменьшения на единицу INC и DEC, десятичная коррекция сложения в 2/10-коде упакованного формата DA. умножение MUL и деление DIU.

В составе группы команд передачи управления находятся команды перехода AJMP, LJMP,SJMP, JMP, условного перехода JZ, JNZ, CJNE, вызова ACALL, LCALL, возврата RET, RETI и модификации с условным переходом DJNZ. Сюда же включена пустая команда NOP.

Таблица 1 – Группа команд пересылки

Мнемоника

Число

циклов

Код

Описание

MOV A,Rn

MOV A,direct

MOV A,@Ri

MOV A, #data

MOV Rn,A

MOV Rn,direct

MOV Rn,#data

MOV direct,A

MOV direct, Rn

MOV direct,direct

MOV direct, @Ri

MOV direct, #data

MOV @Ri,A

MOV @Ri,direct

MOV @Ri,#data

MOV DPTR,#data

MOVC A,@A + DPTR

MOVC А,@А + РС

MOVX A,@Ri

MOVX A,@DPTR

MOVX @Ri,A

MOVX @DPTR,A

PUSH direct

POP direct

XCH A,Rn

XCH A,direct

XCH A,@Ri

XCHD A,@R

1

1

1

1

1

2

1

1

2

2

2

2

1

2

1

2

2

2

2

2

2

2

2

2

2

1

1

1

E8-EF

E5

Е6-Е7

74

F8-FF

A8-AF

78-7F

F5

88-8F

85

86-87

75

F6-F7

A6-A7

76-77

90

93

83

E2-E3

E0

F2-F3

F0

C0

D0

C8-CF

C5

C6-C7

D6-D7

ARn, n=0-7

A(direct)

A(ri), i=0-1

Adata

RnA, n=0-7

Rn(direct), n=0-7

Rndata, n=0-7

(direct)A

(direct)Rn, n=0-7

(direct) (direct)

(direct)(Ri), i=0-1

(direct)data

(Ri)A, i=0-1

(Ri) (direct), i=0-1

(Ri) data, n=0-1

DPTRdata 16

ACREG(A+DPTR)

ACREG(A+PC)

AXREG(P2:Ri),i=0-1

AXREG(DPTR)

XREG(P2:Ri)A

i=0-1 XREG(DPTR)A

+(SP)(direct)

(direct)(SP)

ARn, n=0-7

ARn(direct)

A(Ri), i=0-1

A0-3(Ri)0-3, i=0-1

Таблица 2 – Группа команд арифметической обработки

Мнемоника

Число

циклов

Код

Описание

1

2

3

4

АDD A,Rn

АDD A,direct

АDD A,@Ri

АDD A, #data

АDDC A,Rn

АDDC A,direct

АDDC A, @Ri

АDDC A, #data

SUBB A,Rn

SUBB A,direct

1

1

1

1

1

1

1

1

1

1

28-2F

25

26-27

24

38-3F

35

36-37

34

98-9F

95

AA+Rn, n=0-7

AA+(direct)

AA+(Ri), i=0-1

AA+data

AA+Rn+CY, n=0-7

AA+(direct)+CY

AA+(Ri)+CY, i=0-1

AA+data+CY

AA-Rn-CY, n=0-7

AA-(direct)-CY

Продолжение таблицы 2

1

2

3

4

SUBB A, @Ri

SUBB A, #data

INC A

INC Rn

INC direct

INC @Ri

INC DPTR

DEC A

DEC Rn

DEC direct

DEC @Ri

MUL AB

DIV AB

DIA A

1

1

1

1

1

2

1

1

1

1

1

4

4

1

96-97

94

04

08-0F

05

06-07

A3

14

18-1F

15

16-17

A4

84

D4

AA-(Ri)-CY, i=0-1

AA-data-CY

AA+1

Rn  Rn+1

(direct) (direct)+1

(Ri) (Ri)+1, i=0-1

DPTR DPTR+1

AA-1

Rn  Rn-1

(direct) (direct)-1

(Ri) (Ri)11, i=0-1

BAAxB

ABA/B

A2/10 – коррекция A

В группу входят также операции безусловного и условного переходов с относительным 8-разрядным смещением rel.

Соседние файлы в папке ПРОЕКТИРОВАНИЕ УПРАВЛЯЮЩЕЙ МИКРОЭВМ-