Заманауи микроконтроллер



Pdf көрінісі
бет40/64
Дата31.12.2021
өлшемі3,85 Mb.
#21593
1   ...   36   37   38   39   40   41   42   43   ...   64
Қосымша Б 
 
A
VR ОТ БАСЫЛЫҚ МИКРОБАҚЫЛАУШЫЛАР  
КОМАНДАСЫНЫҢ ЖҮЙЕСІ 
 
Кесте  
ПБ.1. Арифметикалық және логикалық командасы 
 
Мнемо 
ника 
Операнды 
Сипаттама 
Операция  Жалаулар  Циклде
р саны 
ADD 
Rd,Rr 
00Тасымалсыз қосу 
Rd -
с-Rd + 
Rr 
Z, C, N, V, 


ADC 
Rd.Rr 
00Тасымалмен қосу 
Rd <- Rd + 
Rr+ 
С 
Z, C, N, V, 


ADIW 
Rd,K 
dE{24,26,28,

0} 
0Сөзбен мағынасын 
тікелей қосу 
Rdh:Rdl<—
Rdh:Rdl+ 
К  Z, C, N, V 

SUB 
Rd,Rr 
00Мағынасыз алу 
Rd <- Rd - 
Rr 
Z, C, N, V, 


SUBI 
Rd, 
К 
160Тікелей мағынамен  
алу 
Rd <- Rd - 
К 
Z, C, N, V, 


SBC 
Rd, Rr 
00Кірумен алу 
Rd^Rd-Rr-

Z, C, N, V, 


SBCI 
Rd, 
К 
160Кірумен тікелей 
мағынамен алу 
Rd^Rd-K-C 
Z, C, N, V, 


SBIW 
Rd, 
К 
dE{24,26,28,3 
0} 0Сөзден мағынаны  
тікелей алу 
Rdh: Rdl<-
Rdh: Rdl-K 
Z, C, N, V 

AND 
Rd, Rr 
00AND 
логикалы 
 
орындау 
Rd ^ Rd • 
Rr 
Z, N, V 

ANDI 
Rd, 
К 
160AND 
логикалы  
орындау 
Rd <- Rd • 
К 
Z, N, V 

OR 
Rd, Rr 
031 
OR 
логикалы  
орындау 
Rd <-Rd v 
Rr 
Z, N, V 



93 
 
0ORI 
Rd, 
К 
160Тікелей мағынамен OR 
логикалы орындау 
Rd <-Rd v 
К 
Z, N, V 

EOR 
Rd, Rr 
00OR 
шығаруын  
орындау 
Rd <-Rd Rr 
Z, N, V 

COM 
Rd 
Xd<31 
Бірлікке дейін 
қосымшаны орындау 
Rd«-SFF-
Rd 
Z, C, N, V 

NEG 
Rd 
)Дыбысқа дейін 
қосымшаны орындау 
Rd <- S00 - 
Rd 
Z, C, N, V, 


Мнемо 
ника 
Операн-ды 
Сипаттама 
Операция  Жалаулар  Цикл-р 
саны 
SBR 
Rd, 
К 
160Биттерді регистрде 
орындау 
Rd 
<е Rd v 
К 
Z, N,V 

CBR 
Rd, 
К 
160Биттерді регистрде 
өшіру 
Rd <-Rd • 
(SFF - 
К) 
Z, N, V 

INC 
Rd 
0Инкременттеу 
Rd <-Rd + 

Z, N,V 

DEC 
Rd 
0Декрементеу 
Rd <- Rd - 

Z, N,V 

TST 
Rd 
0Минус немесе нөлге 
дейін тексеру 
Rd<-Rd.Rd 
Z, N, V 

CLR 
Rd 
0Регистрді тазалау 
Rd ^ Rd 
Ф 
Rd 
Z, N, V 

SER 
Rd 
16Регистрдегі барлық 
битті орнату 
Rd <-SFF 
нет 

MUL 
Rd,Rr 
00Барлық санның белгісіз 
бөлуі 
Rl :R0 <- 
Rd*Rr 
Z,C 

MULS 
Rd,Rr 
1616Белгінің есебін барлық 
санға бөлу 
R1:R0 
Rd*Rr 
Z,c 

MULSU 
Rd.Rr 
1616Белгісіз санға белгімен 
санға бөліп барлық 
санды 
RI:R0 C- 
Rd*Rr 
z,c 

FMUL 
Rd,Rr 
1616Бытыралық санды  
белгісізге бөлу 
R1:R0 <- 
(Rd*Rr)«l 
z,c 

