Скачиваний:
17
Добавлен:
01.05.2014
Размер:
84.99 Кб
Скачать

5. Команды перехода

Мнемоника

Спос

адр.

Содержание

Флаги

VHINZC

Цк

Бт

Примечание

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

JMP ad8

DIR

(PC) <- ad8

------

2

2

JuMP

JMP ad16

EXT

(PC) <- ad16

------

3

3

JMP ,X

IX

(PC) <- (H:X)

------

2

1

JMP of8,X

IX8

(PC) <- of8+(H:X)

------

3

2

JMP of16,X

IX16

(PC) <- of16+(H:X)

------

4

3

BRA cad

REL

(PC)<-(PC)+rel

------

3

2

BRanch Always

BRN cad

IMM

Переход к следующей команде

------

3

2

Branch Never

NOP

INH

Переход к следующей команде

------

1

1

No OPeration

Команды вызова подпрограмм и обслуживания прерываний

BSR cad

REL

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- (PC)+rel

------

4

2

Branch to SubRoutine

JSR ad8

DIR

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- ad8

------

2

2

JuMP To Subroutine

JSR ad16

EXT

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- ad16

------

3

3

JSR ,X

IX

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- (H:X)

------

2

1

JSR of8,X

IX8

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- of8+(H:X)

------

3

2

JSR of16,X

IX16

((SP))<-(PCL);(SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

(PC) <- of16+(H:X)

------

4

3

SWI

INH

((SP))<-(CCR);(SP)<-(SP)-1;

((SP))<-(A); (SP)<-(SP)-1;

((SP))<-(X); (SP)<-(SP)-1;

((SP))<-(PCH);(SP)<-(SP)-1;

((SP))<-(PCL);(SP)<-(SP)-1;

(I)<-1 (Запрет прерываний)

(PC)<-(ADMAX-3):(ADMAX-2) (вектор программного прерывания SWI)

--1---

9

1

SoftWare Interrupt. Регистр H не запоминается для совместимости с HC05

RTI

INH

(SP)<-(SP)+1;(PCL)<-((SP)); (SP)<-(SP)+1;(PCH)<-((SP));

(SP)<-(SP)+1; (X)<-((SP));

(SP)<-(SP)+1; (A)<-((SP));

(SP)<-(SP)+1;(CCR)<-((SP));

(Разрешение прерываний)

++++++

7

1

ReTurn from Interrupt

RTS

INH

(SP)<-(SP)+1;(PCH)<-((SP));

(SP)<-(SP)+1;(PCL)<-((SP));

------

4

1

ReTurn from Subroutine

Команды условных переходов

по признакам

BCC cad

REL

Если (C)=0, (PC)<-(PC)+rel

------

3

2

Branch if Carry Clear

BCS cad

REL

Если (C)=1, (PC)<-(PC)+rel

------

3

2

Branch if Carry Set

BEQ cad

REL

Если (Z)=1, (PC)<-(PC)+rel

------

3

2

Branch if Equal

BNE cad

REL

Если (Z)=0, (PC)<-(PC)+rel

------

3

2

Branch if Not Equal

BHCC cad

REL

Если (H)=0, (PC)<-(PC)+rel

------

3

2

Branch Half Carry Clear

BHCS cad

REL

Если (H)=1, (PC)<-(PC)+rel

------

3

2

Branch Half Carry Set

BMC cad

REL

Если (I)=0, (PC)<-(PC)+rel

------

3

2

Branch if interrupt Mask Clear

BMS cad

REL

Если (I)=1, (PC)<-(PC)+rel

------

3

2

Branch if interrupt Mask Set

BIL cad

REL

Если ()=0,

(PC)<-(PC)+rel

------

3

2

Branch if Low

BIH cad

REL

Если ()=1,

(PC)<-(PC)+rel

------

3

2

Branch if High

при сравнении чисел без знака

BLO cad

REL

Если (C)=1, (PC)<-(PC)+rel

------

3

2

Branch if Lower

BLS cad

REL

Если (C)|(Z)=1,

(PC)<-(PC)+rel

------

3

2

Branch if Lower or Same (BCS)

BHI cad

REL

Если (C)|(Z)=0,

(PC)<-(PC)+rel

------

3

2

Branch if Higher

BHS cad

REL

Если (C)=0, (PC)<-(PC)+rel

------

3

2

Branch if Higher or Same (BCC)

при сравнении чисел со знаком

BPL cad

REL

Если (Z)=0, (PC)<-(PC)+rel

------

3

2

Branch if Plus

BMI cad

REL

Если (Z)=1, (PC)<-(PC)+rel

------

3

2

Branch if Minus

BLT cad

REL

Если (N)Å(V)=1,

(Операнды со знаком)

(PC)<-(PC)+rel

------

3

2

Branch if Less Then

BLE cad

REL

Если (Z)|(N)Å(V)=1,

(Операнды со знаком)

(PC)<-(PC)+rel

------

3

2

Branch if Less Then or Equal

BGT cad

REL

Если (Z)|(N)Å(V)=0,

(Операнды со знаком)

(PC)<-(PC)+rel

------

3

2

Branch if Greater Then

BGE cad

REL

Если (N)Å(V)=0,

(Операнды со знаком)

(PC)<-(PC)+rel

------

3

2

Branch if Greater Then or Equal

по предварительному сравнению

CBEQA #d8,cad

IMM,

REL

Если (A)=d8, (PC)<-(PC)+rel

------

4

3

Compare, Branch if Equal

CBEQX #d8,cad

IMM,

REL

Если (X)=d8, (PC)<-(PC)+rel

------

4

3

CBEQ ad8,cad

DIR,

REL

Если (A)=(ad8),

(PC)<-(PC)+rel

------

5

3

CBEQ X+,cad

IX+,

REL

Если (A)=((H:X)),

(PC)<-(PC)+rel;

(H:X)<-(H:X)+1

------

4

2

CBEQ of8,X+,cad

IX8+

REL

Если (A)=(of8+(H:X)),

(PC)<-(PC)+rel

(H:X)<-(H:X)+1

------

5

3

CBEQ of8,SP,cad

SP8

REL

Если (A)=(of8+(SP)),

(PC)<-(PC)+rel

------

6

4

по предварительному декременту

DBNZA cad

REL

(A)<-(A)-1;

Если (A)¹0, (PC)<-(PC)+rel

------

3

2

Decrement, Branch if Not Zero

DBNZX cad

REL

(H:X)<-(H:X)-1;

Если (H:X)¹0,(PC)<-(PC)+rel

------

3

2

DBNZ ad8,cad

DIR,

REL

(ad8)<-(ad8)-1;

Если (ad8)¹0,(PC)<-(PC)+rel

------

5

3

DBNZ X,cad

IX,

REL

((H:X))<-((H:X))-1;

Если ((H:X))¹0,

(PC)<-(PC)+rel;

------

4

2

DBNZ of8,X,cad

IX8

REL

(of8+(H:X))<-(of8+(H:X))-1;

Если (of8+(H:X)) ¹ 0,

(PC)<-(PC)+rel

------

5

3

DBNZ of8,SP,cad

SP8

REL

(of8+(SP))<-(of8+(SP))-1;

Если (of8+(SP)) ¹ 0,

(PC)<-(PC)+rel

------

6

4

Соседние файлы в папке Материалы по микроконтроллерам