Mikroprosessoru idarə edən əmrlər
Mikroprosessoru idarə edənəmrləri üç qrupa bölmək olar:
- bayraqları idarəedən əmrlər;
- xarici sinxronlaşdırma əmrləri;
- boş hərəkət əmrləri.
STC (SeT Carry flag-köçürmə bayrağını tənzimləmə), CLC (CLear Carry flag- köçürmə bayrağını sıfırlaşdırma), CMC (CoMplementCarry flag - köçürmə bayrağını inversiya etmə), STD(Set Direction flag – istiqamət bayrağını tənzimləmə), CLD (CLear Direction flag – istiqamət bayrağını sıfırlaşdırma), STİ (SeT Interrupt flag-kəsilmə bayrağını tənzimləmə), CLİ(CLear Interrupt flag- kəsilmə bayrağını sıfırlaşdırma) əmrləri bayraqları idarə edir.
STC əmri köçürmə bayrağına vahid yazır (CF=1), yəni kiçik hissədən böyük hissəyə köçürmə və ya böyük hissədən borc almanı təyin edir.
CLC əmri isə STC-nin əksi olub, köçürmə bayrağına sıfır yazır (CF=0).
CMC əmri CF köçürmə bayrağını inversiya edir, yəni CF-in qiyməti sıfır isə onu vahid, vahid isə sıfır ilə əvəz edir.
STD əmri istiqamət bayrağına vahid yazır (DF=1). CLD əmri isə əksinə, istiqamət bayrağına sıfır yazır (DF=0). Məsələn:
1) MOV CX,10 CLD REP MOVS A1, A2
Əmrlərin icrası zamanı DF=0 olduğuna görə A2 sətrinə kiçik bayt kimi baxılır və A1 sətrinə göndərilmə təşkil olunur (yəni, A2, A2+1, ...,A2+9 uyğun olaraq A1, A1+1, ...,A1+9 göndərilir).
2) MOV CX,10 STD REP MOVS A1, A2
Əmrlərin icrası zamanı DF=1 olduğuna görə A2 sətrinə böyük bayt kimi baxılaraq A1 ətrinə göndərilmə təşkil edilir (yəni, A2, A2-1, ...,A2-9A1, A1-1, ...,A1-9).
CLI kəsilmə bayrağına sıfır yazır (İF=0). STİ isə əksinə kəsilmə bayrağına vahid yazır (İF=1). Bu qiymətlər əsasında mikroprosessor xarici qurğulardan gələn kəsilmə siqnallarını analiz edərək qərar qəbul edir. Belə ki, əgər IF=0 olarsa, mikroprosessor xarici qurğulardan gələn kəsilmə siqnallarını emal etmir, əks halda isə emal edir.
Xarici sinxronlaşdırma əmrlərinə aşağıdakı əmrlər: HLT (HaLT - dayandırma), WAIT (WAIT - gözləmə), ESC (ESCape - çıxma ) və LOCK (LOCK the bus - şini qapama) daxildir.
HLT əmri mikroprosessoru dayanma vəziyyətinə gətirir ki, bu zaman o heç bir əmrə təsir göstərmir, yəni mikroprosessor heç bir iş görmür. Mikroprosessoru dayanma vəziyyətindən xarici kəsilmələrin köməyi ilə çıxarmaq olar. HLT əmrindən mikroprosessoru gözləmə vəziyyətinə (məsələn, klaviaturadan simvolun daxil edilməsini gözləmə) gətirmək üçün istifadə etmək olar.
WAIT əmri mikroprosessorun işini müvəqqəti dayandırırır. Mikroprosessorun sürəti xarici qurğuların işləmə sürətindən böyük olduğuna görə, xarici qurğudan verilənlərin daxil – xaric edilməsi zamanı mikroprosessor, WAIT əmrinin köməyi ilə gözləmə vəziyyətinə gətirilir. Belə olan halda xarici qurğu işini qurtarana qədər mikroprosessor gözləmə vəziyyətində qalır və başqa əmrləri emal etmir.
ESC əmri idarəni mikroprosessor sistemindəki başqa prosessora ötürməyə imkan verir. Ümumi yazılışı aşağıdakı kimidir:
ESC xarici_kod, mənbə
Burada xarici kod altı mərtəbəli bilavasitə operand, mənbə isə registr və ya dəyişən ola bilər. Bu əmr, adətən, soprosessora əmri ötürməyə imkan verir və bu halda xarici kod – soprosessorun əməliyyat kodu, mənbə isə onun operandıdır.
Prefksli LOCK əmri icra olunduğu vaxt, əgər sistemdə başqa prosessor iştirak edirsə, ardıcıl olaraq verilənlər şini bloklaşdırılır və prefksliLOCK əmri öz işini qurtarana qədər yaddaşa başqa prosessor müraciət edə bilmir.
NOP (NO oPeration – əməliyyat kodudur) əmri ilə mikroprosessor heç bir əməliyyatı yerinə yetirmir, yalnız (IP/EIP) əmrlər göstəricisinin məzmununu artırlır