FMULS 
Rd.Rr 
1616Белгі есебін бытыра  
санға бөлу 
R1:R0 (Rd*Rr)«l 
z,c 



94 
 
FMULS

Rd.Rr 
1616Белгісіз бытыра санды 
белгілі бытыра санға 
бөлу 
R1:R0 
(Rd*Rr)«l 
z,c 

CP 
Rd, Rr 
00Салыстыру 
Rd-Rr 
Z, 
С, N, V, 


CPC 
Rd, Rr 
00Есеппен тасымалын 
салыстыру 
Rd-Rr-C 
Z, 
С, N, V, 


CPI 
Rd, 
К 
160Константа мен 
салыстыру 
Rd-K 
Z, 
С, N, V, 


 
Кесте  
 
ПБ.2. Бит арқылы операциясы мен жылжу командасы 
 
Мнемо 
ника  Операнды 
Сипаттама 
Операция  Жалаулар Циклдер 
саны 
LSL 
Rd 
0Логикалы солға 
жылжыту 
Rd(n+l)GRd(n), 
Rd(0)G0, 
CGRd(7) 
Z,C,N,V,H 

LSR 
Rd 
0Логикалы оңға  
жылжыту 
Rd(n)GRd(n+l), 
Rd(7) <-0, 
CGRd(O) 
Z,C,N,V 

ROL 
Rd 
0Тасымал арқылы солға 
жылжыту 
Rd(0)  
Rd(n+l)GRd(n), 
CGRd(7) 
Z,C,N,V,H 

ROR 
Rd 
0Тасымал арқылы оңға 
жылжыту 
Rd(7) GC, 
Rd(n)GRd(n+l), 
СG Rd(0) 
Z,C,N,V 

ASR 
Rd 
0Арифметикалық оңға 
жылжыту 
Rd(n)GRd(n+l), 
n=0 .6, 
Rd(0)GC 
Z,C,N,V 

SWAP  Rd0Орындарын ауыстыру 
Rd(3...0) <- 
>Rd(7...4) 
Нет 

В SET 

0Жалауды орнату 
SREG(s)G 1 
SREG(s) 

BCLR 

0Жалаудытазалау 
SREG(s)G 0 
SREG(s) 

Мне 
моника  Операнды 
Сипаттама 
Операция  Жалаулар Циклдер 
саны 


95 
 
SBI 
P,b 
0
0I/O 
регистріне битті 
орнату 
l/0(P,b)G 1 
жоқ 

CBI 
P,b 
0
0I/O 
регистріне битті 
тазалау 
l/0(P,b)G 0 
жоқ 

BST 
Rd.b 
00Т жалау регистрынан 
битті жазу 
TG Rd(b) 


BLD 
Rd,b 
00Бит регистрына Т 
жалауынжүктеу 
Rd(b) G T 
жоқ 

SEC 
 
Тасымал жалауын орнату 
CG 1 
С 

CLC 
 
Тасымал жалауын өшіру 
CGO 
С 

SEN 
 
Жөнсіз мағыналы 
жалауды орнату 
N<-1 


CLN 
Жөнсіз мағыналы 
жалауды өшіру 
NGO 


Мне 
моника Сипаттама 
Операция  Жалаулар Циклдер 
саны 
SEZ 
Жалаудың нөлдік мағынасын 
орнату 
ZC-L 


CLZ 
Жалаудың нөлдік мағынасын өшіру 
Z<-0 


SEI 
Жалаудың глобальды үзілуін 
орнату 
1<-


CLI 
Жалаудың глобальды үзілуін өшіру 
1<-0 


SES 
Жалаубелгісінорнату 
S<- 1 


CLS 
Жалаубелгісін өшіру 
S<-0 


SEV 
Жалау толтырылуын орнату 
V<- 1 


CLV 
Жалау толтырылуын өшіру 
v-eo 


SET 
Т жалауын орнату 
T«-l 
т 

CLT 
Т жалауын өшіру 
т^о 
т 

SEH 
Жалаудың жарты тасымалын 
орнату 
Н<- 1 
н 

CLH 
Жалаудың жарты тасымалын өшіру 
Н<-0 
н 

NOP 
Бос команданы орындау 
 
жоқ 

SLEEP  SLEEP 
тәртібін орнату 
 
жоқ 

WDR 
Күзеттаймерінорнату 
 
жоқ 

 


96 
 
Кесте 
ПБ.З. Мәліметтер алмасу командасы 
 
Мнемо 
ника 
Операнды 
Сипаттама 
Операция  Жалаулар Циклдер 
саны 
ELPM 
 
RO 
регистрін бағдарлама 
жадынан кең ауқымды 
жүктелу 
R0<- 
(Z+RAMPZ) 
жоқ 

