I-BOB
C++ TILNING BAZAVIY VOSITALARI
Tilning tarkibi
Ixtiyoriy tabiiy tilning matnida 4 ta asosiy elementni ajratib ko’rsatish mumkin: simvollar, so’zlar, so’z birikmalari va muloxazalar. Bunga o’xshash elementlarni algoritmik til ham o’z ichiga oladi, faqat so’zlar leksemalar (elementar tuzilmalar) so’z birikmalari - ifodalar, mulohazalar – operatorlar deb ataladi. Leksemalar simvollarda, ifodalar – leksema va simvollardan, operatorlar – simvollar, ifodalar va leksemalardan iborat (1.1-rasm).
Til alifbosi, yoki uning simvollari – tildagi barcha matnlari yoziladigan asosiy bo’linmas belgilar.
Leksema, yoki elementar tuzilma – mustaqil ma'noga ega tilning minimal birligi.
Ifoda biror qiymatni hisoblash qoidasida boradi.
Operatorlar biror amalning tugallangan tavsifini beradi.
1.1-rasm. Algoritmik til tarkibi.
Murakkab amalni tavsiflash uchun operatorlar ketma-ketligi talab etiladi. Operatorlar murakkab operatorlarga yoki blokka birlashishi mumkin. Bu holda ular bitta operator deb qaraladi.
Operatorlar bajariluvchi va bajarilmaydigan bo’ladi. Bajariluvchi operatorlar ma’lumotlar ustida amallarni bajaradi. Bajarilmaydigan operatorlar ma’lumotlarni tavsiflash uchun xizmat qiladi. Shuning uchun ularni ko’pincha tavsiflash operatorlari yoki oddiy tavsiflashlar deb ham ataladi.
Tilning har bir elementi sintaksis va semantika bilan aniqlanadi. Sentaksis ta’riflar til elementlarini yasash qoidalarini o’rnatadi, semantika ularning ma’nosi va foydalanish qoidalarini aniqlaydi. Yagona algoritmga birlashtirilgan tavsiflar va operatorlar jamlanmasi algoritmik tilda dasturni tashkil qiladi. Dasturni bajarish uchun uni prosessorga tushinarli mashina kodlaridan iborat tilga o’tkazish talab etiladi. Bu jarayon bir nechta bosqichlardan iborat. 1.2 – rasmda C++ til uchun bu bosqichlar tasvirlangan.
Dastlab dastur preprosessorga uzatiladi, u uning matnidagi direktivalarni boshqaradi (masalan, matnga dasturga foydalaniladigan elementlar tavsiflarini o’z ichiga olgan matnli fayllar sarlovhali fayllarni kiritish).
Hosil qilingan datuslarning to’liq matni kompilyator kirishiga tushadi, u leksemalarni ajratadi, so’ngra til grammatikasi asosida bu leksemalardan tuzilgan ifoda va operatorlarni o’qiydi. Bunda kompilyator sintaksis xatolarni ajratadi va ular bo’lmagan taqdirda obyekt modulni ko’radi.
Komponovkachi yosh bog’lanishlar muharriri obyekt modulga boshqa obyekt modullarni, shu jumladan, ixtiyoriy dasturda murojaati mavjud kutubxonalar funksiyalarini o’z ichiga olgan modullarni ulab dasturning bajariluvchi modulini shakllantiradi (masalan, ekranga chiqarish uchun ). Agar dastur bir nechta berilgan fayllardan iborat bo’lsa, ular alohida komplasiya qilinadi va komponovka bosqichida birlashtiriladi. Bajariluvchi modul .exe kengaytmaga ega va odatdagi tarzda ishga tushiriladi.
Tilni tavsiflash uchun xujjatlar ko’pincha biror formal meta til, masalan, Bekus – Naur formulalari yoki sentaksis diagrammalardan foydalaniladi.
Ko’rgazmali va oddiyligi uchun bu kitobda sentaksis tuzilmalarning majburiy bo’lmagan qismidan iborat qismlarga olinadigan, konkret qiymat bilan almashtirish zarur bo’lgan matn ruscha yoziladi, bir nechta elementlardan bittasini tanlash vertikal chiziq bilan belgilanadi.
Masalan,
Do'stlaringiz bilan baham: |