• AH registriga (31 - kok fonda yorqin oq belgi) va ALga
  • Tizimli dasturlash




    Download 183,36 Kb.
    bet45/64
    Sana13.05.2024
    Hajmi183,36 Kb.
    #230077
    1   ...   41   42   43   44   45   46   47   48   ...   64
    Bog'liq
    Системное программирование, практика

    mov ax, 0B800h

    ES segment registriga 0B800h raqamini yuklang


    harakat, bolta


    mov di,0

    DI registriga nol yuklang


    mov ah, 31

    ; registrga qo'ying ah - belgi atributi


    mov a l ,

    al registriga - har qanday ASCII belgilar kodini kiriting


    mov es:[di],ax

    ; 0B800:0000h manzilidagi belgining atributini va ASCII kodini kiriting


    harakat ah, 10h

    ; 10h funksiyasiga qo'ng'iroq qiling - har qanday tugmani bosishdan oldin dasturni to'xtatishingiz mumkin


    int 16 soat

    ; qo'ng'iroqni uzish 16h - BIOS klaviatura xizmati


    ret

    ; DOS funktsiyasi "dasturni tugatish"


    oxiri boshlanadi

    ; dastur kodini tugatish belgisi

    Ushbu dasturda video xotiraga nusxa ko'chirish uchun ma'lumotlarni tayyorlashda (7) va (8) qatorlarda biz ES segmenti registriga 0B800h raqamini yuklaymiz , bu matn rejimida ko'rsatish segmentiga mos keladi. (9) qatorda biz DI registriga nol yuklaymiz. Bu 0B800h segmentiga nisbatan ofset bo'ladi. (10) va (11) qatorlarda belgi atributi mos ravishda AH registriga (31 - ko'k fonda yorqin oq belgi) va ALga - belgining ASCII kodi (01 - yuz) kiritiladi.
    (12) qatorga biz 0B800:0000h manziliga (ya'ni displeyning birinchi qatoridagi birinchi belgi - yuqori chap burchak) belgining atributini va ASCII kodini kiritamiz (mos ravishda 31 va 01).

    Download 183,36 Kb.
    1   ...   41   42   43   44   45   46   47   48   ...   64




    Download 183,36 Kb.