J陑yk polski Historia WOS Sztuka (plastyka i muzyka) J陑yki obce Religia i etyka
Matematyka Fizyka i astronomia Chemia Biologia Przyroda Geografia Technika Informatyka
Przedmioty zawodowe WF ie縦i edukacyjne Wychowanie przedszkolne Nauczanie zintegrowane Wi阠ej
Start arrow Lista rozkaz贸w
Rozkazy M535 Drukuj Email
Wpisa艂: Robert Stasiak   
22.09.2007.

Zestaw rozkazów mikrokontrolera zosta艂 zoptymalizowany pod k膮tem zastosowa艅 w uk艂adach steruj膮cych. Rozbudowane mo偶liwo艣ci operacji na pojedynczych bitach s膮 cech膮 charakterystyczn膮 zestawu instrukcji tego mikrokontrolera. Poszczególne rozkazy okre艣laj膮 rodzaj wykonywanej czynno艣ci, a ich parametry precyzuj膮 obiekt (obiekty), na których czynno艣膰 ta ma by膰 wykonana, lub adres pod który ma nast膮pi膰 skok. Rozkazy mikrokontrolera mo偶na podzieli膰 na nast臋puj膮ce grupy:

- operacje arytmetyczne (dodawanie, odejmowanie, inkrement o 1, dekrement o 1, mno偶enie i dzielenie - operacje te s膮 wykonywane na danych 8-bitowych, przy czym operacje dodawania i odejmowania ustawiaj膮 flag臋 przeniesienia);

- operacje logiczne (iloczyn, suma, suma modulo 2, zerowanie, negowanie oraz przesuni臋cia w lewo i prawo wykonywane na ca艂ych bajtach oraz operacje zerowania, ustawiania bitu, negowanie, kopiowanie, suma logiczna i iloczyn logiczny wykonywane na poszczególnych bitach);

- przesy艂anie danych (kopiowanie danych pomi臋dzy wszystkimi rejestrami oraz wpisywanie do nich podanych warto艣ci);

- sterowanie prac膮 programu (skoki, skoki warunkowe oraz wywo艂ania i powroty z podprogramów).

 

List臋 rozkazów mikrokontrolera M535 (8051) przedstawia tabela:

 

Lista rozkazów M535
OperacjaMnemonikArgumenty
Operacje arytmetyczne
Dodaj 
ADD
A, Rr A,dirct A,@Ri A,#data
Dodaj z przeniesieniem
ADDC
A, Rr A,dirct A,@Ri A,#data
Odejmij
SUBB
A, Rr A,dirct A,@Ri A,#data
Zwi臋ksz o jeden
INC
A Rr dirct @Ri
Zmniejsz o jeden
DEC
A Rr dirct @Ri
Mnó偶
MUL
AB wynik: A - low, B - high 
Dziel
DIV
AB A - wynik, B - reszta
Poprawka dziesi臋tna
DA
A
Operacje logiczne
Iloczyn logiczny
ANL
A
Suma logiczna
ORL
A
Suma logiczna modulo 2
XRL
A
Zeruj
CLR
A
Neguj
CPL
A
Obrót w lewo
RL
A
Obrót w prawo
RR
A
Obrót w lewo przez przeniesienie
RLC
A
Zamie艅 4 bity (hi-lo)
SWAP
A
Operacje logiczne na bitach
Zeruj
CLR
C bit
Ustaw
SETB
C bit
Neguj
CPL
C bit
Iloczyn logiczny
ANL
C, bit C, /bit
Suma logiczna
ORL
C, bit C, /bit
Kopiuj
MOV
C, bit bit, C
Przesy艂anie danych
Kopiuj do akumulatora
MOV
A, Rr A, dirct A, @Ri A, #data
Kopiuj do rejestru
MOV
Rr, A Rr, dirct Rr, #data
Kopiuj do pami臋ci wewn臋trznej
MOV
dirct, A dirct, Rr dirct, dirct dirct, @Ri 
dirct, #data
Kopiuj do adresu po艣redniego
MOV
@Ri, A @Ri, dirct @Ri, #data
Kopiuj
MOV
DPTR, #data16
Pami臋膰 programu
MOVC
A, @A+DPTR A, @A+PC
Zewn臋trzna pami臋膰 danych
MOVX
Zamie艅
XCH
Zamie艅 m艂odsze 4 bity
XCHD
Zapisz na stos
PUSH
Oczytaj ze stosu
POP
Skoki
Podprogramy
LCALL
ACALL
RET
RETI
Skok
LJMP
AJMP
SJMP
JMP
Skok warunkowy
JZ
JNZ
JC
JNC
Skok warunkowy od bitu
JB
JNB
JBC
Porównaj i skocz je艣li ró偶ne
CJNE
Zmniejsz i skocz je艣li ró偶ne od 0
DJNZ
Nie rób niczego
NOP

 

Obja艣nienia:
Rr – rejestry R0 ... R7;
direct – wewn臋trzna pami臋膰 RAM;
@Ri – adres po艣redni R0 lub R1;
bit – bity adresowalne RAM; /bit – negacja bitu;
#data – sta艂a 8-bitowa;
#data16 – sta艂a 16-bitowa;
rel – adres wzgl臋dny –128 ... +128;
addr16 – adres w 64 kB;
addr11 – adres w stronie 2 kB.
Zmieniony ( 22.09.2007. )
 
« poprzedni artyku艂   nast臋pny artyku艂 »