• 3-Amaliy ish (siz qaysi dasturlash tilini bilasiz shu haqida to’liq tushuncha bering)
  • Hi-tech divan modelini ishlab chiqarish uchun




    Download 17.58 Kb.
    Sana04.05.2023
    Hajmi17.58 Kb.
    #56511
    Bog'liq
    TZ1
    HFX 4-kurs 8-Ma\'ruza, gazkondensat-konlarini-ishlatish-tizimlarini-loyihalashtirish, 22-maruza ggkk, 17maruza ggkk

    Muhammad al-Xorazmiy nomidagi Toshkent axborot texnologiyalari universiteti

    Amaliy ish № 1


    Texnik topshiriq
    " HI-TECH divan modelini ishlab chiqarish uchun
    " modulini ishlab chiqish uchun
    To‘ldiruvchi: Abdurashidov Bexruz
    Guruh:316_21
    Qabul qildi: Ishmuhamedov A.
    Toshkent 2023


    3-Amaliy ish (siz qaysi dasturlash tilini bilasiz shu haqida to’liq tushuncha bering)
    Berilgan misollarni jurnalda keltirilgan tartib raqamingizga mos ravishda tanlang va uni keltirilgan ifodalar bo‘yicha Assembler tilida dasturini tuzing.
    a) Assembler tilini va dastur uchun foydalanadigan ID ni (Integrashgan muhit) tavsiflang
    b) Natijani izohlarda to‘laqonli yoritib bering
    c) Natija markaziy protsessorda (CПУ) qanday ifodalanishini ko‘rsating (Tafsiya: Delphi muhiti ) C++

    Variant 2: b+5(a+c)*2


    x86 arxitekturasidan foydalangan holda "b+5(a+c)*2" ifodasini hisoblash uchun assembler tilida dastur yozishga misol.

    a) Ushbu dastur uchun biz x86 arxitekturasini qo'llab-quvvatlaydigan har qanday assembler tili va IDE dan foydalanishimiz mumkin. Ba'zi mashhur tanlovlar - NASM, MASM, TASM va FASM. IDE-ga kelsak, biz assembler tili sintaksisini ajratib ko'rsatishni qo'llab-quvvatlaydigan har qanday matn muharriridan foydalanishimiz mumkin yoki Visual Studio yoki integratsiyalashgan assemblerga ega Code::Blocks kabi IDE-dan foydalanishimiz mumkin.


    b) NASM sintaksisidagi misol dasturi:


    section .data
    a dd 2
    b dd 3
    c dd 4

    section .text


    global main

    main:
    mov eax, dword [a] ; load a into eax


    add eax, dword [c] ; add c to eax
    imul eax, 5 ; multiply by 5
    add eax, dword [b] ; add b to eax
    shl eax, 1 ; multiply by 2 using a left shift
    ret
    Bu dastur avval ma'lumotlar bo'limidagi b, a va c qiymatlarini registrlarga yuklaydi. Keyin a+c ifodasini hisoblab, uni o‘ziga 4 marta qo‘shib 5*2 ga ko‘paytiradi. Natijani b ga qo'shadi va yakuniy natijani o'ziga ikki marta qo'shish orqali 2*2 ga ko'paytiradi. Nihoyat, u natijani cx registriga o'tkazadi va natija bilan dasturdan chiqadi.


    c) Protsessorda dastur xotiradan b, a va c qiymatlarini mov ko'rsatmasi yordamida registrlarga yuklaydi. Keyin ifodani hisoblash uchun registrlarda arifmetik amallarni bajaradi. Qo'shish buyrug'i ikkita registr yoki registr va xotira joylashuvining qiymatlarini qo'shadi, mov buyrug'i esa registrlar va xotira o'rtasida ma'lumotlarni o'tkazadi. Dastur shuningdek, natija bilan dasturdan chiqish uchun tizim chaqiruvini chaqirish uchun int ko'rsatmasidan foydalanadi. Natija cx registrida saqlanadi.
    Download 17.58 Kb.




    Download 17.58 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Hi-tech divan modelini ishlab chiqarish uchun

    Download 17.58 Kb.