Порты ввода/вывода. Система управления МКЭВМ. Автономное использование МК-48. БИС расширителя ввода/вывода, страница 5

INC A    (A)ß(A)+1

INC Rn    (Rn)ß(Rn)+1

INC @Ri                   ((Ri))ß((Ri))+1

DEC A

DEC Rn

ANL A,Rn

(A)ß(A)&(Rn)

Лог. И

ANL A,@Ri

(A)ß(A)&((Ri))

ANL A,#d

(A)ß(A)&data

ORL A,Rn

(A)ß(A)(Rn)

Лог. ИЛИ

ORL A,@Ri

(A)ß(A)((Ri))

ORL A,#d

(A)ß(A)data

XRL A,Rn

(A)ß(A)(Rn)

Искл. ИЛИ

XRL A,@Ri

(A)ß(A)((Ri))

XRL A,#d

(A)ß(A)data

CLR A

(A)ß00H

CPL A

(A)ß()

Инверсия

CLR C

Cß0

С флагом переноса

CRL C

CLR F0

F0ß0

CPL F0

F0ß

CLR F1

CPL F1

RL A

Сдвиг влево

 

Флаг переноса не меняется

RR A

Сдвиг вправо

RLC A

Сдвиг через перенос

RRC A

Пример: F0à1

CLR F0

CPL F0

Сбросить все регистры 1-го банка:

ORL A,#0010000B

MOV PSW,A;   BSß1

CLR A

MOV R0,A

MOV R1,A

.

.

.

MOV R7,A

3.  команды работы с портами:

а) Р1 и Р2

При вводе данных они не фиксируются, а поступают на ШД, а при выводе – фиксируются в триггерах «защелках» порта.

OUTL Pp,A

(Pp)ßA, где р=1,2

IN A,Pp

(А)ß(Pp)

ANL Pp,#d

(Pp)ß(Pp)&data

ORL Pp,#d

(Pp)ß(Pp)data

Настройка на ввод: 2 способа

MOV A.#FFH

OUTL P1,A

или

ORL P1,#FFH

Настроить линии порта Р2 0,1,2 на ввод:

ORL P2,#00000111B   P2.0=P2.1=P2.2ß1

Вывести «0» на 7-ую линию порта Р1:

ANL P1,01111111B     P1.7ß0

Вывести «1» в 3-ю линию порта Р2:

ORL P2,#00001000B   P2.3ß1

б) Порт BUS работает в 2-х режимах:

1)  статический

OUTL BUS,A

(BUS)ß(A)

INS A,BUS

(A)ß(BUS)

ANL BUS,#d

(BUS)ß(BUS)&data

ORL BUS,#d

(BUS)ß(BUS)data

2)  динамический (используется, как правило, при работе в внешней памятью)

В этом режиме после каждой пересылки через порт он устанавливается в 3‑е состояние.

MOVX @Ri,A              вывод

MOVX A,@Ri

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

1) Команды перехода безусловные

JMP ad11

(PC)0-10ßad11

(в пределах банка команды)

JMPP @A

(PC)0-7ß((A))

(в пределах страницы памяти)

условные (переход внутри страницы памяти)