O’tish buyruqlari
O’tish buyruqlari bayroqlarni o’zgartirmaydi.
Shartsiz o’tish (sakrash)
JMP nishon; nishonga to’g’ridan-to’g’ri o’tish
JMP op; op - r32, m32, op dagi adresga bilvosita o’tish
Taqqoslash buyrug’i
CMP op1, op2; op1-op2 CF, OF, SF, ZF bayroqlari
Operand talablari SUB buyrug’i bilan bir xil
Shartli o’tish
Sintaksis JXXX nishon; XXX o’tish shartini belgilaydi
Mnemonik kodlar ro’yxati
JE ; teng bo’yicha o’tish
JNE ; teng emas bo’yicha
Qolgan shartlar uchun o’tishlar ishorasiz va ishorali sonlar uchun farq qiladi.
ishorasiz shart ishorali
JB < JL
JBE ≤ JLE
JA > JG
JAE ≥ JGE
Siklni boshqarish
Diqqat: Quyidagi buyruqlar o’tish buyrug’idan 128 baytdan oshmaydigan buyruqlarga o’tishga imkon beradi.
JECXZ nishon; Agar ECX = 0 bo’lsa, nishonga o’ting
LOOP nishon
Buyruq harakati: 1) ECX: = ECX -1; 2) Agar ECX ≠ 0 bo’lsa, nishonga o’tish sodir bo’ladi.
BUYRUQLAR
Lotin alifbosining barcha harflari: A—Z, a—z. Bu yerda jimlik holatida bosh va kichik harflar farqlanmaydi.
(Lekin - option casemap: none ).
0 dan 9 gacha bo’lgan raqamlar;
Belgilar ?, @, $, _, & . Ular ham harflar deb sanaladi;
Ajratuvchilar , . [ ] ( ) < > { } + / * % ! ' " \ = # ^ .
Ism uzunligi – 32 belgigacha.
Ism raqam bilan boshlanmasligi kerak.
Quyidagi operator ishlatiladi
offset o’zgaruvchisi nomi
Bu o’zgarmas ifoda; qiymati ma’lumotlar segmentidagi o’zgaruvchining adresiga teng.
Kiritish va chiqarish buyruqlari
INCHAR op ;belgi kiritish, op - r8 yoki m8
ININT op ;son kiritish, op - r32 yoki m32
OUTCHAR op ;belgini chop etish, op - r8, m8 yoki i8
OUTI op ;ishorali sonni chop etish, op-r32, m32 yoki i32
OUTU op ;ishorasiz sonni chop etish, op-r32, m32 yoki i32
OUTSTR op ;op adresli baytdan =0h baytgacha satrni chop etish
op - r32 yoki offset satrning nomi
NEWLINE; Writeln
EXIT; dasturning tugashi
Buyruq nomlari katta yoki kichik harflar bilan yozilishi mumkin.
ESP registrini operandlarda ishlatish mumkin emas.
Assembler dasturlash tilining dastur tarkibi hotira blok jamlanmalardan iborat bo’ladi, shunday bloklar hotira segmenti deb nomlanadi. Dastur bitta yoki bir qancha blok-segmentlardan tashkil topishi mumkin.
1) buyruq yoki yo’riqnoma (instruktsiya) – mashina kodining belgili ko’rinishini tasvirlaydi. Translyatsiya jarayonida assembler yo’riqnomalari mos mikroprotsessor tizim buyruqlariga o’zgartiriladi.
2) makrobuyruq (qism dastur) – dastur matni konstruktsiyaning aniq bir ko’rinishida rasmiylashtirish qaysiki dasturnu bajarish jarayonida almashtiriladi.
3) direktiva – assembler translyatoriga qandaydir amallarni bajarishni ko’rsatkichi hisoblanadi va u mashina ko’rinishida ifodalab bo’lmaydi, ya’ni analogi mavjud emas.
4) izoh qatori – har qanday belgilardan topgan majmua. Izohlar translyator tomonidan inkor qilinadi.
;
Direktiva operatori
Izoh matni
Buyruq operatori
Makrobuyruq operatori
Assembler dasturining gap-qator sintaksis diagrammasi
ism
Direktiva
operand_1
operand_N
…
izoh
Do'stlaringiz bilan baham: |