14

14



6. Instrukcie logiczne 59

iloczyn przesyłany jest do akumulatora (A),

• komórki wewnętrznej pamięć RAM adresowanej bezpośrednio adresem adr z: -* zawartością akumulatora A,

-* 8-bitową daną

wynik iloczynu przesyłany jest do komórki wewnętrznej pamięci RAM o adresie adr.

Przykład 1:

Zerowanie wybranych bitów akumulatora: Ay, A3 i Aq:

Maska DB 1000 1001B ;jedynka logiczna na pozycji zerowanego bitu Anll.A:

ANL A.#NOT(Maska) ;A <= A and NOT(Maska), NOT to negacja maski ;AcA and 0111 0110B

dyrektywa asemblera DB ma za zadanie zarezerwowanie 1 bajtu w pamięci kodu programu i wpisanie jako wartości początkowej 1000 1001B. Maska traktowana jc*i jako ciąg zero-jedynko wy, w którym niezerowe wartości pojawiają się na wyróżnionych bitach. Jeśli stan akumulatora A-0DBH-1101 1011H to po wykonaniu programu:

A = 1101 1011B

maska - 1000 1001B

NOT(maska) - 0111 0110B A and NOT(maska) - 01011010B

Przykład 2:

Zerowanie bardziej znaczącej tetrady komórki wewnętrznej pamięci RAM o adresie adr, bity (adr^.ą:

Anl2_adn

ANL adr,#0FH    ;(adr) c= (adr) and 0F11

Jeśli zawartość komórki pamięci (adr) a 4EH a 0100 1110B to po wykonaniu programu stan jest następujący:

(adr) - 0100 HIOB 0FH- 00001111B (adr) and 0FH - 0000 1110B

Mikrokontroler 80(051 - oroeramowame

Rn

Działanie


A c= A +


(adr)

(Ri)

#dana

Adresowanie Mnemonik:



Add 8-bit Data


Struktura bajtów:

Cykle

maszynowe:

rejestrowe:

ADD

A.Rn

0

1

gil

r

r

Tl

1

bezpośrednie:

ADD

A,adr

|o

0

1

0 | 0

1

0

i|

1

1

adr

|

pośrednie:

ADD

A,0R»

1 0

0

1

0 | 0

1

1

i

l

natychmiastowe:

ADD

A.idana

|o

0

1

o | o'

1

0

0

1

dana

Znaczniki: C,

AC, OV

P

Opis dziabnia:

Dodanie do zawartości akumulatora (A) zawartości:

•    rejestru Rn, Rn = R0..R7,

•    komórki wewnętrznej pamięci RAM adresowanej bezpośrednio adresem adr.

•    komórki wewnętrznej pamięci RAM adresowanej pośrednio rejestrem Ri,

Ri =* RO lub Rl,

■ 8 bitowej danej.

Wynik dodawania przesiany jest do akumulatora (A).

Znacznik przeniesienia (O sygnalizuje przekroczenie zakresu liczb całkowitych bez znaku (0..255), a znacznik nadmiaru(OV) przekroczenie zakresu liczb całkowitych ze znakiem (-128..+127).

Przykład:

Obliczenie sumy zawartości rejestrów B (B=9) i R7 (R7=68H=104D) i stałej Const (Const*12H=18D) oraz przesłanie wyniku do komórki wewnętrznej pamięci RAM o adresie 60H:

Mikrokontroler RWOM - nfooramow*n»f


Wyszukiwarka

Podobne podstrony:
14 59 6. InstAjkge logiczne iloczyn przesyłany jest do akumulatora (A), • komórki wewnętrznej pamię
12 o Instrukcje logiczni 61 wynik operacji przesyłany jest do akumulatora, • komórki wewnętrznej pa
10 6. Instrukcje logiczne 63 wynik operacji przesyłany jest do akumulatora (A). • komórki wewnętrzn
10 6. Instrukcję logiczne 63 wynik operacji przesyłany jest do akumulatora (A). • komórki wewnętrzn
14 6. Instrukcje logiczne 69 SWAP A Swap Accumulator Nibblęs Działanie:A7..4 o A3..0 Adresowanie
14 Sprawdzeniem poprawności i dokładności wykonanego planu jest zamknięcie się wieloboku sił w węźl
16 6 Instrukcje logiczne 57 W akumulatorze znajduje się wartość 40H»*64D. a nie poprawna wartość 0C
18 6, Instrukcje logiczne 57 W akumulatorze znajduje się wartość 40H=+64D, a nu.* poprawna wartość
14 Sprawdzeniem poprawności i dokładności wykonanego planu jest zamknięcie się wieloboku sił w węźl
14 6. lnstrukgc logiczne 69 6. lnstrukgc logiczne 69 SWAP A Swap Accumulator Nibblęs Działanie: A7.
16 6 Instrukcje logiczne 57 W akumulatorze znajduje się wartość 40H«*64D. a nie poprawna wartość 0C

więcej podobnych podstron