MOV 
Rd.Rr 
00Регистрдік өшіру 
Rd^Rr 
жоқ 

LDI 
Rd,k 
160Тікелей мағынаны 
жүктеу 
Rd<-K 
жоқ 

LDS 
Rd,k 
00ОЗУ-дан жүктеу 
Rd^(k) 
жоқ 

LD 
Rd.X 
0Косвенно жүктеу 
Rd (X) 
жоқ 

LD 
Rd,X+ 
0Постинкрементпен 
косвенно жүктеу 
Rd X+1 
жоқ 

LD 
Rd,X- 
0Преддекрементпен 
косвенно жүктеу 
X«-X-l, Rd -e- 
(X) 
жоқ 

LD 
Rd,Y 
0Косвенно жүктеу 
Rd«-(Y), 
жоқ 

LD 
Rd,Y+ 
0Постинкрементпен 
косвенно жүктеу 
Rd<-(Y), Y<-
Y+l 
жоқ 

LD 
Rd,Y 
0Преддекрементпен 
косвенно жүктеу  
Y<-Y-l, Rd <- 
(Y) 
жоқ 

LDD 
Rd,Y+q 
00Ауыстырумен косвенно 
жүктеу 
Rd<-(Y+q) 
жоқ 

LD 
Rd,Z 
0Косвенно жүктеу 
Rd  (Z) 
жоқ 

LD 
Rd,Z+ 
0Постинкрементпен 
косвенно жүктеу 
Rd (Z), Z 
жоқ 

LD 
Rd,-Z 
0Преддекрементпен 
косвенно жүктеу 
Z^-Z-l, Rd<-
(Z) 
жоқ 

LDD 
Rd,Z+q 
00Ауыстырумен косвенно 
жүктеу 
Rd  (Z+q) 
жоқ 

STS 
k,Rr 
00ОЗУ-ға тікелей жүктеу 
(k) <-Rr 
жоқ 

ST 
X,Rr 
0Косвенно жазу 
(X) Rr 
жоқ 



97 
 
ST 
X+,Rr 
0Постинкрементпен 
косвенно жүктеу 
(X) -eRr, X^X+ 

жоқ 

ST 
-X,Rr 
0Преддекрементпен 
косвенно жүктеу 
X^-X-l, (X) Rr 
жоқ 

ST 
Y.Rr 
0Косвенно жазу 
(Y) ^-Rr 
жоқ 

ST 
Y+,Rr 
0Постинкрементпен 
косвенно жүктеу 
(Y) <- Rr, 
Yжоқ 

STD 
Y+q,Rr 
00Ауыстырумен косвенно 
жүктеу 
(Y+q)<-Rr 
жоқ 

ST 
Z,Rr 
0Косвенно жазу 
(Z) «-R
г 
жоқ 

ST 
Z+,Rr 
0Постинкрементпен 
косвенно жүктеу 
(Z) «- Rr, Z«-
Z+ 1 
жоқ 

ST 
-Z,Rr 
0Преддекрементпен 
косвенно жүктеу 
Z«-Z-l, (Z) ^ Rr 
жоқ 

STD 
Z+q,Rr 
00Ауыстырумен косвенно 
жүктеу 
(Z+q)«-Rr 
жоқ 

LPM 
 
Бағдарлама жадынан 
байтты жүктеу 
RO «- (Z) 
жоқ 

IN 
Rd,P 
00
I/O 
портынан регистрға 
мәліметті жүктеу 
Rd«-P 
жоқ 

OUT 
P,Rr 
00
Регистрдан I/O портына 
мәліметті жүктеу 
P«-Rr 
жоқ 

PUSH 
Rr 
0Стектерегистрді сақтау 
STACK «-Rr 
жоқ 

 
Кесте  
ПБ.4. Ауысу командасы 
 
Мнемо 
ника 
Операнды 
Сипаттама 
Операция  Жалаулар  Циклде
р саны 
RJMP 
K -2KҚатыстылық өту 
PC 
^РС + к + 

жоқ 

LJMP   
Косвенно өту 
PC«-Z 
жоқ 

JMP 
k0Өту 
PC «-
к 
жоқ 

RCALL  k-2KҚатыстылық 
бағдарламаны 
шақыру 
PC «- PC 
+ к 
+ 1 
жоқ 

ICALL   
Косвенно 
?c<-z 
жоқ 



98 
 
бағдарламаны 
шақыру 
CALL  K 0Бағдарламаның ұзақ 
шақыруын орындау PC «-к 
жоқ 

RET 
 
Бағдарламадан 
оралу 
PC ^ STACK 
жоқ 

