Kompyuter arxitekturasi - Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti kompyuter...

|
Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti kompyuter tashkil etilishi fanidan
|
bet | 3/3 | Sana | 25.07.2024 | Hajmi | 1,55 Mb. | | #268555 |
Bog'liq kt 5 ElmurodovKompyuter arxitekturasi — bu kompyuter tizimining kontseptual modeli boʻlib, uning tarkibiy qismlari, ularning bir-biri va atrof-muhit bilan oʻzaro taʼsiri, shu jumladan uni loyihalash va rivojlantirish tamoyillarini oʻz ichiga oladi[1][2]. Amalga oshirish jihatlari (masalan, xotirani amalga oshirish uchun ishlatiladigan texnologiya) arxitekturaning bir qismi emas[3].
Tashkilot darajalari[tahrir | manbasini tahrirlash]
Kompyuterni tashkil etishning bir necha darajalari mavjud, ikkita yoki undan koʻp[3]:
1-daraja
Mikroarxitektura darajasi, talqini (proshivka) yoki toʻgʻridan-toʻgʻri bajarish. Elektron sxemalar mashinaga bogʻliq dasturlarni bajaradi. Protsessor registrlari toʻplami mahalliy xotirani tashkil qiladi. Shuningdek, arifmetik mantiq birligi, boshqaruv bloki. Hozirgi vaqtda koʻrsatmalar arxitekturasi darajasida odatda bitta tsiklda bajariladigan oddiy koʻrsatmalar mavjud[4] (masalan, RISC mashinalari).
2-daraja
Buyruqlar tizimi arxitektura darajasi, tarjima (assembler).
3-daraja
Operatsion tizim darajasi. Bu gibrid daraja: buyruqlarning bir qismi operatsion tizim tomonidan, ikkinchi qismi esa proshivka tomonidan talqin qilinadi[5].
4-daraja[tahrir | manbasini tahrirlash]
Assambleya tili darajasi, tarjima (kompilyator). Toʻrtinchi va undan yuqori darajalar birinchidan uchinchi tizim dasturlarigacha boʻlgan amaliy dasturlarni yozish uchun ishlatiladi. Inson uchun qulay shakldagi dasturlar 1-3 darajali tilga tarjima qilinadi[6].
5-daraja
Yuqori darajadagi til. Yuqori darajadagi tillardagi dasturlar odatda 3 va 4 darajalarga tarjima qilinadi[7].
Assembler dasturlash tili - bu eng past darajali dasturlash tillaridan biri hisoblanadi. U to'g'ridan-to'g'ri protsessor yoki mikrokontroller arxitekturasiga yo'naltirilgan bo'lib, kompyuter tizimining eng past darajali hardware tashkil etuvchilarini boshqarish uchun foydalaniladi.
Assembler dasturlash tilida dastur bajarilishi uchun quyidagi asosiy qadamlar bajariladi:
1. Operand va Operatorlarni aniqlash: Assembler dasturlash tilida har bir buyruq, operandlarni (ma'lumotlarni) va operatorlarni (amallarni) o'z ichiga oladi. Operandlar ma'lumotlar ustida bajariladigan amallarni ifodalaydi, operatorlar esa shu amallarni bajarishni ta'minlaydi.
2. Manzillarni aniqlash: Assembler dasturida har bir buyruq va ma'lumot muayyan xotira manzilida joylashtirilan bo'ladi. Dasturchi bu manzillarni o'z dasturida belgilashi kerak.
3. Kompilyatsiya: Assembler dasturi hujjatdan tashqi protsessorda qayta ishlangan bo'lib, mashina tili kodiga aylantirilib, yuqori darajali dasturlash tillari kabi bevosita bajarilishi mumkin.
Assembler dasturlash tili juda past darajada bo'lgani uchun, u birlamchi dasturlash tili sifatida qabul qilinadi. U to'g'ridan-to'g'ri kompyuter tizimining eng past darajali komponentlarini boshqarish uchun qo'llaniladi. Bu ham uning asosiy ustunligi, ham kamchiligi hisoblanadi. Chunki bajariladigan amallarga juda yuqori nazorat o'rnatish imkonini beradi, lekin dastur yozish uchun katta vaqt va kuch sarflanishi lozim bo'ladi.
Hozirgi kunda assembler dasturlash tili, asosan, quyi darajali kompyuter tizimlarini (mikrokontrollerlar, yadro dasturlar, drayverlar va h.k.) rivojlantirish uchun qo'llaniladi. Shuningdek, ma'lum bir masofadan boshqariluvchi qurilmalar, mo'ljal olingan maxsus qurilmalar va o'yin konsollari uchun ham assembler tilida dasturlar yoziladi.
Assembler dasturlash tilida operatorlar (kodlar) - bu protsessorning bajaradigan buyruqlaridir. Ular protsessor uchun maxsus vazifalarni bajarishni ta'minlaydi. Assembler operatorlarining asosiy turlari quyidagilar:
1. Ma'lumotlarni ko'chirish operatorlari: Bu operatorlar ma'lumotlarni xotira-xotira, xotira-registr yoki registr-registr o'rtasida ko'chirish imkonini beradi. Masalan, MOV, LOAD, STORE kabi operatorlar.
2. Arifmetik va mantiqiy operatorlar: Bu operatorlar ma'lumotlar ustida arifmetik va mantiqiy amallarni bajarish uchun xizmat qiladi. Masalan, ADD, SUB, AND, OR, XOR kabi operatorlar.
3. Taqqoslash va sakrash operatorlari: Bu operatorlar shartli va shartli bo'lmagan sakrashlarni amalga oshirishni ta'minlaydi. Masalan, CMP, JMP, JE, JNE, JZ, JNZ kabi operatorlar.
4. Tekshirish va boshqarish operatorlari: Bu operatorlar ma'lumotlarni tekshirish, bayroqlarni o'rnatish/o'chirish va protsessorning boshqaruv oqimini boshqarish uchun ishlatiladi. Masalan, TEST, SHL, SHR, CALL, RET, INT kabi operatorlar.
5. Ma'lumotlarni kiritish/chiqarish operatorlari: Bu operatorlar protsessor bilan tashqi qurilmalar (klaviatura, monitor, disk drayver va h.k.) o'rtasida ma'lumotlar almashishni ta'minlaydi. Masalan, IN, OUT kabi operatorlar.
Assembler dasturlarida bu operatorlar kombinatsiya qilib, murakkab algoritm va dasturlarni ishlab chiqish mumkin. Masalan, ma'lumotlarni o'qish, ularni qayta ishlash va natijani chiqarish kabi barcha amallar shu operatorlar yordamida bajariladi.
|
| |