Untitled50

Untitled50



92

10. Ar\tmetyka mikrokontrolerów

Znacznik C jest przeniesieniem między kolejnymi bajtami. Instrukcje, które wykonują takie operacje są następujące:

ADDC

A,Rn

;A <- A + C + Rn,

Rn=R0.. R7

ADDC

A,adr

;A A + C + (adr)

ADDC

A,@Ri

;A <- A + C + (Ri),

Ri=0,1

ADDC

A,#dana

;A <- A + C + dana

Przy dodawaniu zawartości dwóch par rejestrów R4 (bajt mniej znaczący) i R5 oraz R6 (bajt mniej znaczący) i R7 program musi uwzględnić przeniesienie przy dodawaniu bardziej znaczących bajtów:

Suma R4R5 R6R7:

MOV

A,R4

A «- R4

ADD

A,R6

A <- A + R6,

przeniesienie C zmienione przez sumę R4 + R6

MOV

R6,A

R6 A, mniej znaczący bajt sumy

MOV

A,R5

A <r- R5, rozkazy:

MOV R6,A i MOV A,R5 nie zmieniają C

ADDC

A,R7

A <— A + C + R7,

przeniesienie C z poprzedniego dodawania

MOV

R7,A

R7 <— A, bardziej znaczący bajt sumy

j Instrukcje

ADD

i ADDC zmieniają cztery znaczniki w rejestrzf

1 statusowym PSW:

C, AC, OV i P.

W instrukcjach dodawania znajdują się także bardzo przydatne instrukcje dodawania 1, zwiększania o 1 (inkrementacji) zawartości rejestru lub komórki wewnętrznej pamięci RAM:

INC

A

;A 4- A +1

INC

Rn

;Rn *- Rn +1

INC

adr

;(adr) <- (adr) +1

INC

@Ri

;(Ri) 4- (Ri) +1

oraz jedyna instrukcja arytmetyczna, w której argumentem jest zmieni# 16-bitowa, jaką jest wskaźnikowy rejestr danych DPTR:

INC DPTR    ;DPTR DPTR +1

I Instrukcje INC nie zmieniają znaczników w rejestrze statusowym PSW, wyjątkiem znacznika P jeśli instrukcja zmienia stan akumulatora A.

10.3 Odejmowanie

Operacje odejmowania są mniej rozbudowane w stosunku do operacji dodawania. Występuje tylko jeden typ instrukcji SUBB, odejmowanie / uwzględnianiem znacznika przeniesienia C. Odejmowanie dwóch zmiennych, z których jedna znajduje się zawsze w akumulatorze A, wykonywane jest w następujący sposób:

SUBB

A,Rn

;A <- A - C - Rn,

Rn-RO.. R7

SUBB

A,adr

;A <- A - C - (adr)

SUBB

A,@Ri

;A +- A - C - (Ri),

Ri=0,1

SUBB

A,#dana

-;A <— A - C - dana

Instrukcje SUBB mają wpływ na wrartość czterech znaczników w rejestrze statusowym PSW: C, AC, OV i P.

Znacznik przeniesienia C w operacjach odejmowania sygnalizuje pożyczkę (borrow). Odejmowanie zmiennych 1-bajtowych należy poprzedzić operacją kasowania znacznika przeniesienia C, np. stosując instrukcję CLR C.

Wynik odejmowania przesłany jest do akumulatora A. Znaczniki C, AC i OV przyjmują następujące wartości:

C = 1 jeśli odejmowanie bitu 7 odbyło się z pożyczką,

C = 0 jeśli warunek nie jest spełniony,

AC = 1 jeśli odejmowanie bitu 3 odbyło się z pożyczką,

AC = 0 jeśli warunek nie jest spełniony,

OV = 1 jeśli odejmowanie bitu 6 odbyło się z pożyczką i

odejmowanie bitu 7 odbyło się bez pożyczki lub

jeśli odejmowanie bitu 6 odbyło się bez pożyczki i

odejmowanie bitu 7 odbyło się z pożyczką, OV = 0 jeśli warunki nie są spełnione.

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

Poniższy przykład ilustruje odejmowanie dwóch zmiennych 2-bajtowych zawartych w komórkach pamięci RAM o adresach 30H i 40H. Różnica przesyłana jest w miejsce drugiej zmiennej. Obie wartości traktowane są jako liczby całkowite bez znaku:


Wyszukiwarka

Podobne podstrony:
Untitled50 92 10. Arytmetyka mikrokontrolen Znacznik C jest przeniesieniem między kolejnymi bajtami.
Untitled53 98 10. Ary tmetyka mikrokontrolerów rozpoczynającego się od etykiety Duży jeśli A > 2E
IMG92 decybel Jednostka natężenia jest bel B. 1 B = 10 gW/cm1. Ponieważ bel jest jednostka stosunko
IMG92 (10) Masę atomu lub cząsteczki podaje się w daltonach. Jeden dalton (1 Da) jest jednostką mas
Untitled 10 wykazało, że świadomość fonemów jest konieczna dla osiągnięcia sukcesu w nauce czytania
Untitled48 88 10. Arytmetyka mikrokontrolerów Z przytoczonych form zapisów liczb można wysnuć następ
Untitled49 90 10 Arytmetyka mikrokontrolerem Jeśli wykonane zostanie dodawanie dwóch zmiennych 1-baj
Untitled51 94 10. Arytmetyka mikrokontrolcrói 94 10. Arytmetyka
Untitled52 96 10. Arytmetyka mikrokontrolerów różnić się więcej niż o -128 .. +127 w stosunku do adr
Untitled54 100 10. Arytmetyka mikrokontrolerów! Jeżeli operacje dzielenia dotyczą potęgi 2 (np.
Untitled55 102 10. Arytmetyka mikrokontrolerów Korekcja dziesiętna A7 Ą : 0110 OOOOb Suma: A = 80h =
Untitled53 98 10. Arytmetyka mikrokontrolerów rozpoczynającego się od etykiety Duży jeśli A > 2Eh
Untitled Scanned 22 (7) PLANIMETRIA 25 2.12 R Dany jest trójkąt o bokach długości ó. 10 i 14. Oblicz
23678 Untitled Scanned 10 (10) siebie wzajem. Skoro związek jest bardziej złożony, pa 11 nerzy muszą

więcej podobnych podstron