Buyruqlarning turlari va formatlari

2. Buyruqlarning turlari va formatlari
Turli xil HMlar o’zlarining buyruq tizimlarida har xil turdagi operatsiyalarga ega bo’lishi mumkin. SHunga qaramay, buyruqlarning asosiy turlari ajralib turadi:
1) ma’lumotlarni uzatish buyruqlari;
2) arifmetik va mantiqiy ishlov berish buyruqlari;
3) satrlar bilan ishlash buyruqlari;
4) SIMD buyruqlari;
5) o’zgartirish buyruqlari;
6) kirish / chiqarish buyruqlari;
7) tizimni boshqarish buyruqlari;
8) buyruq oqimini boshqarish buyruqlari.
1. Ma’lumotlarni uzatish buyruqlari
Bunday buyruqlar quyidagi ma’lumotlarni o’z ichiga olishi kerak:
1) operandlarning manbalari va ularni qabul qiluchining manzili;
2) aniq yoki bilvosita berilgan uzatilishi zarur ma’lumotlarning uzunligi (odatda baytlarda yoki so’zlarda);
3) operandlarning har biriga murojaat qilish usuli.
2. Arifmetik va mantiqiy ishlov berish buyruqlari
Ushbu guruhga ma’lumotlarni taqdim etishning turli shakllarida arifmetik va mantiqiy ishlov berishni ta’minlovchi buyruqlar kiradi. Raqamlarni tasvirlashning har bir shakli uchun (butun sonlar, suzuvchi nuqta bilan va boshqalar) BTA odatda ma’lum bir standart operatsiyalar to’plamini taqdim etadi.
Natija hisoblashdan tashqari, arifmetik va mantiqiy amallarning bajarilishi AMQda ushbu natijani tavsiflovchi belgilar (bayroqlar) shakllanishi bilan birga keladi.
Ushbu guruhdagi buyruqlar quyidagilarni o’z ichiga oladi.
butun sonli amallar
suzuvchi nuqta operatsiyalari
mantiqiy operatsiyalar
siljitish operatsiyalar
o’nli sonlar ustidagi amallari
3. Satrlar bilan ishlash buyruqlari
BTA-dagi satrlar bilan ishlash uchun odatda satrlarning harakatlanishi, taqqoslanishi va izlanishini ta’minlaydigan buyruqlar beriladi.
4. SIMD buyruqlari
Ikkala raqamda ishlaydigan oddiy buyruqlardan farqli o’laroq, SIMD buyruqlari bir vaqtning o’zida ikkita guruh sonlarini qayta ishlaydi (printsipial jihatdan ularni guruh buyruqlari deb atash mumkin). Bunday buyruqlarning operandlari odatda qadoqlangan formatlarning birida taqdim etiladi.
5. O’zgartirish buyruqlari
O’zgartirish buyruqlari ma’lumotlar taqdimot formatini o’zgartiradi.
6. Kiritish-chiqarish buyruqlari
Ushbu guruh buyruqlari quyidagilarga bo’lingan:
- periferik qurilmani (PQ) boshqarish buyruqlari;
- uning holatini tekshirish;
- kirish va chiqish.
7. Tizimni boshqarish buyruqlari
Ushbu guruhdagi buyruqlar imtiyozga ega va faqat HM ning markaziy protsessori imtiyozli holatda bo’lganida yoki imtiyozli xotira sohasida joylashgan dasturni bajarayotganda bajarilishi mumkin (odatda imtiyozli rejim faqat operatsion tizim tomonidan qo’llaniladi).
8. Buyruqlar oqimini boshqarish
HM buyruqlar tizimida hisob-kitoblar ketma-ketligini o’zgartirishi mumkin bo’lgan uch turdagi buyruqlarni ajratish mumkin:
- shartsiz o’tishlar;
- shartli o’tishlar (tarmoqlanish);
- protseduralarni chaqirish va protseduralardan qaytish.
Buyruq formati uning tuzilishini, ya’ni butun buyruq uchun ajratilgan ikkilik bitlar sonini, shuningdek alohida buyruq maydonlarining soni va joylashishini belgilaydi. Maydon bu buyruqning tarkibiy qismini kodlovchi ikkilik raqamlarning yig’indisi.
SHunga ko’ra, buyruq ikki qismdan iborat: operatsion va maqsadli. Bitta HM buyruqlar tizimida turli xil buyruq formatlarini ishlatish mumkin. Bu odatda turli xil adreslash usullaridan foydalanish bilan bog’liq. Bunday holda, buyruq kodiga manzil berish usulini (CA) ko’rsatish uchun maydon qo’shiladi.
Manzil qismiga kiritilgan manzillar sonini aniqlash uchun maqsadli atama ishlatiladi. "Eng keng" buyruqlar uchta manzilli. Ular quyidagilarni ko’rsatadilar: birinchi operandning manzili, ikkinchi operandning manzili va operatsiya natijasi yozilgan katakning manzili. Keyingi buyruq qaerda saqlanishini ko’rsatish uchun boshqa manzil qo’shilishi mumkin. Natijada to’rtta manzilli buyruq formati amalga oshiriladi.
Agar sukut bo’yicha operandlardan birining manzilini natija manzili sifatida qabul qilsangiz, unda siz uchinchi manzilsiz bajarishingiz mumkin va natijada biz ikkita manzilli buyruq formatini olamiz.
Bir manzilli formatiga o’tish orqali buyruqni qisqartirish mumkin. Birinchi operandni va natijani saqlash uchun maxsus protsessor registri - akkumulyator ajratilgan
Operandlardan birini va natijani saqlash uchun bitta registrdan foydalanish unchalik qulay emas, shuning uchun akkumulyatordan tashqari boshqa MP registrlari ham tez-tez ishlatiladi. Tegishli format bir yarim manzil yoki registr formati deb nomlanadi.
Agar ikkala operand uchun aniq belgilangan joyni belgilasangiz va operandni talab qilmaydigan buyruqlar bo’lsa, null-address buyruq formatini olishingiz mumkin. Bunday holda, buyruqning manzil qismi yo’q yoki umuman ishlatilmaydi.
Buyruq formati (instruction format) yoki buyruq kodi (instruction code) – bu kompyuter xotirasida saqlangan ma’lumot ustida ma’lum amallarni bajarish uchun foydalaniladigan bitlar guruhidir.
Buyruq – mikroprosessorni ichida ikkilik sanoq sistemasida loyihalanadi. Mikroprosessorni qo’llab qiuvvatlaydigan barcha buyruqlar guruhu buyruqlar to’plami deb nomlanadi. Buyruq x8, x16, x32, x64, x86-bitga asoslangan buyruq OpCode yoki operand yoki buyruq bayti deb nomlanadi.
Hisoblash mashinasida bajariladigan amallar mnemonika shakllarda ifodalanadi.
Buyruq – amal kodi, ushbu amalda qatnashayotgan operanda yoki operandalar qayerdan olinishi va natija qayerga yozilishi kerakligi haqidagi axborotlardan iborat bo‘ladi.
Buyruqlarda amal kodi - har doim bo‘ladi, ammo adreslar esa buyruqlarda bo‘lmasligi ham mumkin. Bunday buyruqlar adressiz buyruqlar deb ataladi. Qolgan xil buyruqlarda esa bitta, ikkita yoki uchtagacha adreslar ishtirok etishi mumkin.
Buyruqlar formatlarining to‘rtta xili:
adressiz buyruq; b) bir adresli buyruq;
c) ikki adresli buyruq; d) uch adresli buyruq.
Misol: MOVE R1, 4 – bir adresli buyruq; ADD R1, R2 – ikki adresli buyruq.
|