• Tayanch so‘zlar.
  • Assembler tushunchasi va uning vazifalari
  • 17-mavzu: assembler dasturlash tili va uning imkoniyatlari. Reja




    Download 24,12 Kb.
    bet1/4
    Sana18.01.2024
    Hajmi24,12 Kb.
    #140422
      1   2   3   4
    Bog'liq
    17-mavzu assembler dasturlash tili va uning imkoniyatlari. Reja-fayllar.org


    17-mavzu: assembler dasturlash tili va uning imkoniyatlari. Reja


    17-MAVZU: ASSEMBLER DASTURLASH TILI VA UNING IMKONIYATLARI.
    Reja
    1. A ssembler tushunchasi va uning vazifalari


    2. Assembler tilida operatorlarning formatlari va ularni qo‘llash


    3. Assemblerda makroslar yaratish


    4. Assembler dasturni kompilyatsiyalash usullari




    Tayanch so‘zlar. Assembler, ASM, jmp, jz, jnz, test, megabayt, kilobayt, intel, borland int., turbo assembler, tlink.exe, tasm.exe, td.exe.ADD, MOV, SUB,INC, metkalar, amallar, operandalar va izohlar,. UltraSPARC, Motorola protsessorlari, Makroslar, MASM (Macro Assembler), TASM (Turbo Assembler), WASM (Watcom Assembler), FASM (Flat Assembler), Kompilyatsiyalash (TASM da).


    Assembler tushunchasi va uning vazifalari
    Yuqori sath tillari hisoblangan C, C+ va Java kabi dasturlash tillari- da yozilgan bitta operatorni amalga oshirish uchun, bir nechta mashina buyruqlarini bajarish kerak bo‘ladi. Har bir operatorga bittadan mashina buyrng‘i to‘g‘ri keladigan til esa - assembler tili deb ataladi. Har bir assembler tili yoki assemblerlar, mashina buyruqlarining nomlari qisqartirib yozilgan - mnemonikalarga, ya’ni ma’noga ega qiskartirilgan so‘zlarga asoslanadi. Masalan: qo‘shish - ADD, ayrish - SUB, ko‘chirib yozish - MOV, bir qiymatga orttirish - INC va boshqa mashina buyruqlari kabi. Assembler tilida ham - konstantalarni, o‘zgaruvchilarni, xotira adreslarini ifodalovchi metkalarni tavsiflash uchun, simvollardan iborat nomlar qo‘llaniladi. Assembler tilida yozilgan dasturni assembler- lash yoki translyasiya (kompilyasiya) qilish natijasida, real apparat mu- hitda - Pentium 4, Motorola, UltraSPARC yoki 8051 protsessorlaridan bi- ri o‘rnatilgan kompyuterda bajarilishga tayyor ikkilik sonlarda ifodalangan dastur hosil bo‘ladi. Ushbu holatni UMK80 o‘quv mikroprotsessorli komplekti uchun yozilgan, keltirilgan dastur yordamida tushuntirish mumkin. Bu dastur tezkor xotira qurilmasining 0B00 adresi bo‘yicha yozilgan sonni o‘qiydi, uning inkorini aniqlaydi hamda natijani 0B01 adresi bo‘yicha tezkor xotira qurilmasiga qaytib yozib qo‘yadi.
    Dasturlarni yozishda barcha sonlar o‘n oltilik sanoq sistemasida ifodalanadi. Dasturdagi buyruqlar - bir, ikki yoki uch baytli bo‘lib, mos holda hotiraning bitta, ikkita yoki uchta yacheykasini egallashlari mumkin. Buni 17.1-rasmdagi dasturni assemblerlagandan keyingi holatini ko‘rsatuvchi 17.2 va 17.3- rasmlar asosida tushunib olish mumkin.
    Buyruqlarning formatlari qanday ekanligini tushinib olish uchun, dasturni 17.4-rasmdagi bitta qatorda, bitta buyruq keltirilgan ko‘rinishda yozib olamiz. Bunda har bir buyruqning boshlang‘ich adresi ko‘rsatiladi va buyruqning uzunligiga qarab (1, 2 yoki 3 baytli buyruq), u xotiraning ketma-ket joylashgan 1, 2 yoki 3-ta yacheykasini egallaydi.

    17.3-rasm. Dastumi xotira adreslari bo‘yicha joylashishi.


    Ad res

    Son

    Izoh








    OSOO


    3.4


    LDA buyrug'ining mashina kodi.


    0801


    00

    Adresning kichik bayti




    0802


    OB

    Adresning katta bayti




    0803


    2F


    CMA buyrug'ining mashina kodi.


    0804


    32


    STA buyrug'ining mashina kodi.


    0805


    01

    Adresning kichik bayti




    0806


    OB

    Adresning katta bayti




    0807


    CF


    RST1 buyrug'ining mashina kodi.


    Ad res

    Mashina kodi

    Metka Mnemokod


    Izoh



    0800

    44 000B




    LIU, 0B00

    Sonni olibyozish




    am


    2F


    CMA

    Sonni inkorlash




    0804


    32 010B


    STA, 0B01


    0B01 adresi bo'yicha yozish


    080'


    CF


    RST1

    Dasturni toxtatish



    17.4-rasm. Dasturni bitta qatorda, bitta buyruq keltirilgan ko‘rinishda yozilgan holati.

    Assembler tilida ishlash oson emas. Biron bir dastumi assembler tilida yozish, o‘sha dasturni C, C+ va Java kabi dasturlash tillarida yozishga nisbatan ko‘p vaqt talab qiladi. Assemlerda dasturni to‘g‘ri ishlaydigan holatga keltirish ham (rus tilida - отладка программы) juda ko‘p vaqt talab qiladi. Shunday ekan assemblerda dasturlash nima uchun kerak - degan savol paydo bo‘ladi. Bunga asos qilib quyidagi ikki sababni ko‘rsatish mumkin: assembler tilida tuzilgan dasturlar unumdorligining yuqori bo‘lishi (rus tilida - высокая производительность программ) va ularda kompyuterning apparat vositalariga to‘g‘ridan-to‘g‘ri murojaat qila olish imkonining borligi. Yuqori malakaga ega bo‘lgan dasturchi, assembler tilida, yuqori sath tilida tuzilgan dasturga nisbatan, ancha kam xotira egallaydigan va anchagina tez ishlaydigan dasturlarni tuzishi mumkin. Ko‘p hollarda, yozilgan dasturning kamroq xotirani egallashi va tez bajarila olishi mumkinligi juda muhim ahamiyat kasb etadi. Hozirda ko‘pgina o‘rnatiladigan amaliy dasturlar, masalan - smart-kartalardagi va uyali telefonlardagi dasturlar, har-xil qurilmalarning drayverlari va BIOSning muolajalari (rus tilida - процедуры) ana shunday dasturlar sirasiga kiradi.


    Assembler tilini o‘rganish bilan biz, kompyuterning qanday ishlashini va uning ichki tuzilishi, ya’ni arxitekturasi qanday ekanligini mukammal o ‘rganish imkoniyatiga ega bo‘lamiz.



    1. Download 24,12 Kb.
      1   2   3   4




    Download 24,12 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    17-mavzu: assembler dasturlash tili va uning imkoniyatlari. Reja

    Download 24,12 Kb.