Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Система команд включает 111 команд - однобайтовых (49), двухбайтовых (45) и трехбайтовых (17). Все команды выполняются за 1 или 2 МЦ (12 тактов CLK), за исключением команд умножения и деления MUL и DIV, для выполнения которых требуется 4 МЦ. Большинство двухбайтовых команд - одноцикловые, а все трехбайтовые двухцикловые. За один МЦ в..ВЕ52 можно вводить до двух байтов программного кода.

В микро-ЭВМ предусмотрена прямая (direct), косвенная (через R0, R1 или DPTR) и непосредственная (# data) адресация элементов DSEG и RSEG, прямая адресация элемента BSEG, косвенная (через R0, R1 или DPTR) адресация XSEG.

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

В Табл. 11.4 – Табл. 11.7 приведены мнемокоды команд, длина команды в МЦ,
HEX-коды и описание команды. В таблицах использованы следующие обозначения:

A,B - аккумулятор, дополнительный аккумулятор;
Rn - регистр общего назначения (n = 0..7);
@Ri - косвенный адрес через Ri (i = 0,1);
direct - прямой адрес DSEG (8 бит);
#data - непосредственный операнд длиной 8 бит;
#data16 - непосредственный операнд длиной 16 бит;
addr11 - адрес перехода длиной 11 бит;
addr16 - адрес перехода длиной 16 бит;
rel - смещение на странице CSEG длиной 8 бит;
bit - прямой адрес BSEG (номер бита).

В командах возможны следующие варианты формирования признаков

[1] - P

[2] - CY, P

[3] - CY, AC, OV, P

[4] - OV, P, CY 0

[5] - CY

В Табл. 11.4 – Табл. 11.7 в описании команд указаны соответствующие обозначения. Отсутствие обозначения говорит о том, что данная команда не меняет значений признаков. Символ в фигурных скобках означает, что он относится ко всем командам блока.

Табл. 11.4. Команды пересылки

  Мнемокод МЦ HEX-коды Описание команды
  MOV A, Rn   E8.. EF A Rn
  MOV A, direct   E5 A (direct)
  MOV A, @Ri   E6.. E7 A (Ri)
  MOV A, #data     A data
  MOV Rn, A   F8.. FF Rn A
  MOV Rn, direct   A8.. AF Rn (direct)
  MOV Rn, #data   78.. 7F Rn data
  MOV direct, A   F5 (direct) A
  MOV direct, Rn   88.. 8F (direct) Rn
  MOV direct, direct     (direct) (direct)
  MOV direct, @Ri   86.. 87 (direct) (Ri)
  MOV direct, #data     (direct) data
  MOV @Ri, A   F6.. F7 (Ri) A
  MOV @Ri, direct   A6.. A7 (Ri) (direct)
  MOV @Ri, #data   76.. 77 (Ri) data
  MOV DPTR, #data16     DPTR data16
  MOVC A,@A+DPTR     A CSEG(A+DPTR)
  MOVC A,@A+PC     A CSEG(A+PC)
  MOVX A, @Ri   E2.. E3 A XSEG(P2.Ri)
  MOVX A, @DPTR   E0 A XSEG(DPTR)
  MOVX @Ri, A   F2.. F3 XSEG (P2.Ri) A
  MOVX @DPTR, A   F0 XSEG (DPTR) A
  PUSH direct   C0 +(SP) (direct)
  POP direct   D0 (direct) (SP)-
  XCH A, Rn   C8.. CF A «Rn
  XCH A, direct   C5 A «(direct)
  XCH A, @Ri   C6.. C7 A «(Ri)
  XCHD A, @Ri   D6.. D7 A[3:0] «(Ri[3:0])

Табл. 11.5. Логические и арифметические команды

  Мнемокод МЦ HEX-коды Описание команды
  ANL A, Rn   58.. 5F A A & Rn
  ANL A, direct     A A & (direct)
  ANL A, @Ri   56.. 57 A A & (Ri)
  ANL A, #data     A A & data
  ANL direct, A     (direct) (direct) & A
  ANL direct, #data     (direct) (direct) & data
  ORL A, Rn   48.. 4F A A Ú Rn
  ORL A, direct     A A Ú (direct)
  ORL A, @Ri   46.. 47 A A Ú (Ri)
  ORL A, #data     A A Ú data
  ORL direct, A     (direct) (direct) Ú A
  ORL direct, #data     (direct) (direct) Ú data
  XRL A, Rn   68.. 6F A A Å Rn
  XRL A, direct     A A Å (direct)
  XRL A, @Ri   66.. 67 A A Å (Ri)
  XRL A, #data     A A Å data
  XRL direct, A     (direct) (direct) Å A
  XRL direct, #data     (direct) (direct) Å data
  CLR A   E4 A 0000 0000 (Очистка акк.)
  CLP A   F4 A A\ (Инверсия аккумулятора)
  RL A     Сдвиг левый циклический
  RLC A     Сдвиг левый с переносом
  RR A     Сдвиг правый циклический
  RRC A     Сдвиг правый с переносом
  SWAP A   C4 A[7:4] «A[3:0]
  ADD A, Rn   28.. 2F A A + Rn
  ADD A, direct     A A + (direct)
  ADD A, @Ri   26.. 27 A A + (Ri)
  ADD A, #data     A A + data
  ADDC A, Rn   38.. 3F A A + Rn + CY
  ADDC A, direct     A A + (direct) + CY
  ADDC A, @Ri   36.. 37 A A + (Ri) + CY
  ADDC A, #data     A A + data + CY
  SUBB A, Rn   98.. 9F A A - Rn - CY
  SUBB A, direct     A A - (direct) - CY
  SUBB A, @Ri   96.. 97 A A - (Ri) - CY
  SUBB A, #data     A A - data - CY
  INC A     A A + 1
  INC Rn   08.. 0F Rn Rn + 1
  INC direct     (direct) (direct) + 1
  INC @Ri   06.. 07 (Ri) (Ri) + 1
  INC DPTR   A3 DPTR DPTR + 1
  DEC A     A A - 1
  DEC Rn   18.. 1F Rn Rn - 1
  DEC direct     (direct) (direct) - 1
  DEC @Ri   16.. 17 (Ri) (Ri) - 1
  MUL AB   A4 B.A A × B
  DIV AB     A.B A: B
  DA A     Десятичная коррекция сложения

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

  Мнемокод МЦ HEX-коды Описание команды
  ACALL addr11   aaa10001 +(SP) PC; PC[10:0] adrr11
  LCALL addr16     +(SP) PC; PC adrr16
  RET     PC (SP)-
  RETI     PC (SP)-; конец прерывания
  AJMP addr11   aaa00001 PC[10:0] adrr11
  LJMP addr16     PC adrr16
  JMP @A + DPTR     PC DPTR +A
  SJMP rel     PC PC + rel
  JZ rel     if A = 0 then PC PC + rel
  JNZ rel     if A ¹ 0 then PC PC + rel
  CJNE A, direct, rel   B5 if A ¹ (direct) then PC PC + rel
  CJNE A, #data, rel   B4 if A ¹ data then PC PC + rel
  CJNE Rn, #data, rel   B8.. BF if Rn ¹ data then PC PC + rel
  CJNE @Ri,#data, rel   B6.. B7 if (Ri) ¹ data then PC PC + rel
  CJNZ Rn,rel   D8.. DF Rn Rn - 1 if Rn ¹ 0 then PC PC + rel
  CJNE direct, rel   D5 (direct) (direct) - 1 if (direct) ¹ 0 then PC PC + rel
  NOP      

Табл. 11.7. Булевые команды





Дата публикования: 2015-01-24; Прочитано: 159 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...