11111nnn
1
A = Rn
MOV Rn, A 10101nnn
1
Rn = A
MOV
A, @Rr
1111000r
1
A= D(Rr) MOV @Rr, A 1010000r
1
D(Rr) = A MOVX
A, @Rr 1000000r 2
A = XD(Rr) MOVX @Rr, A 1001000r
2
XD(Rr) = A MOV
Rn, #d
10111nnn
2
Rn = данные
MOV @Rr, #d 1011000r 2
D(Rr) = данные MOV
A, #d 00100011 2
A = данные
MOV
A, PSW
11000111
1
A = PSW MOV PSW, A
11010111
1
PSW = A MOV
A, T 01000010
1
A = T
MOV T, A
01100010
1
T = A
MOVP A, @A
10100011
2
A = D(PC[11..8](A) MOVP3
A, @A
11100011
2
A = D(0011( A) XCH
A, Rn 00101nnn
1
A <=> Rn XCH
A, @Rr 0010000r
1
A <=> Rr XCHD
A, @Rr 0011000r
1
A[3..0]<=>D(Rr)[3..0] IN
A, Pp 000010pp 2
A = Pp INS
A, BUS 00001000 2
A = BUS OUTL Pp, A 001110pp 2
Pp = A
OUTL
BUS, A 00000010 2
BUS = A
MOVD
A, Ps
000011ss
2
A = 0000(Ps MOVD
Ps, A 001111ss 2
Ps = A[3..0]
Для обработки отдельных разрядов и битовых полей используется 28 команд логических операций (таблица 2). В системе команд МК реализованы логические операции И,ИЛИ и Исключающее ИЛИ. Существует два варианта этих команд в зависимости от операндов. В первом варианте один из операндов - это аккумулятор, где и хранится результат выполнения операции. В этом случае адрес аккумулятора задается в коде команды неявно, а в качестве второго операнда может использоваться содержимое любого регистра; ячейка РПД, адресуемая через R0 или R1; константа, указываемая во
втором байте комады. Особенностью системы команд МК является второй вариант команд логических операций, где в качестве
операнда-приемника используются |
порты ввода/вывода. Это |
||
позволяет |
маскировать отдельные биты портов ввода/вывода, |
||
управляя таким образом вводом данных. |
|
||
Например: |
|
|
|
ORL P1, |
#3, |
; разрешение ввода через биты P1[1..0] |
|
ANL R1, |
#FB |
; очистка разряда R1[2] |
|
XRL R2, |
#7 |
; инвертирование разрядов R2[2..0] |
|
Мнемокод команды Операнд Машинный код команды Число циклов Действие
ANL
A, Rn 01011nnn
1
A &= Rn ORL
A, Rn 01001nnn
1
A |= Rn XRL
A, Rn
11011nnn
1
A ^= Rn ANL
A, @Rr 0101000r
1
A & = D(Rr) ORL
A, @Rr 0100000r
1
A |= D(Rr)
XRL
A, @Rr 1101000r
1
A ^= D(Rr) ANL
A, #d 01010011 2
A &= данные
ORL
A, #d 01000011 2
A |= данные
XRL
A, #d
11010011
2
A ^= данные
ANL Pp, #d
100110pp
2
Pp & =данные
ANL BUS, #d 10011000 2
BUS @= данные
ORL Pp, #d
100010pp
2
Pp |= данные
ORL BUS, #d 10001000 2
BUS | = данные
ANLD
Ps, A
100111ss
| 05_Холера |
| 10.4. Исследование регистров |
| 1112 |
| 12 |
| 1568 |
| 1673 |
| 17 |
| 1703 |
| 1885 |
| 2. Генераторы постоянного тока |