14

14



8 Instrukcje modyfikacji buow 89

8 Instrukcje modyfikacji buow 89

CLR bit


Clear Bit

Działanie:


Cci)


bit c= 0


Adresowanie:    Mnemonik    Struktura bajtów:    Cykle    Znacz-

maszynowe:    niki:

bezpośrednie:    CLR    C    |l    100)0    0    1    *1    l    C

bezpośrednie:    CLR    bit    | 1    1    0 0 | 0    0    1    0~    1

\    adres bitu

Opis działania:

Wpisanie zera logicznego na pozycję wybranego bitu o adresie bit w wewnętrznej pamięd RAM.

Przykład:

Blokowanie systemu przerwań, wpisanie zera logicznego na pozycję bitu EA (EnAble interrupt) w rejestrze specjalnym IE:

CLR    EA    ;EA <= 0

lub

CLR    IE7    ;IE7 <= 0

lub

CLR    OAFH    ;0AFH c= 0

lub

CLR    0A8H.7    ;0A8H.7 <= 0

CPL bit


Complement Bit

Działanie:

Adresowanie:


MnrmoniJc:


C c= not C


Struktura ba/tów:


bit cr not bit


Cykle    Znacz -

maszynowe:    niki:


bezpośrednie:    CPL C


[ i o i r


0 0 1 1~1 1


C


powoduje wpisywanie do stosu 3 bajtów /godnie z kolejnością wprowadzania Sytuację tę przedstawia rysunek 2-6.

Przy odczytywaniu bajtów ze stosu instrukcją POP należy zachować właściwą kolejność. Zmiana kolejności, jeśli jest nieświadoma, może prowadzić do niezamierzonych skutków, ponieważ odczytywane bajty pobierane są zawsze ze szczytu stosu:

POP

10H

;(10H) c= (SP),

SP c=SP -1,

(10HMEH

POP

ACC

;ACC c= (SP).

SP c=SP-l.

ACC=0C1I

POP

B

;B <= (SP),

SP <=SP -1,

IU12H

jeśli rejestry i wybrana komórka pamięci RAM mają mieć przywrócone poprzednie wartośd to po wykonaniu programu jedynie akumulator ma stan początkowy.

M

33H

33M

33H

32H

32M

SP * 32M

4EH

31H

SP ■ 31H

OCH

31H

OCH

SP = 30H

12M

30H

12H

30H

12H

k

k

k

PUSH 10H

PUSH 10H

PUSH 10M

PUSH ACC

PUSH ACC

PUSH B

Rys. 2-6 Rozmieszczenie bajtów na stosie mikroprocesora

Wskaźnik stosu jest inkrementowany, zwiększana jest jego zawartość, przed wykonaniem instrukcji PUSH (o jeden) i CALL (o dwa) oraz dekrementowany. zmniejszana jest jego zawartość, po pobraniu danych ze stosu w trakcie wykonywanych instrukcji POP (o jeden) i RET lub RETI (o dwa). Zerowanie procesora linią RESET ustala wartość początkową wskaźnika stosu 5P=7. Oznacza to. że przy przesianiu pierwszej danej do stosu następuje wpisanie jej do komórki .» adresie 8, tzn. do rejestru RO pierwszego banku rejestrów (RDl) (rysunek 2-2) Zawartość wskaźnika stosu może być programowo zmieniana:

MOV SP,#40H    ;SP <= 40H, wpisz wartość 40H do wskaźnika stosu

lub

MOV 81H,#40H    ;(81H)<=40H. wpisz do komórki

;    o adresie 81H (adres SP) wat tość 4UII

M-terr»lr esnrrnl^r fMfOśl - DiOuramowanie


Wyszukiwarka

Podobne podstrony:
14 6. Instrukcje logiczne 69 SWAP A Swap Accumulator Nibblęs Działanie:A7..4 o A3..0 Adresowanie
14 7 Instrukcje skokow i wywołań podprogramów 79 CJNE argument_l,axgument_2,adres Compare and Jump
14 6. Instrukcie logiczne 59 iloczyn przesyłany jest do akumulatora (A), • komórki wewnętrznej pami
14 7 Instrukcje skokow i wywołań podprogramów 79 CJNE argument_l.argumenl_2,adres Compaie and Jump
12 3. Instrukcje modyfikacji bitów 91 Przykład: Ustawienie znacznika przeniesienia (C> przy
12 8. Instrukcje modyfikacji bitów 91 Przykład: Ustawienie znacznika przeniesienia (O przy spełnien
16 3. Instrukcje modyfikacji bitów 87 Rozwiązanie problemu pokazano w poniższym przykładzie, realiz
10 7 Instrukcje skoków i wywołań podprogramów 83 CALL adr    CALL Uncondilional Dzia
19 4. Instrukcje bajtowej wymiany danych 29 Grupa rozkazów MOVX dotyczy wymiany danych między mikro
17 4. Instrukcję bajtowe) wymiany danych 37 Instrukcja XCHD stosowana jest do zamiany kodu BCD na i
19 4 Instrukcje ba
13 3. Instrukcje arytmetyczne 43 3. Instrukcje arytmetyczne 43 Suma R4R5 R6R7: MOV A.R4 ADD A.
16 6 Instrukcje logiczne 57 W akumulatorze znajduje się wartość 40H»*64D. a nie poprawna wartość 0C
17 5. Instrukcje arytmetyczne 47 INC argument Increment Działanie: A <= A +1 Rn c= Rn + 1 (

więcej podobnych podstron