tasvirlangan
.H X L /.H X H
Ob’ekt
kodining
chiqish fayli
16 lik
sanoq sistemasida kichik va katta
baytlarda tasvirlangan
.L IB
M PLIB
da yaratilgan va komponentlashgan
M P L IN K
bilan bog’langan
kutubxona fayli
.L N K
Komponovshikning chiqish fayli
.C O D
chiqish simvolli yoki tuzatish fayli.
M P A S M
yoki
M P L IN K
da
shakllanadi
8.3. M PAS M ni d irektiva lari
T il direktivalari - bu
natija faylida uchratiladigan , ammo foydalanuvchi
kodga to’ g’ridan-to’g’ri tarjima qilinmaydigan assembler buyruqlaridir.
MPASM da direktivalarning 4 ta asosiy turi mavjud:
♦ M a’ lumot direktivalari
♦ Listing direktivalari
♦ Boshqaruvchi direktivalar
♦
Makro-direktivalar
M a’ lumot direktivalari xotirani taqsimlashni va ma’ lumotlami simvolik
belgilanishiga ruxsat etilishini boshqaradi.
Listing direktivalari MPASM fayli listingi va formatini boshqaradi.
Boshqaruvchi direktivalar sektsiyalanuvchi odatdagi assemblerli kodlami
tanitishda foydalanadi.
Makro-direktivalar
aniqlangan
makrotela
tashqarisida
ma’ lumotlami
taqsimlash va bajarishni boshqaradi.
Ushbu foydalanilgan MPASM ning bir nechta direktivalari izohi quyida
ko’rsatilgan.
CODE-ob’ ekt kodlari sektsiyasini boshlanishi;
Formati :
[
] code []
Ob’ ektlar moduli generatsiyasi vaqtida ko’rsatilgan.
Programma kodlari sektsiyasi boshlanishini e’ lon qiladi. Agar
ko’rsatilmasa sektsiya nomi code bo’ ladi. Agar adres ko’rsatilmagan bo’ lsa nolga
yoki tenglikda ko’rsatilgan qiymatga start beruvchi adres o’matiladi.
Misol:
RESET
code H ’O IFF’
Goto SRART
#DEFINE - matnni almashtirish belgisini aniqlaydi
Formati:
#defme []
#DEFINE direktivida aniqlangan belgilarni simulyatorda ko’rib bo’ lmaydi.
Bu vazifani EQU direktivi bajaradi.
#define length 20
#define control 0x19,7
#define position (X,Y,Z) (y-(2*z+x)).
Test label dw position (1,length,512)
290
B sf
c o n tr o l
;
END-programma bloki tugashi
Formati:
end.
Programma tamomianganligini bildiradi.
Programma to'xtashidan so'ng simvollar jadvali fayl listingidan tashlanadi.
Misol:
Start
; foydalanilgan kod;
end: program m a tugadi
EQ U - assembler konstantalarim aniqlaydi.
Form ati:
equ - expr
bu yerda -e x p r ■
INCLUDE-boslilanu'icli Javl Vo'ldiruvehisini o'chirish;
Form ati:
Include
s ,s_vsdels.inc":sysyem dels
Include
U S '! - liftin g param eterlarini o'nm tisb
Form ati:
List [- list option •. . list op tion :-j
'-lis t-’ u ire k tiv i llstingga kirishga ruxsat beradi. agarda bu taqiqlangan bo'lsa.
List (list) yo'riqtiomasida I'oydalaniladigan
parametrlar
8.5-jadval
Paramelr
!
Jim lik
Izuhi
b o vie h a
i j i M i i a l l a i
( ^ n n n
|
Ml
(Jatoulagi sinn pila r soni
n -n n n
i
:•'>
Yaraqdagi qatorlar soni
t- O N O i )
P=
pe-’
o i l -
None
Prmsessor u irin i tiklash: PIC16C54. PIC I6C 84.
IMC161-84. P IC I7C 42
I
i
lix > j
I lex
; Sam>a sistcmasini im ilik bo'vicha_lik|ash: hex. dee. «на.
\\— - l e v e l !
0
: l-'a>I listm jtm a diagnostika xabarlari sathini tiklash
I
0 - hamma axbnrotlarni kiritish
:
I - o g o lila m in sh la r va xalolarni kiritish
■
1 - faqabxalolam i kin tish
X --o n]of
j
ОП
M akrokengaU m alam i yoqish x oki o'chirish
NOLIST - listingga kirishni o’chirish
Formati:
NOLIST
O rg - programma boshlang’ ich adresini tiklash
Formati:
org
291
Boshlang’ich adress programmalarini kod navbati bo’yicha
adresiga
moslashish uchun tiklaydi. MPASM siljigan ob’ekt kodlarini kiritadi , M PLIN K esa
aniqlangan adres bo’yicha kodni joyin i almashtiradi. Jim lik bo’yicha boshlang’ ich
adres nol qiymatiga ega bo’ ladi. Ob’ ekt modulini yaratayotganda yo’ riqnomadan
foydalanmaslik mumkin.
M isol:
In t_ l org 0x20; vektor bo’yicha 20 ga o’tish
Int_2 org int l+OxlO; vektor bo’yicha 30 ga o’tish
PROSESSOR - protsessor toifasini o’rnatish
Formati:
Prosessor
Foydalaniladigan protsessorlar toifasini o’rnatadi
:[16C54]
|16C55|16C57|16C71|16C84|17C42], Umumiy protsessorlar oilasini quyidagi
ko’ rinishda tanlash mumkin: [16CXX|16CX|16CXXX]
SET - assembler o’ zgaruvchilarini aniqlash
Formati:
set
SET yo’ riqnomasi EQU yo’riqnomasi bilan bir x il vazifani bajaradi.
M isol:
Area set 0
Widthset 0x12
Length set 0x14
Area set lenghth * width
Lenght set lenghth+1
T E T L E - programma nomini aniqlash
Title ""
Bu yo’riqnoma listing varaqlarining tepa chizig’ ida matnni o’rnatadi.
- bu ASSCI1 nusxasi o’rnida keluvchilar qo’shtirnoq ichiga olinadi.
Masalan:
title "operational code, rev 5.0"
8.4. Y uqori darajadagi tilda m ik ro k o n tro lle m i program m alashtirish va
sozlash vositalari.
8.4.1. M P L IN K kompanovshigi.
Programmaninig
ko’ chirilmas
(siljimas)
kodi
assemblerlashda
generatsiyalanadi va programma operatori tartibida programma xotirasida
joylashadi. Belgiga ko’chiriladigan operatorlar adres belgisiga mos o’tish kodi bilan
almashtiriladi.
Kodlarni generatsiyalaganda har bir programma kodi sektsiyasi CODE
buyrug’ i orqali tekshiriladi.
Programma kodlarini to’ liq joylashtirish va o’tish adreslarini fizik
joylashtirish M PLIN K
kompanovshigi
orqali bajariladi.
M P LIN K
kompanivshigi
quyidagilami bajaradi.
292
• Kodlar va ma’ lumotlami taqsimlaydi, ya’ni OZU ni qaysi qismida kodlar va
qaysi qismida o’zgaruvchilar joylashishi.
• Adreslarni taqsimlaydi, ya’ ni tashqi ob’ ekt jo ’ natmalarini o’ zlashtiradi.
• Bajaruvchi
kodlarni generallashtiradi , ya’ ni M K xotirasiga saqlash mumkin
bo’ lgan .hex formatli faylni uzatadi.
• Adreslar o’ rtasidagi muvofiqlikka xizmat ko’ rsatadi, ya’ ni ma’ lumot yoki
programmalarni adreslar bilan band bo’ lgan fazoda joylashmasligini ta’minlaydi.
• Ishga tushirish uchun simvolli ma’ lumot uzatadi.
8.4.2. МР1ЛВ kutubxona mencdjeri.
MPLIB kutubxona mencdjeri fayl kutubxonalarini yaratish va o'zgartirish
uchun ishiatiladi. Fayl kutubxonasi bu bir faylda joylashgan ob'ekt modulini
to'plami.
M P LIB “ lilenanie.o1' nomii \aCOFF formatli ob'ck) modullari ishiatiladi.
Kutubxona
modullarini
ishlatish
programma
Dostları ilə paylaş: