17

17



-ł Instrukcje bano we; wymiany danych 27

-ł Instrukcje bano we; wymiany danych 27

MOV R4.0C4H MOV 0AH,#3DH MOV A.6R0


;adresowanic bezpośrednie,    R4 e= (0C4H),

adresowanie natychmiastowe,    (OAH) c= 3DH,

.-adresowanie rejestrowe pośrednie, A c= (RO)

danych z całej dostępnej zewnętrznej pamięć RAM lub pamięć kodu programu.


Ol

nętrznej pamięć RAM adresowanych bezpośrednia


Działanie instrukcji jest następujące:

•    inkrcmentacja, zwiększenie o jeden wskaźnika stosu

SP c= SP ♦ 1,

•    przesłanie wskazanego bajtu <scr> do wewnętrznej pamięć RAM adresowanej wskaźnikiem stosu

(SP) c= (adr)

Instrukcja POP adr odtwarza wartość rejestrów, adresowanych bezpośrednio łub wybranych komórek wewnętrznej pamięć RAM, które zostały zachowane na stosie. Działanie tej instrukcji jest następujące:

• przesianie zawartość komórki adresowanej wskaźnikiem stosu do komórki pamięć o podanym adresie

(adr) <= (SP)

• dekrementacja, zmniejszenie o jeden wskaźnika stosu SPe=SP-l,


Instrukcje PUSH i POP wykorzystywane są do ochrony zawartość komórek wenętrznej pamięć RAM. Sytuacja taka występuje najczęśćej przy wywołaniu podprogramu, który korzysta i zmienia wartość tych komórek, a które z punktu widzenia programu głównego nie powinny być modyfikowane.

Ze względu na tryb pośredniego adresowania wewnętrznej pamięć RAM przez wskaźnik stosu (SP), obszar stosu nie pokrywa się z obszarem rejestrów specjalnych (SFR), które adresowane są tylko bezpośrednia Jeśli dysponujemy procesorem, który nie posiada bloku wewnętrznej pamięć RAM o adresach 80H~0FFH, np. 8051/31 i zawartość wskaźnika stosu SP ź 80H to wykonanie instrukcji PUSH adr i POP adr spowoduje, że do komórki pamięć o podanym adresie adr przesłane są wartość przypadkowe.

Adresowanie:    Mnemonik:    Struktura bajtów.    Cykle    Znacz-

maszynowe:    niki

2


bezpośrednie:    JNZ rei


0 1 1 ll 0 0 0 0


rei

* Znaczniki sa zmieniane jeśli instrukcja dotyczy rejestru słowa statusowego (PS W)

Opis działania:

Wykonanie względnego skoku warunkowego jeśli spełniony jest warunek:

•    wybrany bit ma wartość jedynki logicznej, wartość bitu nie jest zmieniana (JB bit.rel),

•    wybrany bit ma wartość zera logicznego, wartość bitu nie jest zmieniana (JNB bit.rel),

•    wybrany bit ma wartość jedynki logicznej, wybrany bit jest zerowany (JBC bit.rel),

•    znacznik przeniesienia C = 1, wartość znacznika przeniesienia nie jest zmieniana (JC rei),

•    znacznik przeniesienia C = 0, wartość znacznika przeniesienia nie jest zmieniana (JNC rei),

•    stan akumulatora ma wartość zerową, zawartość akumulatora nic ulega zmianie (JZ rei),

•    stan akumulatora nie ma wartości zerowej, zawartość akumulatora nie ulega zmianie (JNZ rei).

Jeśli podany warunek nie jest spełniony to wykonywana jest następna instrukcja występująca po instrukcji skoku.

We wszystkich rozkazach skoków 8-bitowe przesunięcie rei, traktowane jako liczba całkowita ze znakiem zawarta w przedziale -128..+127. dodawane jest znakowo do zawartości licznika rozkazów (PC). Jeśli przesunięcie rei jest liczbą dodatnią to roszerzeniem znakowym jest bajt zerowy, jeśli liczbą ujemną to bajt równy UFFH.

Adresy bitów testowanych w rozkazach skoków warunkowych są następujące:

•    0..7FH (0..127) - obszar wewnętrznej pamięd RAM o adresach 20H..2FH.

•    80H..0FFH (128..255) - rejestry specjalne, których adresy są wielokrotnością 8

Przykład 1:

Stan znacznika przeniesienia (O określa typ wykonywane| procedury, jeśli C ti to procedury’ Proc 1, jeśli C - 1 to procedury Proc 2:

......................... ;program zmienia stan znacznika przeniesienia (O

. jeśli C * 0 to skok do Proc l .'jeśli C = 1 to skok do Proc.2


JmpProc

JNC    Proc.l

JC    Proc.2


Wyszukiwarka

Podobne podstrony:
17 4. Instrukcję bajtowe) wymiany danych 37 Instrukcja XCHD stosowana jest do zamiany kodu BCD na i
17 4 Instrukcje bajtowe) wymiany danych 37 Instrukcja XCHD stosowana jest do zamiany kodu BCD na in
17 5. Instrukcje arytmetyczne 47 INC argument Increment Działanie: A <= A +1 Rn c= Rn + 1 (
17 5. Instruktaż na stanowisku roboczym i nadzór 227 Nowo przyjętych pracowników możemy podzielić n
19 4. Instrukcje bajtowej wymiany danych 29 Grupa rozkazów MOVX dotyczy wymiany danych między mikro
19 4 Instrukcje ba
13 4 Instrukcje ba
15 4 Instrukcje bajtowej wymiany danych 35 Pop_DPTR: POP DPH    ;DPH <= (SP) = 56
13 4 Instrukcje bajtowej wymiany danych 33 i komórki wewnętrznej pamięci KAM o adresie SOH: Mov_RAM
15 4 Instrukcje bajtowej wymiany danych 35 Pop_DPTR: POP DPH    ;DPH c= (SP) = 56H,
19 4 Instrukcje bajtowe) wymiany danych 39 Przykład: Przesianie zawartości czterech banków rejestró
17 Przykład 2.1 27 - cechy geometryczne przekroju: A = 26,9 cm2, t{ = 10,7 mm. Nośność elementów ro

więcej podobnych podstron