Bajardi: cao010-4 guruhining talabasi Xamrayev Azizjon Tekshirdi


Download 70.1 Kb.
bet5/6
Sana17.06.2023
Hajmi70.1 Kb.
#1522844
1   2   3   4   5   6
esi, edi, ebp, esp registrlari:
Quyidagi turdagi butun ma'lumotlarni o'z ichiga olishi mumkin

  1. Bit (faqat bit maydonlarida ishlaydigan ko'rsatmalar)

  2. Ikkilik kodli o'nlik sonlar (BCD); baytda bitta raqam mavjud, bir baytda ikkita raqam bilan ishlaydigan ko'rsatmalar mavjud

  3. Word (16 bit); registrga yozishda yuqori qismi ishlatilmaydi va o'zgarmaydi; qo'ng'iroq mos ravishda si, di, bp, sp nomi bilan amalga oshiriladi

  4. Uzoq so'z (32 bit)

Roʻyxatdan oʻtish kod cCR shartlari (shartlar kodi registri) :
bayroqlar registrining (EFLAGS) bir qismi bo'lib, u foydalanuvchi dasturida registr sifatida mavjud emas. Shart kodlari arifmetik amallar natijasi yoki maxsus ko'rsatmalar orqali o'rnatiladi va shartli tarmoq ko'rsatmalarida qo'llaniladi.
Quyidagi registrlar foydalanuvchi dasturida mavjud, lekin UNIX tizimlaridagi amaliy dasturlarda foydalanilmaydi (chunki ular tekis xotira modelida ishlaydi):
Segment registrlari gs, fs, es, ds, cs, ss:
16-bitli segment selektorlarini o'z ichiga oladi, manzilni shakllantirishda bilvosita ishtirok etadi

Intel 80x86 protsessorlarining barcha xotira adreslash rejimlari bitta formulada yozilishi mumkin: xotira katakchasi manzili


asos + indeks * masshtab + siljish
qayerda

  • tayanch - tayanch registr: eax, ebx, esx, edx, esi, edi, ebp, esp

  • indeks - indeks registri: eax, ebx, ecx, edx, esi, edi, ebp

  • masshtab - butun son doimiysi 1, 2, 4, 8

  • joy almashish - 8 yoki 32 bit ofset

Manzil elementlaridan birortasi yoʻq boʻlishi mumkin (bitta istisno: agar indeks boʻlmasa, masshtab ham boʻlmasligi kerak ).
Intel 80x86 protsessor ko'rsatmalari noldan uchtagacha operandga ega (aniq yoki yashirin). Ko'pgina ko'rsatmalar (transfer, arifmetik, mantiqiy) ikkita operandga ega bo'lib, ulardan biri operatsiyada (manbada) o'zgarmas, ikkinchisi esa operatsiya natijasidir (maqsad). Intel maqsad chap operand va manba o'ng operand bo'lgan sintaksisdan foydalanadi. Ammo UNIX tizimlaridagi aksariyat assemblerlar la Motorola 68xxx sintaksisidan foydalanadilar: chap operand manba, o'ng operand esa maqsad.
Ko'pgina ikkita operandli ko'rsatmalar uchun operandlardan biri (manba yoki maqsad) registr yoki xotira joylashuvi bo'lishi mumkin, ikkinchisi esa registr yoki bevosita qiymat bo'lishi mumkin. Bu bizga ikkita operandli ko'rsatmalarni quyidagi guruhlarga bo'lish imkonini beradi:

  • ro'yxatdan o'tish - ro'yxatdan o'tish

  • registr - xotira

  • xotira - ro'yxatga olish

  • bevosita qiymat - ro'yxatdan o'tish

  • bevosita ma'nosi - xotira

Xotiradan xotiraga operatsiyalarni (bevosita) bajaradigan ko'rsatmalar mavjud. Bular qator ko'rsatmalari va stek operatsiyalari.
Qattiq kodlangan registrlarni bilvosita ishlatadigan ko'rsatmalar:

  • ikki baravar aniqlik bilan ko'paytirish va bo'lish

  • kirish Chiqish

  • simlar bilan ishlash

  • sikllar

  • siljishlar

  • stek operatsiyalari (shu jumladan funktsiya chaqiruvlari)

  • tarjima yo'riqnomasi

32-bitli rejimda ko'pgina ko'rsatmalar 8 yoki 32 bitli operandlarga ega; 16 bitli operandlardan maxsus buyruq prefiksi yordamida foydalanish mumkin. Biroq, manzildagi ofset hajmini (8 yoki 32 bit) bu tarzda o'zgartirish mumkin emas.



Download 70.1 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling