O’tkazish buyruqlar guruhi

O’tkazish buyruqlar guruhi
» guruhi
№ Mnemokodlar
Amal
Mashina
davri
Mashina
takti
Formati Boshqaruvchi
registri,
so’zni
belgilari
1
2
3
4
5
6
7
1 MOY R1 R2 (R1) (R2)
1
5
1
Hamma
belgilar
o’z
qiymatilarini
saqlab qoladi
2 XSNS
(NL) (DE)
1
4
1
3 SRNL
(SR) (NL)
1
5
1
4 MOY R, M
(R) M(NL)
2
7
1
5 MOY M, R
M(NL) (R)
2
7
1
6 STAX RR
M(KR) (A)
2
7
1
7 LDARR
(A) M(KR)
2
7
1
8 LDA A16
(A) M(A16)
4
13
3
9 STA A16
M(16) (A)
4
13
3
10 LNLD A16
(NL) M(A16)
5
16
3
11 SNLD A16 M(A16) (N1)
5
16
3
12 MYI R, D8 (R) 08
2
7
2
13 LXI RR,D16 (KR) D16
3
10
3
14 MYI M, D8 M(N) D8
3
10
2
15 RUSN RR
M(SR-1) (RRN)
3
11
1
16 ROR RR
(RRL) M(SR)
3
11
1
17 XTNL
M(SR-1) (L)
5
18
1
18 IN PORT
(A) I(PORT)
3
10
2
19 OUT PORT O(PORT)(A) (A) 3
10
2
Arifmetik amallarning buyruqlar guruhi
1
2
3
4
5
6
7
20 ADD R (A) (A )+(R)
1
4
1 S, Z, AC, P, CY
21 ADC R
(A) (A) +(R) +CY
1
4
1
— « —
22 SUB R
(A) (A)-(R)
1
4
1
— « —
23 SBB R
(A) (A)-(R)-CY
1
4
1
— « —
24 INPR
(R) (R)+l
1
5
1 S, Z, AC, P
25 DCRR
(R) (R)-l
1
5
1
— « —
26 DADRP (HL) (HL)+(RP)
z ,
10
1 CY
27 IHX RP (RP) (RP)+1
1
5
1
— « —
28 DCXRP (RP) (RP)-l
1
5
1
— « —
29 ADD M (A) (A)+M(HL)
2
7
1 S, Z, AC, P CY
30 ADC M (A) <-(A)+M(HL)+CY
2
7
1
— « —
31 SUB M (A) (A)-M(HL)
2
7
1
— « —
32 SBB M
(A) (A)-M(HL)-
CCYCY
2
7
1
— « —
33 INRM
M(HL) M(HL)+1
3
10
1 S, Z, AC, P
34 DCRM
M(HL) M(HL)-1
3
10
1
— « —
35 ADID8
(A) (A)+D8
2
7
2
S, Z, AC, P, CY
36 ACID8
(A) (A)+D8+CY
2
7
2
— « —
37 SUID8
(A) (A)-D8
2
7
2
—- « —
38 SBID8
(A) (A)-D8-CY
2
7
2
— « —
39 DAA
Akkumulyatorga
o’nlik
koorrektsiya
1
4
1
Logik amallarning buyruqlar guruhi
1
2
3
4
5 6
7
40 ANA R (A) (A)AND(R)
1 4 1
S,Z,P,AC*,CY=0
41 XRA R (A) (A) XOR(R)
1 4 1
S,Z,P,AC=CY=0
42 ORA R (A) (A) OR(R)
1 4 1
— « —
43 CMP R (A) (R)
1 4 1
S,Z,AC,P,CY
44 RLC
chapga davrli surish
1 4 1
CY A(7), AC=0
45 RRC
o’ngga davrli surish
1 4 1
CY A(0), AC=0
46 RAL
A(0) CY orqali
o’ngga
davrli surish
1 4 1
CY A(7), AC=0
47 RAR
A(7)
CY
orqali
o’ngga
davrli surish
1 4 1
CY A(0), AC=0
48 CAM
(A) INY(A)
1 4 1
CY A(0), AC=0
49 ANAM (A) (A)AND M(HL)
2 7 1
S,Z,P,AC,CY=0
50 XRAM (A) (A)XORM(HL)
2 7 1
S,Z,P,AC=CY=0
51 ORAM (A) (A) OR M(HL)
2 7 1
S,Z,P,AC=CY=0
52 CMP M (A) M(HL)
2 7 1
S,Z,P,AC,CY=0
53
ANI D8
(A)
(A) AND D8
2 7 2
S,Z,P,AC*,CY=0
54
XRI D8
(A) (A) XOR D8
2 7 2
S,Z,P,AC=CY=0
55
ORID8
(A) (A) OR D8
2 7 2
-
«-
56
CPI D8
(A) (D8)
2 7 2
S,Z,P,AC,CY
57
CMC
(CY) INY(CY)
1 4 1
CY
58
STC
(CY)
микропроцессоров
1 4 1
CY=1
Uzatishni bosh
qaruvchi buyruqlar to’plami
1
2
3
4
5 6
7
59
PCHL
(PCH) (H)
1 5
1 Hamma
belgilar
o’z
qiymatlarini
saqlab qoladi
60
JMP A16
(PC) A16
61
J(COND)16 Agarda shart
bajarilsa (PC)
A16
bo’lmasa (PC)
(PC)+1
3
5
10
17
3
3
62
CALL A16 M(SP-1) (PHC)
M(SP-2) (PCL) (SP)
(SP)-2 (PC)
A16
Hamma belgilar
o’z qiymatlarini
saqlab qoladi
63
C(CONDA)
A16
Agarda shart
bajarilsa 62-
buyruqqa qarang,
bo’lmasa (PC)
(PC)+1
3
5
11
17
-
3
64
RST N
M(PS) (PC)
(PC) N*8
3
3
11
11
-
1
65
RET
(PCL) M(SP)
(PHC) M(SP) +121
(SP) (SP)+2
3 10 1
66
R(COND)
Agarda shart
bajarilsa 65-
buyruqqa qarang,
bo’lmasa (PC)
(PC)+1
3
1
11
3
1
Maxsus buyruqlar guruhi
1
2
3
4
5 6
7
67 EI
Va
qtincha to’xtashga
ruhsat berish (trigger
RPR) 1
1 4
1
68 DI
Vaqtincha to’xtashni
man etish (tigger
RPR) 0
1 4
1
69 HLT
To’xtash
1 7
1
70 NOP
Bekor qilish
1 4
1
Holat
registriningqiymati
Holat
registriningqiymati
S Z AC P CY
02
03
06
07
12
13
16
17
46
47
56
57
82
83
86
87
92
93
96
97
- - - -
CY
P
P,CY
AC
AC,CY
AC,P
AC,P,CY
Z,P
Z,P,CY
Z,AC,P
Z,AC,P,CY
S
S,CY
S,P
S,P,CY
S,AC
S,AC,CY
S,AC,P
S,AC,P,CY
S
– Ishora belgisi,
natijaning katta
razryadning qiymatini
oladi
Z
– nol belgisi
(agarda natija nolga
teng bo’lsa Z=1
bo’lmasa Z=0)
AS
– qo’shimcha
ko’chirish belgisi.
Mabodo bayt
tetradalari orasida
ko’chirish bo’lsa
AS=1 bo’lmasa AS=0
P
– juftlik belgisi.
Mabodo, qiymatni
baytidi birlarning
soni juft bo’lsa R=1,
bo’lmasa R=0
CY
– ko’chirish
(qarz) belgisi.
Mabodo buyruq
bajarilganda katta
razryad tufayli
ko’chirish paydo
bo’lsa yoki katta
razryadga qarz
berilsa, u holda
CY=1, bo’lmasa
CY=0 bo’ladi
Ikki baytli buyruqlar xotira yacheykalariga bevosita adreslash usuli orqali amalga
oshiriladi, uch ba
ytli buyruqlar esa xotira yacheykalariga to’g’ri adreslash usuli
orqali amalga oshiriladi.
1-jadvalda quyidagi qisqartirilgan belgilar ishlatilgan:
<
— — o’tkazish amali;
<
— > — almashish amali;
AND
— kon’yuksiya (I);
OR
— dizyunksiya (ILI);
XOR
— modul 2 bo’yicha qo’shish (ILI ni inkor etish);
INV
— inversiya (aylantirish);
R
—A,B,C,D,E,H,L registlaridan bittasi;
RP
— Juft B,D,H yoki SP registrlaridan bittasi;
RP1
— V yoki D juft registrlaridan bittasi;
RPH
— juft registrining katta registri;
RPL
— juft registrining kichik registri;
M
— HL registri orqali vositali adreslanadigan xotira;
PORT
— kiritish-chiqarish portining 8-razryadli adresi;
N1
— sakkizta 0,1,2,3,4,5,6,7 vaqtincha uzishning bittasi;
D8
— sakkizta razryadli bevosita operand;
D16
— o’n olti razryadli bevosita operand;
A16
— o’n olti razryadli adres;
(R)
— registrning qiymati;
(RP)
— juft registrining qiymati;
M(RP)
— RP juft registrini adresi buyicha saqlanadigan xotira yacheykasining
qiymati;
I(PORT)
— (PORT) adresidagi kiritish portini qiymati;
O(PORT)
— PORT adresidagi chiqarish portini qiymati;
COND
— ushbu sakkizta shartning bittasi;
NZ
— nol bo’lmagan natija (z#0);
Z
— nolli natija (Z=l);
NC
— katta razryaddan o’tkazishni (qarzni) katta razryadga ko’chirishni
yo’qligi (CY=0);
S
— ko’chirishning yo’qligi;
RO
— qiymatda birlarning sonini toqligi (R=0);
RE
— qiymatda birlarning sonini juftligi (R=0);
R
— "musbat" (S=0);
M
— "manfiy" (S=l);
MTS
— mashina davrining miqdori;
MT
— mashina taktining miqdori;
F
— baytlarda buyruqlarnig formati.
Programma tuzish uchun misollar.
Ikkilik datchigini holatini so’rash programmasini tuzishga misol. 1-rasmda
ikkilik datchigini kontaktlarini mikroprotsessor kontrollerini kirish portiga ulanishi
ko’rsatilgan. Kontakt ulanmagan holda D5 kirishda 1 signali mavjud bo’ladi,
aks holda D5 =
0 bo’ladi.
Kontrollerni boshqaruvchi programmasini ma’lum qismida 4-portni D5
kirishidagi signalni so’rash, datchik signaliga mos ravishda, boshqarishga D5 = 0 da
LABELA belgisi orqali va D5 =1 da LABELB belgisi orqali qiymatni yuborish
zarurdir [2].
Programma INPKEY
nomi bilan nomlanib programma boshlang’ich
komandasining belgisi sifatida ishlatiladi. Bu qism programmasiga CALL INPKEY
komandasi orqali murojaat etish mumkin. Programma matni quyida keltirilgan:
a)
b)
1-r
asm. Ikkilik datchigini so’rash sxemasi (a) va algoritmi (b).
INPKEY IN 04H
4-portdan
akkumlyatorga
kiritish
ANI 20H
D5 dan
tashqari
kiritilgan
baytlarni barcha razryadlarni
niqoblash
D5 dan
tashqari
baytlarni
kiritish
JZ LABEL A
fragmentga o’tish
LABEL A, agar D5=0,
aks holda
keyingi komandani bajarish
LABEL B:
B fragmentining boshlanishi
LABEL A:
A fragmentining boshlanishi
Boshqaruvchi signalni tashkil etish programmasini tuzishga misol
-
rasmda kontrollerni boshqaruvchi ob’ektni biron bir bajaruvchi mexanizmga
ma’lumotlarni chiqarish porti orqali ulanishi ko’rsatilgan.
2-rasm. Boshqaruvchi signalni tashkil etish sxemasi.
Faraz qilamiz berilgan bajaruvchi mexanizm “o’chirish-yoqish” prinsipi
asosida ishlaydi va kontrollerni ikkilik chiqish signali orqali boshqariladi.
Bu turdagi boshqaruvchi signalni tashkil etish juda oddiy bo’lib ikkita
komandadan iborat.
Bajaruvchi mexanizmni yoqish uchun:
-ON: MVI A, 02H; akkumlyatorni nolga keltirish
-OUT 03H; 3 portga boshqaruvchi signal baytni berish
Bu holda 3 portni qolgan yettita chiqishga boshqa bajaruvchi mexanizmlar
ulansa boshqaruvchi so’z baytni tashkil etiladi, bunda bajaruvchi mexanizmlarni
o’chirib-yoqilishiga mos ravishda har bir razryadli 0 va 1 signali tashkil etiladi.
|