• Toshkent-2023 Tilning konstruksiyalari va operatsiyalari Reja
  • O’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti




    Download 72.73 Kb.
    Sana12.04.2023
    Hajmi72.73 Kb.
    #50654
    Bog'liq
    Tizimlarning matematik va dasturiy ta\'minoti (amaliyot)
    1700887000, Kartondan quticha tayyorlash, Loy va plastilin bilan ishlash darslari tashkil etish metodikasi (dars ishlanma), Z- Ibodullayev Tibbiyot psixologiyasi, Mustaqil ta, Mustaqil ta-2

    O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
    MUHAMMAD AL-XORAZMIY NOMIDAGI
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI






    Mustaqil ish
    Guruh: 312-19
    Bajardi: Ro’ziboyev Ismoil


    Toshkent-2023
    Tilning konstruksiyalari va operatsiyalari
    Reja:

    1. Assembler tili

    2. Assembler tili sintaksisi

    3. Strukturaviy dasturlashni qo’llab quvvatlash

    4. Assambler tilida kod yozish

    Kompyuter dasturlashda assembler tili (muqobil ravishda assembler tili yoki ramziy mashina kodi ), odatda oddiy Assembly deb ataladi va odatda ASM yoki asm deb qisqartiriladi , har qanday past darajadagi dasturlash tilidir . tildagi ko'rsatmalar va arxitekturaning mashina kodi ko'rsatmalari o'rtasida juda kuchli yozishmalar.  Assembly tilida odatda bitta mashina koʻrsatmasi (1:1), lekin konstantalar, izohlar mavjud, assembler direktivalari ,ramziy teglar , masalan, xotira joylari , registrlar va makroslar  odatda qoʻllab-quvvatlanadi.
    Mashina kodi ko'rsatmalarini ifodalash uchun til ishlatiladigan birinchi yig'ish kodi Ketlin va Endryu Donald Butning 1947 yildagi "Coding for ARC" asarida topilgan.  Assembler deb ataladigan yordamchi dastur tomonidan montaj kodi bajariladigan mashina kodiga aylantiriladi . "Assembler" atamasi odatda Uilks , Uiler va Gillning 1951 yilda chop etilgan "Elektron raqamli kompyuter uchun dasturlarni tayyorlash" kitobida berilgan ammo bu atamani "bir nechta bo'limlardan iborat boshqa dasturni bitta dasturga yig'adigan dastur" degan ma'noda ishlatgan. Konvertatsiya jarayoni, manba kodini yig'ishda bo'lgani kabi, yig'ish deb ataladi . Assembler dasturni qayta ishlayotgandagi hisoblash bosqichi montaj vaqti deb ataladi .
    Yig'ish mashina kodi ko'rsatmalariga bog'liq bo'lganligi sababli, har bir montaj tili ma'lum bir kompyuter arxitekturasiga xosdir . 
    Ba'zan bir xil arxitektura uchun bir nechta assembler mavjud bo'lsa, ba'zida assembler operatsion tizim yoki muayyan operatsion tizimlar uchun xosdir. Aksariyat montaj tillari operatsion tizim chaqiruvlari uchun maxsus sintaksisni ta'minlamaydi va ko'pchilik assemble tillari har qanday operatsion tizim bilan universal tarzda qo'llanilishi mumkin, chunki bu til protsessorning barcha real imkoniyatlariga kirishni ta'minlaydi , bunda barcha tizim chaqiruv mexanizmlari ishlaydi. oxir-oqibat dam olish. Assambleya tillaridan farqli o'laroq, yuqori darajadagi dasturlash tillarining ko'pchiligi odatda bir nechta arxitekturalarda ko'chma bo'lib, lekin ularni tarjima qilish yoki tarjima qilishni talab qiladi. Kompilyatsiya , yig'ishdan ko'ra ancha murakkab vazifalar.
    Hisoblashning dastlabki o'n yilliklarida tizimli dasturlash ham , amaliy dasturlash ham butunlay assembler tilida olib borilishi odatiy hol edi . Ba'zi maqsadlarda hali ham almashtirib bo'lmaydigan bo'lsa-da, dasturlashning aksariyati endi yuqori darajadagi talqin qilingan va kompilyatsiya qilingan tillarda olib boriladi. Fred Bruks " No Silver Bullet " asarida assembler tilidagi dasturlashdan voz kechish ta'sirini qisqacha bayon qildi: "Albatta, dasturiy ta'minot unumdorligi, ishonchliligi va soddaligi uchun eng kuchli zarba dasturlash uchun yuqori darajali tillardan izchil foydalanish bo'ldi. Aksariyat kuzatuvchilar Ushbu rivojlanishni unumdorlikning kamida besh omili va ishonchliligi, soddaligi va tushunarliligi bilan birga erishgan holda baholang."
    Bugungi kunda, unumdorlik sabablari yoki yuqori darajadagi til tomonidan qo'llab-quvvatlanmaydigan usullar bilan to'g'ridan-to'g'ri apparat bilan o'zaro aloqa qilish uchun yuqori darajadagi tilda amalga oshirilgan katta tizimlarda kichik hajmdagi assembler tili kodlaridan foydalanish odatiy holdir. Masalan, Linux yadrosi manba kodining 4.9-versiyasining 2% dan ozrog'i montajda yozilgan; 97% dan ortig'i C tilida yozilgan. 
    Assembly tili mnemonikadan foydalanadi , masalan, har bir past darajali mashina yo'riqnomasi yoki opcode , har bir direktiv , odatda, shuningdek, har bir me'moriy registr , bayroq va hokazo. Ba'zi mnemonikalar o'rnatilgan bo'lishi va ba'zi foydalanuvchilarni aniqlashi mumkin. Ko'pgina operatsiyalar to'liq ko'rsatma hosil qilish uchun bir yoki bir nechta operandlarni talab qiladi. Aksariyat assemblerlar dastur va xotira joylashuvi uchun nomlangan konstantalar, registrlar va teglarga ruxsat beradi va ifodalarni hisoblashi mumkinoperandlar uchun. Shunday qilib, dasturchilar zerikarli takroriy hisob-kitoblardan ozod qilinadi va assembler dasturlari mashina kodiga qaraganda ancha o'qiladi. Arxitekturaga qarab, ushbu elementlar, shuningdek, ofsetlar yoki boshqa ma'lumotlar, shuningdek, belgilangan manzillar yordamida aniq ko'rsatmalar yoki manzillash rejimlari uchun birlashtirilishi mumkin. Ko'pgina assemblerlar dasturni ishlab chiqishni osonlashtirish, montaj jarayonini boshqarish va disk raskadrovkaga yordam berish uchun qo'shimcha mexanizmlarni taklif qiladilar .
    Ba'zilari ustunlarga yo'naltirilgan bo'lib, ma'lum ustunlarda ma'lum maydonlar mavjud; Bu 1950-yillarda va 1960-yillarning boshlarida perfokartalardan foydalanadigan mashinalar uchun juda keng tarqalgan edi . Ba'zi assemblerlar erkin shaklli sintaksisga ega bo'lib, maydonlar ajratuvchilar bilan ajratilgan, masalan, tinish belgilari, bo'sh joy . Ba'zi assemblerlar gibrid bo'lib, masalan, teglar ma'lum bir ustunda va boshqa maydonlar ajratuvchilar bilan ajratilgan; Bu 1960-yillarda ustunga yo'naltirilgan sintaksisga qaraganda keng tarqalgan.
    Ijro oqimini kodlash uchun tuzilgan dasturlash elementlarini ta'minlovchi makroslar paketlari yozilgan. Ushbu yondashuvning eng dastlabki namunasi IF/ELSE/ENDIF va shunga o'xshash boshqaruv oqimini ta'minlovchi IBMning Federal Tizimlar bo'limida Marvin Kessler tomonidan Xarlan Mills tomonidan taklif qilingan (1970 yil mart)Konsept-14 makro to'plamida bo'lgan. OS/360 assembler dasturlari uchun bloklar. Bu assembly tilida spagetti kodini keltirib chiqaradigan asosiy omillardan biri bo'lgan montaj kodida GOTO operatsiyalaridan foydalanishni kamaytirish yoki yo'q qilish usuli edi . Ushbu yondashuv 1980-yillarning boshlarida (keng miqyosda assembler tilidan foydalanishning keyingi kunlarida) keng qabul qilingan. IBMning yuqori darajali Assembler asboblar to'plami shunday makro paketni o'z ichiga oladi. Qiziqarli dizayn A-Natural edi, 8080/ Z80 uchun "oqimga yo'naltirilgan" assembler, Whitesmiths Ltd. protsessorlari ( Unixga o'xshash Idris operatsion tizimini ishlab chiquvchilari va birinchi tijorat C kompilyatori ekanligi xabar qilingan edi. ). Til assembler sifatida tasniflangan, chunki u opkodlar , registrlar kabi xom mashina elementlari bilan ishlagan. , va xotira havolalari; lekin u ijro tartibini ko'rsatish uchun ifoda sintaksisini o'z ichiga olgan. Qavslar va boshqa maxsus belgilar blokga yo'naltirilgan tuzilgan dasturlash konstruksiyalari bilan birgalikda yaratilgan ko'rsatmalarning ketma-ketligini nazorat qildi. A-natural qo'lda kodlash uchun emas, balki C kompilyatorining ob'ekt tili sifatida yaratilgan, ammo uning mantiqiy sintaksisi ba'zi muxlislarni qozondi.
    Keng miqyosdagi assembler tilining rivojlanishi pasayganidan beri murakkabroq assemblerlarga talab kam bo'ldi. Shunga qaramay, ular resurs cheklovlari yoki maqsadli tizim arxitekturasining o'ziga xos xususiyatlari yuqori darajadagi tillardan samarali foydalanishga to'sqinlik qiladigan holatlarda hali ham ishlab chiqilmoqda va qo'llaniladi. 
    Kuchli so'l dvigatelga ega yig'uvchilar makroslar orqali tuzilgan dasturlash imkonini beradi, masalan, Masm32 to'plami bilan ta'minlangan kalit makrosi (bu kod to'liq dasturdir):


    Download 72.73 Kb.




    Download 72.73 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    O’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti

    Download 72.73 Kb.