13-amaliy ish Assembler tilida asosiy operatorlar bilan ishlash


Download 48.02 Kb.
bet2/7
Sana17.06.2023
Hajmi48.02 Kb.
#1530787
1   2   3   4   5   6   7
Bog'liq
13-ameliy

Bayroqlar reestri
Bayroq – bu 1 (bayroq o’rnatilgan), agar biron bir shart bajarilgan bo’lsa, aks holda 0 (bayroq olib tashlangan) qiymatlarini qabul qiluvchi bit. Protsessordagi bayroqlar registri protsessorning joriy holatini ko’rsatib turuvchi bayroqlar to’plamidan iborat.

Bit №

Belgilanishi

Nomi

Tavsifi

Bayroq turi

FLAGS

0

CF

CarryFlag

Wtkazish bayrog’i

Holat

1

1

Rezervda




2

PF

ParityFlag

Juftlik bayrog’i

Holat

3

0

Rezervda




4

AF

AuxiliaryCarryFlag

Ёrdamchi o’tkazish bayrog’i

Holat

5

0

Rezervda




6

ZF

ZeroFlag

Nul bayrog’i

Holat

7

SF

SignFlag

İshora bayrog’i

Holat

8

TF

TrapFlag

Trassirovka bayrog’i

Tizimli

9

IF

InterruptEnableFlag

Uzilishlarga ruxsat berish bayrog’i

Tizimli

10

DF

DirectionFlag

Yo’nalish bayrog’i

Boshqaruvchi

11

OF

Overfloo’Flag

To’lib ketish bayrog’i

Holat

12

IOPL

I/O PrivilegeLevel

Kirish-chiqish ustivorlik darajasi

Tizimli

13

14

NT

NestedTask

Bir birini o’z ichiga olgan masalalar bayrog’i

Tizimli

15

0

Rezervda




EFLAGS



16

RF

ResumeFlag

Qayta yangilanish bayrog’i

Tizimli

17

VM

Virtual-8086 Mode

8086 protsessorining virtual rejimi

Tizimli

18

AC

AlignmentCheck

Tekislikni tekshirish

Tizimli

19

VIF

VirtualInterruptFlag

Uzilishlarga ruxsat beruvchi virtual bayroq

Tizimli

20

VIP

VirtualInterruptPending

Virtual uzilishni kutuvchi

Tizimli

21

ID

ID Flag

CPUID qo’llanmaga ruxsat mavjudligini tekshirish

Tizimli

22




Rezervda






31


2. Assembler tilinig asosiy tushunchalari
İdentifikatorlar
_ . ? @ $ belgilarni, sonlarni va lotin harflarini ishlatish mumkin. Katta va kichik harflar ekvivalent hisoblanadi.
Butun sonlar
2, 8, 10, 16 sanoq tizimlaridagi butun sonlar ishlatiladi. Sanoq tizimini ko’rsatish uchun harf oxiriga mosligi bo’yicha b, o/q, d yoki h harflari qo’yiladi. Harf bilan boshlanadigna 16-lik sonlar 0 dan boshlanishlari kerak, bo’lmasa kompilyator ularni identifikatorlardan farqlay olmaydi.
Simvolli malumotlar
Simvollar va qatorlar assembler tilida apostrof va qo’shtirnoqlarga olinadi. Quyidagi misollar ekvivalent: 'don''t', 'don"t', "don't", "don""t".
İzohlar
Assembler tilida izohlar “nuqta verguldan boshlanadi” va buyruqlardan keyin yoki qator boshida boshlanishi ham mumkin.
Ekvivalent direktivasi
Ekvivalent direktivasio’zgarmaslarga tarif berishga yordam beradi:
<nomi> EQU
Wzgarmas ifodalar, qator va boshqa nomlar operand bo’lishi mumkin.
Malumotlarni aniqlash direktivalari
Assembler tilida 5 ta malumotlarni aniqlash direktivalari mavjud:

  • DB (definebyte) – 1 bayt hajmga ega o’zgaruvchanni aniqlaydi;

  • DW (defineo’ord) – 2 bayt (so’z) hajmga ega o’zgaruvchanni aniqlaydi;

  • DD (definedoubleo’ord) – 4 bayt (ikkita so’z) hajmga ega o’zgaruvchanni aniqlaydi;

  • DQ (definequado’ord) – 8 bayt (to’rttalik so’z) hajmga ega o’zgaruvchanni aniqlaydi;

  • DT (definetenbytes) – 10 bayt hajmga ega o’zgaruvchanni aniqlaydi.

Barcha direktivalar oddiy o’zgaruvchanlarni va massivlarni elon qilish uchun ishlatilishi mumkin.
Malumotlarni aniqlash direktivalari sintaksisi quyidagicha:
<nomi> DB [, ]
<nomi> DW [, ]
<nomi> DD [, ]
<nomi> DQ [, ]
<nomi> DT [, ]
Operand o’zgaruvchanning boshlang’ich qiymatini beradi. Operand sifatida son, simvol yoki so’roq belgisi (initsializatsiya qilinmagan o’zgaruvchanlarni aniqlash) bo’lishi mumkin.
Buyruqlar
Assembler tilining buyruqlari – mashina buyruqlarini simvollar ko’rinishidagi yozilishi. Buyruqlar quyidagi sintaksisga ega:
[:] [] [;]
Belgi – bu nom. Belgi albatta ikki nuqta bilan ajralishi kerak, ammo alohida joylanishi ham mumkin.
Belgilar boshqa joylardagi buyruqlarga havola qilish uchun kerak, masalan o’tish buyruqlarida. Assembler tili kompilyatoribelgilarni buyruqlarning adresi bilan o’zgartiradi.
Mnemokod – bu bajarilishi lozim bo’lgan operatsiyani ko’rsatuvchi ishchi so’z. Mnemokod buyruqning asosiy qism deb hisoblanadi.
Buyruqlar operandasi bir birlaridan vergul bilan ajratiladilar.
Buyruqlar operandasi
Assembler tilida opernd bo’lib quyidagilar ishlatiladi:

  • Nomi bilan murojaat etiladigan registrlar;

  • To’g’ridan to’g’ri operandlar – to’g’ridan to’g’ri buyruqda yoziladigan o’zgarmaslar;

  • Xotira yacheykalari – xotiraga kerakli yacheykani adresi yoziladi;

Adresni ko’rsatish uchun quyidagi imkoniyatlar mavjud:

  1. Wzgaruvchining nomi uning adresi bo’ladi. Masalan, x o’zgaruvchisiga murojaat qilish uchun buyruqda x yoki [x] ko’rsatiladi.

  2. Xotira yacheykasi adresi registrda saqlanishi mumkin. Xotiraga registrda saqlanuvchi adres orqali murojaat qilish uchun, buyruqda registrning nomi to’rtburchakli qavsda yoziladi. Masalan, [ebx]. Aytib o’tilganidek, baza registrlari sifatida EBX, ESI, EDI va EBP registrlarini qo’llash taklif etiladi.

  3. Adresni formula orqali ham aniqlash mumkin. Buning uchun to’rtburchakli qavsda ifodalar yoziladi, masalan, [ebx + ecx] yoki [ebx + 4 * ecx].

Assembler tilining buyruqlar tavsifida operandlarni belgilash uchun harflardan iborat bo’lgan qisqartirmalar ishlatiladi, r (registrlar uchun), m (xotira uchun) yoki i (to’g’ridan to’g’ri operandalr uchun) va opernadning hajmini ko’rsatuvchi sonlar 8, 16 yoki 32. Masalan:

Download 48.02 Kb.

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




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