Bajardi: cao010-4 guruhining talabasi Xamrayev Azizjon Tekshirdi
Download 70.1 Kb.
|
- Bu sahifa navigatsiya:
- Segment registrlari gs, fs, es, ds, cs, ss
esi, edi, ebp, esp registrlari:
Quyidagi turdagi butun ma'lumotlarni o'z ichiga olishi mumkin Bit (faqat bit maydonlarida ishlaydigan ko'rsatmalar) Ikkilik kodli o'nlik sonlar (BCD); baytda bitta raqam mavjud, bir baytda ikkita raqam bilan ishlaydigan ko'rsatmalar mavjud Word (16 bit); registrga yozishda yuqori qismi ishlatilmaydi va o'zgarmaydi; qo'ng'iroq mos ravishda si, di, bp, sp nomi bilan amalga oshiriladi 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: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling