Alqoritmləşdirmə Proqramlaşdırmanın əsasları Translyator və kompilyatorlar


Mövzu 2 Proqramın sazlanması.Interpretator və kompilyator



Yüklə 1,04 Mb.
səhifə5/53
tarix02.01.2022
ölçüsü1,04 Mb.
#37204
1   2   3   4   5   6   7   8   9   ...   53
alqoritmlesdirma ve proqramlasdirmanin esaslari muhazire

Mövzu 2

Proqramın sazlanması.Interpretator və kompilyator

Plan:

  1. Proqramın sazlanması

  2. Interpretator və kompilyator

İnteqrallaşdırılmış mühitdə proqram mətni yığıldıqdan sonra, proqramı sazlamaq lazımdır.
Proqramın sazlanması zamanı proqramda mövcud olan sintaksis səhvlər kompilyator tərəfindən aşkar edilir.Proqramı sazlamaq üçün Compile\Make əmrini icra etmək və ya F9 klavişini basmaq kifayətdir.
Əgər proqramda səhvlər olarsa, kursor həmin mövqedə yerləşəcək və kompilyatorun birinci sətrində həmin səhvin əlaməti haqqında məlumat peyda olacaqdır.Proqramda mövcud olan sintaksis səhvlər aradan qaldırıldıqdan sonra, son nəticələr almaq üçün proqramı icra etmək lazımdır. Bunun üçün Run menyusundan Run əmrini icra etmək və ya Crtl+F9 klavişini basmaq lazımdır.
Bu zaman ekrana istifadəçi pəncərəsi adlanan yeni pəncərə çıxacaqdır. Bu pəncərədə proqram dəyişənlərinə ilkin qiymətlər daxil edilir və nəticələr alınır.Proqramın icrası başa çatdıqdan dərhal sonra, kompilyatora qayıdış baş verir, inteqrallaşdırılmış mühit ekrana qayıdır və istifadəçi pəncərəsinin üstünü örtür.Alınmış nəticələri təkrarən görmək və ya onları təhlil etmək üçün istifadəçi pəncərəsini yenidən ekranda göstərmək lazımdır.Kompilyatoru ekrandan müvəqqəti olaraq götürmək üçün Debug (sazlamaq) menyusundan User Screen (istifadəçi pəncərəsi) əmrini icra etmək və ya Alt+F5 klavişlərini basmaq lazımdır.Tərtib olunmuş proqram vasitəsilə də istifadəçi pəncərəsini ekranda göstərmək olar. Bunun üçün proqramda sonuncu sətirdən əvvəlki sətirdə, yəni end operatorundan əvvəl, readln prosedurunu yazmaq lazımdır.Bu zaman kompilyator proqrama ilkin verilənin daxil ediləcəyini gözləyir, lakin readln prosedurunda heç bir dəyişən yazılmadığı üçün, proqrama heç bir qiymət daxil edilməyəcək və Enter klavişi basılana qədər istifadəçi pəncərəsi bağlanmayacaqdır.Proqramın yerinə yetirilməsi zamanı da kompilyator tərəfindən səhvlər aşkar edilə bilər. Belə səhvlər semantik xarakterli olur. Bu səhvlərə "yerinə yetirilmə vaxtının səhvləri" deyilir. Kompilyator səhvlər haqqında aşağıdakı məlumatı verir.
Run-time error errnum at seqment:offset errnum - səhvin kodu, seqment:offset- səhvin baş verdiyi yaddaşın ünvanıdır. Proqramlaşdırma dili vasitəsilə hazır proqram yox, ancaq qurulmuş alqoritmi təsvir edən mətn yaradılır. Proqramçının başa düşdüyü dildə olan bu proqram maşının başa düşdüyü dilə çevrilməlidir. Bunun üçün kompüterdə translyatorlar və kompilyatorlar olur.Proqram ancaq onların translyatorları olan halda icra oluna bilərlər. Translyatordan fərqli olaraq kompilyatorlar exe-faylların yaradılması üçün istifadə olunur ki, onlar da sərbəst icra oluna bilərlər (yəni, proqpamin yazildiğı mühitdən (sistemdən) asılı olmadan). Proqramlaşdırma dillərinin səviyyələri. Müxtəlif tip prosessorlar müxtəlif tip əmrlər sisteminə malikdir. Əgər proqramlaşdırma dili konkret prosessor tipinə yönəlibsə və onun xüsusiyyətlərini nəzərə alırsa, onda ona aşağı səviyyəli proqramlaşdırma dili deyirlər. Assembler aşağı səviyyəli proqramlaşdırma dilidir. Çünki o, bir əmri mnemonika adlanan simvol işarəmələrinin köməyilə ədədlər şəklində yox, maşın kodları şəklində verir. Assemblerin köməyilə çox səmərəli və kompakt proqramlar yaratmaq mümkündür. Assemblerdən adətən, sistem əlavələrin, drayver-proqramların, kompüterin aparat resurslarına müraciət edən proqram modullarının hazırlanması üçün istifadə olunur. Aşağı səviyyəli proqramlaşdırma dillərindən, adətən yüksək səviyyəli peşəkar proqramçılar istifadə edir. Bu dillərdə tutulan proqramlar yaddaşda az yer tutmaqla yanaşı, daha sürətlə icra olunurlar. Yüksək səviyyəli proqramlaşdırma dilləri isə adi dilə daha yaxın və insan üçün daha aydın başa düşüləndir. İnterpretatorlar( ing. interpret ~ ru. интерпретировать ~ tr. yorumlamak ) – deyimin və ya komandanın dekodlaşdırılması (translyasiya olunması) və yerinə yetirilməsi əməli. İnterpretasiya zamanı proqramın hər bir deyimi ayrıca translyasiya olunur və dərhal yerinə yetirilir, bundan sonra növbəti deyim translyasiya olunur və yerinə yetirilir və s. Bunun alternativ üsulu olan kompilyasiya, proqramın bütün deyimlərinin birdən icra koduna (obyekt koduna) çevrilməsini nəzərdə tutur; sonradan onun yerinə yetirilməsi isə ayrıca prosesdir.Bu çevrilmə müxtəlif yollarla aparıla bilər: Birinci yol ilkin proqramın hər bir sətrini maşın koduna çevirən (translyasiya edən, ing. translate) proqramı başlatmaqdır. Bu proqram bir sətri çevirir və onu yerinə yetirilmək üçün mərkəzi prosessora verir, yalnız bundan sonra növbəti sətrin çevrilməsinə keçir. Belə proqrama interpretator deyilir.Bu proqramı iki müxtəlif dilli şəxsin ünsiyyətinə kömək edən tərcüməçi ilə müqayisə etmək olar. Birinci şəxs nəsə deyir, tərcüməçi onun dediklərini tərcümə edir. İkinci şəxs cavab verir və onun cavabı birinci şəxsə tərcümə olunur. Bu proses bütün dialoq müddətində davam edir.Bu yanaşmanın üstünlüyü onun istifadəçi üçün sadəliyindədir. Proqram yazılıb başladıldıqdan dərhal sonra kompüterin hər dəfə nə etdiyini görmək olur. Əgər proqramda nəyisə dəyişmək lazımdırsa, bu dəyişiklik edilir və proqram yenidən translyasiya olunur. Ancaq bu yolun bir çatışmazlığı var: proqram tam hazır olduqdan sonra da, hər dəfə icra olunmazdan qabaq onun hər bir sətri təzədən maşın koduna çevrilir və nəticədə proqramın ümumi icra müddəti uzanır. İnterpretator (ing. interpreter) proqramlaşdırma və ya skript dillərində yazılmış instruksiyaları (qaynaq kodu) aralıq dilə tərcümə edib sonra icra edən proqramdır.Kompilyatordan fərqli olaraq interpretator bütün qaynaq kodunu bir dəfəyə maşın  dilinə çevirərək obyekt modulunu meydana gətirmir. İnterpretator qaynaq kodunu sətir-sətir translasiya edərək icra edir.İnterpretatorun ümumi iş prinsipi aşağıda təsvir olunmuşdur:

İnterpretatorların müsbət cəhətləri:



  1. Əməliyyat Sistemlərindən asılı olmaması.

  2. Dəyişikliklər zamanı yenidən kompilyasiyaya ehtiyacın olmaması.

İnterpretatorların mənfi cəhətləri:

1)Proqramın çalışması üçün kompüterdə interpretatorun olması.2)İşləmə sürətinin nisbətən aşağı olması



Mövzu 3

Yüklə 1,04 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   ...   53




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin