4-Amaliy ish Mavzu: Arifmetik va mantiqiy amallarning buyruqlarini bajarilishini o’rganish
Reja
Turli xil VM-lar buyruq tizimlarida har xil turdagi operatsiyalarga ega bo'lishi mumkin. Shunga qaramay, buyruqlarning asosiy turlari ajratib ko'rsatiladi:
1) ma'lumotlar uzatish buyruqlari;
2) arifmetik va mantiqiy ishlov berish buyruqlari;
3) satrlar bilan ishlash uchun buyruqlar;
4) SIMD buyruqlari;
5) aylantirish buyruqlari;
6) kirish / chiqish buyruqlari;
7) tizimni boshqarish buyruqlari;
8) buyruq oqimini boshqarish buyruqlari.
Arifmetik va mantiqiy ishlov berish buyruqlari. Ushbu guruh o'z taqdimotining turli shakllarida ma'lumotlarni arifmetik va mantiqiy qayta ishlashni ta'minlovchi jamoalarni o'z ichiga oladi. Raqamlarni ifodalashning har bir shakli uchun (butun sonlar, o'zgaruvchi nuqta va boshqalar) ASK odatda ba'zi standart operatsiyalar to'plamini taqdim etadi.
Natijani hisoblash bilan bir qatorda, arifmetik va mantiqiy amallarni bajarish ALUda ushbu natijani tavsiflovchi belgilar (bayroqlar) shakllanishi bilan birga keladi.
Ushbu guruhdagi jamoalar quyidagilardan iborat:
butun sonli operatsiyalar
suzuvchi punkt operatsiyalari
mantiqiy operatsiyalar
smenali operatsiyalar
o'nlik operatsiyalar
Satrlar bilan ishlash uchun buyruqlar. ACK-da satrlar bilan ishlash uchun odatda satrlarni ko'chirish, taqqoslash va qidirish buyruqlari berilgan. SIMD buyruqlari Ikki raqamda ishlaydigan oddiy jamoalardan farqli o'laroq, SIMD buyruqlari bir vaqtning o'zida ikkita guruh raqamlarini qayta ishlaydi (printsipial ravishda ularni guruh buyruqlari deb atash mumkin). Bunday ko'rsatmalarning operandlari odatda qadoqlangan formatlardan birida taqdim etiladi.
Konversiya buyruqlari. Transformatsiya buyruqlari ma'lumotlarni taqdim etish formatini o'zgartiradi.
I / O buyruqlari Ushbu guruh jamoalari quyidagilarga bo'lingan.
- periferik qurilmani boshqarish buyruqlari (PU);
- uning holatini tekshirish;
- kirish va chiqish.
Tizimni boshqarish buyruqlari. Ushbu guruhga kiritilgan buyruqlar imtiyozga ega va faqat VM ning markaziy protsessori imtiyozli holatda yoki imtiyozli xotira zonasida joylashgan dasturni ishga tushirganda bajarilishi mumkin (odatda imtiyozli rejim faqat operatsion tizim tomonidan ishlatiladi).
Buyruqlar oqimini boshqarish uchun buyruqlar. VM buyruqlar tizimida hisoblar ketma-ketligini o'zgartiradigan uchta buyruq turini ajratish mumkin:
- shartsiz o'tish;
- shartli o'tish (filiallar);
- protseduralarni chaqirish va protseduralardan qaytish.
Buyruq formatlari Jamoa formati uning tuzilishini, ya'ni butun jamoaga ajratilgan ikkilik bitlarning sonini, shuningdek jamoaning alohida maydonlarining soni va joylashishini aniqlaydi. Maydon - bu buyruq tarkibiy qismini kodlaydigan ikkilik raqamlar to'plami. Shunga ko'ra, jamoa ikki qismdan iborat: operatsion va manzil. Bitta VM buyruq tizimida buyruqning turli formatlaridan foydalanish mumkin. Bu, odatda, turli xil murojaat qilish usullaridan foydalanish bilan bog'liq. Bunday holda, manzilni boshqarish usulini (CA) sozlash uchun maydon buyruq kodiga kiritiladi.
Manzil bo'limiga kiritilgan manzillar sonini aniqlash uchun "manzillashtirish" atamasidan foydalaniladi. "Eng keng" jamoalar uch manzilli. Ular quyidagilardan iborat: birinchi operandning manzili, ikkinchi operandning manzili va operatsiya natijasi kiritilgan kameraning manzili. Keyingi ko'rsatmalar uchun saqlash joyini ko'rsatadigan boshqa manzil qo'shilishi mumkin. Natijada to'rt manzilli buyruq formati mavjud.
Agar sukut bo'yicha operandlardan birining manzilini natija manzili sifatida olsak, unda biz uchinchi manzilsiz ishlay olamiz va natijada buyruqning ikki manzilli formatini olamiz. Unicast formatiga o'tish orqali buyruqni yanada qisqartirish mumkin. Birinchi operand va natijani saqlash uchun maxsus protsessor registri - akkumulyator ajratilgan. Operandlardan birini saqlash uchun bitta registrdan foydalanish va natija juda qulay emas, shuning uchun batareyaga qo'shimcha ravishda boshqa protsessor protsessorlari ham ishlatiladi. Tegishli format bir yarim manzil yoki ro'yxatdan o'tish formati deb nomlanadi. Agar siz ikkala operand uchun aniq belgilangan joyni aniqlasangiz, shuningdek, operandni talab qilmaydigan ko'rsatmalar mavjud bo'lsa, buyruqning nol manzil formatini olishingiz mumkin. Bunday holda, buyruqning manzil qismi umuman yo'q yoki ishlatilmaydi.