Условное графическое обозначение микроконтроллеров семейства МК51. Структура памяти данных МК51, страница 5

CPL    bit        ; (b) ß (/b)                - Инверсия бита

ANL  C, bit    ; (C) ß (C) Ù (b)       - Логическое  И  бита и переноса

ANL  C, /bit   ; (C) ß (C) Ù (/b)      - Логическое  И  инверсии бита и переноса

ORL  C, bit    ; (C) ß (C) Ú (b)       - Логическое  ИЛИ  бита и переноса

ORL  C, /bit   ; (C) ß (C) Ú (/b)      - Логическое  ИЛИ  инверсии бита и переноса

MOV  C, bit   ; (C) ß (b)                 - Пересылка бита в перенос

MOV  bit, C   ; (b) ß (C)                 - Пересылка переноса в бит

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

LJMP  ad16      ; (PC) ß ad16                      - Длинный переход в полном объеме (64 Кбайт)

памяти программ

AJMP  ad11      ; (PC) ß (PC) + 2,  PC([10 – 0]) ß ad11-   Абсолютный переход внутри страницы  в 2 Кбайта

SJMP  rel          ; (PC) ß (PC) + 2,  (PC) ß (PC) + rel        - Короткий переход внутри страницы в 256 байт

JMP  @A+DPTR  ; (PC) ß (A) + (DPTR)       - Косвенный относительный переход

JZ    rel             ; (PC) ß (PC) + 2,  если  (A) = 0, то (PC) ß (PC) + rel       - Переход, если содержимое аккумулятора равно нулю

JNZ   rel           ; (PC) ß (PC) + 2,  если  (A) ¹ 0, то (PC) ß (PC) + rel        - Переход, если содержимое аккумулятора не равно нулю

JC   rel             ; (PC) ß (PC) + 2, если (С) = 1, то (PC) ß (PC) + rel          - Переход, если перенос равен единице

JNC  rel           ; (PC) ß (PC) + 2,  если (C) = 0, то (PC) ß (PC) + rel         - Переход, если перенос равен нулю

JB  bit, rel        ; (PC) ß (PC) + 3,  если (b) = 1, то (PC) ß (PC) + rel          - Переход, если бит равен единице

JNB  bit, rel     ; (PC) ß (PC) + 3,  если (b) = 0, то (PC) ß (PC) + rel          - Переход, если бит равен нулю

JBC  bit, rel     ; (PC) ß (PC) + 3,  если (b) = 1, то (PC) ß (PC) + rel  и  (b) ß 0   - Переход, если бит равен единице с последующим сбросом бита

DJNZ  Rn, rel  ; (PC) ß (PC) + 2,  (Rn) ß (Rn) – 1, если (Rn) ¹ 0,

; то (PC) ß (PC) + rel      - Декремент регистра и переход, если не нуль

DJNZ  ad, rel   ; (PC) ß (PC) + 2,  (ad) ß (ad) – 1,  если (ad) ¹ 0,

; то (PC) ß (PC) + rel     - Декремент прямоадресуемого байта и переход, если не нуль

CJNE  A, ad, rel    ; (PC) ß (PC) + 3, если  (A) ¹ (ad), то (PC) ß (PC) + rel,

; если  (A) < (ad), то (C) ß 1,  иначе (C) ß 0     - Сравнение   аккумулятора с прямоадресуемым байтом и переход, если не равно

CJNE  A, #d, rel     ; (PC) ß (PC) + 3, если  (A) ¹ #d, то (PC) ß (PC) + rel,

; если  (A) < #d, то (C) ß 1,  иначе (C) ß 0      - Сравнение аккумулятора с константой и переход, если не равно

CJNE  Rn, #d, rel   ; (PC) ß (PC) + 3, если  (Rn) ¹ #d, то (PC) ß (PC) + rel,

; если  (Rn) < #d, то (C) ß 1,  иначе (C) ß 0       - Сравнение регистра с константой и переход, если не равно

CJNE  @Ri, #d, rel   ; (PC) ß (PC) + 3, если  ((Ri)) ¹ #d, то (PC) ß (PC) + rel,

; если  ((Ri)) < #d, то (C) ß 1,  иначе (C) ß 0       - Сравнение байта из ПД

с константой и переход, если не равно

LCALL  ad16      ; (PC) ß (PC) + 2,  (SP) ß (SP) + 1, ((SP)) ß (PC[7 – 0]), (SP) ß (SP) + 1,

; ((SP)) ß (PC[15 – 8]),  (PC) ß ad16          - Длинный вызов подпрограммы

ACALL  ad11     ; (PC) ß (PC) + 2,  (SP) ß (SP) + 1, ((SP)) ß (PC[7 – 0]), (SP) ß (SP) + 1,

; ((SP)) ß (PC[15 – 8]),  (PC[10 – 0]) ß ad11               - Абсолютный вызов подпрограммы в пределах страницы в 2 Кбайта

RET                     ; (PC[15 – 8]) ß ((SP)),  (SP) ß (SP) – 1, (PC[7 – 0]) ß ((SP)),

; (SP) ß (SP) – 1                                           - Возврат из подпрограммы

RETI                   ; (PC[15 – 8]) ß ((SP)),  (SP) ß (SP) – 1, (PC[7 – 0]) ß ((SP)),

; (SP) ß (SP) – 1           - Возврат из подпрограммы обработки прерывания

NOP                    ; (PC) ß (PC) – 1           - Холостая команда