Uchta adresli buyruqlar
Bitta yoki ikkita operand uchun xotira mazillarini ko’rsatishingiz kerak.
U umumiy registr tashkil etuvchisi deb ham yuritiladi.
Buyruq: ADD R1, R2, R3
Мikro operatsiya: R1 ← R2 + R3
Hisoblash X=(A+B)*(C+D)
ADD R1, A, B R1 ← M[A] + M[B]
ADD R2, C, D R2 ← M[C] + M[D]
MUL X, R1, R2 M[X] ← R1 * R2
“registr – registr” arxitekturasi
Buyruq to’plami:
add R1, R2, R3 sub R1, R2, R3 mul R1, R2, R3
load R1, &A store R1, &A move R1, R2
Masala : A*B - (A+C*B)
load R1, &A
load R2, &B
load R3, &C
mul R7, R3, R2 /* C*B
add R8, R7, R1 /* A + C*B
mul R9, R1, R2 /* A*B
sub R10, R9, R8 /* A*B - (A+C*B)
“xotira – xotira” arxitekturasi
Buyruq to’plami:
(3 operand) add A, B, C sub A, B, C mul A, B, C
(2 оperand) add A, B sub A, B mul A, B
“registr– xotira” arxitekturasi
Ikki adresli buyruq
Ikkita adres registridan yoki ikkita xotira adreslaridan foydalanadi.
Birinchi operand adres belgilangan adres bilan mos kelishi taxmin qilinadi
Buyruq: ADD R1, R2
Mikro operatsiya: R1 ← R1 + R2
Hisoblash: X=(A+B)*(C+D)
MOV R1, A R1 ← M[A]
ADD R1, B R1 ← R1+M[B]
MOV R2, C R2 ← M[C]
ADD R2, D R2 ← R2+M[D]
MUL R1,R2 R1 ← R1*R2
MOV X,R1 M[X] ← R1
“registr– xotira” arxitekturasi
Buyruq to’plami:
add R1, A sub R1, A mul R1, B
load R1, A store R1, A
Misol : A*B - (A+C*B)
load R1, A
mul R1, B /* A*B
store R1, D
load R2, C
mul R2, B /* C*B
add R2, A /* A + CB
sub R2, D /* AB - (A + C*B)
“Аkkumulyator” arxitekturasi
Bitta adresga ega buyruqlar
Yagona adres ishlatiladi, yoki ro'yxatga olish nomi yoki xotira adresli.
Bitta akkumulyatorni tashkil qilish
barcha ma'lumotlarni qayta ishlash uchun AC ishlatiladi.
Buyruq: ADD X, М mikro operatsiya: AC ← AC + M[X]
Hisoblash: X=(A+B)*(C+D)
LOAD A AC ← M[A]
ADD B AC ← AC + M[B]
STORE T M[T] ← AC
LOAD C AC ← M[C]
ADD D AC ← AC + M[D]
MUL T AC ← AC * M[T]
STORE X M[X] ← AC
“Аkkumulyator” arxitekturasi
Buyruq to’plami:
add A, sub A, mult A, div A, . . .
load A, store A
Misol : A*B - (A+C*B)
load B
mul C
add A
store D
load A
mul B
sub D
“Stek” arxitekturasi Vaqtinchalik saqlash holati
Ohirgi kelgan birinchi ketadi (last in first out)
“Stek” arxitekturasi Nolinchi adresli buyruqlar
Arifmetik operatsiya to'plamdan ikkita operandni chiqaradi va natijani qo'shadi
Hisoblash X=(A+B)*(C+D) “Stek” arxitekturasi
Buyruq to’plami:
add, sub, mul, div, . . .
push A, pop A
Misol : A*B - (A+C*B)
push A
push B
mul
push A
push C
push B
mul
add
sub
C = A + B to'rt klassli (sinfli) to`plam uchun kodlar ketma-ketligi: Intel 8086 protsessori registrlari Intel 8086 protsessorida jami 14 ta 16-bitli registr mavjud:
8 ta umumiy vazifali registr (AX, BX, CX, DX),
2 indeks registri (SI, DI),
2 ko’rsatgich (BP, SP),
4 segment registrlari (CS, SS, DS, ES),
dastur hisoblagichi yoki buyruq ko’rsatgichi (IP) va bayroq registri (FLAGS, 9 ta bayroqni o’z ichiga oladi).
Bunday holda, ma’lumotlar registrlari (AX, BX, CX, DX) ularning pastki yarmini (registrlari AL, BL, CL, DL) va yuqori qismini (registrlari AH, BH, CH, DH) murojaat qilishga imkon beradi.
TELEKOMMUNIKATSIYADA BOSHQARUV TIZIMLARINING APPARAT VA DASTURIY TA`MINOTI KAFEDRASI
Dostları ilə paylaş: |