Смекни!
smekni.com

Управление и информатика в технических системах и 230101 Вычислительные машины, комплексы, системы и сети. Екатеринбург 2006 (стр. 6 из 6)

Название команды

Мнемокод

КОП

Т

Б

Ц

Операция
Сброс переноса CLR C 11000011

1

1

1

(С)<-0
Сброс бита CLR bit 11000010

4

2

1

(b)<-0
Установка переноса SETB C 11010011

1

1

1

(C)<-1
Установка бита SETB bit 11010010

4

2

1

(b)<-1
Инверсия переноса CPL C 10110011

1

1

1

(C)<-not(C)
Инверсия бита CPL bit 10110010

4

2

1

(b)<-not(b)
Логическое И бита и переноса ANL C,bit 10000010

4

2

2

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

4

2

2

(C)<-(C)andnot(b)
Логическое ИЛИ бита и переноса ORL C,bit 01110010

4

2

2

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

4

2

2

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

4

2

1

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

4

2

2

(b)<-(C)

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

Название команды

Мнемокод КОП

Т

Б

Ц

Операция

Длинный переход в полном объеме памяти программ LJMP ad16 00000010

12

3

2

(PC)<-ad16
Абсолютный переход внутри страницы в 2 Кбайта AJMP ad11 a10a9a800001

6

2

2

(PC)<-(PC)+2 (PC0..10)<-ad11
Короткий относительный переход внутри страницы в 256 байт SJMP rel 10000000

5

2

2

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

1

1

2

(PC)<-(A)+(DPTR)
Переход, если аккумулятор равен нулю JZ rel 01100000

5

2

2

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

5

2

2

(PC)<-(PC)+2, если (A)≠0, то (PC)<-(PC)+rel
Переход, если перенос равен единице JC rel 01000000

5

2

2

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

5

2

2

(PC)<-(PC)+2, если (C)=0, то (PC)<-(PC)+rel
Переход, если бит равен единице JB bit,rel 00100000

11

3

2

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

11

3

2

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

11

3

2

(PC)<-(PC)+3, если (b)=1, то (b)<-0 и (PC)<-(PC)+rel
Декремент регистра и переход, если не нуль DJNZ Rn,rel 11011rrr

5

2

2

(PC)<-(PC)+2, (Rn)<-(Rn)-1, если (Rn)≠0, то (PC)<-(PC)+rel
Декремент прямоадресуемого байта и переход, если не нуль DJNZ ad,rel 11010101

8

3

2

(PC)<-(PC)+2, (ad)<-(ad)-1, если (ad)≠0, то (PC)<-(PC)+rel
Сравнение аккумулятора с прямоадресуемым байтом и переход, если не равно CJNE A,ad,rel 10110101

8

3

2

(PC)<-(PC)+3, если (A)≠(ad),то (PC)<-(PC)+rel, если (A)<(ad), то (С)<-1, иначе (С)<-0
Сравнение аккумулятора с константой и переход, если не равно CJNE A,#d,rel 10110100

10

3

2

(PC)<-(PC)+3, если (A)≠#d, то (PC)<-(PC)+rel, если (A)<#d, то (С)<-1, иначе (С)<-0
Сравнение регистра с константой и переход, если не равно CJNE Rn,#d,rel 10111rrr

10

3

2

(PC)<-(PC)+3, если (Rn)≠#d, то (PC)<-(PC)+rel, если (Rn)< #d, то (С)<-1, иначе (С)<-0
Сравнение байта в РПД с константой и переход, если не равно CJNE @Ri,#d,rel 1011011i

10

3

2

(PC)<-(PC)+3, если ((Ri))≠#d, то (PC)<-(PC)+rel, если ((Ri))< #d, то (С)<-1, иначе (С)<-0
Длинный вызов подпрограммы LCALL ad16 00010010

12

3

2

(PC)<-(PC)+3, (SP)<-(SP)+1, ((SP))<-(PC0..7), (SP)<-(SP)+1, ((SP))<-(PC8..15), (PC)<-ad16
Абсолютный вызов подпрограммы в пределах страницы в 2 Кбайта ACALL ad11 a10a9a810001

6

2

2

(PC)<-(PC)+2, (SP)<-(SP)+1, ((SP))<-(PC0..7), (SP)<-(SP)+1, ((SP))<-(PC8..15), (PC0..10)<-ad11
Возврат из подпрограммы RET 00100010

1

1

2

(PC8..15)<-((SP)), (SP)<-(SP)-1, (PC0..7)<-((SP)), (SP)<-(SP)-1
Возврат из подпрограммы обработки прерывания RETI 00110010

1

1

2

(PC8..15)<-((SP)), (SP)<-(SP)-1, (PC0..7)<-((SP)), (SP)<-(SP)-1
Холостая команда N0P 00000000

1

1

1

(PC)<-(PC)+1
Примечание. Ассемблер допускает использование обобщенного имени команд JMP и CALL, которые в процессе трансляции заменяются оптимальными по формату командами перехода (AJMP, SJMP, LJMP) или вызова (ACALL, LCALL).