8-mavzu. Buyruq (komanda) lardagi manzillash usullari, uzilishlar
Mashina komandalarini turli usullarda guruhlarga ajratish mumkin. Ular turli mashinalarda takrorlanishi, detallarda farqlanishi mumkin. Har xil kompyuterlarda alohida komandaar ham mavjud bo’lib, asosan avvalgi tizimlar bilan moslashish uchun qo’llaniladi.
Ma’lumotlarni ko’chirish komandalari
Ma’lumotlarni bir joydan ikkinchisiga ko’chirish eng keng qo’llaniladigan amaliyotdir. Ko’shirish deganda bir joydagi ma’lumotlarning ikkinchi joyda asl nusxasini paydo qilish tushuniladi. bunda “ko’chirish” termini o’rniga “nusxalash” ishlatilsa aniqroq bo’ladi. Ko’chirishda ikkinchi joyda shu ma’lumot hosil qilinishi bilan avvalga joydagi ma’lumot ma’lum vaqt saqlanib turadi.
Ikkita sababga ko’ra ma’lumotlar ko’chirilishi mumkin. 1-sabab fundamental tushuncha: o’zgaruvchilarga qiymat berish. Mas A=B kabi. Bunda B o’zgaruvchi joylashgan yacheykadagi ma’lumotlar A o’zgaruvchi joylashgan yacheykaga o’tadi. 2-sabab ma’lumotlarga murojaat qilishni osonlashtirish (tezlashtirish). Ma’lumotlarning faqat ikkita joylashadigan joyi (registr va xotira) mavjud ekan, ularning ko’chiriladigan joyi ham ikkita (xotira va registr), shundan kelib chiqib 4 xil ko’chirish uslubi mavjud. (reg-reg, reg-xotira, xotira-reg, xotira-xotira) Ba’zi kompyuterlarda har bir xolat uchun alohida, jami 4 ta komanda ishlatiladi. Masalan LOAD – o’qish, STORE – registrdan xotiraga ko’chirish, MDE – registrlararo ko’chirish. Nusxalash komandasi esa mavjud emas.
Ko’chirish komandalari qancha miqdordagi ma’lumot ko’chirilishini aniqlab berishi lozim. Ba’zi komandalar turli sondagi axborot birliklarini ko’chira oladi (1 bit dan toki xotiraning hammasini). So’z uzunligi belgilab qo’yilgan mashinalarda odatda bir harakatda bir so’z ko’chiriladi. Boshqa har qanday ko’chirishlar dasturiy boshqaruv orqali bajariladi. Ko’plab so’zlarni ko’chirish xavfli, chunki bu ko’p vaqtni talab qilishi va oraliqda uzilib qolishi mumkin. Ba’zi so’z uzunligi o’zgaruvchi mashinalarning komandalari boshlang’ich va oxirgi adreslarni belgilaydi, ma’lumotlar sonini emas. Ma’lumotlarni ko’chirish to’xtash komandasiga yetguncha bajarilaveradi.
Binar amallar.
Bu shunday amallarki, ikkita operanddan bitta natija hosil bo’ladi. Kompyuter arxitekturasi butun sonlarni qo’shish va ayirish, ko’paytirish va bo’lish komandalaridan iborat.
Binar komandalarning keyingisi mantiqiy komandalardir. Ikkita o’zgaruvchi bilan ishlovchi 16 ta funksiya mavjud. Lekin ushbu 16 ta komandani hammasini ishlatadigan mashina mavjud emas. Asosan VA, YOKI, YO’Q amallari ishlatiladi. Ba’zan INKOR-YOKI, YO’Q-YOKI, YO’Q-VA ishlatiladi.
Har biri 8 bitli simvolli bo’lgan 32 bit uzunlikdagi so’zlar bilan ishlaydigan mashinani qaraymiz. Aytaylik, ikkinchi so’zni boshqalardan ajratib olish kerak bo’lsin. Oddiy aytganda shunday so’z hosil qilish kerakki, o’ng tomonda 8 bitda joylashsin va chap tomonda 24 ta nollar bo’lsin. (o’ng bitga tenglanish texnologiyasi)
Kerakli simvolni olish uchun bu so’z va konstanta VA amali bilan bog’lanadi. Natijada keraksiz bitlarning barchasi nollarga aylanadi.
9-slayd.
Keyin natija kerakli simvol o’ng tomonda joylashishi uchun 16 bit o’ngga suriladi.
YOKI komandasini qo’llashda so’zga bitlarni kiritish nazarda tutiladi. 32 bitli so’zning faqat oxirgi 8 bitini o’zgartirish uchun shu 8 bitni dastlab 0 larga aylantirib olamiz, hosil bo’lgan simvolni YOKI amali bilan qo’shish kerak.
1 0-slayd.
VA amali 1 larni o’chiradi, YOKI amali 1 lar bilan to’ldiradi.
Hozirgi ko’pchilik kompyuterlar QVS bilan ishlovchi komandalarni qo’llaydi. Mashinalar bunday sonlarning 2 variantini saqlaydi: tezlikni oshirish uchun qisqa formatdagi va hisoblash aniqliklarini oshirish uchun uzun so’zlar. Standart IEEE 754.
Do'stlaringiz bilan baham: |