RETI 
 
Үзілуден оралу 
PC «- 
STACK 


CPSE 
Rd,Rr 
00Егер бірдей болса, 
салыстырып жіберу 
If Rd=Rr 
then PC «- 
PC + 2 (or 3) 
жоқ 
VJ3 
SBRC 
Rr,b 
00Жіберу, егер 
регистрде бит 
өшірілсе 
if Rr(b)=0 
then PC © 
PC+ 2 (or 3) 
жоқ 
4/3 
SBRS 
Rr,b 
00Жіберу, егер 
регистрде бит 
орнатылған болса 
IfRr(b)=l 
then PC ©PC 
+ 2 (or 3) 
жоқ 
т 
SBIC 
P,b 
0
0Жіберу, егер I/O 
регистрде бит 
өшірілсе 
if I/O P(b)=0 
then PC © 
PC + 2 (or 3) 
жоқ 
Х
МЪ 
SBIS 
P,b 
00Жіберу, егер I/O 
регистрде бит 
орнатылған болса 
If I/O P(b)=l 
then PC 
©PC+  2 (or 
3) 
жоқ 
т 
BRBS 
s,k 
0-64Өту, егер регистр 
статусында бит 
орнатылған болса 
if SREG(s)=l 
then PC © 
PC + k + 1 
жоқ 
и 
BRBC 
s,k 
0-64Өту, егер регистр 
статусында бит 
өшірілсе 
if 
SREG(s)=0 
then PC © 
PC+ k +1 
жоқ 
54 
BREQ 
k-64Өту, егер 
бірдей болса 
if Rd=Rr  
(Z= 1)  then 
PC © PC+  k 
+ 1 
жоқ 
54 
BRNE 
k-64Өту, егер бірдей 
емес болса 
if 
Rd*Rr(Z=0) 
then PC«-
PC+ k+ 1 
жоқ 
йя 
BRCS 
K -64Өту, егер жалау 
тасымалы 
орнатылса 
if C=1 then 
PC © PC+  k 
+ 1 
жоқ 
1/2 
BRCC 
K -64Өту, егер жалау 
тасымалы өшірілсе 
if C=0 then 
PC © PC+  k 
жоқ 
1/2 


99 
 
+ 1 
BRSH 
К-64Өту, егер тең 
немесе көп болса 
if 
Rdthen 
PC©PC+ k+ 

жоқ 
1/2 
BRLO 
k-64Өту, егер аз болса 
if Rd(0=1) then 
PC ©PC+ k + 

жоқ 
1/2 
BRMI 
k-64Өту, егер алу болса  ifN=l then 
PC <- PC + k 
+ 1 
жоқ 
1/2 
BRPL 
k-64Өту, егер қосу 
болса 
f N=0 then 
PC PC + k 
+ I 
жоқ 
1/2 
BRGE 
k-64Өту, егер көп 
немесе тең 
болса(белгі 
тіркеуімен) 
f Rd>Rr 
(N©V=0) 
then PC •© 
PC + k + 1 
жоқ 
1/2 
BRLT 
k-64Өту, егер аз 
болса(белгімен) 
f Rd(N©V=l)then 
PC ©PC + k+ 

жоқ 
1/2 
BRHS 
С64жартылай 
тасымалы 
орнатылса 
if H=1 then 
PC © PC + k 
+ 1 
жоқ 
1/2 
BRHC 
64Өту, егер жалау 
жартылай 
тасымалы өшірілсе 
f H=0 then 
PC © PC + k 
+ 1 
жоқ 
1/2 
BRTS 
64Өту, егер Т жалауы 
орнатылса 
f T=1 then 
PC © PC + k 
+ 1 
жоқ 
1/2 
BRTC 
64Өту, егер Т 
жалауыөшірілсе 
f T=0 then 
PC © PC + k 
+ 1 
жоқ 
1/2 
BRVS 
k-64Өту, егер жалау 
толуы орнатылса 
if V=1 then 
PC  PC + 
k + 1 
жоқ 
1/2 
BRVC 
k -64Өту, егержалау 
толуыөшірілсе 
if V=0 then 
PC PC + k + 

жоқ 
1/2 
BRIE 
k-64Өту, егер 
глобальды үзілу 
рұқсат етілсе 
if 1=1 then 
PC PC+ k + 

жоқ 
1/2 
BRID 
k-64kӨту, егер 
глобальды үзілу 
рұқсат етілмесе 
if 1=0 then 
PC PC+ k + 

жоқ 
1/2 


Достарыңызбен бөлісу:
1   ...   36   37   38   39   40   41   42   43   ...   64




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет