Read BLACKCURSE text version

O'ZBEKISTON ALOQA VA AXBOROTLASHTIRISH AGENTLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

«Axborot texnologiyalari» fakul`teti «Informatika va KG » kafedrasi

«Informatika» fani bo`yicha ma`ruzalar matni 1-qism

Toshkent -2011

Ma'ruza -1. Informatika va axborot tushunchasi. Informatikaning asosi va uning zamon taraqqiyotidagi ahamiyati Maqsad: Talabalarni informatika fani mazmun-mohiyati, axborot, axborot xossalari, EHMning element bazasi, sanoq-sistemalar va ular ustida amallar bajarish ko`nikmalarini hosil qilish. Kalit so'zlar: informatsiya, informatika, xabar, EHMning asosiy va qo`shimcha qurilmalari, sanoq-sistemasi. Reja 1. Informatika. Informatika fani. 2. Hisoblash mashinalari rivojlanish davrlari va avlodlari. 3. EHMning yaratilish tarixi. 4. EXM ning elementlar ba`zasi 5. Axborot. Axborot tushunchasi. 6. Informatika fanini jamiyatdagi o`rni va ahamiyati. 7. Informatika fanini boshqa fanlar bilan uzviy bog`liqligi. 8. Sanok sistemalari va ular ustida amallar. Informatika - (lotincha so`z information- tushuntirish), (frantsuzchaInformatique) so`zi bo`lib, Information (Informatsiya) va Avtomatique (Avtomatika) so`zlaridan tashkil topgan va informatsiya yig`ishni, qayta ishlashni, uzatishni, komp`yuter yoki boshqa texnik vositalar yordamida avtomatik tarzda amalga oshirishni o`rganishga bag`ishlangan fandir. Bu fan G`arbiy Yevropa davlatlari va Amerikada «Somruter Science», MDH va Sharqiy Yevropa davlatlarida esa «Informatika» nomi bilan yuritiladi. Bu o`rinda elektron hisoblash mashinalari juda katta hajmdagi informatsiyani qayta ishlashga imkon beradigan samarali quroldir. Ikkinchi muhim tushinchasi «Informatsion texnologiyalar» tushunchasidir. Odatda, «texnologiya» so`zi moddiy ishlab chiqarish sohasiga nisbatan ishlatilib, biror materialni qayta ishlash yoki predmetni tayyorlash jarayonining maxsus texnik usullarini ifodalash maqsadida ishlatiladi. Bundan tashqari grekchadan tarjima qilganda san`at, mahorat degan ma`noni bildiradi. Informatsion texnologiyalarda qayta ishlash uchun «xomashyo» sifatida «axborot» qaraladi va u komp`yuter -dastur va qo`shimcha texnik vositalar yordamida avtomatik tarzda qayta ishlanadi. Hozirgi kunga kelib, «Axborot texnologiyalar» informatika fanining ajralmas bir qismi bo`lib, u inson faoliyatining turli sohalarida uchraydigan informatsiyalarni, apparat-dastur vositalari va usullari

2

yordamida qayta ishlash kabi vazifalarni bajarishga mo`ljallangan. Bu ta`rifdan ko`rinib turibdiki, informatika va informatsion texnologiyalar tushunchalari birbiriga juda yaqin. Informatsion texnologiyalarning asosiy apparat vositasi elektron hisoblash mashinasidir. Dunyo bozorida mavjud turli-tuman EHM parklari orasida IVM (International Business Machine Corporation) komp`yuterlari yetakchi o`rin tutadi. Informatika atamasini 1969 yilda frantsuz olimlari tomonidan kiritilgan bo`lib, uning ma`nosi axborotni shaklan almashtirish haqidagi fan demakdir. Informatsiya bu bizni o`rab turgan moddiy olamning ob`ektlari, voqeahodisalari, jarayonlar va ularning o`zaro ta`siri, rivojlanishi va hakazolar haqidagi ma`lumotlar to`plamining inson tomonidan, uning sezish organlari yoki yordamchi texnik vositalar yordamida anglanishi, o`rganilishi natijasida hosil bo`lgan xulosa va ma`lumotlardir. Informatsiya odatda uzluksiz (analog) va raqamli (diskret) ko`rinishlarda bo`ladi. Uzluksiz informatsiyaga misol sifatida odam tovushini, musiqa asarini, raqamli signalga esa, 0 va 1 sonlar kombinatsiyalari orqali ifodalangan uzlukli ma`lumotlarni keltirish mumkin. Hisoblash texnikasining rivojlanish tarixiga nazar tashlaydigan bo`lsak, uning quyidagi bir necha muhim davrlarni o`z ichiga olishini ko`rish mumkin: - ibtidoiy hisoblash vositalari va hisob cho`tlar davri; - mexanik mashinalar davri; - elektro-mexanik mashinalar davri; - elektron hisoblash mashinalari davri. Mexanik mashinalargacha bo'lgan davr. Hisoblash ishlarining tarixi odamzod paydo bo`lishidan boshlanadi. Yer yuzidagi eng birinchi hisoblash vositasi sifatida ibtidoiy odamlar tomonidan qo`l barmoqlari foydalanilgan . Qo`l va oyoq barmoqlari ibtidoiy "hisoblash vositasi" vazifasining o`tagan. Binobarin, o`sha qadim zamonlardayoq hisoblashning eng birinchi va eng oddiy usuli-barmoq hisobi paydo bo`lgan. U qadimiy qabilalarda hisobni 20 gacha olib borishni ta`minlagan. Hisoblashning bu usulida bir qo`l barmoqlari "besh" ni, ikki qo`l barmoqlari "o'n" ni, qo`l va oyoq barmoqlari birgalikda "yigirma" ni bildirgan. Dastlabki va eng sodda sun`iy hisob asboblaridan biri birkadir. Birka 10 yoki 12 ta tayoqchadan iborat bo`lib, tayoqchalar turli-tuman shakllar bilan o`yilgan. Kishilar birka yordamida podadagi mollar sonini, yig`ib olingan hosil miqdorini, qarz va hokazolarni hisoblashgan. Tarixan qisqa davr ichida EHMning to`rtta avlodi yaratildi. EHMlarni avlodlarga ajratishlarni yaratishda nimalarga asoslanganligi, qanday tuzilganligi, texnik xarakteristikalari, foydalanuvchilar uchun qulayligi va boshqa tomonlari asos qilib olinadi. Hozirda EHMlarni quyidagi turlarga ajratish mumkin: mikro, shaxsiy, mini, o`rtacha tezlikda ishlaydigan, katta tezlikda ishlaydigan super EHMlar. Xozirgi kunda EHMlardan fizika, matematika, astronomiya, geofizika, texnika va

3

boshqa bir talay fan sohalarida turli xil murakkab amaliy masalalarni yechishda muvaffaqiyatli foydalanilmoqda, jumladan, atom energetikasi, gidrotexnika inshootlarini qurish, kemasozlik, kosmik fazoni zabt etish va boshqa shu kabi ko`plab sohalarning beqiyos darajada tez rivojlanib ketishi, shak-shubhasiz hisoblash texnikasining keng ko`lamda samarali qo`llanilayotganligi natijasidir. Hozirgi kunda EHMlar qo`llanilmayotgan biror sohani topish qiyin, yaqin kelajakda uning yana ham kengroq rivojlanishi va inson faoliyatiga chuqurroq kirib borishi kutilmoqda. Informatika inson faoliyatining turli jabhalaridagi axborotlarni izlash, saqlash, qayta ishlash va undan foydalanish masalalari bilan shug`ullanuvchi fandir. Mustaqil fan sifatida 40-yillarda Kibirnetika fani ba`zasida vujudga kelgan. Informatikaning asosiy vazifasi axborotni saqlash, uzatish, qayta ishlashning yangi usullari va vositalarini hamda informatsion texnika va texnologiyalarini yaratish, ularni amaliyotda qo`llash kabi muammolarni hal etishdan iboratdir. Informatikaning asosiy yo`nalishlari: 1. Hisoblash tizimlari va ularning dasturiy ta`minotini yaratish; 2. Informatsiya nazariyasi: informatsiyani uzatish, saqlash, qabul qilish, qayta ishlash bo`lgan protsessni o`rganadi; 3. Sun`iy intellekt; 4. Sistemali analiz; (Proektlanayotgan tizimni analiz qilish talablari qo`yiladi) 5. Komp`yuter grafikasi; 6. Telekommunikatsiya (lokal); 7. Amaliy ilovalar. Informatika fani, model, algoritm va dasturlashtirish shularga tayanib, informatika yoki axborot so`zi tushuntirish tavsiflash degan ma`noni anglatadi. U 3 ta sifatga ega bo`lishi shart. 1. Axborot o`rganilayotgan narsa yoki xodisani har taraflama to`liq ifodalash kerak yoki axborot to`liqlik sifatiga ega bo`lishi kerak. 2. Axborot ma`lum ma`noda qimmatli bo`lishi kerak. 3. Axborot ishonchli bo`lishi lozim. Qisqa qilib aytganda, informatika axborotlar ustida bajariladigan amallar va ularni qo`llash usullarini o`rganadigan fandir. Demak, informatika uchun asosiy bu- axborotdir. U informatika fanida asosiy tushuncha sifatida qabul qilingan. Informatika fan sifatida vujudga kelishi mamlakatimizda juda murakkab bo`lgan. Biroq, o`tmishda mavjud bo`lgan ziddiyatlarga qaramay, informatikaga nisbatan bugungi qiziqishga ikki muhim hodisa: 1982 yilning yozida akademik Glushkovning Qog`ozsiz informatika asoslari monografiyasining chiqishi va 1983 yilning mart oyida bo`lib o`tgan, olimlarning yillik umumiy yig`ilishida akademiya doirasida yangiinformatika, hisoblash texnikasi va avtomatlashtirish bo`linmasini tashkil etish bo`yicha qaror qabul qilindi. 1978 yili Yaponiyada bo`lib o`tgan Xalkaro kongresda shunday ta`rif keltirilgan: Informatika tushunchasi axborotni qayta ishlash tizimlarini

4

ishlab chiqish, yaratish, ulardan foydalanish va ularga moddiy-texnik xizmat ko`rsatish bilan bog`liq sohalar, shu jumladan mashinalar, asbob-uskunalar, matematik ta`minot va tashkiliy jihatlar, shuningdek sanoat, tijorat, ma`muriy, ijtimoiy va siyosiy ta`sir ko`rsatish kompleksini qamrab oladi. Bunda asosiy e`tibor odamlarning axborotga bo`lgan ehtiyojlarini qondirishning eng zamonaviy usullari va vositalari-samarali axborot komplekslarini yaratish, xar xil axborotlarni to`plash, qayta ishlash va ulardan foydalanish jarayonlarini avtomatlashtirish imkonini beradigan nazariy va xisoblash texnikasiga qaratilmoqda. Yuqorida aytib o`tildi. Informatika fanida asosiy tushuncha bu ­axborot. 2. Axborotning o'zi nima? Kibirnetika, umuman hisoblash texnikasi ishlatilayotgan sohalarda, sezgi a`zolari yordamida bevosita yoki bilvosita(asboblar) yordamida qabul qilingan ma`lumotga axborot (informatsiya) deyiladi. Axborot atrof-muhit ob`ektlari va hodisalari, ularning o`lchamlari, hosiyatlari va xolatlari to`g`risidagi ma`lumotlardir. Keng ma`noda axborot insonlar o`rtasida ma`lumotlar ayirboshlash, odamlar va qurilmalar o`rtasida signallar ayriboshlashni ifoda etadigan umummilliy tushunchadir. Yer yuzida jonli mavjudodlarning paydo bo`lishi bilan birgalikda ularning taraqqiyoti, hamda atrof -muxit to`g`risidagi, voqea xodisalar to`g`risidagi ma`lumotlarni bilish va ular to`g`risida axborot olish shu axborotlar asosida yashash sharoitlarini belgilash, rivojlanish taraqqiyotini anglash katta ahamiyatga ega. Bundan tashqari vaqt o`tishi bilan birgalikda tabiatni insonlar tomonidan o`rganish davomida bu axborotlarga yaratilayotgan va ishlatilayotgan mashinalar, apparatlar, o`lchov asboblari, texnologik jarayonlar haqidagi axborotlar qo`shilib bordi. Axborot odamlar o`rtasida uzatiladigan ma`lumotlar hisoblanib, keyingi vaqtda ishlab chiqarishni rejalashtirish va boshqarish uchun, hamda yashash sharoitlarini, iqtisodiy taraqqiyot darajasini belgilashda katta ahamiyatga ega bo`lib qoldi. Masalan: Biologik o`simliklarni o`rganish orqali o`simliklarni xayoti to`g`risidagi axborotlarni yig`adi va bu axborotlar asosida o`simliklarni tabiatdagi rolini, ularning ko`payishini, insonlar uchun kerakli tomonlarini aniqlaydi. Ikkinchi bir misol. Avtobus harakatlanish davomida motorning ovozi boshqacha chiqmoqda. Avtobucdagi yo`lovchilar uchun bu uncha ahamiyatsiz bo`lsa, malakali xaydovchi uchun esa bu axborot hisoblanib va bunga asosan, ya`ni motordan chiqayotgan ovozga qarab motorni xolatini aniqlaydi. Demak, axborot degan savolga qisqacha javob berishimiz uchun ikkita ob`ektga: manba va iste`molchi orasidagi bog`lanishga murojaat qilishimiz zarur ekan. Axborot manbaiga tabiiy ob`ektlar -sayyoralar, yulduzlar, insonlar, hayvonlar, o`simliklar, maydon, o`rmonlar -fan va texnikani rivojlantirishdagi ilmiy tajribalar, mashinalar, texnologik jarayonlar kiradi.

5

Axborot istemolchilar ro`yxati ham katta bo`lib unga, insonlar, xayvonlar, o`simliklar, turli xil o`lchov asboblari kiradi. Shuning uchun axborot keng doiradagi tushuncha bo`lib, jamiki ob`ektlar, mavjudodlar, jarayonlar haqidagi ma`lumotlarni o`z ichiga oladi. Axborot manbalari va istemolchilarining xar xilligi axborot shaklining turli ko`rishda bo`lishiga olib keldi: belgili, matnli va grafik. Axborotning belgili ko'rinishida asosan belgilar - xarf, belgi, raqam va boshqalar qo`llanilib, voqea-xodisalar haqidagi signallarni uzatishda foydalaniladi. Masalan, svetaforning yashil chirog`i yo`lovchi va haydochilarning harakatiga ruhsat berilganligini, sariq chiroq ko`cha xarakatini o`zgarishi va qizil chiroq esa harakatlanish taqiqlanishi xaqidagi ma`lumotlarni beradi. Matnli axborot juda murakkab axborot shakli bo`lib, bu shaklda ham xarflar, raqamlar, matematik belgilar qo`llaniladi. Faqatgina bu belgilar yakka xolda emas, balki ularning bir necha tuzilmalaridan, tartibli kelishidan tashkil topadi. Belgi va xarflarning o`zaro bog`lanishida, hamda inson nutqining matn ko`rinishida aks ettirilishida matn axborotini ishlatish qulay va keng qo`llaniladi. Masalan, ko`p miqdorda nashr etilgan kitoblar, qo`llanmalar, gazeta va ro`znomalar. Axborot shaklining grafik ko`rinishi turmush xayotimizda muhim ahamiyatga va katta axborotlar massiviga ega bo`lgan tabiat ko`rinishlari, foto tasvirlar, rasmlar, chizmalar, sxemalarni misol qilishimiz mumkin. Axborotning na bir og`irligi, na bir geometrik o`lchami va xech qanday ximik yoki fizik xususiyatlar mavjud emas. Lekin axborotning mavjud bo`lishi, saqlanishi, uzatilishi uchun biror bir material -ob`ekt bo`lishi zarur. Bunday ob`ektlar juda ko`p bo`lib va ularning soni taraqqiyot natijasida o`sib bormoqda. Xozirgi kunda axborotlarni asosiy tashuvchilari quyidagilardir:

Axborotni uzatishda Xavo Suv Elektr toki Efir Rentgen nuri Yorug'lik nuri Axborotni saqlashda Qogoz Ip -gazlama(Tkan') Daraxt Temir Kremniy Plastmassa

Axborotni uzatishda qadimdan biz bilgan va bilmagan xolatda havo qo`llaniladi. Xavoning tebranishi natijasida ko`p asrlardan buyon nutq uzatilib kelinmoqda. Bundan tashqari havoning tebranishi natijasida bizni o`rab turgan atrof-muhitdagi ovozlar -qushlarning sayrashi, dengizning shovqini, momoqaldiroqning gumburlashi, ishlayotgan mashina va apparatlarning ovozlari va boshqa ovozlar uzatiladi. Havoning tebranishiga o`xshash xolda suvning tebranishi orqali ham katta axborotlar uzatiladi. Masalan, suv satxlarini tekshiruvchilar va baliqlarni izlovchi dengizchilar o`rtasida axborotlarni uzatilishini misol qilishimiz mumkin.

6

Odamzod har daqiqa sezgi a`zolari orqali atrof muhitdan axborot yig`ib fikr qilishi va xayotiy muammolarni xal qilish choralarini o`ylab topib amalga oshirishi bilan xayot kechirishini hammamiz bilamiz. Axborot inson nutqida, kitoblardagi matnlarda, ziyolilar ixtirosida, mussavir tasvirida, turli o`lchov asboblarida va boshqalarda mavjuddir. Keyingi paytlarda axborotlarning haddan tashqari ko`payishi sababli, ularni insonning jismoniy imkoniyatlari doirasida hal etilishi mumkin bo`lmay qoldi. Bunday muammolarni hal etish maqsadida yaratilgan zamonaviy axborot texnoligiyalari va tizimlari, ayniqsa shaxsiy komp`yuterlar insonning eng yaqin yordamchisiga aylandi. Zamonaviy axborot texnologiyalari va tizimlaridan foydalanish orqali axborotlarni qayta ishlash mexnat unumdorligini oshirishning muhim omillaridan biri bo`lib qoldi. Ma`lumki, komp`yuter axborotlarni kiritish, to`plash va ular ustida turli xil arifmetik va mantiqiy amallarni bajarish hamda ularni tahlil etish uchun mo`ljallangan. Bunday axborotlar ustida ish olib borish qoidalari EHM uchun tuzilgan dasturlar orqali amalga oshiriladi. Hozirgi davrni informatikasiz tasavvur etib bo`lmaydi. Axborot texnologiyalari bugungi kunda xayotimizning hamma sohalarini qamrab olgan. Informatika sohasining asosiy resursi -axborotdir. Ma`lumotlarga u yoki bu sabablarga ko`ra foydalanilmaydigan, balki faqat saqlanadigan belgilar yoki yozib olingan kuzatuvlar sifatida qarash mumkin. Agar bu ma`lumotlardan biror narsa tug`risidagi mavxumlikni kamaytirish uchun foydalanish imkoniyati tug`ilsa, ma`lumotlar axborotga aylanadi. Shuning uchun axborotni foydalaniladigan ma`lumotlar, deb atasa ham bo`ladi. Masalan, qog`ozga telefon raqamlarini ma`lum tartibda yozib qo`yilsa, avvalgi ma`lumot axborotgga aylanadi. Informatikaning asosiy tashkil etuvchilari model', algoritm va dasturlashdir. Model' -(lotincha so`z bo`lib, modolos -o`lchov, namuna, me`yor ma`nosini bildiradi) -keng ma`noda biror ob`ekt yoki ob`ektlar sistemasining obrazi yoki namunasi yoki qiskacha modellashtirishdir. Algoritm - ma`lum bir turkumdagi hamma masalalarni yechish uchun ma`lum tartib bilan bajarilishi kerak bo`lgan chekli sondagi buyruklar ketma-ketligidir. Algoritmni analitik, jadvallar, so`zlar, grafiklar (blok-sxema) orqali tasvirlash usullar mavjuddir. Algoritm sxemalarini grafik ko`rinishda tuzishda amallarning har bir tipiga blokli belgi ko`rinishida ifodalangan strukturaning ta`sir qilish belgisi deb ataluvchi geometrik shakl mos keladi. Algoritmik til - belgilar to`plami va bu belgilardan algoritmlarni yozish uchun mo`ljallangan til konstruktsiyalarini tuzish va ifodalash qoidalari sistemasidir, qisqa qilib aytganda dasturlashtirish tilidir. Dasturlashtirish -dasturlarni tuzish usullari va yo`llarini o`rgatuvchi fandir.

7

Dasturlashtirish ijodiy ishdir, chunki, katta, aniq ifodalangan maqsadga erishish usullarini qidirish umumiy holda yangi ilmni yaratish yoki jalb qilishni talab qiladi. Har bir Elektron hisoblash mashinalari (EHM) o`zining dasturlashtirish tilida yozilgan dasturlarinigina tushuna oladi va uni ijro etadi. Algoritmik tilni mashina tushunishi uchun mashina tilida yozilgan translyatorlar yaratiladi. Bunday translyatorlar har bir tur mashina uchun bir marta tuziladi. Bu turdagi translyatorlar algoritmik tildan to`g`ridan-to`g`ri mashina yoki avval avtokod yoki assemblerga, so`ngra esa belgilashlar tilida mashina tiliga tarjima qiladi. Tarjima qilish jarayonini esa mashinaning o`zi bajaradi. Umuman, algoritmik tilni yaratish qiyin emas, lekin shu yaratilgan algoritmik tildan mashina tiliga tarjima qiluvchi translyator dasturini yaratish og`ir masaladir. Qo`yilgan masalani yechish uchun mashina tilida yozilgan dastur yaratilishi kerak. Mashina tilida dastur tuzish qiyin bo`lgani uchun EXM dan samarali foydalanish va turli masalalarni tez yechishga qulay sharoit yaratish maqsadida dastur tuzishni avtomatlashtiruvchi algoritmik tillar kashf qilinadi. Algoritmik til mashina va dastur tuzuvchi tiliga yaqin bo`lgan oraliq til. Algoritmik til uch xil bo'ladi: universal, ma`lum sinf masalalarini yechish uchun mo`ljallangan (problemali) va EHM ning tuzilishiga bog`lik bo`lgan (avtokod) algoritmik tillar. Hozir 5000 dan ortiq algoritmik tillar mavjud bo`lib, ularning soni tobora oshib bormoqda va algoritmik tillarni takomillashti-rish hamda yangi universal algoritmik tillar yaratish ustida uzluksiz ishlar olib borilmoqda. 3. EHMning yaratilish tarixi. Charl`z Bebich va uning g`oyasini mukammallashgan ko`rinishini Djon Fon Neyman taklif qilgan. Uning printsipi dastur asosida boshqariladigan avtomatik ravishda ketma-ket ishlash g`oyasidan iborat di. Hozirda ko`p komp`yuterlar shu g`oya asosida ishlaydi, lekin hozirgi vaqtda ko`p protsessorli komp`yuterlar, ya`ni bir vaqtda dasturning bo`laklarini ketma-ket emas, parallel bajaradigan komp`yuterlar xam yaratilganligini eslatib o`tish joiz. Demak, komp`yuter avvaldan tuzilgan dastur asosida ishlaydi. Bu o`z navbatida dastur qo`yilgan masalani komp`yuterda yechish uchun qandaydir dasturlash tilida yozilgan buyruqlar (operatorlar) ketma-ketligidir. Dasturlash tilida yozilgan dasturlar maxsus tarjimon dasturlar yordamida komp`yuter tiliga o`tkaziladi. Komp`yuter tili 0 va 1 lardan tashkil topgan va ma`lum qoidalar asosida yoziladigan ketma-ketliklardan iborat. Djon Fon Neyman printsipi bo`yicha avtomatik ravishda bajariladigan dastur avval komp`yuterning xotirasiga kiritiladi (yuklanadi). Xotirada turgan dastur asosida dasturni tashkil etuvchi xar bir operator ketma-ket bajariladi. Fon Neyman asosiga ko`ra komp`yuter quyidagi qurilmalardan iborat bo`lishi kerak edi:

8

Komp`yuter qurilmalarining aloqa strukturasi. Arifmetik-mantiqiy qurilma ­ bu arifmetik va logik amallarni bajaradi. Boshqarish qurilmasi- bu maxsus qurilma bo`lib, hozir qanday operator bajarilishi va undan keyin qaysi operator bajarilishi ustidan nazorat o`rnatadi va uning bajarilishini ta`minlaydi Tashqi qurilmasi- axborotlarni kiritish-chiqarish Xotira quydagicha bo`lishi, ya`ni bir nechta nomerlangan yacheykalardan va ularda dastur yoki ma`lumotlar joylashgan va qayta o`zgartirilgan (ishlangan) bo`lishi kerakligi aytilgan. Chizmada keltirilgan bir chiziq boshqaruvchi aloqa ikki chiziq axborotli Odatda komp`yuter ikki qismdan tashkil topgan: 1. Hardware (komp`yuterni tashkil etuvchilari, ya`ni qattiq qismlari) 2. Software (komp`yuterning dasturiy ta`minoti, ya`ni yumshoq qismlardan). Komp`yuterlarning amalda turli xillari mavjud. 1. Raqamli (diskret). 2. Anologli (uzluksiz). 3. Maxsuslashtirilgan komp`yuterlar bor. CH.Bebbidj g`oyasida EHMni xotiralash dasturi yordamida boshqarish printsipini o`z ichiga olgan barcha asosiy qismlar bor edi. Uning g`oyalarining afzalligiga ancha keyin yetarligicha baholandi. 1937 yildan boshlab hozirgi kungacha bir necha mln.dan ortiq EHMlar yaratilgan. Biz ularni hozirda komp`yuter deb ataymiz. EHMlarning soni ortishi bilan bir vaqtda ularni takomillashtirish jarayoni yanada jadallashdi. Markaziy protsessor va operativ xotiraning elementlar bazasiga, texnik xarakteristikasiga va arxitekturasining murakkabligiga qarab EHMlarni davrlarga va avlodlarga ajratish qabul qilingan. Tezkorlik va operativ xotira xajmi EHM ning asosiy xarakteristikalaridir. Tezkorlik bir sekundda bajariladigan mashinaviy amallarning o`rtacha soni bilan baholanadi. Hozirgi vaqtda hisoblash mashinalarining rivojlanishining 3ta davri va 5ta avlodi bor. Keyingi avlodining chegaralari ham yaqqol ko`rinmokda.

9

Hisoblash mashinalari rivojlanishining birinchi davri bu mexanik davrgacha bo`lgan mashinalar. Birinchi avlod mashinalari. (1950 yillar boshlari) Birinchi avlod EHMlari markaziy protsessorining elementlar bazasi sifatida umumiy soni bir necha o`n minglarga yetgan elektron lampalardan foydalanilgan. Operativ xotira ferrit uzaklar bloklarida qurilgan. Ko`plab ishlab chiqarilgan sovet davri mashinalaridan birinchi avlodga mansublari Strella (1953 y.), Ural (1954y.), M-20 (1959y.), Minsk -1 (1960 y.), BESM seriyali qator mashinalar kiradi. Sekundiga 10000 amalni bajaradi. Xotirasiga 2047 tagacha son sig`adi. Operativ xotira hajmi mashinaviy so`zning uzunligi bilan ikkilik rakamlar yoki bitlar (bit-bo`lak, bo`lakcha ma`nosini anglatadigan inglizcha bit so`zidan olingan bo`lib, bitta ikkilik raqamidan tashkil topgan ma`lumotdagi informatsiya miqdori kabi aniqlanadigan informatsiya birligini anglatadi) soni bilan aniqlanadi. Mashinaviy so`zning standart uzunligi 8 ta ikkilik raqamni o`z ichiga oladi bunday birlikni bayt (bite-bo`lakcha) deyiladi: 1 bayt- 8 bit. Shunga o`xshash kattaroq o`lchov birliklari ham ishlatiladi: 1-kilobayt (kb)=1024 bayt, 1 megabayt(mg)=1024 kb. Ikkinchi avlod mashinalari. (1960 yillar boshlari). Ikkinchi avlod mashinalari birinchi avlod mashinalaridan farqli o`laroq markaziy protsessorining elimentlar bazasi sifatida tranzistorlar ishlatilgan operativ xotira, avvalgidek ferromagnit o`zaklaridan quriladi, ammo ularning o`lchovlari keskin kamaytirilgan edi. Ikkinchi avlod mashinalari o`zining parametrlari bo`yicha birinchi avlod mashinalaridan keskin ustunlikka ega edi. Ular bir sekundda 100000 taga yaqin amallardan iborat tezkorlikka va 3200 ta so`zdan iborat operativ xotira xajmiga ega edi. Tranzistorlar asosida yig`ilgan. Ikkinchi avlod mashinalari qatoriga Rossiyada ishlab chiqarilgan Mir, Minsk-22, M-220, BESM-4, Minsk-32 va boshqalar kiradi. 2-avlod - yarim utkazgichli diod va triod, tranzistorlar asosida; Uchinchi avlod mashinalari. (1960 yillar oxiri va 70 yillar boshlari). Yarim o`tkazgichlarni ishlab chiqarish texnologiyasining takomillashishi integral sxemalar deb nom olgan mikroelektron qurilmalarining yaratilishiga olib keldi. Alohida tranzistorlar o`rniga integral sxemalardan foydalanish EHM uzellari o`lchamlarini ancha kamaytirishga, ularning tejamliligiga va mustahkamligini oshirishga imkon beradi. Integral sxemalar uchinchi avlod mashinalari markaziy protsessorlarining elementlar bazasi bo`lib qoladi. To'rtinchi avlod mashinalari. To`rtinchi avlod mashinalari - bu hisoblash texnikasi rivojlanishida yangi qadamdir. To`rtinchi avlod EHMlari katta integral sxemalarda qurilgan, ko`p protsessorli mashinalardir. Bu turdagi EHM larning tezligi sekundiga 10 million amaldan ortiqdir. MA'LUMOTLARNI KIRITISH QURILMALARI: klaviatura, manipulyator(sichqoncha), joystik, nurli pero-mexanik sichkon, optik sichkon, skaner, grafik planshet, sensorli ekran, nutqni kiritish vositasi. Beshinchi avlod mashinalari -Hozirgi eng zamonaviy IBM PC tizimidagi komp`yuterlar 5-avlod EHM hisoblanadi. EHM bu avlodi matiqiy masalalarni hal qila oladi. Rasm va chizmalarni taniydi. Matnlarni tarjima qila oladi. Mul`timediya

10

sistemasi yordamida musiqa eshitish, tasvirlarning harakatini ko`rish mumkin. Bu avlod mashinalariga: IBM-386, 486, Pentium I, II, III, IV rusumidagi komp`yuterlar kiradi. Sanok sistemalari. EHM bu elektron raqamli qurilmadir. Elektron qurilma deyilishiga sabab har qanday ma`lumotlar EHM da elektr signallari orqali qayta ishlanadi. Raqamli deyilishiga sabab EHM da har qanday ma`lumot sonlar yordamida tasvirlanadi. Sonlarni yozish usuliga sanoq sistemasi deb ataladi. Sonlarni yozish uchun har bir sanoq sistemasida o`ziga xos turli belgilar to`plamidan foydalaniladi. Foydalanilgan to`plamdagi belgilar ularning soni, sanoq sistemasini harakterlovchi asosiy kattaliklardir. Sanoq sistemasida foydalaniladigan belgilar soni sanoq sistemasining asosini tashkil etadi. Berilgan sanoq sistemasida sonlarni yozishdagi foydalanilgan belgilar soniga qarab, o`nlik, ikkilik, sakkizlik, o`n oltilik va boshqa sanoq sistemalarni kiritish mumkin. Shu bilan birga sanoq sistemalarini pozitsion va nopozitsion turlarga ajratish mumkin. Nopozitsion sanoq sistemalarida, belgining qiymati uning egallagan o`rniga bog`liq emas. Misol sifatida rim raqamlari sanoq sistemasini keltirish mumkin. Masalan XX sonida X raqami, qaerda joylashganiga qaramasdan o`nlik sanoq sistemasidagi 10 qiymatini anglatadi. Hisoblash mashinalarining tuzilishi ularda dasturlashtirish sanoq sistemalari bilan chambarchas bog`liqdir. O`rinli sanoq sistemasida raqamlar soni ma`lum miqdorda bo`lib, ular sondagi tutgan o`rinlarga qarab turli qiymatni aks ettiradi. Masalan, bizga ma`lum bo`lgan 10 lik sanoq sistemasida 10ta raqam: 0,1,........9; 8 lik sanoq sistemasida 8 ta raqam: 0, 1, 2, ...7; 2 lik sanoq sistemasida 2 ta raqam: 0, 1; 16 lik sanoq sistemasida 16 ta raqam va xarflar: 0, 1, 2,.....9, A, V, S, D, Ye, F mavjud. Umuman ixtiyoriy P sanoq sistemasida raqamlar soni R ta bo`lib, ular 0 bilan R-1 orasida bo`ladi va R-shu sanoq sistemaning asosi deyiladi. Demak, sanoq sistema EHMning arifmetik-mantiqiy va fizik asosini tashkil etadi. EHMning tuzilishi, ularda dasturlashtirish s/s bilan chambarchas bog`liq. Nazorat topshiriqlari: 1. Informatika fani nimani o`rganadi? 2. Informatika fanini boshqa fanlar bilan uzviy bog`liqligi 3. Komp`yuterlarning amalda necha turi mavjud. 4. Informatikaning asosiy tashkil etuvchilari 5. EHMning avlodlari va ularning elementlar bazasi. 6. Fon Neyman printsipi. 7. Sanoq sistemalar va ular ustida amallar.

11

Test-savollari: #1. Informatika fani nimani urgatadi? ~A) Axborotlarni ulchashni usulini urgatadi ~V) Axborotlarni uzatishni usullarini urgatadi ~S) Axborotni kayta ishlashni usullarini urgatadi. ~D) Axborotlarni kabul kilish,saklash,kayta ishlash va uzatish usullarni ~Ye) Tugri javob yuk. #2. Axborot kanday xossalarga ega? ~A) Axborot uchta xossaga ega ~V) Axborot ikkita xossaga ega ~S) Axborot cheksiz xossaga ega ~D) Axborot beshta xossaga ega ~Ye) Tugri javob yuk #3. Kanday axborot turlari bor? ~A) cheksiz va uzlukli ~V) uzluksiz va uzlukli ~S) uzlukli va cheksiz ~D) uzluksiz ~Ye) uzlukli

12

Ma'ruza -2. Mavzu: Komp'yuterlar - informatikaning texnik asosi. Komp'yuterlarning texnik ta'minoti. Maqsad: Talabalarga komp`yuter haqida umumiy ma`lumot berish, EHM sinflari bilan tanishtirish, shaxsiy komp`yuterlarni tuzilishi va ishlash printsipi bilan tannishtirish. Kalit so'zlar: Komp`yuter qurilmalari, asosiy va qushimcha qurilmalari, komp`yuter sinflari, kodlash. Reja: 1. Komp`yuter haqida umumiy ma`lumot. Komp`yuterlarni sinflash. 2. Shaxsiy komp`yuterlarning tuzilishi va yaratilishi. 3. Komp`yuterning ishlash printsipi va tashkil etuvchilari. 4. Komp`yuterlarning asosiy va qo`shimcha qurilmalari va ularning vazifalari. 5. Kodlash. Kodlash usullari. Komp'yuter ­ inglizcha so`z bo`lib, u hisoblovchi demakdir. Garchand u hozirda hisoblovchi bo`lmasada, matnlar, tovush, video va boshqa ma`lumotlar ustida xam amallar bajaradi. Shunga qaramasdan hozirda uning eski nomi ­ komp`yuter saqlangan. Uning asosiy vazifasi turli ma`lumotlarni qayta ishlashdan ibora. Avvalo shuni aytish lozimki, ko`pchilik tushunchasida go`yoki biz kundalikda foydalaniladigan faqat SHK bor xolos. Bunga albatta sabablarn ko`pyu. Shulardan biri hozirgi zamon SHK lari ilgari universal deb hisoblangan komp`yuterlardan tezligi va xotira xajmi jixatidan ancha oshib ketgan bo`sada, ikkinchi tomondan ko`p masalalarni yechish uchun bu komp`yuterlar foydalanuvchilarni qanoatlantirishidadir. Hozirgi komp`yuter termini ko`p uchrasada, shu bilan birga EHM (Elektron Hisoblash mashinalari), HM (hisoblash mashinalari) terminlari xam hayotda ko`p ishlatilib turiladi. Ammo biz soddalik uchun faqat komp`yuter terminidan foydalanamiz. Komp`yuterlarning amalda turli xillari mavjud: Raqamli, analogli (uzluksiz), raqamli-analogli, maxsuslashtrilgan. Ammo, raqamli komp`yuterlar foydalanilishi, bajaradigan amallarning universalligi, hisoblash amallarining aniqligi va boshqa ko`rsatkichlari yuqori bo`lganligi uchun, ular ko`proq foydalinmoqda. Amalda esa hozir rivojlangan mamlakatlarda komp`yuterlarning 5 guruhi keng qo`llanilmoqda. Komp`yuterlarni xotirasining xajmi, 1 sek. da bajaradigan amallar tezligi, ma`lumotlarning razryad to`rida (yacheykalarda) tasvirlanishiga qarab, 5 guruxga bo`lish mumkin: - super komp`yuterlar (Super Computer) - blok komp`yuterlar (Manframe Computer) - mini komp`yuterlar (MiniComputer) - shaxsiy komp`yuterlar (PC- Personal Computer) - bloknot (Noutbook) komp`yuterlar. Super komp'yuterlar (TOR 500 komp`yuterlar) ­ juda katta tezlikni talab qiladigan va katta xajmdagi masalalarni yechish uchun uchun mo`ljallangan bo`ladi.

13

Bunday masalalar sifatida ob xavoning global prognoziga oid masalalarni uch o`lchovli fazoda turli oqimlarning ketishini o`rganish masalalari, global informatsion sistemalar va xakozolarni keltirish mumkin. Bu komp`yuterlar 1 sekundda o`n trillon amal bajaradi. Super komp`yuterlarga AQSH energetika vazirligining Sandiya laboratoriyasida o`rnatilgan 9472 protsessorli Intel ASCI Red komp`yuter sistemasi karvonboshlik qilmoqda. Shuni qayd lozimki, superkomp`yuterlarning ma`lum yo`nalish masalalarini yechishga qaratilgan turlari xam mavjud. Bu yerda komp`yuterlar tezligini o`lchovi ­ Linpacr parallel testida 1 TFLOPS-bu 1000 GFLOPSga teng, 1 GFLOPS esa-1000000 FLOPS ga, 1FLOPS- sekundiga 1000 amalga teng. Xususan bu komp`yuterlar yadro sinovlarini va eskirgan yadro qurollarini modellashtirishda qo`llaniladi.

Reyt ing 1 2 3 4 5 Super komp`yuterlar rusumi Intel ASCI Red SGI ASCI Blue SGI T3E1200 Hitachi SR 8000 SGI T3E900 Ishlab chiqaruvchi davlat AQSH AQSH AQSH Yaponiya AQSH Nomlari Protsessor rusumi 9472 6144 1084 128 1324 Quvvati (GFLOPS) 1338 634 430 368 264

Intel (AQSH) SGI (AQSH) SGI (AQSH) Hitachi Yapon SGI

Blok komp'yuterlar ­ fan va texnikaning turli sohalariga oid masalalarni yechishga mo`ljallangan. Ularning amal bajarish tezligi va xotira xajmi superkomp`yuterlarnikiga qaraganda bir-ikki pog`ona past. Bularga misol sifatida AQSH ning CRAY (kray), IBM 390, 4300, IBM ES/9000, Frantsiyaning Borrous 6000, Yaponiyaning M1800 rusumli komp`yuterlarini va boshqalarni misol qilib keltirish mumkin. Mini komp'yuterlar (kichik komp`yuterlar)- xajmi va bajaradigan amallar tezligi jihatidan blok komp`yuterlardan kamida bir pog`ona pastdir. Shuni aytish joizki, ularning gabariti (xajmi) tobora ixchamlashib, xatto shaxsiy komp`yuterdek kichik joyni egallaydiganlari yaratilmoqda. Bunday komp`yuterlar turkumiga ilk bor yaratilgan PDP-11 (Programm Driver Processor-dasturiy boshqaruv protsessori), ilgari harbiy maqsadlar uchun ishlatilgan VAX, SUN turkumli komp`yuterlar, IBM 4381, Hewlett Packard firmasining HP 9000 va boshqa mini komp`yuterlar misol bo`la roladi. Shaxsiy komp'yuterlar-hozirda ko`pchilik foydalanuvchilar IBM rusumidagi komp`yuterlardan keng foydalanishmoqda. IBM rusumiga mos komp`yuterlar deganda, xam programma ta`minoti mosligi, texnik ta`minoti mosligi, ya`ni bir-biriga mos kelishi nazarda tutilgan. Bunday komp`yuterlar Pentium 3,4 va 750-1000 megagertsni, xotira xajmi 64128, 512 megabaytni tashkil qiladi.

14

U quyidagi qurilmalardan tashkil topgan: - sistema bloki - monitor - klaviatura - sichqoncha - tashqi qurilmalar. ShEHMlarni tashkil etuvchi qurilmalari:

()

DX- doimiy xotira MP yoki SB ­ markaziy protsessor TX- tezkor xotira MDT- magnitli disk tuplagich MTT- magnitli tasma tuplagich Sistema bloki- yassi (desktop) yoki minora (town) ko`rinishida ishlab chiqariladi. Komp`yuterning asosiy qismlari sistema blokida joylashgan bo`lib, ular quyidagilardir: Tezkor xotira (RAM- Random Access Memory ­ixtiyoriy kirish mumkin bo`lgan mikroprotsessor. Tezkor xotira qurilmasi registrlardan tashkil topgan. Registr-ma`lumotlarni ikkilik shaklida vaqtinchalik saqlab turish uchun mo`ljallangan qurilma. Har bir registr o`z navbatida triggerlardan tashkil topgan. Trigger-bu kichik kondensator bo`lib, u elektr toki bilan zaryadlangan holda , aks holda 0 ni ifodalaydi. Registrdagi triggerlarning miqdori komp`yuterni necha razryadli ekanini bildiradi. Registrlar-bu yacheykalar deb xam yuritiladi. Bu yacheykalarning xar bir razryadida bir bit axborot joylashadi ya`ni 0 yoki 1 Razryadlar soni deganda bir vaqtda qayta ishlanadigan ikkilik razryadlar soni tushiniladi. Qurilmalar nazoratchilari (bu kontrolerlar, adapterlar, elektr manbai bilan ta`minlash bloki). Yumshoq disk qurilmasi (FDD-Floppy Disk Driver) Qattiq disk qurilmasi (HDD-Hard Disk Driver)

15

Faqat o`qish uchun mo`ljallangan lazer disk qurilmasi (CD-ROM Compact Disk Read Only Memory), shinalar, modem va boshqa qurilmalardan iborat. Sistema blokiga uning parallel (LPT) va ketma-ket (COM) portlari orqali ko`plab tashqi qurilmalarni ulash mumkin. Ular mos ravishda LPT1, LPT4 va COM1 ­ COM3 deb nomlanadi. Odatda LPT portga printer va COM portga faks-modem, sichqoncha va boshqa qurilmalar ulanadi. Monitor. Monitor (displey) komp`yuterda matn va grafik ma`lumotlarni tasvirlash ko`rish uchun ishlatiladi. Monitorlarning xar xil ko`rinishlari mavjud, ya`ni ular o`zidan chiqaruvchi past radiatsiyali (Lowe radiation) so`zlarini uchratish mumkin.Shuning uchun inson organizimiga tas`iri juda kam miqdorda bo`lgan 17-21 dyuymli SVGA (Super Video Grafic Adapter-ya`ni katta video grafik adapter) monitorlar ishlab chiqarilmoqda. Tasvirlash qobiliyati ekranning gorizontal va vertikal nuqtalar soni bilan beriladi. Masalan: 14 dyuymli komp`yuterlarda tasvirlash qobiliyati 800 x 600, 15 dyuymli monitorda 1024 x 768, 17 dyuymli monitorda 1280 x 1024 va 21 dyuymli monitorda 1600 x 1200. Bundan tashqari ularning yana bir xususiyati piksellar sonining kattakichikligidir. Tasvirlash qobiliyati 800 x 600 ga teng bo`lgan monitorlarda piksel 0,31 mm ga , 1024 x 768 ga teng bo`lgan monitorlarda esa piksel 0,28 yoki 0,25 mm teng bo`lishi kerak. Monitorning tez ishlashi adapterga bog`liq. Matn rejimida monitor tez ishlaydi, grafik rejimda sekinroq ishlaydi. Ularni tez ishlashini o`rnatish mumkin. Modem. Komp`yuter telefon tarmog`i orqali axborot almashish maqsadida ishlayotganida, telefon tarmog`idan olingan signalni qabul qiluvchi va uni raqamli axborotga aylantiruvchi qurilma kerak bo`ladi. Qurilmaning kirishida axborot modulyatsiya qilinadi, chiqishida esa demodulyatsiyaga uchraydi, shundan modem nomi kelib chiqqan. Modemning asosiy vazifasi komp`yuterdan kelgan signalni telefon tarmog`i ish chastotasi diapozoniga mos chastotadagi elektr signaliga aylantirib berishdan iborat. Bu tarmoqning akustik kanalini modem quyi va yuqori chastota yo`llaklariga ajratadi. Quyi chastotali yo`lak ma`lumotlarni uzatishda, yuqori yo`lakli chastotalar esa qabul qilish uchun qo`llaniladi. IBM rusumidagi komp`yuterlarni ishlab chiqaruvchi firmalar: IBM, Compaq, Hewlett-Packard, Packard Bell, Toshiba, Apple, Siemens Nixdors, Aser, Olivetti, Gateway, Sun va boshqa firmalardir. Ishlab chiqarilishiga qarab komp`yuterlar ikki xil bo`ladi: Oq yasalgan va lintsenziya asosida ishlab chiqargan komp`yuterlar Sariq yasalgan komp`yuterlar hisoblanadi. Yuqoridagi zikr etilgan komponiyalar ishlab chiqargan komp`yuterlar oq komp`yuterlar, Malayziya, Xitoy, Tayland, Koreya davlatlarida ishlab chiqarilgan komp`yuterlar Sariq yasalgan komp`yuterlar hisoblanadi. Noutbuk komp`yuterlar- bu komp`yuterlar xajmi ancha ixcham bo`lib, batareya asosida ishlaydi. Hozirda bunday komp`yuterlarni IBM, Compaq, Toshiba va boshqa firmalar ishlab chiqarmoqda. Komp'yuterlarning ishlash printsipi va tashkil etuvchilari.

16

Ixtiyoriy komp`yuterning ishlash printsipini birinchi bo`lib ingliz olimi Charl`z Bebich va uning mukammallashgan ko`rinishini Djon Fon Neyman taklif qilgan. Ushbu printsiplarni o`tgan mavzumizda aytib o`tilgan edi. Komp`yuterlarni ishlash printsipi: 1. tashqi qurilma yordamida komp`yuter xotirasiga dastur kiritiladi. 2. boshqarish qurilmasi yacheykaga joylangan dasturni bajarilishini boshqaradi va ta`minlaydi. Komp`yuter dastur asosida ishlaydi va bu dasturlar maxsus tarjimon dasturlari yordamida komp`yuter tiliga o`tkaziladi. Komp`yuter tili 0 va 1 lardan tashkil topgan. Ishlash printsipi: BIOS ­ bu doimiy xotira turiga kiradi va bu xotiradan faqat o`qish mumkin. Unda komp`yuter qurilmalarini ishlashini tekshirish, OT yuklanishini ta`minlash, xamda qurilmalarni sozligini tekshirish vazifasini bajaradi. EHM dastur asosida ishlaydi. Dasturlar maxsus tarjimon dasturlari yordamida komp`yuter tiliga o`tkaziladi. Komp`yuter tili 0 va 1 lardan tashkil topgan. Kodlash. Kodlash usullari ikki xil tekis va notekis bo`lishi mumkin. Tekis usullarda bir xajmdagi belgilardan foydalanilsa, notekic usulda belgilar turli xajmdagi belgilarni o`z ichiga oladi. Kodlashning notekis usuliga 1837-1838 yilda ishlab chiqarilgan telegraf, ya`ni Morze alifbosi misol bo`la oladi, chunki unda har bir xarf va raqamga uzun va qisqa signallarning ikkilik ketma-ketligi mos keladi. Bu usul bilan axborotlarni uzatish mumkin, lekin qayta ishlash imkoniyati yo`q, bo`lsada juda qiyin.Shuning uchun xam, EXM larda ma`lumotlarni kodlash tekis usullardan foydalaniladi. Kodlash, 8ta nol va birlarning turli kombinatsiyalaridan foydalanib, turli xildagi belgilarni kodlashimiz mumkin. 0 va 1 dan iborat raqamlar yordamida ularni 8tadan ajratsak, bu kombinatsiyalar soni 28=256 ga teng bo`ladi va ular yordamida 256 ta xarflar, raqamlar, turli boshqa belgilarni kodlash imkoniyati tug`iladi. 1 bayt joyda ikkilik kodi orqali 256 ta belgini kodlash mumkin. Kodlash qoidasi A V Kodlash sub`ekti Kodlash protsessi Kodlash usul sxemasi Kodlash deb- axborotni ma`lum bir qonun-qoida asosida komp`yuterda qayta ifodalash kodlash deyiladi. Misol: ILM I L M 10000010 10000100 10001000

1. 2. 3. 4.

Nazorat savollari: Komp`yuter haqida umumiy ma`lumot. Komp`yuterlarni sinflash. Shaxsiy komp`yuterlarning tuzilishi va yaratilishi. Komp`yuterning ishlash printsipi va tashkil etuvchilari. Komp`yuterlarning asosiy va qo`shimcha qurilmalari va ularning vazifalari.

17

5. Asosiy qurilmalarning vazifalari. 6. Tashqi qurilmalar va ularning vazifalari: a) Modemning vazifasi va ularning xalqaro standartlari. b) Plotter nima v) adapterning vazifasi g) videoxotira nima d) shina nima ye) kesh xotira j) printer turlari z) klaviatura vazifasi va turlari, tugmachalarning vazifasi. 7. Kodlash. Kodlash usullari. Test savollari #1. Ma`lumot nima? ~A) Kompyu`terda saklanadigan ma`lumotlar. ~V) Komp`yuterda saklanadigan ifodalar. ~S) Komp`yuterda saklanadigan rakamlar. ~D) Komp`yuterda saklanadigan belgilar yoki yozib olingan ifodalar. ~Ye) Xammasi tugri. #2. Axborot xajmining eng kichik ulchov birligi nima? ~A) bit ~V) rakam ~S) son ~D) belgi ~Ye) Tugri javob yuk

#3. Entropiya nima? ~A) Aniklilik ~V) Ishonchlilik ~S) Tushunarlilik ~D) Noaniklilik ~Ye) Axborotning noanikligining kursatkich tezligi #4. Komp`yuter nima? ~A) Keng ommaga muljallangan komp`yuterlar ~V) Fakat yozishga muljallangan komp`yuterlar ~S) Fakat ukush uchun muljallangan komp`yuterlar

18

~D) Ma`lumotlar ustida turli amallar bajaruvchi kichik xajimdagi elektron xisoblash mashinasi. ~Ye) Tugri javob yuk #5. Mikroprotsessor nima? ~A) Ma`lumotlarni ekranga chikaruvchi ~V) Matnlarni yozishda xizmat kiladigan ~S) Komp`yuterlar ishini boshkaruvchi va programmalar ishini ta`minlovchi ~D) Turli kurinishdagi ma`lumotlarga ishlov beruvchi ~Ye) Ma`lumotlarni xotirada saklaydi #6. Komp`yuterning asosiy kurilmasi nimalardan iborat? ~A) Printer,modem ~B) Skaner, printer ~S) Protsessor,monitor, klaviatura ~D) Mul`timediya,glazok ~Ye) Modem, skaner #7.Operativ xotira nima? ~A) Komp`yuterda ishlayotgan programma ma`lumotlarni saklaydi ~V) Grafik ma`lumotlarni chikaradi ~S) Dastur bajarilishini tashkil kiladi ~D) Ma`lumotlarni kiritish va chikarishini tashkil kiladi ~Ye) Axborotlarni kayta ishlashni urgatadi #8. Printer kanday kurilma? ~A) Diskda fayllar bilan ishlash ~V) Kataloglar bilan ishlash ~S) Ma`lumotlarni ekranda aks kildirish ~D) Komp`yuterdagi ma`lumotlarni kogozga kuchiruvchi kurilma ~Ye) Xammasi tugri.

19

Ma'ruza 3 Mavzu: Komp'yuterda masala yechish bosqichlari. Maqsad: Kom`yuterda masala yechish bosqichlari bilan tanishish, dasturlash tillari to`g`risida ma`lumot berish. Kalit so'zlar: dastur, dasturlash tillari, paskal` dasturlash tili. Reja: 1. 2. 3. 4. Komp`yuter dasturlari. Dastur va dasturchilar haqida. Dasturlash tillari haqida tushuncha. Masala yechish bosqichlari.

Komp`yuter dasturlari uch turga bo`linadi. 1. amaliy dasturlar 2. tizimli dasturlar 3. uskunaviy tizimlar. Amaliy dasturlar- bu foydalanuvchi bevosita ishlashi uchun mo`ljallangan dasturlardir. Tizimli dasturlar- bu komp`yuter qurilmalarining ishchi xolatini nazorat qiluvchi va boshqaruvchi dasturlar. Bundan tashqari u ko`p tizimli qobiqli dasturlar bo`lib, foydalanuvchini komp`yuter bilan qulay muloqatini ta`minlaydi. Tizimli dasturning asosiy sinfi, bu drayver bo`lib, u OT xususan tashqi yoki ichki qurilmalar bilan ishlash imkonini beradi. Hozirgi kunda dasturlash tilining bir necha turlari mavjud: Dasturlash tillari. EHM lar uchun dastur tuzish va uni ishlatish juda murakkab va ko`p mehnat talab etadigan jarayon bo`lib, uning uchun ko`p aqliy mexnat va vaqt talab qilinadi. Shuning uchun yangi algoritmik tillarni yaratuvchilar dasturlashni sodda va xayotimizning turli sohalarida mexnat qiluvchilar uchun tushunarli bo`lishiga xarakat qilishadi.

20

Hozirgi kunda dasturlash tillarining bir necha turi mavjud:

qbasic gwbasic Fcfv

60 80 -1

++ C#

Bundan ko`rinadiki dasturlash tillarining soni bir necha yuzdan ortiq ekanligi. Beysik dasturlash tili 1964 y. AQSH ning Dortmunt kollejining ilmiy xodimlari Jon Kemeni va Tomes Kurtts tomonidan yaratilgan. Bu til turli hisoblashlarga doir masalalarni komp`yuter bilan muloqat holda xal qilish uchun yaratildi. Basic co`zi Beginners Allpurpose Simbolic Instruction Code ­degan kengaytmasidan iborat bo`lib, ya`ni boshlovchilar uchun mo`ljallangan ko`p maqsadli, belgili ko`rsatmalar tili degan ma`noni bildiradi. Ushbu til komp`yuter xotirasiga qo`yiladigan talablarning juda kamligi sababli, SHK larda ishlatiladigan til bo`lib qoldi. Bu tilning bir necha ko`rinishi mavjud bo`lib, maqsad foydalanuvchilarning muloqotida osonlik tug`dirish. Assembler tili inglizchasiga Assembler- bu EHM uchun mashina kodlarida dastur yozish ishini yengillashtirish maqsadida 40 yillar ohiri 50 yillarning boshida yaratilgan. Fortran tili ­inglizcha Formula Translator ­ formulani translyatsiya qilish so`zlaridan qisqartirib olingan bo`lib, formula tarjimoni degan ma`noni bildiradi va bu til muhandislik, ilmiy-texnik masalalarni yechishga mo`ljallangan til hisoblanadi. Ushbu tilning qator variantlari yaratilgan, ulardan eng mashhurlari Fortran II va Fortran IV. Fortran tilining asosiy g`oyalari keyingi Algol-60, 68, PL-1 va boshqa tillarda rivojlantirilgan. Bu til 1954 yil yaratilgan. Shunday maqsadni 1970 yili Shvetsiyalik Oliy texnika o`quv yurtining professori Niklaus Virt o`z oldiga qo`ydi va u tomonidan tavsiya etilgan algoritmik tilni yaratdi va ulug` frantsuz olimi B.Paskal` (1623-1662) nomi bilan atadi.

21

1.Masalaning qo`yilishi- bunda berilgan masalaning to`g`ri qo`yilganligi va uni yechish uchun qanday ma`lumotlar kerakligi va qanday natija olinishini bilish kerak. 2. Masalaning matematik modelini tuzish-bu bosqichda matematik formula tanlanadi va matematik modeli tuziladi. 3. Masalani yechishni sonli usuli-bu bosqichda Hosil qilingan mat-k masalaning yechish usuli Tanlanadi va buning uchun sonli usul.foy-di. 4.Algoritmini tuzish-bunda mashina tushunadigan biror bir algoritmik tilda d/tuzish. 5.Dasturni kiritish va chiqarish. Mavjud muhitdan foydalangan xolda. 6. Kiritilgan dastur natijaga erishishi. 7. Natijani tahlil qilish.

Har bir til ham o`z alfavitiga ega. Agar tuzilgan programmada alfavitda yo`q xarf yoki belgilar uchrasa, mashina bunday belgini tushunmaganligi haqida xabar beradi. Biz ishlayotgan har qanday dastur biror -bir shaxs tomonidaaan yozilgan bo`lib, ular dasturchilar deb aytiladi. Dasturchilar dasturni maxsus tillarda yozishadi ­ularni dasturlash tillari deb aytishadi. Dastur ko`rinishlariga nisbatan quyi va yuqori dasturlash tillari sinflariga bo`linadi. Quyi dasturlash tillariga misollar quyi darajadagi dasturlash assambler tilini keltirishimiz mumkin. Yuqori dasturlash tillariga Paskal`, TSi, S++, S# tillarini keltirishimiz mumkin. Nazorat savollari: Komp`yuter dasturlari deganda nimani tushunasiz? Dasturlash tillarining qanday turlarini bilasiz va ularning roli Dasturlash tillarining bir-biridan farqi. Zamonaviy dasturlash tillari qaysilar va ularning xususiyatlari Komp`yuterda masala yechish bosqichlari

1. 2. 3. 4. 5.

22

Test savollari #1. Komp`yuterlarda ishlatiladigan dasturlar shartli ravishda uch guruxga bo`linadi.? ~A) tizimli, amaliy va faylli ~V) amaliy, uskunaviy va faylli ~S) tizimli, amaliy va uskunaviy ~D) uskunaviy, tizimli va faylli ~Ye) Tugri javob yuk. #2. Komp`yuterlarda ishlatiladigan amaliy dasturlar qanday dasturlar? ~A) komp`yuterni boshqarish va tekshirish vazifalarini bajaruvchi dasturlar ~V) komp`yuter uchun yangi dasturlar tayyorlash va tahrir qilishni yengillashtiruvchi dasturlar ~S) foydalanuvchiga aniq bir sohaga tegishli bo`lgan zarur ishlarni bevosita bajarishga imkon beruvchi dasturlar ~D) foydalanilayotgan ma`lumot nusxalarini hosil qiluvchi dasturlar ~Ye) Tugri javob yuk #3. Komp`yuterlarda ishlatiladigan uskunaviy dasturlar qanday dasturlar? ~A) komp`yuterni boshqarish va tekshirish vazifalarini bajaruvchi dasturlar ~V) komp`yuter uchun yangi dasturlar tayyorlash va tahrir qilishni yengillashtiruvchi dasturlar ~S) foydalanuvchiga aniq bir sohaga tegishli bo`lgan zarur ishlarni bevosita bajarishga imkon beruvchi dasturlar ~D) foydalanilayotgan ma`lumot nusxa larini hosil qiluvchi dasturlar ~Ye) Tugri javob yuk.

23

Ma'ruza 4 Mavzu: Operatsion tizim. Windows OT. Windows operatsion tizimi haqida umumiy tushuncha Maqsad: Komp`yuterning dasturiy ta`minoti, operatsion tizimlari bilan tanishtirish va Windows operatsion tizimi haqida umumiy tushuncha berish. Kalit so`zlar: dasturiy ta`minot, operatsion tizim, Windows OT. Reja: 1. Operatsion tizimlar haqida tushuncha. 2. Windows operatsion tizimi nima? 3. OT ga extiyoj resurslar taqsimoti va ularni boshqarish masalasi. 4. OTning qo`shimcha funktsiyalari. 5. OT ning ilova dasturlari. Windows Microsoft firmasining dastur mahsuli bo`lib, maxsus tayyorgarlikka ega bo`lmagan komp`yuterdan foydalanuvchilar uchun mo`ljallangan operatsion tizimdir. Bu operatsion tizimning nomi Darcha so`zining inglizcha aytilishi bo`lib, komp`yuter ishini har tamonlama boshqarish va inson-komp`yuter muloqatini amalga oshirish uchun xizmat qiladi. Uning asosiy maqsadi-komp`yuterdan foydalanishni iloji boricha soda va o`rganish uchun oson, shu bilan birga, foydalanuvchiga mumkin qadar keng imkoniyatlar yaratish ko`rinishiga keltirishdir. Shunday talablarga javob beruvchi MS Windows 95 operatsion tizimi 1995 yilning avgust oyida ishlatila boshlangan bo`lsa, uning ruscha varianti shu yilning sentyabr oyida kullanila boshlandi. MS Windows 95 operatsion tizimning yangi lahjasi emas, balki o`ta murakkab dasturlar majmui bo`lib, shu bilan birga foydalanish uchun oson va qulay OT dir. Komp`yuterdan foydalanishni osonlashtiruvchi tizim dasturlarining asosi ­ bu operatsion tizim (OT) dir. OT -bu foydalanuvchi va komp`yuter o`rtasida bevosita muloqot o`rnatishni, komp`yuterni boshqarishni, komp`yuter resurslaridan oqilona foydalanish kabi ishlarni bajaradi. Windows ning avvalgi lahjalari 3.0, 3.1, 3.11, 3.12 lar asos sifatida MS DOS ni qabul qilgan bo`lsa, hozirda mustaqil boshqa operatsion tizimni bo`lishini talab qilmaydi. Lekin shu bilan birga bu muhitda MS DOS va Windowsning eski ko`rinishlari, ya`ni versiyalari ishlash imkoniyati saqlangan. U quyidagi afzalliklarga ega: o`zlashtirishda nihoyatda oddiy va imkoniyatlaridan foydalanish imkoni mavjudligi; yuqori samaradorlikka ega va avvalgi versiyalaridan keskin farqlanishi;

24

foydalanuvchi bitta dasturiy ta`minot ostida bir necha imkoniyatga ega bo`lishligi; yuqori va tushunarli imkoniyatlari mavjudligi. Windows keng doiradagi foydalanuvchilar uchun mo`ljallangan bo`lib, ixtiyoriy sohada masalalarni yechmasada, ularni yechish uchun qulay vosita rolini o`ynaydi. Bu muxit foydalanuvchi uchun qulay imkoniyatlarga ega bo`lgan dasturdir. Hozirda ushbu OTning imkoniyatlari kengaymoqda va shu bilan birga boshqa OTlarning soda ko`rinishlari ishlab chiqilmoqda. Faqat bir maqsad yo`lida foydalanuvchi uchun qulay va tushunarli bo`lishligi. Bundan tashqari xizmat qiluvchi dasturlar mavjud. Ular dastur utilitlari bo`lib, yordamchi amallarni bajaradi va komp`yuter ishlashini yengillashtiradi. Komp`yuter ishlashi uchun zaruriy shart-dasturlarning mavjudligidir.

Operatsion sitemalar strukturasi va tarixi. Operatsion tizimlar SR/M-80 (8 razryadli SHK uchun) CR/M (16 razryadli SHK uchun) MS DOS (64 Kb xotiraga ega bulgan komp`yuterlarga muljal.) MS DOS 1.1, 1.25, 2.0, 2.11 va xk. MS DOS 3.3 (640 Kb xotiraga ega bo`lgan komp`yuterlar PC DOS DRD DOS OS/2 WARP UNIX Windows Linux va xakazo

Windows operatsion muhiti quyidagi asosiy imkoniyatlarga ega bo`lgani uchun xam u keng miqyosda ommaviylashadi: Universal grafika- Windows dasturlarining qurilmalarga va dastur ta`minotiga bog`liqsizligini ta`minlaydi. Yagona interfeys- Windows foydalanuvchining muloqati yagona, ya`ni turli dasturlar bilan ishlash qoidalari umumiy. Shuning uchun yangi dastur bilan ishlaganingizda bu qoidalardan foydalanishingiz mumkin. Mavjud dasturiy ta`minot bilan muvofiqligi- Windows MS DOS ning barcha amaliy paketlari, tahrirlagichlar, elektron jadvallar, ma`lumot bazalarini boshqarish tizimlari va boshqa turdagi amaliy dasturlar ishini to`la ta`minlaydi. Ko`p masalaliligi- Windows bir paytning o`zida bir necha masalani hisoblaydi, bir dasturdan boshqasiga osonlik bilan o`tishni ta`minlaydi.

25

Mavjud tezkor xotiradan to`liq foydalanish imkoniyati- Windows mavjud tezkor xotiradan to`la foydalana oladi. Qurilma resurslaridan xam to`liq foydalanadi. Bu qurilmalar bilan muloqatni o`zi ta`minlaydi. Ma`lumotlar almashuvi- Windows dasturlararo ma`lumotlar almashish imkoniyatiga ega. Bu maxsus Clipboard (ma`lumotlaar buferi) yoki DDE (ma`lumotlarning dinamik almashuvi, ya`ni boshqa dastur natijalaridan foydalanish) yoki OLE (ma`lumotlardan ularni tahrirlagan xolda foydalanish) yordamida amalga oshiriladi. Windowsda ekran desktop deb yuritiladi. Barcha amallar darchalarda bajariladi. Darchalar uch xil bo`ladi: 1. dasturlar darchasi 2. xujjatlar darchasi 3. muloqat darchasi Dasturlar darchasida bajarilayotgan dasturlar joylashadi. Darchaning yuqori qismida dastur nomi va menyu satri ko`rsatiladi. Dastur darchasi ekranning ixtiyoriy qismida bo`lishi mumkin. Hujjatlar darchalarini dasturlar ochadi. Masalan tahrirlagichlar darchada xujjatlarni hosil qiladi. Darcha sarlavhasida xujjat nomi yoziladi. Muloqat darchalari foydalanuvchining ayrim buyruqlariga javoban savollarni chiqarishda foydalaniladi. Windowsda piktogrammalar dastrularni kichraytirilgan holda bajarish uchun ishlatiladi. Piktogrammalar 3 xil bo`ladi: 1. dastur piktogrammalari 2. xujjat piktogrammalari 3. dasturlar sarlavxalari piktogrammalari. Dastur ta`minoti 2 ta guruxdan iborat: 1. sistemaning ishlashi bilan bog'liq sistema, ya'ni tizim dasturlari. 2. Amaliy dasturlar. Tizim dasturlari - komp`yuterning ishlashi uchun zarur dasturlar bo`lib, u komp`yuterning ishlashini va turli qurilmalar orasida muloqot o`ranatishni ta`minlaydi. Amaliy dasturlar ­ bu alohida masalalar va ularning to`plamini yechish uchun qaratilgan bo`lib, amaliy masalalarni yechish uchun mo`ljallangan. Buni qisqacha amaliy dasturlar paketi (ADP) deb ham aytish mumkin. Komp`yuterning dasturiy ta`minoti orasida eng kup qo`llaniladigani amaliy dasturiy ta`minoti (ADT)dir. Bunga asosiy sabab -- komp`yuterlardan inson faoliyatining barcha sohalarida keng foydalanishi, turli predmet sohalarida avtomatlashtirilgan tizimlarning yaratilishi va qo`llanishidir. Amaliy dasturiy ta`minotni quyidagicha tavsiflash mumkin.

26

Operatsion sistemalar. Sakkiz razryadli SHKlar uchun yaratilgan birinchi OT SR/M-80 (Control Program for Microcomputers) mikrokomp`yuterlar uchun boshqaruvchi dastur hisoblanadi. Bunga asos soluvchi Digital Research komponiyasining prezidenti Geri Kildell bo`ladi. Keyinchalik vaqt o`tishi bilan 16 razryadli komp`yuterlar yaratildi va unga MS DOS Operatsion tizimi yaratildi. Ushbu OT 64 Kbayt xotiraga ega bo`lgan komp`yuterlarga mo`ljallangan bo`lib, u 8 Kb xotiradan joy olar edi. Mualliflar MS DOS ni rivojlantirib uning bir necha versiyalarini ishlab chiqishdi. 1984 yilda MS DOS 3.0 versiyasiga asos solindi. IBM firmasi 1986 yilda 80386 mikroprotsessorga asoslangan komp`yuterni ishlab chiqardi. Bu mikroprotsessor asosida yaratilgan komp`yuter nazariy bir necha Gegabayt xotiraga ega bo`lishi mumkin edi. Ammo MS DOS OT 640 Kb bo`lgan komp`yuterlarga moslashgan edi. Shuning uchun MS DOS OT ni kengaytirishni maqsad qilib olindi va 1987 yil MS DOS 3.3 versiyasi yaratildi. Shu yili Microsoft firmasi tomonidan bir vaqtda bir nechta masalalar yechishga qodir bo`lgan OS/2 OT ishlab chiqildi. Lekin bu OT keng tarqalmadi sababi, MS DOS 3.3 ko`pchilikni imkoniyatlarini qoniqtirar edi. Hozirga kelib OT larning bir necha turlari ishlab chiqilgan va ishlab chiqilmoqda. Ammo MS DOS halida o`z kuchini yo`qotgani yo`q. MS DOS ning qobiq dsturi bu NC hisoblanadi. OT funktsiyalari. OT ­bu boshqaruv dasturidir. OT bu komp`yuterning fizik va dasturiy resurslarini taqsimlash va ularni boshqarish uchun ishlatiladigan dastur. Komp`yuter resurslari ikki xil bo`ladi: fizik va dasturiy. Fizik resurslar bu: - xotira - vinchester - monitor - tashqi qurilma.

27

Dasturiy resurslar bu: - kiritish va chiqarishni boshqaruvchi dasturlar - komp`yuter ishlashini ta`minlaydigan boshqaruvchi dasturlar - berilganlarni taxlil qiluvchi dasturlar - drayverlar - virtual ichki va tashqi xotirani tashkil qiluvchi va boshqaruvchi dasturlar. Dasturlash tizimi -bu dasturlash tillari va ularga most il protsessorlari majmuasidan iborat bo`lib, dasturlarga ishlov berish va sozlashni ta`minlovchi dasturlar to`plamidan iborat. Dasturlash tizimining tashkil qiluvchi dasturlar to`plami singari OT boshqaruvi ostida ishlaydi. Komp`yuter resurslari OT boshqaruvi ostida bo`ladi. OT ga ehtiyoj resurslar taqsimoti va ularni boshqarish masalasi zaruriyatidan kelib chiqadi. OT lardan quyidagi xususiyatlarga ega bo`lishi talab qilinadi: 1. Ishonchlilik. OT o`z ishlayotgan qurilmalar bilan birga ishonchli bo`lishi kerak. OT foydalanuvchining aybi bilan vujudga kelgan xatoni aniqlashi, tahlil qilishi va tiklash imkoniyatiga ega bo`lishi kerak. 2. Ximoya. OT bajarilayotgan masalalarning o`zaro bir-biriga beradigan tasiridan himoyalash kerak. 3. Bashorat. OT foydalanuvchi so`roviga bashoratchilik bilan javob berishi kerak. 4. Qulaylilik. Foydalanuvchiga OT ni taklif qilishdan maqsad resurslarni aniqlash va bu resurslarni boshqarish masalalarini yechishdan ozod qilishdir. Tizimni inson psixologiyasini hisobga olgan xolda loyihalash kerak. 5. Effektivlik. Resurlar taqsimotida OT foydalanuvchi uchun maksimal xolda sistema resurslaridan foydalanish darajasini oshirish kerak. Resurslarning OT tomonidan band qilinishi foydalanuvchi imkoniyatlarini kamaytirishga olib keladi. 6. Moslashuvchanlik. Sistema amallari foydalanuvchiga qarab sozlanishi mumkin. Resurslar majmuasi OT effektivligi va samaradorligini oshirish maqsadida ko`paytirishi yoki kamaytirilishi mumkin. 7. Kengaytiruvchanlik. OT ga Yangi fizik va dasturiy resurslar qo`shilishi mumkinligi. 8. Aniqlik. Foydalanuvchi sistema haqida qancha bilgisi kelsa shuncha bilish imkoniyatiga ega bo`lishi kerak. OT foydalanuvchini resurslar taqsimotidan ozod qilib komp`yuterni uch xil rejimda ishlashini ta`minlash mumkin: bir dasturli, ko`p dasturli, ko`p masalali. 9. Bir dasturli rejim -komp`yuterning barcha resurslari faqat bir dasturga xizmat qiladi. 10. Ko'p dastur (mul'tidastur)li rejim -OT bir vaqtning o`zida bir-biriga bog`liq bo`lmagan bir necha dasturlarga xizmat qiladi. Bunda resurslar dasturlar o`rtasida o`zaro taqsimlanadi. Mul`tidastur rejimi markaziy protsessor ish vaqti

28

bilan «periferiya» qurilmalari ishini ta`minlashdan iborat. Bu usulning bir dasturli rejimdan afzalligi resurslardan effektiv foydalanish va berilgan masala yechilishini tezlatishdir. 11. Ko'p masalali rejim -bu bir vaqtning o`zida bir necha masalaning parallel ishlashini ta`minlash ko`zda tutilgan. Bunda bir masalaning natijasi ikkinchi masala uchun berilganlar majmuasini tashkil qilishi ham mumkin. OT yechilayotgan masalalarning bir-biri bilan bog`liqligini rejalashtiradi va nazorat qilib boradi. Ko`p dasturli rejimdan farqli bu yerda barcha msalalar bo`yicha parallel ishlash ko`zda tutilgan. Ko`p masalali rejim faqat mul`titizimda tashkil qilinadi. OT foydalanuvchi so`rovini analiz qiladi va uni bajarilishini ta`minlaydi. So`rov OT tilida qabul qilingan buyruqlar ketma-ketligi ko`rinishida bo`ladi. OT so`rovlarni turli rejimlarada bajarishi mumkin, shu sababli u quyidagi turlarga bo`linishi mumkin: - paket rejimi tizimi; - vaqtni taqsimlash tizimi; - real vaqt tizmimi; - dialog tizimi. Paket rejimi- bu masalalar majmuasiga ishlov beruvchi sistema, ya`ni bir yoki bir necha foydalanuvchi tomonidan tayyorlangan topshiriqlarni bajaruvchi tizim. Vaqtni taqsimlash- bu bir vaqtning o`zida bir necha foydalanuvchiga xizmat qilish va foydalanuvchiga o`z masalasi bilan muloqot qilish imkonini beradi. Real vaqt- tizim berilgan real vaqt oraligida topshiriqning bajarilishini ta`minlaydi. Komp`yuter bunday OT bilan odatda bir dasturli rejimda ishlaydi. Muloqat operatsion tizmi -yakka foydalanuvchi uchun mo`ljallangan bo`lib komp`yuter bilan muloqotning qulay ko`rinishini ta`minlaydi. OT odatda bir dasturli rejimda ishlaydi. Uzilishga ishlov beruvchi modul` OT tarkibiga kiritilgan asosiy modullardan biri hisoblanadi. U foydalanuvchi dasturi bilan aloqani ta`minlaydi. Uzilishga ishlov beruvchi modul` operativ xotiraga yuklanadi va u yerda komp`yuter bilan ishlash seansi vaqtida saqlanib turadi. Bu modul` komponentalari qism dasturlaradan iborat bo`lib fayl sistemasi ishlashini, disk bilan berilganlarni almashishni va shu bilan birga maxsus xolatlarni taxlil qilishni ta`minlaydi. Amaliy dasturdan bu qism dasturlarga murojaat qilinganda uzilishga ishlov beruvchi modul` bajariladigan amallar parametrlarini oladi, uni tahlil qiladi va xolatni qo`rinishiga qarab kerakli modullarga bir yoki bir necha murojatni hosil qiladi. Buyruk protsessori funktsiyalari quyidagilardan iborat: 1. Klaviatura va buyruk faylidan kiritilgan buyrukni qabul qilish va sintaktik analiz qilish. 2. OT ichki buyruqlarini bajarish. 3. OT tashqi buyruqlarini va foydalanuvchining Amaliy dasturlarini yuklash va bajarish. Buyruk protsessori tomonidan bajariladigan buyruqlar ichki buyruqlar deyiladi.

29

Foydalanuvchi tomonidan bajariladigan buyruqlar tashqi buyruqlarni tashkil etadi. OT tashqi buyruqlari diskda alohida saqlangan dasturlar yordamida bajariladi. Ixtiyoriy OT ga turli amallarni bajarishga mo`ljallangan o`nlab dasturlar kiritilgan. Masalan, barcha OT larga kiritilgan qurilma drayveri deb nomlanadigan maxsus rezedent dasturlar kiritish-chiqarish tizimini to`ldirish uchun qo`llaniladi. Ushbu drayverlar qo`shimcha tashqi qurilmalarni yoki mavjud qurilmalarni nostandart ishlatilishini ta`minlab beradi. Tizimda bajariluvchi dastur jarayonni tashkil qiladi. Jarayon -bu xolatlarning yagona ketma-ketligidir. Jarayon bilan komp`yuter resurslari va fayllar bilan bog`liq bo`ladi. Har bir jarayon o`z jarayonini Yangi jarayon bilan almashtirib boshqaruvni Yangi jarayonga berishi ham mumkin. Ritchi va Tompson terminologiyasiga asosan dastur bajariladigan muhit-xolat (obraz) deyilar ekan. Xolat tarkibiga dastur va unga bog`liq bo`lgan berilganlar, ochiq fayllar xolati va joriy mundarija kiradi. Berilganlar segmentiga foydalanuvchi berilganlarni kiritishi mumkin va bu segment boshqa foydalanuvchilardan ximoyalangan. Foydalanuvchi bu oraliqni dasturiy usul bilan kengaytirishi yoki qisqartirishi mumkin. Berilganlar segmenti hajmi OT da qabul qilingan oraliq bilan aniqlanadi yoki real foydalanuvchi extiyojiga qarab tashkil qilinadi. Xotira chegaralanganligi tufayli foydalanuvchi OT dan exiyoji boricha foydalana olmasligi mumkin. Bo'linmas stek segmenti xotiraning bosh chegarasidan boshlab pastga qarab o`sadi. Bu oraliq zarurat tug`ilsa avtomatik tarzda o`sishi mumkin. Real sistemada stek segmentini boshqa qurilmalarda (masalan, virtual tashqi xotira) ham tashkil qilish mumkin. OT shunday tashkil qilinishi kerakki, bo`linmas stek segmenti xajmi yetarli bo`lmasa OT o`z o`rnini, sistemaning ishonchlilik darajasini kamaytirgan xolda, bo`linmas stek segmentiga bo`shatib berish imkoniyatiga ega bo`lishi kerak. Jarayonni boshqarish jarayon turli xolatda bo`lishi mumkin. Xolatni aniqlash OT dasturlari yoki foydalanuvchi tomonidan ayrim xollarda boshqarilishi ko`zda tutilgan. O`zgaruvchi xolat biron-bir ish bajarilishi natijasiga ko`ra hosil bo`ladigan xolat. Xolatni turlicha bo`lishi muhitga va real ishlovchi dasturga bog`liq bo`ladi. Ishga tayyor xolat- bu qaralayotgan dastur uchun kerak bo`lgan fizik hamda dasturiy resurslar ishga tayyor xolda turadi va qaralayotgan dastur faqat buyruqni kutadi. Ishlovchi ­bunda jarayonni boshqarish dasturi ishlovchi dastur uchun kerakli resurslarni ishga tayyor xolatga keltiradi va aktiv xolatdagi dastur yuqori imtiyozli hisoblanadi. Blokirovka qilingan -bu dastur ishlashi uchun ayrim resurslar yetarli bo`lmasa tizim bunday dasturni blokirovka qilib qo`yadi. Ya`ni bunda dasturga nisbatan tizim xolati aniqlanmagan hisoblanadi. Masalaning bog'lanishini boshqarish (ketma-ket, parallel)- Masala OT resurslari bilan ketma-ket yoki parallel bog`lanishi mumkin. Bunday bog`lanish asosan resurslarning jarayonga xizmat qilish tezligiga bog`lik. Agar resurslarning

30

xizmat qilish tezligi bir xil bo`lsa, resurslar xizmatga ketma-ket chaqiriladi. Agarda talab qilinayotgan resurs tezligi sekin bo`lsa va u mustaqil o`zi masalaga xizmat qila olsa, u holda bu resursga boshqaruv beriladi va navbatda turgan keyingi resurs aktiv holatga o`tadi va x.k. OT tarkibiga masalani xal qiluvchi dasturlarni parallel va ketma-ket bo`lgan qismini aniqlaydigan maxsus buyruqlar kiritiladi. Yordamchi qurilmalar Matematik ta'minot resurslari Kiritish va chiqarish Kiritish va chiqarish standart qurilmalari Kiritish - chiqarish qurilmalari va dasturlari Fil'tr Kommunikatsiya OTning qo'shimcha funktsiyalari Virtual xotirani boshqarish - bu OT tarkibiga virtual (faraziy) xotiraga ishlov beruvchi dastur kiritiladi. Virtual xotira -bu taxmin (tasavvur) qilinadigan xotira. Virtual xotira xajmi real fizik xotira xajmidan ko`p bo`ladi. Virtual tashqi xotirani boshqarish -bu tashqi xotirani boshqarish virtual ichki xotirani boshqarishga nisbatan bir muncha murakkabroq. Buning asosiy sababi ularning xajmidadir. Berilganlarni saqlanishi: ketma-ket ­foydalaniladigan berilganlar xotirada ketma-ket joylashgan bo`lsa, u xolda xotiraning navbatdagi manzilidan berilganlarni olish uchun xar safar keyingi manzil qidirilmasdan kerakli berilganlar ketma-ket tanlab olinadi. Indeksli ­bunda berilganlarning navbatdagi qismi tugagandan so`ng o`zining davomi qaerda joylashganligi haqidagi ma`lumot bevosita berilganlardan keyin joylashgan bo`ladi va bu ma`lumot tahlil qilinib berilganlarning davomi kursatilgan joydan boshlab taxlil kilinadi. Indeksli ketma-ket - bu indeksli boshkarishdan farqi berilganlar davomi ko`rsatilgan joydan emas balki bir nechta berilganlar birligidan iborat ketma-ketlik ko`rinishida beriladi. Ximoya. OT da ishlatiladigan berilganlar ximoyalangan bulishi kerak. Effektiv joylashtirish - bunda berilganlar pog`onama-pog`ona joylashtiriladi. Nazorat savollari: 1. Operatsion tizim nima 2. Dastur ta`minoti nechta guruhga bo`linadi. 3. Birinchi operatsion tizim yaratilishi va ularning vazifasi 4. Kiritish-chiqarish kurilmalari va dasturlari nima 5. Berilganlarning saklanishi turlari xakida. 6. Ximoya tushunchasi. 7. Virtual xotirani boshkarish tushunchasi 8. Virtual tashki xotira nima

31

9. Buyruk protsessori vazifasi 10. Operatsion tizim funktsiyalarini tushintirib Bering 11. Operatsion tizimning yuklanishini tushintirib bering? 12. BIOS ning vazifasi. 13. Sistema fayllari qaysilar va ularning vazifalari. 14. OT ni qayta yuklash deganda nimani tushunasiz. 15. Darcha turlari va ularning vazifalari 16. Piktogrammalar Test savollari #1. SHK ning dasturli ta`minoti nima? ~A) bu vaktinchalik ishlatilatiladigan vositalar tuplami ~V) bu doimiy ishlatiladigan dasturlar tuplami ~S) bu SHK xotirasida saklanadigan fayllar vositasi ~D) bu SHK ning asosiy vositalarini ifodalovchi dasturlar tuplami ~Ye) tugri javob yuk #2. Algoritmik tillariga quyidagilarning qaysi biri kiradi. A) Excel ~B) Word ~C) Passal ~D) Access ~Ye) bilmayman #3. Komp`yuterni qayta ishga tushirish uchun qaysi tugmachalar majmuasini ishlatish mumkin? A) Ctrl Alt B) Ctrl Del C) CTRL Alt Shift D) CTRL Alt Del Ye) Ctrl Del Shift

32

Ma'ruza -5-6. Mavzu: Algoritm. Algoritm tushunchasi. Algoritmlash asoslari. Hisoblash jarayonlarining turlari va ular uchun algoritm tuzish qoidalari. Maqsad: Talabalarni algoritm tushunchasi bilan tanishtirish, algoritmlash asoslari haqida ma`lumot berish, algoritm turlari bilan tanishtirish. Kalit so'zlar: algoritm, blok-sxema, algoritm xossalari. Reja: Algoritm nima va uni ifodalash usullari. Algoritmning bajarilishi uchun qo`yiladigan talablar. Hisoblash jarayonlarining turlari va ular uchun algoritmlar. Algoritmning turlari

1. 2. 3. 4.

Algoritm so`zi Al -Xorazmiy nomining lotincha talaffuzidan kelib chiqqan bo`lib, biror masalani ishlash qoidasi sifatida tushinilgan. Muxammad Muso AlXorazmiyning X asrda yaratilgan qo`llanmasida keltirilgan o`nlik sanoq sistemasida arifmetik amallarni bajarish qoidalari soddaligi tufayli Yevropada ham o`nlik sanoq sistemasi qo`llanishiga turtki bo`ldi. Bu qoidalar tarjimasida xar bir qoida AlXorazmiy aytadiki deb boshlangan va bora-bora talaffuz tufayli algoritm tarzida ifodalanib kelgan. Hozirgi paytda algoritm sifatida biror masalani ishlash yoki biror ishni bajarish uchun qilinishi kerak bo`lgan tartiblangan chekli sondagi aniq bir qiymatli ko`rsatmalar ketma-ketligi tushiniladi. Algoritm tushunchasi keng ma`noda tahlil qilish mumkin. Masalan, biror manzildan boshqa manzilga borish uchun shahar transportidan foydalanib qanday borish mumkin, degan savolga biz ma`lum algoritm tavsiya qilishimiz mumkin. Pazandalik kitobida, masalan, palovni pishirish qoidasi keltiriladi. Bu ham o`ziga xos algoritm hisoblashlar ishlanadigan masala algoritmini biz hisoblash algoritmi deymiz. Biz asosan hisoblash algoritmlari haqida so`z yuritamiz. Algoritmlarga xos bo`lgan belgi va talablarni sanab o`tamiz. Har kanday algoritm quyidagi asosiy xususiyatlarga ega bo`lishi kerak: Determinantlik sifati -ya`ni berilgan boshlangich qiymatlarda bir qiymatli javob olinishi; Ommaviylik sifati -ma`lum turdagi masalalar uchun turli boshlangich qiymatlarda yechim olish mumkin bo`lishi; Diskretlilik sifati -algoritmni EHM yoki inson tomonidan bajarilishi mumkinligi shubxasiz bo`lgan ayrim-ayrim sodda bosqichlarga bo`lish mumkinligi. Natijaviylik sifati - ya`ni har qanday boshlangich qiymatlarda ham javobning mavjudligi, bunda «bu holda yechim yo`q» singari axborot ham algoritmning ishlash natijasi deb qabul qilinadi; Keltirilgan sifatlardan kelib chiqqan xolda algoritmni ifodalash va bajarish qoidalari xaqida so`z yuritish mumkin. Amaliyotda algoritmni ifodalashning uchta

33

asosiy usullari fodalaniladi. Bular matnli ko`rinishi, sxematik(grafik) ko`rinishi, biror algoritmik tildagi (dasturiy) ifodasi. Algoritmning matnli ifodasiga misol sifatida qadimiy ikki sonning eng katta umumiy bo`luvchisini topish (Evklid) algoritmini keltirish mumkin. Masalan A va V sonlarining eng katta umumiy bo`luvchisi topilsin. Algoritmi: 1) kattasidan kichigini ayiramiz, 2) agar ayirma kichik songa teng bo`lsa bu ayirma eng kichik bo`luvchi sifatida olinadi, aks holda ayirma va berilgan sonlarning kichigi uchun. 1) bosqichga qaytiladi, ya`ni ayirish amali toki ayirma va ayiriluvchi son teng bo`lguncha davom ettiriladi. Buni bir misolda tahlil qilish mumkin. Masalan 6 va 15 sonlari uchun eng katta umumiy bo`luvchi topilsin. 15-6=9 va berilgan sonlardan kichigi 6 olinadi. Ular teng emas. Demak, 9 va 6 uchun yuqoridagi jarayonni takrorlaymiz. 9-6=3 va 6 soni teng emas. 3 va 6 uchun takrorlasak. 6-3=3 va 3 teng. Demak, eng katta umumiy bo`luvchi 3 ga teng ekan. Algoritmning matnli ifodasi murakkab jarayonlar uchun xajman katta bo`lib, yetarli darajada ko`rgazmali bo`la olmaydi. Shuning uchun algoritmning matnli ko`rinishidan dastlabki bosqichda masalani ishlashning asosiy bo`g`inlarini ifodalashda foydalaniladi. Masalaning algoritmini va kompakt (ixcham) ko`rinishda ifodalash uchun sxematik usuldan foydalaniladi. Bu usul grafiklar deyilib, bunda algoritm o`zaro bog`langan funktsional bloklar tarzida ifodalanadi. Har bir funktsional blok ma`lum bir amal, yoki amallar ketmaketligini bajarishni o`z ichiga oladi. Funktsional bloklarning mazmuniga ko`ra shaklini va ularning o`zaro bog`lanishini ifodalashda davlat standartiga ko`ra qabul qilingan qoidalarga rioya qilinadi. Odatda axborot yo`nalishiga mos kelayotgan bog`lanish yo`nalishi, yuqoridan pastga, strelka bilan ifodalanmasligi mumkin. Boshqa barcha xollarda bog`lanish yo`nalishi strelka (ko`rsatgich) bilan ko`rsatib qo`yiladi. Qulaylik uchun algoritm bloklari tartibi tarzda nomerlanishi kerak. Quyida asosiy bloklar uchun foydalaniladigan shakllar keltirilgan: Ushbu shakllar Xalqaro standart ISO 1028-73 asosida qabul qilingan.

34

SHAKL

Qaysi xolda SHAKL ishlatiladi? Boshlanish ohirida Xisoblashlar uchun Tarmoklanish shartini tekshirishda Tsikl boshlanishida va

Qaysi xolda ishlatiladi? axborotni kiritish va chiqarish Natijani chop etish uchun Berilgan betda bog`lanish chiziqlari uzilgan xolda

Algoritmni ifodalash namunasi sifatida berilgan ikkita a va b sonlaridan kattasini topish algoritmini sxematik tarzda ifodalaymiz. Algoritmning bu blok-sxema tarzidagi ifodasiga xojat yo`q. Fakat turli xollarda bu algoritmning to`g`ri ishlashini xayolan tekshirib ko`rish mumkin. Bu yerda 4-blok tarmoqlanish bloki bo`lib, boshqa bloklardan farqli undan 2 ta yunalishda («ha» yoki «yo`q») chiqish mumkin. Masalan a=10; b=5 bo`lsa, u=10 deb olinib 4blokdan so`ng 5-blokni tashlab 6-blokka o`tib ketiladi. Chunki 5>10 ga «yo`q» javob to`g`ri keladi. Algoritmning blok-sxema tarzidagi ifodasining yana bir afzalligi undan uchinchi ko`rinishi, ya`ni algoritmik tildagi ifodasi (dastur)ga o`tishi ham juda oson bo`ladi. Chunki bunda har bir blok algoritmik tilning ma`lum bir operatori bilan almashtiriladi xolos. Hisoblash jarayonlarining turlari va ular uchun algoritm tuzish qoidalari. Hisoblash jarayonlari asosan uch turga bo`linadi. Bular -chiziqli, tarmoqlanuvchi, takrorlanuvchi (tsiklik) hisoblash jarayonlari. Chiziqli hisoblash jarayonlarida jarayonning barcha tashkil qiluvchi bloklari berilgan tartibda beistisno bajariladi. Bunday jarayon algoritmning blok-sxemasi asosan to`rtburchak shaklidagi bloklardan iborat bo`ladi. Bunday jarayonning algoritmi va tabiiy blok-sxema hamda programmasini tuzish ortiqcha qiyinchilik tug`dirmaydi. 1. Boshlanishi 2. Kiritish bloki 3. Hisoblash bloki 4. Natija bloki 5. Tugashi

35

1 2 3

4 5

Tarmoqlanuvchi hisoblash jarayonida ma`lum shartning bajarilishi yoki bajarilmasligiga qarab mavjud hisoblash yo`nalishlaridan birortasini tanlashga to`g`ri keladi. Bu xolat algoritmning blok sxemasida romb shaklidagi blok bilan ifodalanib, boshqa bloklardan farqli bu blokda bitta kirish qismi bo`lib, chiqish esa ko`rsatilgan shartga qarab berilgan ikki yo`nalishdan biri bo`yicha bo`lishi mumkin. Algoritmning bu konstruktsiyasi blok ­sxemada

1 2 3

6

1. Boshlanishi 2.Kiritish bloki 3. Shartni tekshirish 4,5. Hisoblash bloki 6. Natija bloki 7. Tugashi

ko`rinishida ifodalanadi. Masalan, tomonlari uzunliklari a,v,s ga teng uchburchak mavjudligi, degan savolni hal qiluvchi algoritm blok-sxemasini ifodalaylik. Ma`lumki, a,v,s sonlar uchun uchburchak tengsizligi bajarilsa, uchburchak mavjud, aks xolda mavjud emas, ya`ni a+v>c, a+c>v, v+c>a tengsizliklar barchasi bajarilgan xoldagina uchburchak mavjud bo`ladi. Bu algoritmni quyidagi blok-sxema tarzida ifodalash mumkin. Yuqorida ta`kidlangandek, bu yerda 3-4-5- bloklar shartli bloklar bo`lib, ularning ishlash tartibi blok sxemani yozilishidan ko`rinib turibdi. Bu yerda axborot, hisoblash yo`nalishi yuqoridan pastga bo`lganligi uchun strelka qo`yilishi shart emas. Tarmoqlanuvchi hisoblash jarayonlarining asosiy belgisi blok-sxemada romb shaklidagi blokning mavjudligidir. Blok-sxemada romblar qanchalik ko`p bo`lsa hisoblash jarayonining shunchalik murakkabligi va aksincha masala murakkab bo`lsa blok-sxemada romblar ko`pligini qurish mumkin.

1 agar x 0 0 0

1)

y

0 agar x 1 agar x

X< 0 Y=-1 Y= 1 Y X> 0 Y=0

36

Takrorlanuvchi hisoblash jarayonlari. Agar hisoblash jarayonining biror formulasi yoki qismi masala talabiga ko`ra ko`p marta hisoblanishiga to`g`ri kelsa, bunday jarayon takrorlanuvchi (tsiklik) jarayon deyiladi. Tsiklik jarayonlarining algoritmini sxematik tarzda ifodalashda tsikl blokidan foydalinadi. Bu blokda boshqalaridan farqli chiqish va kirish ikki yo`nalish orqali bo`lishi mumkin. Takrorlanish soni avvaldan ma`lum bo`lgan hisoblash jarayonlarida bu blokdan foydalanish juda qulay. Masalan 1dan to 20gacha bo`lgan butun sonlar kvadratlari yig`indisini hisoblash algaritmini tuzish talab qilinsin. Bu jarayon blok-sxemasi quyidagi ko`rinishda bo`ladi. 1-ko`rinish 1. Boshlanishi 2.Kiritish bloki 1 3. Tsikl bloki 4. Hisoblash bloki 2 5. Natija bloki 3 6. Tugashi

4

5 6

2-ko`rinish.

37

Tsiklik jarayonlarini ma`lum shart asosida takrorlanishini tekshirish yordamida ham rejalashtirish mumkin yoki to`g`ri keladi. Masalan, yuqorida keltirilgan misol algoritmini quyidagicha ifodalash ham mumkin. Bu blok sxemalarni taqqoslash birinchi usul afzal ekanligini ko`rsatadi. Ikkinchi usul odatda takrorlanish soni avvaldan noma`lum bo`lgan xollarda tatbiq qilinadi. Takrorlanuvchi (tsikl) jarayonlarni tashkil etish uchun, uning bir necha ko`rinishlari mavjud: Parametrli tsiklik jarayon; Sharti oldin tekshirilib takrorlanuvchi tsikl jarayon; Sharti keyin tekshirilib takrorlanuvchi tsikl jarayon.

+

+

a) FOR I:=A to B do

b) WHILE ...DO

v) REPEAT..UNTIL

Nazorat savollari: 1. 2. 3. 4. 5. Algoritm nima? Algoritm turlari Algoritmning xossalari Algoritmning ifodalash usullari Algoritmik tillar tavsifi

38

Test savollar #1. Algoritmning xossalari to`lik ko`rsatilgan qatorni aniqlang? ~A) Aniqlilik, tushunarlilik ~B) Tushunarlilik, natijaviylik ~C) Natijaviylik, ommaviylik, aniqlilik, tushunarlik ~D) Uzluksizlik, aniqlilik, tushunarlilik, natijaviylik, ommaviylik ~E) diskretlik, aniqlilik, tushunarlilik, natijaviylik, ommaviylik #2. Quyidagilardan to`g`ri yozilgan o`zlashtirish operatorini ko`rsating? ~A) a+b:=c1; ~B) 2b:=a+2*x; ~C) b:=sin(2*x)+sqrt(x); ~D) 5*sin(x):=2*x+5; ~Ye) 5:=sin(2*x)+sqrt(x); #3. Algoritmning ifodalanish shakllari to`liq ko`rsatilgan javobni aniqlang? ~A) matn va blok-sxema shakllari ~B) matn, blok-sxema va dastur shakllari ~C) matn va dastur shakllari ~D) blok-sxema va dastur shakllari ~E) to`g`ri javob yo`q

39

Ma'ruza -7. Dasturlash. Dasturlash tillari. Paskal' algoritmik tilida dasturlash asoslari. Paskal' tilida ishlatiladigan asosiy tushunchalar. Maqsad: Talabalarni dasturlash tillari klassifikatsiyasi bilan tanishtirish, Paskal` algoritmik tili haqida tushuncha berish va ushbu tilda ishlatiladigan asosiy tushunchalar bilan tanishtirish. Kalit so'zlar: dastur, dasturlash, algoritmik til, operator, standart funktsiyalar va xizmatchi so`zlar. Reja 1. Dasturlash tillari haqida tushuncha va Paskal` tilining yaratilish tarixi. 2. Paskal` tilining alifbosi. 3. Paskal` tilining asosiy tushunchalari. 4. Standart funktsiyalar. 5. Paskal`da ishlatiladigan standart nomlar va xizmatchi so`zlar jadvali. 6. Paskaldagi dasturning sturkturasi va uni tashkil qiluvchi qismlari. 7. Komp`yuterda masala yechish bosqichlari. Dasturlash tillari. EHM lar uchun dastur tuzish va uni ishlatish juda murakkab va ko`p mehnat talab etadigan jarayon bo`lib, uning uchun ko`p aqliy mexnat va vaqt talab qilinadi. Shuning uchun yangi algoritmik tillarni yaratuvchilar dasturlashni sodda va xayotimizning turli sohalarida mexnat qiluvchilar uchun tushunarli bo`lishiga xarakat qilishadi. Bundan ko`rinadiki dasturlash tillarining soni bir necha yuzdan ortiq ekanligi. 1970 yili Shvetsiyalik Oliy texnika o`quv yurtining professori Niklaus Virt o`z oldiga qo`ydi va u tomonidan tavsiya etilgan algoritmik tilni yaratdi va ulug` frantsuz olimi B.Paskal` (1623-1662) nomi bilan atadi. Har bir til kabi Paskal` tili ham o`z alfavitiga ega. Bu tilning alfaviti qilib quyidagi simvollar olingan: 1) 26 ta lotin bosh xarflari: Katta yoki kichik harflarning farqi yo`q. A,V,S,D,Ye,F,G,H,I,J,K,L,M,N,O,P,R,Q,S,T,V,W,X,Y,Z; 2) arab rakamlari: 0,1,2,3,4,5,6,7,8,9; nol` sonini qiya chiziq bilan chizib qo`yish odat qilingan, ya`ni 0; 3) Maxsus belgilar: ! ; % : ? * ( )

Belgi +

Nomi qushuv (plyus)

Belgi =

40

nomi barobar

* / : < >

ayiruv (minus) Ko`paytirish (yulduzcha) qiya chizik(bo`lish) ikki nuqta apostrof Kichik katta

. , ; ( ) []

nuqta vergul nuqtali vergul ochiluvchi va yopiluvchi qavslar kvadrat qavslar bo`sh joy (probel) ko`rsatgichlar

Tuzilgan programmada alfavitda yo`q xarf yoki belgilar uchrasa, mashina bunday belgini tushunmaganligi xaqida xabar beradi. Paskal' tilining asosiy tushunchalari. Paskal` tili ham boshqa tillar kabi o`zining grammatikasi, qonun va qoidalariga ega bo`lib, ular yordamida yuqorida keltirilgan alfavit belgilaridan nomlar va gap tuziladi. Paskal`da nomlar ikki xil bo`ladi: 1)tildagi standart nomlar; 2)dastur tuzuvchining nomlari. Standart nomlar ingliz tilida yoziladi va ma`lum ma`noni anglatadi. Dastur tuzilayotganda bu nomlar ingliz tilidagi ko`rinishda yoziladi va faqat o`z ma`nosida ishlatiladi. Shuning uchun ham bu nomlar standart nomlar deyiladi (1-jadval.). Dastur tuzuvchilarning nomlari Paskal`dagi simvollardan ma`lum qoida yoki qonun asosida tuziladi, ular hisoblash jarayonida o`zgarmaslar hamda o`zgaruvchi qiymatlarni va hokazolarni ifodalash uchun ishlatiladi. Shuni eslatib o`tish kerakki, dastur tuzuvchilarning nomlari sifatida standart nomlar va xizmatchi so`zlardan foydalanish mumkin emas. Shuningdek, Paskal` tilida xizmatchi suzlardan ham foydalaniladi (1-jadval). Paskal`da ishlatiladigan standart nomlar jadvali. Paskalda Mazmuni Paskalda yozilishi Mazmuni yozilishi AVS(x) x ning absolyut OUTPUT Chiqarish qiymati ARCTAN(x) x ning arktangensi READ O`qimoq VOOLEAN Bul`, logik READLN yangi satrdan o`qimoq yoki mantikiy 1 bayt joy egallaydi CHAR Simvol qiymatli REAL Haqiqiy qiymatli miqdorlar 1 bayt joy miqdorlar (2.9-39 dan egallaydi 1.7+38 gacha) Sin(x) x ning sinusi RESET Qaytish Cos(x) x ning kosinusi STRING Satrli o`zgaruvchilar CLOSE Yopish ROUND Yaxlitlash x EXP(X) ye funktsiyasi SQR(x) X ning kvadrati FALSE Yolgon SQRT(x) X dan ildiz

41

INPUT INTEGER

LN(x) NEW ORD(X) CHR(X)

Boshlanish, Boshlash Butun qiymatli miqdorlar (-32768 dan +32768 gacha) x ning natural logarifmi Yangi x simvolni tartib nomerini aniqlash x tartibli nomerda turgan simvolni aniqlash

SUCC TRUE

x ga nisbatan keyingi simvolni aniqlash Rost

WRITE OUTPUT PRED(X) WRITELN

yozmok, pechat` Tamomlash x ga nisbatan oldingi simvolni aniqlash yangi satrdan yozmoq

Turbo Paskal` 7.0 da ishlatiladigan miqdorlar turlari beshta asosiy sinflarga bo`linadi: 1) Oddiy turlar 2) Strukturalangan turlar 3) Yo`llanuvchi turlar 4) Jarayon turlar 5) Ob`ekt turlari; Oddiy turlarga quyidagi hollar kiradi: Butun turlar Mantiqiy turlar Simvolli turlar Sanoqli turlar Oraliq turlar Xaqiqiy turlar Butun turlarning maxsus xollari: Short Int (qisqa butun), INTEGER(butun), Long Int(kengaytirilgan butun), VYTE(), WORD() Paskal`da ishlatiladigan xizmatchi so`zlar jadvali Paskal`da ma`nosi Paskal`da Ma`nosi yozilishi yozilishi AND (va) mantiqiy NOT mantiqiy inkor ko`paytirish ARRAY massiv OR (yoki) mantiqiy ko`shish BEGIN boshlash CASE voqea PROCEDURE Protsedura CONST o`zgarmas PROGRAM Dastur (Programma) DIV bo`lish, kasr qismini RECORD Yozuv

42

DO DOWNTO ELSE END FILE FOR FUNCTION GOTO IF

tashlab yuboradi Bajarish aks xolda oxiri, tamomlash Fayl uchun funktsiya o`tish agar

REPEAT THEN TO TYPE VAR WHILE MOD LABEL

Sharti keyin U xolda Gacha tip, turi o`zgaruvchilar Xozircha qoldiq belgi

Dasturni tashkil qiluvchi qismlar. Paskal` algoritmik tilida yozilgan dastur sarlavxa, tasvirlovchi kism va operatorlar kismidan tashkil topadi: PROGRAM nomi (INPUT,OUTPUT); TASVIRLOVCHI KISM BEGIN OPRATORLAR KISMI END. Sarlavha-PROGRAM xizmatchi so`zidan, dasturning nomi (bu dasturning nomi dastur tuzuvchi tomonidan beriladi) va dumaloq qavs ichida standart protseduralarning nomlari INPUT, OUTPUT (bular dasturni EHM ning kiritish va chiqarish tashqi qurilmalari bilan aloqada bo`lishi uchun ishlatiladi) bo`laklaridan tashkil topadi. Tasvirlovchi qism - dasturda uchraydigan barcha ma`lumlar, o`zgaruvchilar va ularning xarakteristikalarini e`lon qilish uchun xizmat qiladi (ma`lumotlarning nomlari, ularning tipi, mumkin bo`lgan qiymatlari va boshqalar). Bu qism shuningdek nomerlarni, o`zgarmaslar, turlari, o`zgaruvchilar, protsedura va funktsiyalarni e`lon qilish uchun xizmat qiladi. Ular qat`iyan e`lon qilingan tartibda joylanishi kerak. Protsedura va funktsiyalarni e`lon qilish bir bo`limda joylashishi kerak. Shuni aytib o`tish kerakki, yuqorida keltirilgan bo`limlarning hammasi dasturda bo`lishi shart emas. Oddiy dasturlarda, masalan faqat o`zgarmaslar va o`zgaruvchilar bo`limining o`zi yetarlidir. Har bir e`lon qilingan qator ohiriga « ; » belgisini qo`yish shart. Operatorlar qismi BEGIN (boshlanish) va END (tamomlash) operatorlarning oraligiga joylashtiriladi, bunda END operatoridan keyin nuqta belgisi qo`yiladi va bu dasturning yakunlanganligini bildiradi. Operatorlar qismida esa bajarilishi lozim bo`lgan operatorlar ketma-ketligi joylashtiriladi. Har bir operator biror vazifani bajarishni bildiradi va bu ishni bajarish kerak. Bajariluvchi operatorlar bir biridan « ; » simvoli bilan ajratiladi. Paskal` tilida yozilgan dastur strukturasining umumiy to`liq ko`rinishi quyidagicha bo`ladi: PROGRAM nomi (INPUT, OUTPUT);

43

LABEL -belgilar bo`limi; CONST -o`zgarmaslar bo`limi; TYPE -turlari bo`limi; VAR -o`zgaruvchilar bo`limi PROCEDURE, FUNCTION -protsedura va funktsiya qism dasturlari bo`limi: BEGIN Operator 1; Operator 2; Operator 3; ... operator n-1; operator n; END. Dasturning o`zi erkin formada yoziladi, operatorlar boshqa dasturlashtirish tillaridan farqli o`laroq satrning biror pozitsiyasiga bog`lab qo`yilmagan. Bir satrda bir nechta operatorlarni ko`rsatish mumkin. Shuningdek, tasvirlovchi va operatorlarni bir satrdan ikkinchisiga ko`chirish mumkin(lekin so`zni, o`zgarmaslarni va belgilarning qismlarini o`tkazish mumkin emas). Shu bilan birga dasturni yuqorida keltirilgan formada yozish tavsiya etiladi, uni o`qish ham, tushunish ham oson. Buning uchun bo`sh joy, bo`sh satr va izohlardan keng foydalanish mumkin. Dastur yanada ko`rinishga ega bo`lish uchun dasturning qismlarini mos ravishda yuqorida keltirilgan formada har xil pozitsiyalardan boshlab bir-biridan ajratib qo`yish tavsiya etiladi. Nazorat savollari: 1. Dasturlash tillari haqida tushuncha. 2. Paskal` tilining yaratilish tarixi. 3.. Paskal` tilining alifbosi. 4. Paskal` tilining asosiy tushunchalari. 5. Standart funktsiyalar. 6. Paskal`da ishlatiladigan standart nomlar va xizmatchi so`zlar jadvali. 7. Paskaldagi dasturning sturkturasi va uni tashkil qiluvchi qismlari. Test savollari #1. Quyidagi dastur parchalardan qaysi biri 1 dan 10 gacha bo`lgan natural sonlarning ko`paytmasini hisoblaydi? ~A) p:=0; for i:=1 to 10 do p=p*i; ~B) p:=1; for i:=1 to 10 do p:=p*i; ~C) p=1; for i=1 to 10 do p=p*i; ~D) p:=1; for i:=1 downto 10 do p:=p*i; ~E) p:=1; for i=1 to 10 do p=p*i;

44

#2. Ikkita ixtiyoriy a va b sonlar berilgan. Shu sonlarning kattasini topish dasturi lavhasini tuzing? ~A) read(a,b); if a>b then max:=a else max:=b; ~B) read(a,b); if a<b then max:=a else max:=b; ~C) read(a,b); if a>b then max:=a; ~D) read(a,b); if a>b then max:=b; ~E) to`g`ri javob yo`q #3. Quyidagi dastur lavhalaridan qaysi biri 1 dan 5 gacha bo`lgan musbat butun sonlarning yig`indisini hisoblaydi? ~A) ....s:=0; ~B) s=0; ~C) s:=0; ~D) s=0; ~E) s:=0; for i:=1 to 5 do s:=s+i; for i=1 to 5 do s=s+i; for i:=1 downto 5 do s:=s+i; for i=1 to 5 do s=s*i; for i:=1 to 5 do s;=s*i;

45

8-ma'ruza. Mazu: Turbo Paskalda o'zgaruvchilarning toifalari: butun, haqiqiy, logik, belgili va qator tipidagi o'zgaruvchi va o'zgarmaslar. Maqsad: Turbo Paskal dasturlash tili strukturasi bilan tanishtirish, ma`lumot turlari, o`zgaruvchi va o`zgarmaslar bilan talabalarni tanishtirish. Kalit so'zlar: Dastur strukturasi, xizmatchi so`zlar, qiymatlarning standart va butun turlari. Reja: 1. Qiymatlarning standart turlari. Butun turdagi qiymatlar. 2. Haqiqiy turdagi qiymatlar. 3. Logik (matiqiy) tipdagi qiymatlar. 4. Simvol tipdagi qiymatlar. 5. Standart tipidagi o`zgarmas va o`zgaruvchilarni tasvirlash. Qiymatlarning standart turlari Butun turdagi qiymatlar. Paskal` algoritmlik tilining boshqa tillardan ustunligi shundan iboratki, ya`ni xar xil turdagi qiymatlardan keng foydalanish imkoniyatiga ega. Hamma turdagi qiymatlarni oddiy va murakkabga ajratish mumkin. Oddiy tur -standart va o`zgaruvchan turdagi qiymatlar -butun (INTEGER), haqiqiy (REAL), mantiqiy (BOOLEAN) va simvoli (CHAR) turdagi qiymatlardan iboratdir. O`zgaruvchan turdagi qiymatlarni EHM dan foydalanuvchi aniqlaydi. Ularga sanab o`tiladigan va chegaralangan turlar kiradi. Murakkab turdagi -qiymatlar esa oddiy turdagi qiymatlarning xar xil kombinatsiyalari natijasida hosil bo`ladi (massiv, to`plamlar, yozuvlar, fayllar). Qiymatlar dasturda o`zgarmas [CONST] va o`zgaruvchi ko`rinishida ishlatiladi. Dasturni ishlash jarayonida xar bir daqiqada o`zgaruvchi qandaydir miqdorga (o`zgarmasga) ega bo`ladi. Bu miqdor va o`zgaruvchi bir xil turdagi qiymatga ega bo`lishi kerak. O`zgarmaslar-o`zgarmas miqdorlarni ifodalash uchun xizmat qiladi. Butun turdagi o'zgarmaslar -o`nlik raqamlar ketma-ketligi ko`rinishida yoziladi. Bu ketma-ketlik oldida «+» yoki «-» ishorasi bo`lishi mumkin. Ishoraga ega bo`lmagan o`zgarmas musbat o`zgarmas hisoblanadi. O`zgarmas oldida «-» ishorasi bo`lsa, u manfiy o`zgarmas hisoblanadi. Butun o`zgarmas quyidagi ko`rinishga ega: u a1a2...an bu yerda u -bush joy yoki sonning ishorasi, ai- raqamlar, i=1,n. Misollar 132, -451, +0, -1542, 00344. Butun tipdagi o`zgarmaslar bilan qo`shish, ayirish, ko`paytirish, DIV-bo`lish (buning natijasida kasr qism tashlab yuboriladi), MOD-bo`lish (butun sonni butun songa bo`linganda butun qoldiqni aniqlash uchun ishlatiladi), ya`ni bo`linuvchining juft yoki toqligini aniqlash uchun ishlatiladi.

46

Haqiqiy turdagi qiymatlar. Paskal` algoritmik tilida haqiqiy turdagi o`zgarmaslar ikki xil ko`rinishda bo`ladi: fiksirlangan nuqtali (asosiy ko`rinish) va suzuvchi nuqtali (tartib bilan berilgan haqiqiy va butun o`zgarmaslar). Fiksirlangan nuqtali (asosiy ko`rinish) ko`rinishda haqiqiy o`zgarmas yozuvida o`nlik raqamlar ketma-ketligi orasida «.» belgisi ham bo`lib, bu belgi haqiqiy o`zgarmasning butun qismini kasr qismidan ajratib turadi. O`zgarmas ishoraga ega bo`lishi yoki bo`lmasligi mumkin. Xuddi butun o`zgarmasga o`xshash haqiqiy o`zgarmas musbat bo`lsa, uning oldida «+» simvoli bo`lmasa ham bo`ladi. Haqiqiy o`zgarmas manfiy bo`lsa, uning oldiga albatta « - » simvoli bo`lishi kerak. Haqiqiy o`zgarmasning ko`rinishida albatta «.» bo`lishi zarur. O`zgarmasning butun qismi yoki kasr qismi bo`lmasligi mumkin. Haqiqiy o`zgarmaslar quyidagi ko`rinishlarda bo`lishi mumkin: U a1a2.......an. b1b2......bm ; Ua1a2......an . U. b1b2.....bm ; Bu yerda O`-ishorasi yoki bo`sh joy ai,bi-raqamlar. Tartibi bilan berilgan xaqiqiy o'zgarmaslar. (suzuvchi nuqtali)ning bu ko`rinishida xaqiqiy o`zgarmasnig asosiy ko`rinishiga uning darajasi qushib yoziladi. Xaqiqiy o`zgarmasning bu ko`rinishida asos 10 o`rniga Ye simvoli yoziladi, unlan keyin o`nli ikkita raqamdan oshmaydigan tartib yoziladi. Tartib oldiga + va - simvoli yozilishi mumkin. Tartib doim butun o`zgarmas bo`lishi kerak. Tartib bilan berilgan haqiqiy o`zgarmas a*10t ko`rinishiga ega bo`lgan sonlar uchun ishlatilad. Uning Paskal` tilida ko`rinishi esa quyidagicha: aE t1t2 bu yerda a-sonning mantissasi, asosiy ko`rinishiga ega bo`lgan xaqiqiy o`zgarmas,t1 va t2 -raqamlar, +t1t2 sonning tartibi yoki xarakteristikasi deyiladi. Misollar: Matematik ko`rinishi. Paskal` tilida yozilishi. -5 4*10 4E-5 4 0,62*10 0,62E4 12 -10,88*10 -10,88E12 Butun va xaqiqiy tipdagi o`zgaruvchilar (REAL) xisoblash jarayonida turli qiymatlar qabul qiluvchi miqdor o`zgaruvchi deb ataladi.Xar bir o`zgaruvchi o`znomiga ega bo`ladi . Uzgaruvchi xisoblash jarayonida butun tipdagi o`zgarmas qiymatlar qabul qilsa, butun tipdagi o`zgaruvchi deyiladi. Ular ustida +(qo`shish), -(ayirish), * (ko`paytirish) va mantiqiy / (bo`lish) amallarini bajarish mumkin. Simvol tipdagi qiymatlar. Simvol tipidagi qiymatlar programmalarda tekstlar ko`rinishida bo`lib, ular ustida redaktorlash ishlarini bajarish imkonini beradi, ya`ni xatolarni to`g`irlash, xarf va so`zlarni o`zgartirish, qo`shish va hokazolar. Simvolli yoki literal (satr) ko`rinishidagi o`zgarmaslar ixtiyoriy simvollar ketmaketligidan iborat bo`lib, apostrof ichiga olinadi, ya`ni S simvollar ketma-ketligi.

47

Misollar: X=A+B` STUDNT` MISOL 4` Simvollar orasida apostrof simvolini yozish kerak bo`lsa, apostrof ketma-ket ikki marta yoziladi: ya`ni, simvolli o`zgaruvchi (tipi -CHAR)bular simvolli o`zgarmaslarni qabul qiluvchi o`zgaruvchilardir. Standart tipidagi o'zgarmas va o'zgaruvchilarni tasvirlash. O`zgarmaslar programma miqdori bilan yoki nomi bilan berilishi mumkin. Agarda o`zgarmas nomi bilan ifodalansa, u xolda uni o`zgarmaslar bo`limida tasvirlash kerak bo`ladi. Tasvirlash CONST xizmatchi so`zi bilan boshlanib, quyidagi ko`rinishda yoziladi: CONST o`zgarmas nomi=qiymati: Masalan: CONST N=18 Bir bo`limda bir nechta o`zgarmaslarni tasvirlash mumkin. Xar bir tasvirlash albatta «;» nuqqtali vergul belgisi bilan tamomlanadi. Masalan: CONST NUM = 23; (*Butun tipdagi o`zgarmas*) B = 1,8 E-3; (*Xaqiqiytipdagi o`zgarmas*) PI=3,14; (*Xaqiqiy tipdagi o`zgarmas*) SIM=`R`; (*sivmol tipdagi o`zgarmas*) L=TRUE; (*mantiqiy tipdagi o`zgarmas*) Programmada uchraydigan xamma o`zgaruchilar albatta o`zgaruvchilar bo`limida tasvirlanishi kerak. Uzgaruvchilar tasvirlash VAR xizmatchi so`zi bilan boshlanadi va quyidagi ko`rinishda yoziladi: VAR o`zgaruvchi nomi: tipi; Masalan VAR F : REAL; Bir bo`limda bir nechta o`zgaruvchilarni tasvirlash mumkin , masalan : VAR B: INTEGER; (*Butun tipdagi o`zgaruvchi*) SUM: REAL; (*Xaqiqiy tipdagi o`zgaruvchi*) S: CHAR; (*Simvolli tipdagi o`zgaruvchi*) LOG: BOOLEAN; (*mantiqiy tipdagi o`zgaruvchi*) Agarda bir nechta o`zgaruvchining tipi bir xil bo`lsa , u xolda ularni bir qatorda yozish mumkin , masalan: VAR R,V : REAL; xaqiqiy U, L, TOR : INTEGER; butun. O`zgaruvchilarning toifalari quyidagi diapazonlarga o`rnatilgan.

48

T/r

Tur(tip) lar

manosi

diapazoni

Xotiradagi joy egalashi (bayt) 2 2 1 1 4

1 2 3 4 5

integer word byte shortint longint

1 2 3 4 5

Real Single double Extened comp

I. Butun butun -32768...+32767 So`z uzunligi 0...6535 butun 0..255 Qisqa butun -128....+127 Uzun butun -2147483648.... +2147483647 II xaqiqiy xaqiqiy 2,4*10-39 ...1,7*1038 xaqiqiy ravishda 1,5*10-49... 3,4*10+38 tabiy xaqiqiy ravishda 5,6*10-324... 1,7*10+308 ortadi ikkilangan 1,9*10-4951 ... 1,1*104828 aniqlaganda ikkilik aniqlikda yoki murakkab xollarda

6 4 8 10 8

Nazorat savollari: 1. Qiymatlarning standart turlari. 2. Butun turdagi qiymatlar. 3. Haqiqiy turdagi qiymatlar. 4. Logik (matiqiy) turdagi qiymatlar. 5. Simvol turdagi turdagi qiymatlar. 6. Standart turdagi o`zgarmas va o`zgaruvchilarni tasvirlash. Test savollari #1. Quyidagi operatorlar bajarilgandan keyin a va b nimaga teng bo`ladi? b:=5; a:=5*b+4*b; . . . ~A) a=5; b=45 ~B) a=145; b=5 ~C) a=45; b=5 ~D) a=0; b=0 ~E) to`g`ri javob yo`q o`zgaruvchining qiymati

49

9-ma'ruza. Turbo Paskal dasturining tarkibiy qismi. Maqsad: Talabalarni Paskal algoritmik tilining asosiy operatorlari bilan tanishtirish, o`zlashtirish va kiritish, chop etish operatorlari bilan tanishtirish, chiqiqli dastur tuzish ko`nikmalarini hosil qilish. Kalit so'zlar: qiymat berish operatori, write(y), writeln(y), read(x), readln(x). Reja 1. T.Paskal dasturining tarkibiy qismi. 2. Dasturni tashkil etuvchi operatorlar. 3. O`zlashtirish operatori. 4. Kiritish-chiqarish operatorlari. 5. Chiziqli algoritm dasturi. Paskal` dasturining tarkibiy qismi quyidagicha: U uchta qismdan iborat bo`lib, bunda har bir berilgan masalaning dasturi ushbu asosda tuziladi. PROGRAM nomi (INPUT,OUTPUT); TASVIRLOVCHI KISM BEGIN OPRATORLAR KISMI END. Bu ko`rinishlarni yuqorida, ya`ni o`tgan darslarimizda ko`rib chiqqan edik: sarlavxa, tasvirlovchi va operatorlar qismini. O'ZLASHTIRISH OPRATORI. Paskal` algoritmik tilidagi operatorlarni oddiy va murakkab operatorlarga bo`lish mumkin. Oddiy operatorlar ichida boshqa operatorlar ishtirok etmaydi. Murakkab operatorlar o`z ichida oddiy operatorlardan tashkil topgan konstruktsiyalarni ifodalaydi. Paskal` tilida oddiy operatorlarga: o`zlashtirish operatori, shartsiz o`tish bo`sh operator, kiritish va chiqarish operatorlari; murakkab operatorlarga yig`ma(sostavnoy), shartli o`tish, tsikl operatorlari, tanlash operatori, yozuvlardagi birlashtirish (prisoedineniya) operatorlari kiradi. Bu operatorlarni o`rganishni oddiy masalalarni dasturlash ketma-ketligi tartibida tashkil etamiz. O`zlashtirish operatori -ixtiyoriy dasturlashtirishning asosiy operatori. Uning umumiy yozilish formasi: V: =A;

50

Bu yerda V-o`zgaruvchi nomi, « : = »- o`zlashtirish amali, A-ifoda. Bu operatorda A ifoda hisoblanadi va o`zlashtirish amalining chap tomonida turgan V o`zgaruvchiga natija (joylashtiriladi) o`zlashtiriladi. Bu yerda «:=» o`zlashtirish amali va «=» tenglik amallarining farqini tushunib olish kerak. Bu amallar faqat yozilish formasida farq qilmasdan, balki ma`nosi bo`yicha ham farqlanadi. Masalan, oddiy matematika X=X+2 deb yozsak noto`g`ri bulur edi, ammo X:=X+2 deb yozsak, bu degani X-o`zgaruvchining qiymatiga yana X-o`zgaruvchiga o`zlashtiriladi. Xususiy xollarda o`zlashtirish operatorining o`ng tomonida o`zgarmaslar (const) kelishi mumkin. Masalan: T:=527.47; M:=TEMP; Y:=SQRT (X); O`zlashtirish operatori faqat arifmetik qiymatlarga emas, balki mantiqiy va simvolli qiymatlarga ham qo`llanadi. Masalan M va N-mantiqiy qiymat ko`rinishida tasvirlangan bo`lsa, u holda L o`zgaruvchini quyidagicha yozish mumkin: L: = M AND N, agarda M - TRUE (rost) va N -FALSE(yolg`on) bo`lsa, u xolda L -mantiqiy ifodaning natijasi ham FALSE (yolg`on) bo`ladi. O`zlashtirish operatoridan foydalanilganda chap tomondagi o`zgaruvchi va o`ng tomondagi ifoda bir xil tipga tegishli bo`lishini ta`minlash kerak. STANDART FUNKTSIYALAR. Har xil masalalar va hisoblashlarda sinus, kosinus, kvadrat ildiz, logarifm va shunga o`xshash boshqa elementar funktsiyalar ko`p ishlatiladi. Shuning uchun Paskal` algoritmik tilida bu elementar funktsiyalarni oddiy yozish usuli mavjud bo`lib, ularni standart funktsiyalar deb nomlanadi. Dastur tuzuvchining standart funktsiyalarning qanday hisoblanishini bilish shart emas, faqat unga to`g`ri murojaat qilinsa yetarlidir. Standart funktsiyalarni yozishning qoidalari: 1) Funktsiyaning nomi lotin xarflari bilan yoziladi va 6ta harfdan oshmasligi kerak. 2) Funktsiyaning argumenti dumaloq qavs ichida funktsiya nomidan keyin yoziladi. 3) Funktsiyaning argumenti o`zgarmas, o`zgaruvchi yoki arifmetik ifoda bo`lishi mumkin. Trigonometrik funktsiyalarni argumenti radianlarda hisoblanadi, agarda argument graduslarda berilgan bo`lsa, uni radianga qo`ydagi qo`rinishda o`tkaziladi: x*180. Ba`zi standart funktsiyalarni ko`rib chiqamiz: SQRT(X) - x argumentning kvadrat ildizini hisoblash uchun ishlatiladi, uning matematik ko`rinishi - x SQR(X) - x argumentning kvadratini hisoblaydi uning matematik yozilishi x2 SIN(X) - x argumentning sinusini hisoblaydi va matematik yozilishi - sinx ABS(X) - x argumentning absolyut qiymatini(modulini) hisoblaydi, uning matematik yozilishi - x ;

51

ORD(X) - x simvolining tartib nomerini aniqlash uchun ishlatiladi, masalan ORD (R )=82; CHR(X) - x tartibli nomerda turgan simvolni aniqlash uchun ishlatiladi, masalan CHR(68)= D`; PRED(X)-xga nisbatan oldida turgan simvolni aniqlash uchun ishlatiladi, masalan. PRED(N`)=`M`; SUCC(X)- x ga nisbatan keyingi simvolni aniklash uchun ishlatiladi, masalan. SUCC(S`)=`T` ARIFMETIK IFODALAR. Biror qiymatni hosil qilish uchun o`zgarmaslar, o`zgaruvchilar va funktsiyalar ustida biror qoida asosida bajariladigan amallarning yozilishi ifoda deyiladi. Olinadigan natijaga qarab ifoda ikki xil bo`ladi: 1) arifmetik ifoda; 2) mantiqiy ifoda; Arifmetik ifoda arifmetik o`zgarmaslardan, arifmetik o`zgaruvchilardan, arifmetik funktsiyalardan, qavslar va arifmetik amal belgilaridan iborat bo`ladi. Arifmetik ifodaga kiradigan hamma qiymatlar bir tipda bo`lishi kerak, lekin Paskal` tilining ko`p versiyalarida bir vaqtda butun va haqiqiy qiymatlarni ishlatish mumkin. Ifodalarni yozishda kuydagi koidalarga amal kilish kerak: 1) Ifodaning hamma qismlarini bir satr ko`rinishida yozish kerak. Surat, maxraj, daraja ko`rsatkichi va indeks ko`rinishida yozish mumkin emas, masalan

1 1 2 x 2 5a 3 x 3 25d 14 f

Ifodani quyidagi ko`rinishda yozish kerak. (a1*x1+b2*x2+5*a3*x3) / (25*d-14*f) 2) Ifodalarni yozishda fakat dumaloq qavslardan foydalanish mumkin. Figurali va kvadrat qavslardan foydalanish mumkin emas, ulardan maxsus maqsadlarda foydalaniladi. Murakkab ifodalarni yozganda ochuvchi va yopuvchi qavslarning soni teng bo`lishi kerak. 3) Ikkita arifmetik amalni ketma-ket yozish taqiqlanadi, masalan matematik ifodani 3*A*V/(-Z) ko`rinishida yozish kerak, ya`ni ifodaning ko`rinishiga qarab qo`shimcha qavslardan foydalanish kerak bo`ladi. 4) Amallarni bajarish chapdan o`ngga qarab amallarning bajarilish tartibida bajarilishini esda tutish lozim. Amallarning bajarilish tartibi quydagicha: 1.Standart funktsiyalar 2.Ko`paytirish va bo`lish amallari (DIV va MOD) 3.Qo`shish va ayirish amallari. Agarda standart funktsiyaning argumenti ham ifoda bo`lsa, u holda avval argument hisoblanadi, so`ng esa funktsiya hisoblanadi, ya`ni sin(0.14+Z) bo`lsa, avval 0.14+Z hisoblanib, so`ng sin funktsiyasi hisoblanadi. Masalan: ART*2*T+R/T*N-S berilgan bo`lsa, quydagi tartibda hisoblash bajariladi: 1) ART*2 2) ART*2*T 3) R/T

52

4) R/T*N 5) ART*2*T+R/T*N 6) ATT*2*T+R/T*N-S Agarda biror sababga ko`ra ularning tartibini o`zgartirish talab etilsa, u holda dumaloq qavslardan foydalaniladi va ular birinchi navbatda hisoblanadi. Yig'ma va bo'sh operatorlar xaqida tushuncha. Yig'ma operator - bu bir nechta operatorlarning bitta guruxga birlashtirilishidir. Bu operatorning umumiy yozilish formasi quyidagichadir: BEGIN 1-operator; 2-operator; .... (n-1)-operator; n-operator END. Bu konsruktsiyadagi xizmatchi so`zlar BEGIN (boshlanish) va END (tamomlash) operator qavslari deb ataladi. BEGIN ochuvchi qavs va END-yopuvchi qavs rolini o`ynaydi. Yig`ma operator bitta operator vazifasini bajaradi, uni programmaning ixtiyoriy joyiga joylashtirish mumkin, agarda qaerda bitta operator ishlatish mumkin bo`lsa, Yigma operatorning ixtiyoriy operatori ham o`z navbatida yig`ma operator bo`lishi mumkin. BEGIN va END-xizmatchi so`zlaridan keyin nuqta, vergul, «, ;, » simvoli qo`yilmaydi, ular faqat operatorlar orasiga qo`yiladi. Bo`sh operator -bu xech qanday ish bajarmaydigan operator. Operator bo`lishi kerak bo`lgan joyda yozuvlar bo`lmasa, bu bo`sh operatorga mos keladi, ya`ni faqat nuqta vergul belgisi yoziladi; masalan: A:=V; R:=2; ; U: =7.2; bu yerda uchinchi operator bo`sh operatorga mos keladi. Yig`ma va bo`sh operatorlar shartli o`tish operatorida ko`p ishlatiladi. Ma'lumotlarni kiritish va chiqarish operatorlari. Ma`lumotlarni kiritish va chiqarish operatorlari ma`lumotlarni saqlovchi qurilmalardan mashina xotirasiga va aksincha, mashina xotirasidagi ma`lumotlarni displey ekraniga chiqarish uchun ishlatiladi. Sonli qiymatlarni kiritish. O`zgaruvchilarga ularning son qiymatlarini berish uchun o`zlashtirish operatoridan foydalanish mumkin, masalan: A:=5; VV:=-6.143;

53

Ammo bu xolda dastur (programma) universal bo`lmaydi, chunki programma o`zgaruvchilarning faqat shu qiymatlari uchun bajariladi. O`zgaruvchilarning turli qiymatlarida dastur bajarilishi uchun kiritish operatori mo`ljallangandir. Dastur bajarilishi jarayonida READ kiritish operatori uchrasa, mashina to`xtaydi va o`zgaruvchilarning son qiymatlarini kiritilishini kutadi. O`zgaruvchilarning son qiymatlari kiritilgandan so`ng, dasturning bajarilish jarayoni davom ettiriladi. Kiritish operatorining umumiy yozilishi kuydagicha: READ( A1, A2, ..., An) bu yerda A1, A2, ..., An - o`zgaruvchilar, ular kiritilayotgan son qiymatlarini qabul qiladi. Son qiymatlar orasida bitta bo`sh joy tashlab kiritiladi va ohirida kursorni yangi satrga o`tkazish buyrug`i, ya`ni enter tugmasi bosiladi. O`zgaruvchilarning son qiymatlari dastur to`liq kiritilib, so`ng dasturning bajarilishiga buyruq berilgandan so`ng kiritiladi. Dastur bajarilishi jarayonida A, V,S o`zgaruvchilarga A=5, V=17 S=6.2 qiymatlar berilishi talab qilinsin. U holda kiritish operatori quydagicha bo`ladi: READ ( A, B, C ) ; va ularning son qiymatlari dasturga quydagicha kiritiladi, ya`ni 5 17 6.2 Natija olingandan so`ng yana dasturning bajarilishi talab qilinsa, u holda o`zgaruvchilarga yangi qiymatlar berish mumkin bo`ladi: 16 4 -0.5 Bunda endi A=16, V=4, S=-0.5 son qiymatlari uchun dastur bajariladi. Bunda dasturning birorta operatori ham o`zgarmaydi. Agarda o`zgaruvchi tasvirlovchi qismda haqiqiy (REAL) deb e`lon qilingan bo`lsada, lekin uning qiymati butun bo`lsa, uning son qiymatini butun yoki xaqiqiy ko`rinishda kiritish mumkin. Bu xolda mashina butun sonni xaqiqiy ko`rinishga o`zi o`tkazadi. Shuningdek kiritish operatorini o`zgaruvchi parametrlarsiz ham ishlatsa bo`ladi, ya`ni READLN (A1, A2, ..., An) ko`rinishda ham foydalanish mumkin, bunda avval A1, A2, ..., An o`zgaruvchilarning son qiymati kiritiladi va so`ng yangi satrga o`tkaziladi. Bu operator yuqoridagi ikkita kiritish operatoriga teng kuchlidir. Natijalarni chiqarish. EXM ning xotirasidan qiymatlarni displeyning ekranga chiqarish uchun chiqarish operatori WRITE dan foydalinadi. Operatorning umumiy yozilishi ko`rinishi quydagicha: WRITE ( A1, A2, ..., An) bu yerda A1, A2, .., An - oddiy xolda o`zgaruvchi yoki apostrof orasiga olingan simvollar bo`lishi mumkin. Masalan, operator WRITE (qiymat V=` , B ) displey ekraniga

54

qiymat V= va uning davomida V o`zgaruvchining qiymati chiqariladi. Chiqarish operatori WRITE da butun va xaqiqiy sonlar format orqali ham chiqarish mumkin. Buning uchun o`zgaruvchilardan so`ng ikki nuqta : belgisi qo`yiladi va so`ng formatlari ko`rsatiladi. Butun sonlar uchun format bitta kattalikdan, xaqiqiy sonlar uchun ikkita kattalikdan iborat bo`ladi. Bunda birinchi kattalik o`zgaruvchi uchun ajratilgan umumiy xonalar soni bo`lsa, ikkinchi kattalik esa -kasr qismi uchun ajratilgan xonalar sonini anglatadi. Umumiy xonalar soniga sonning ishorasi, butun qismining sonlari, o`nli nuqta va kasr qismining xonalar soni kiradi. Masalan, u o`zgaruvchini qiymatini format yordamida chiqarsak, ya`ni WRITE (U:5:2 ), bunda ekranda U o`zgaruvchi uchun hammasi bo`lib 5 ta xona ajratilgan, ulardan ikkitasi kasr qismi uchun, bitta xona o`nli nuqta va bitta xona sonning ishorasi uchun ajratilgan. U ning qiymati misol uchun 1,76 ga teng bo`lsa, u xolda 1.76 5 ta xona birinchi bo`sh xona ishora uchun ajratilgan. Boshqa ko`rinishda esa, ya`ni WRITE ( u=` , u : 8 : 3) bunda displey ekranida quydagi ma`lumotlar chiqariladi: 3 ta xona U= 1.760 8 ta xona Butun sonlar uchun esa kasr qismi uchun format ko`rsatilmaydi, ya`ni WRITE ( N= , N : 3) bunda N= 17 Paskal` tilida chiqarish operatorining boshqa ko`rinishlaridan ham foydalanish mumkin. Masalan, parametrlarsiz chiqarish operatori. WRITELN displey ekranida yangi satrga o`tish uchun xizmat qiladi. Bu operatorni parmetrlar bilan yozsak, u xolda natija displey ekranining yangi satrdan chiqariladi, ya`ni WRITE (A1, A2, ...., An) WRITELN Demak, kiritish va chiqarish operatorlari hamma programmalarda ishtirok etadi. Kiritish operatoridan avval chiqarish operatori yordamida izohli matn chiqarish foydalanuvchi va mashina orasidagi muloqotni va programmani yanada tushunarli bo`lishini ta`minlaydi: masalan, A,B,C o`zgaruvchilarni kiritish uchun WRITE ( A,B,C o`zgaruvchilarining qiymatini kiriting`) : READ (A,B,C) Buning natijasida programma ohirida displey ekranida quydagi matn chiqadi, ya`ni

55

A,V,C o`zgaruvchilarning qiymatini kiriting undan so`ng ularning son qiymatini kiritish mumkin 5 17 6.2 Agar izoxdan foydalanilmasa, ohirida qanday o`zgaruvchilarning qiymati va qaysi tartibda kiritilishi esdan chiqishi mumkin, ayniqsa bu xol katta programma bajarilish jarayonida qo`l keladi. Misol. Uchburchakning A, B, C tomonlari berilgan. Uning tomonlariga tushurilgan balandliklarni hisoblash dasturi tuzilsin Berilgan: A,B,C topish kerak Ha=? Hb=? Hc=? S=a*h/2 ; h=2*s/a ; S= P(P-A) (P-B) (P-C) ;. P=P1/2 ; P1=A+B+C; PROGRAM misol ( INPUT, OUTPUT) ; VAR A,B,C: REAL ; BEGIN WRITELN ( A , B, C ning kiymatlarini kiriting ) READLN ( A, B,C ) ; P1 : = A+B+C ; P : = P1/2 ; S : = SQRT ( P*( P-A) * ( P-B) * ( P-C )) ; HA : = 2*S/A ; HB : = 2*S/B ; HC : = 2*S/C ; WRITELN ( Masalaning natijasi` ) ; WRITELN (HA =`, HA, HB=` , HB, HC=` ,HC ) ; END. Programma to`liq kiritilgandan so`ng CTRL+F9 tugmalarini bossak displey ekraniga A,B,C ning qiymatlarini kiriting degan ma`lumotlar chiqadi, undan keyin 3, 4, 5 va enter tugmasini bosamiz, so`ng ALT+F5 tugmalarini bosish natijasida displey ekranida masalaning natijasi HA= qiymati, NV= qiymati, NS= qiymati, chiqadi. Nazorat savollari: 1. T.Paskal dasturining tarkibiy qismi. 2. Dasturni tashkil etuvchi operatorlar. 3. O`zlashtirish operatori. 4. Kiritish-chiqarish operatorlari. 5. Chiziqli algoritm dasturi. 6. O`zgaruvchilarning toifalari Test savollari

56

#1. Quyidagi e`lon qilingan o`zgaruvchilar qanday qiymatlar qabul qiladi VAR X,Z: INTEGER; A: REAL; ~A) X va Z butun, A mantiqiy ~B) X va Z haqiqiy, A mantiqiy ~C) X va Z butun, A haqiqiy ~D) X va Z belgili(satrli), A haqiqiy ~Ye) bilmayman #2. PASCAL dasturlash tilida ma`lumotlarni kiritish va chiqarish operatorlarini ko`rsating ~A) INPUT, REM ~V) DATA, READ ~S) READ, READLN ~D) READ, WRITE ~Ye) bilmayman 3. Agar var x:integer; y:real; bo`lsa to`g`ri variantni tanlang ~A) y:=DIV(x/2); ~V) x:=2 ~S) x:=y/x: ~D) Y:=X MOD Y ~Ye) bilmayman

57

11-12 ma'ruza. Mantiqiy algebra elementlari. Logik (matiqiy) tipdagi qiymatlar. Maqsad: Mantiqiy algebra elementlari bilan tanishish, mantiqiy tipdagi qiymatlar haqida ma`lumot berish, mantiqiy ifodalar. Kalit so'zlar: mantiqiy o`zgaruvchi, mantiqiy ifodalar, true, false. Reja: 1. Mantiqiy ifodalar va ularni berilishi 2. Mantiqiy xizmatchi so`zlarni qo`llash 3. O`zgaruvchi va o`zgarmaslarni turlari Matematik mantiqning informatikadagi roli. Logik ifodalar shunday solishtirish amallaridan va logik operatsiyalaridan tashkil topgan. Bunda amallar arifmetik ifodalarni hisoblashda solishtirishdan hosil bo`lgan qiymatlarga erishiladi. Paskal` algoritmik tilida 2 xil mantiqiy o`zgarmaslar bo`lib, quydagicha yoziladi: TRUE -rost va FALSE -yolg`on ma`nosini bildiradi. Mantiqiy o`zgaruvchi shu ikki qiymatdan birini qabul qiladi va BOOLEAN tur (tip) bilan aniqlanadi. Mantiqiy qiymatlar ba`zi shartlarning to`g`riligini tekshirishda va xar xil kattaliklarni solishtirishda keng qo`llaniladi. Qiymatlarni solishtirish uchun quyidagi solishtirish operatsiyalardan foydalaniladi: <(kichik);<=(kichik yoki teng); =(teng); <>(teng emas);>=(katta yoki teng); >(katta). Arifmetik qiymatlarga solishtirish operatsiyalarni tatbiq etsak, u xolda mantiqiy qiymat, ya`ni ifoda rosti yoki masalan, 5>3 ifoda natijasi (TRUE) rost áo`ladi va agar 5=3 esa natijasi (FALSE) yolg`on bo`ladi. Mantiqiy qiymatlar bilan quyidagi operatsiyalarni bajarish mumkin: ORmantiqiy qo`shish (yoki); AND-mantiqiy ko`paytirish (va); NOT-mantiqiy inkor qilish (yo`q). OR va AND mantiqiy operatsiya ikkita kattalik bilan bajariladi, NOT operatsiyasi esa bitta kattalik bilan bajariladi. Logik qiymatlar bilan bajariladigan operatsiyalar natijasi quyidagi jadvalda keltirilgan:

A TRUE TRUE FALSE FALSE B TRUE FALSE TRUE FALSE A and B TRUE FALSE FALSE FALSE A or B TRUE TRUE TRUE FALSE not A FALSE FALSE TRUE TRUE A XOR B FALSE TRUE TRUE FALSE

Mantikiy ifodalar mantiqiy qiymatlar, mantiqiy amallar va taqqoslash (solishtirish) amallaridan tashkil topadi. Solishtirish jarayonlarida arifmetik va mantiqiy ifodalar, shuningdek simvol qiymatlar ishtrok etishi mumkin. Mantiqiy ifodaning natijasi Rost` yoki Yolgon` qiymat bo`lishi mumkin. Mantikiy ifodalarda amallarning bajarilishi quydagi tartibda bajariladi. 1) NOT, XOR

58

2) *(kupaytirish) , / (bulish, DIV,MOD,AND) 3) +(kushish) ,- (ayirish) , OR 4) <(kichik) , <=(kichik yoki teng), > (katta), >=(katta yoki teng),= (teng) , <> (teng emas). Mantikiy ifodalarda faqat dumaloq qavslar ishlatish mumkin. Agarda ifodada qavslar ishtirok etsa, u xolda avval qavs ichidagi amallar bajariladi, undan so`ng qavs tashqarisidagi amallar bajariladi. Mantiqiy AND va OR operatsiyalarining chap va o`ng tomonlaridagi ifodaning qismlari albatta qavs ichiga olinib yoziladi. Masalan, quydagi mantiqiy ifodaning natijasi aniqlansin. (A>3) AND (B=A+6) OR NOT C=4 bunda A=2, B=8, C=5. Amallarning bajarilishi quydagicha bo`ladi: 1) birinchi qavs ichidagi solishtirish amali bajariladi, buning natijasi yolgon` chunki 2<3; 2) ikkinchi qavs ichidagi qo`shish amali, ya`ni A+6, undan keyin solishtirish amali V=A+6. Natija Rost` bo`ladi, chunki 8=2+6; 3) C=4 solishtirish amali, buning natijasi yolgon` , chunki 5=4; 4) NOT (C=4) amali, ya`ni NOT FALSE, buning natijasi TRUE` (Rost) 5) birinchi va ikkinchi qavs natijalari orasidagi AND amali, ya`ni (FALSE AND TRUE), buning natijasi ; `yolgon`, 6) OR amalining chap va o`ng tomonidagi ifodalar, ya`ni FALSE OR TRUEbuning natijasi -Rost`. Shunday qilib, mantiqiy ifodaning natijasi Rost` buladi. EHMlar nazariyasida matematik mantiq, ayniqsa uning mantiqiy algebra qismi keng tadbiq qilingan. Mantiqiy algebra, uni yaratuvchisi ingliz matematigi David Bul sharafiga qo`yilgan va Bul algebrasi deyiladi. Bu Bul algebrasi fikrlar va ular ustidagi amallarni o`rnatadi. Fikrlar lotin alifbosining bosh xarflari bilan belgilanadi. Har qanday fikr xaqiqat yoki yolg`on qiymatlardan faqat bittasini qabul qilishi mumkin. Mantiqiy elementlar bilan triggerlar EHM elementlarining umumiy qismini 70-80 % ini tashkil qilib, ya`ni ularning element bazasi tushunchasi asosan shular hisobiga shakllanadi.

59

Mantiqiy amallarning geometrik talqinini quyidagicha ifodalash mumkin:

A* *

Bu yerda A-fikr yopiq kontur bilan ifodalangan bo`lib, umumiy fikrlar maydoni to`g`ri to`rtburchaklar bilan ifodalangan. Shuning uchun S=A* (Aning inkori) to`g`ri to`rtburchakning A dan tashqari qismi bilan ifodalanadi. Bundan tashqari ikki fikr ko`paytmasi A va V ga mos sohalar kesishgan qismidan iborat bo`ladi. Chunki S=A V faqat A=1, V=1 bo`lgan holdagini haqiqat bo`lgani uchun u faqat A, xam V ga tegishli bo`lgan nuqtalar uchungina to`g`ri bo`ladi. S=A V dizyunktsiya A yoki V haqiqat bo`lsa, haqiqat bo`lgani uchun A va V sohalarining birlashmasi bilan ifodalanadi. 1954 yilda ingliz matematigi Djorj Bul` o`zining «Fikrlash qonunlari» nomli kitobini chop etdi. U mantiqiy algebraning asosini tashkil etadi. Bul` algebrasi EHM ning rivojlanishida katta rol uynaydi. EHM yaratish mumkinligining asosiy g`oyasi bul` algebrasiga asosangan. Bu fikrni tushunish uchun matematik mantiqning asosiy sodda tushunchalarini eslaylik. Oddiy hodisalar yoki mantiqiy fikr elementlarini A,V,S ... va mantiqiy fikrning rost yoki yolg`onligini esa mos ravishda 1 va 0 bilan belgilash mumkin. Bu esa o`z navbatida ikkilik sanoq sistemasiga mos keladi. Agar bir hodisaning yuz berishi, ikkinchi hodisaga bog`liq bo`lmasa, bu hodisa sodda, aks holda murakkab deyiladi. Bul` algebrasiga muvofiq, har qanday murakkab hodisa sodda hodisalarning mantiqiy funktsiyasidan iborat. Mantiqiy elementlar ustida quyidagi mantiqiy amallarni bajarish mumkin: Mantiqiy ko'paytma. Ikkita oddiy mulohazani «and»-«va» bog`lovchisi bilan birlashtirishga mantiqiy ko`paytma yoki kon`yunktsiya deyiladi va « » belgisi bilan yoziladi. Mantiqiy ko`paytma A B-A va B mulohazalar bir vaktda rost bo`lgandagina rost bo`ladi. Bu fikrlarni quyidagicha geometrik tasvirlash ham mumkin.

1011 0110 0010

A

B

Mantiqiy yig'indi (Diz'yunktsiya) .Ikkita sodda mulohazani «or»-«yoki» bog`lovchisi bilan biriktirishga aytiladi. Mantiq tilida «or» bog`lovchisi « » belgisi bilan belgilanadi. Agar A,V mulohazalardan kamida bittasi rost bo`lsa, mantiqiy yig`indi, A V rost bo`ladi.

60

1011 0110

A

B

0111

Mantiqiy inkor. Oddiy A mulohazasi oxiriga «not» «emas» qo`shimchasini qo`shishga A mulohazasini inkori deyiladi. Yolg`on mulohaza A ning inkori rost bo`ladi. Bul` algebrasida inkor «»- belgisi bilan belgilanadi va mulohazaning oldiga qo`yiladi: A.

0101

A

1010

Quyida mulohazalarning rostlik jadvali keltirilgan: A V A&V AVB 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 1

]A 1 1 0 0

Bul` algebrasining asosiy tasdiqlaridan biri ixtiyoriy mantiqiy funktsiyani mantiqiy amallar asosida chekli sondagi mantiqiy mulohazalar ko`rinishida yozish mumkinligidadir. Bundan esa ixtiyoriy mantiqiy fikrni rost (1) va yolg`onlarning (0) chekli sondagi kombinatsiyalari ko`rinishida yozib olish mumkinligi kelib chiqadi. Bu esa, o`z navbatida 1 (signal bor) va 0 (signal yo`q) raqamlarining kombinatsiyalariga asoslangan va ixtiyoriy fikrni ifodalash imkoniga ega bo`lgan maxsus elektron qurilmalar-EHM larni yaratish mumkinligi haqidagi fikrni yuzaga keltiradi. EHM xotirasidagi barcha boshlang`ich berilganlar kodlashtirilgan holda 0 va 1 ko`rinishida bo`ladi. Xotiradagi hamma ishchi programmalar va buyruqlar xotirada bir nechta baytlarda joylashtirilgan bo`ladi. Har bir buyruq - ko`rsatma, maxsus kodga ega bo`lib, komp`yuterga u yoki bu amalni bajarish kerakligini bildiradi. Buyruqlar sifatida ­ ikki son ustida biror arifmetik amal, diskdan ma`lumotni o`qish, ekranga belgini uzatish, printerda belgini chop qilish kabi ko`rsatmalar bo`lishi mumkin. Masalan, c d yig`indini hisoblash uchun quyidagi formatdagi buyruq kodi bo`lishi mumkin. Buyruq kodi ( amali) 1-operand adresi (s) 2-operand adresi (d) 010110 111010101001 110001100101

61

Bu yerda 010110 qo`shish « » amalining kodi, 111010101001 s o`zgaruvchi uchun xotirada ajratilgan joyning adresi, 110001100101 esa d o`zgaruvchi uchun qiymatlar ustida qo`shish amalini bajarib, natijani xotira registrlarining biriga joylashtiradi, ko`p hollarda bu summator deb nomlanuvchi A registri bo`ladi. Programmaga kiruvchi bunday buyruqlar ketma-ketligi xotiraning ma`lum bir qismida joylashadi. Programma bo`yicha EHM ning ishi Boshqaruv qurilmasini (BQ) Buyruq adresi sanagichi (BAS) deb nomlanuvchi registrga «qarashdan» boshlanadi. BAS da programmadagi birinchi buyruqning xotiradagi adresi bo`ladi. Shu buyruqni bajarilishi bilan EHM ish boshlaydi. Bu buyruq bajarilish paytida BAS da navbatdagi buyruq adresi paydo bo`ladi, keyin protsessor shu buyruqni bajaradi, BAS da navbatdagi buyruq adresi paydo bo`ladi va hokazo. Bu jarayon BAS da «programma bo`yicha ishlash tugashi» buyrug`ining adresi paydo bo`lib, shundan keyin EHM o`z ishini tugatadi. BQ ko`rsatilgan adres bo`yicha xotirada ma`lumotni o`qiydi va arifmetikmantiqiy qurilma (AMQ)ni bu amalni bajarishga sozlaydi. BQ qiymatlar operandlarning buyruqdagi adreslari orqali xotiradan topadi. Bu ishlardan keyin BQ «dam oladi», ya`ni AMQ ga ko`rsatilgan amalni bajarishga imkon beradi. AMQ bajarilgan amal natijasini o`zining chiqishlarida nomoyon qiladi. O`z ishini tugatgan AMQ, bu haqida BQ ga signal orqali ma`lum qiladi. BQ natijani ko`rsatilgan xotira adresiga yoki translyator tomonidan ko`zda tutilgan joyga (registrga) joylashtiradi. Shundan keyin BQ BAS dan navbatdagi buyruqni o`qiydi Mantiqiy amallar uchun xam arifmetik amalarning ba`zi xossalari o`rinli bo`ladi. Kommutativlik (o`rin almashtirish) qonuni: A V =V A; A V=B A Assotsiativlik (gruppalash) qonuni: A (V S) =(A V) S Distributivlik(taqsimot) qonuni: A (V S) =A V A S Mantiqiy amallar uchun shakl almashtirish 1. 0 =1; 1=0 2. A 1=A; A 0=0 3. A 0=A; A 1=1 4. A A=1; A A=0 5. A(BA)=1; (AB)(AB)=1 6. A A=A A=A 7. A (A B)=A; A (A B)=A Nazorat savollari: 1. Mantiqiy ifodalar va ularni berilishi 2. Mantiqiy xizmatchi so`zlarni qo`llash 3. O`zgaruvchi va o`zgarmaslarni turlari

62

4. Matematik mantiqning informatikadagi roli. 5. Dizyunktsiya va konyuktsiya tushunchalari 6. Gruppalash va taqsimot qonuni 7. Shakl almashtirish ko`rinishlari Test savollari 1. Mantiqiy ifoda qanday qiymatlar qabul qiladi? ~A) faqat chin ~B) faqat yolg`on ~C) musbat ~D) chin yoki yolg`on ~E) barcha javoblar to`g`ri #2. Quyidagilardan to`g`ri yozilgan shartli o`tish operatorini ko`rsating? *a) if b then s1 else s2; b) if then s1 else s2 c) if b then else s2 d) if b then s1 ye) if b then s1 ese s2; #3.Quyida keltirilgan dasturlardan kaysi biri xatosiz yozilgan: ~A) var b: boolean; begin b:=7; write(natija: ,b) end. ~V) var b: boolean; begin b:=false; if not b then write(ura!) end. ~S) var b: boolean; begin b:=`Hello, World`; write(b) end. ~D) var b: boolean; c: real; begin c:=sqr(b); write(natija: ,c) end. ~Ye) var b: boolean; c: integer; begin c:=sqr(b); write(natija: ,c) end.

63

13-14 ma'ruza. Tarmoqlanuvchi hisoblash jarayonlarini dasturlash. Shartli va shartsiz o'tish operatorlari. Tanlash operatorlari. Maqsad: Tarmoqlanuvchi jarayon haqida ma`lumot berish, shartli, shartsiz tanlash operatorlari tushunchalari ko`nikmalarini hosil qilish. Kalit so'zlar: If <shart> then S1; if <shart> then S1 else S2; case <selektor> of operatorlari. Reja: Tarmoqlanuvchi algoritm tushunchasi Shartli o`tish operatorlari Shartsiz o`tish operatori Shartsiz operatorni qo`llash Tanlash operatori va uni dasturda qo`llash

1. 2. 3. 4. 5.

Paskal` dasturlash tilida bir gurux operatorlar bor, ular yordamida dasturning bajarilishi boshqariladi. Bu yerda ko`riladigan operatorlar shartli o`tish operatorlari bo`lib, ularning bajarilishi biror shartga asoslanadi. Paskal` tilida shartli o`tish operatorlari ikki xil bo`ladi: to`liq va qisqa. Shartli utish operatorining to`liq formasi quyidagi ko`rinishga ega: IF <> THEN 1-

ELSE

2-

Bu yerda IF- agar, THEN ­ u holda, ELSE- aks holda xizmatchi so`zlardir. IF <mantiqiy ifoda> THEN (u xolda) 1-operator, ELSE (aks xolda) 2operator. Bu yerda 1-operator va 2-operator oddiy yoki yig`ma operatorlar. Agarda mantiqiy ifoda rost bo`lsa, u holda 1- operator, aks holda esa 2operator bajariladi. 1-va 2-operatorlar sifatida shartli o`tish operatorlari bo`lishi mumkin. Shartli o`tish operatorlari murakkab operatorlar qatoriga kiradi, chunki uning ichiga boshqa operatorlar ham qo`shilishi mumkin. Misol 1. Quydagi arifmetik ifoda hisoblansin: x+1 agarda x<o 2x agarda x>=o

64

Bu yerda avval shart tekshiriladi va uning qiymati rost yoki yolg`onligidan bitta ifoda hisoblanadi, ya`ni u=x+1 yoki u=2x. Bunda x ning qiymati IF operatorigacha aniqlangan bo`lishi kerak. Mantiqiy ifoda o`rnida faqat mantiqiy o`zgaruvchi ham kelishi mumkin. IF X<0 THEN U:=X+1 ELSE U:=2*X ; Misol 2. A=N+40 ifoda hisoblansin, agarda N ning qiymati 1,5 dan katta va 2,5 dan kichik bo`lsa. Boshqa xollarda esa, ya`ni N ning boshqa qiymatlarida V=M+1 hisoblansin. Bu xolda shartli o`tish operatori quydagicha yoziladi: IF (N>1.5) AND (N<2.5) THEN A:=N+40 ELSE B:=M+1; Agar mantiqiy ifoda bir necha shartga bog`liq bo`lsa, u xolda shartlarni birbiriga bog`lash uchun (AND, OR, NOT) lardan foydalaniladi. Ushbu masala quyidagicha bajariladi: oldin qavs ichidagi ifodalar solishtiriladi va rost bo`lsa A:=N+40 ifoda bajariladi, aks holda (yolg`on bo`lsa) B:=M+1 ifoda bajariladi. Paskal tilida dasturning yozilishi erkin bo`lganligi sababli qulaylik uchun shartli o`tish operatorini yozishda IF xizmatchi so`zining tagidan ELSE so`zi yozilsa dasturni o`qish osonlashadi. Masalan, IF A=B THEN begin 1-operator; 2-operator; ............. n-operator; end ELSE begin 3-operator; 4-operator; ........ end. Shartli o`tish operatorining imkoniyatlarini yig`ma operatorlar yordamida kengaytirish mumkin. Bu xolda THEN va ELSE xizmatchi so`zlaridan keyin yig`ma operatorlar qatnashishi mumkin, ya`ni IF mantiqiy ifoda THEN BEGIN 1- operator; 2- operator; ... ( n-1) - operator; n - operator END ELSE BEGIN 1- operator; 2- operator; ... ( n-1 ) - operator; n- operator END. Bunda ELSE xizmatchi so`zidan oldin nuqta, vergul belgisi qo`yilmaydi. Yig`ma operatorlarning ichida shuningdek shartli o`tish operatori va ularning o`zi oddiy va yig`ma operatorlardan tashkil topishi mumkin.

65

Masalan, agarda A>B bo`lsa, quydagi uchta operator hisoblansin, U1=7, U2=A, UZ=A+V: agarda A<=B bo`lsa, u xolda T1=2A va T2=A-V Bu xolda shartli o`tish operatori quydagicha yoziladi: IF A>B THEN BEG`IN U1 := 7 ; U2 : =A ; U3 : = A+B END ELSE BEGIN U1: = 2*A ; U2: = A-B END. Bu yerda 2 marta yig`ma operatorlar ishlatilmoqda. Paskal` tilida, shuningdek shartli o`tish operatorining qisqa formasidan ham foydalanish mumkin. IF mantiqiy ifoda THEN 1-operator. Bunda agarda mantiqiy ifoda rost bo`lsa, u xolda 1-operator bajariladi, aks xolda shartli o`tish operatordan keyin turgan operator bajariladi. Masalan, IF A>15 THEN U:=-7; Z:= SUM+1 Bu operator bajarilishi natijasida, agarda A>15 ifoda rost bo`lsa, u xolda u hisoblanadi va undan keyin Z hisoblanadi, aks xolda esa ya`ni A>15 yolg`on bo`lsa, u xolda to`g`ridan to`g`ri Z hisoblanadi.

66

Tanlash operatori. Tanlash operatoridan bir nechta ketma-ket operatorlar ichidan biror ifodaning qiymatiga qarab tanlash uchun ishlatiladi. Tanlash operatori murakkab operatorlar qatoriga kiradi va uning umumiy ko`rinishi quydagicha yoziladi: CASE ifoda OF 1-o`zgarmas: 1- operator; 2-o`zgarmas: 2- operator; .... n-o`zgarmas: n-operator END bu yerda CASE (bo`lgan xolda), ifoda (butun raqamlar yoki harflar bo`lishi mumkin) OF (ulardan), END (tamom) - xizmatchi so`zlar. Tanlash operatori quyidagi ish bajaradi: Agarda ifodaning qiymati o`zgarmaslardan biriga teng bo`lsa, u xolda shu o`zgarmasga mos operator bajariladi. Undan so`ng boshqaruv tanlash operatoridan keyin turgan operatorga uzatiladi. Agarda ifodaning qiymati birorta ham o`zgarmasga teng bo`lmasa u xolda boshqaruv tanlash operatoridan so`ng turgan operatorga uzatiladi. Ifoda haqiqiy tipda boshqa ixtiyoriy standart tipda bo`lishi mumkin. Bunga mos ravishda o`zgarmas ham haqiqiy bo`lishi mumkin emas. O`zgarmasning tipi ifodaning tipiga mos kelishi kerak. Tanlash operatorining yozilishiga misol CASE K+1 OF 5: U:=SQR (X) ; 11: U: = SQRT (X ) ; 4 : Z: =4* (A-B ) ; 7 : WRITE ( A, B ) END Agarda K+1 ifodaning qiymati 5, 11, 4, 7 o`zgarmaslardan biriga teng bo`lsa, unga mos operator bajarilgach, boshqaruv END operatoridan so`ng turgan operatorga uzatiladi. K o`zgaruvchi butun tipdagi o`zgaruvchi sifatida e`lon qilinishi kerak. Bundan tashqari K, X, A, B o`zgaruvchilar CASE operatoridan avval aniqlangan bo`lishi kerak. Tartiblashtirilgan konstruktsiya CASE tartibli o`zgaruvchi OF

1-qiymat Operator 1..1 ............. Operator 1..N 2-qiymat Operator 2..1 ............. Operator 2..N 3-qiymat Operator 3..1 ............. Operator 3..N ........ ....... .......... ........... ELSE Operator K..1 ............... Operator K..N

Tartibli o`zgaruvchi-qiymati CASE ... OF operatorining tarmog`ini aniqlaydigan qiymat. Masalan: CASE TRUNC(ln(x*x+A*B)) MOD 7 of

67

0: writeln( 1:writeln( ................ 6:writeln( End; Ishlash tartibi: CASE ifoda OF Konstanta 1: operator1; Konstanta 2: operator 2; .......... Konstanta n; End; bu yerda CASE (v sluchae), OF(undan). Ikkinchi bir ko`rinish. CASE K+1 OF 5:y:=sqr(x); 10:y:=sqrt(x); 4: z:=3*(a-b); 7:writeln(a,b); End; Agar K+1 =5 ga teng bo`lsa, u holda y=x2 hisoblanadi va boshqaruv End dan keyingi operatorga uzatiladi. Bu yerda K,x,a,v larning qiymatlari CASE bajarilishidan oldin berilishi kerak. Bundan tashqari tanlash operatori bir necha o`zgarmas simvollarda xam foydalanish mumkin. Masalan: CASE N OF +`, -, *`, /`: P:=1; A`, B` : P:=2; .` :P:=3; end; Bu yerda o`zgaruvchi N o`zgaruvchilar bo`limida tipi: simvolli bo`lishi keltirilgan. Agar N ning qiymati ushbu simvollardan biriga teng bo`lsa +, -, *,/, A`, B`. U holda o`ziga mansub operator bajariladi. O'tish (shartsiz) operatori. Paskal` tilida dasturning bajarilishning tabiiy tartibi qabul qilingan, ya`ni operatorlar birin ketin yozilgan tartibda bajariladi. Biroq masalalarni programmalashtirish tajribasidan operatorlarning ketma-ket bajarilish tartibini buzishga to`g`ri keladi. Masalan, programmaning biror bo`lagini tashlab o`tishga va kerak bo`lganda unga ya`na qaytish mumkin bo`lsin. Buning uchun o`tish operatori mo`ljallangan bo`lib, uning qo`rinishi quydagicha: GOTO belgi;

68

Belgi sifatida 1dan 9999 gacha bo`lgan sonlar yoki xarf va sonlar bo`lishi mumkin. Bu belgi o`tish kerak bo`lgan operator oldiga qo`yiladi va u operatordan ikki nuqta bilan ajratiladi, ya`ni GOTO 32 ; 10 : A :=2; ... 32 : U :=X/Z ; Bu yerda GOTO 32 operatoridan so`ng 32 belgili operator bajariladi. Eslatib o`tish kerakki, GOTO o`tish operatoridan keyin turgan operator xam albatta belgiga ega bo`lishi kerak. Aks xolda GOTO va 32 belgili operatorlar orasidagi operatorlar ortiqcha bo`lib qoladi, chunki ularga o`tishning boshqa yo`li bo`lmaydi va ular bajarilmay qolib ketadi. O`tish operatori oddiy operatorlar qatoriga kiradi, chunki uning tarkibida boshqa operatorlar qatnashmaydi. Belgilar albatta belgilarni z`lon qilish bo`limida e`lon qilinishi kerak. Belgilarni e`lon qilish quydagicha LABEL belgi; Shuningdek bir nechta belgi bir yo`la e`lon qilinishi mumkin : LABEL belgi 1, belgi 2, ... , belgi n ; Yuqorida ko`rilgan misol uchun belgilarni e`lon qilish quydagicha bo`ladi: LABEL 10, 32 ; Agar dasturda shartsiz o`tish operatori GOTO ishlatiladigan bo`lsa, albatta dastur boshida barcha belgilar LABEL bo`limida e`lon qilinishi shart. LABEL quyidagi tartibda keltiriladi: rrogram <identifikator>; uses crt; label <belgi>; const <o`zgarmaslar>; var <o`zgaruvchilar>: toifasi; Begin ......... end. Masalan: Label a1,a2; Var x,s:rael; Begin s:=0; x:=10; a1: s:=s+x; x:=x-1; IF x<5.5 then goto a2; Goto a1; 2:writeln(s=`,s:5:2); writeln(x=`,x:5:2); end.

69

Izoh: bu dasturda ikkita belgili o`zgaruvchi keltirilgan (a1,a2). Dasturni ishlash tartibi: 1-qadamda: s=0; s=0+10=10 x=10; x=10-1=9 9<5.5 bajarilmadi 2-qadam: s=10; s=10+9=19 x=9; x=9-1=8 8<5.5 bajarilmadi 3-qadam: s=19; s=19+8=27 x=8; x=8-1=7 7<5.5 bajarilmadi 4-qadam: s=27; s=27+7=34 x=7; x=7-1=6 6<5.5 bajarilmadi 5-qadam: s=34; s=34+6=40 x=6; x=6-1=5 5<5.5 bajarilish to`xtatiladi. Natija: s=40, x=5 ko`rinishda bo`ladi. Paskal tilida FOR , While, Repeat operatorlarini bajarish uchun 2ta xizmatchi so`z mavjud: Break- bu tsikldan darhol chiqib ketish protsedurasi bo`lib, yani protseduraning xarakati tsikl argumenti oxirida turgan operatorga boshqarishni uzatadi. Continue- bu tsiklning navbatdagi o`tishini muddatidan oldin tugashini ta`minlaydi va boshqarishni uzatish ekvivalenti tsikl operatorining ohirida turadi. Nazorat savollari: Tarmoqlanuvchi algoritm deb nima tushuniladi Shartli o`tish operatorlarining to`liq va qisqa ko`rinishlari. Shartsiz o`tish operatori va uni dasturda qo`llash Shartsiz operatorni qo`llashda natija taxlili Tanlash operatori va uni dasturda qo`llash usullari

1. 2. 3. 4. 5.

70

Test savollari #1. Agar a=5 bo`lsa quyidagi mantiqiy o`zgaruvchilar qiymatlarini aniqlang. C:=A<6; D:=A>1; ~A) FALSE va FALSE ~B) TRUE va FALSE ~C) FALSE va TRUE ~D) TRUE va TRUE ~E) TRUE #2. Shartsiz o`tish operatorini ko`rsating. ~A) A:=B; ~B) GO TO N; ~C) If B=0 THEN A:=2; ~D) If B=1 THEN A1=3 ELSE A1=3; ~E) CASE c OF #3. Shartli o`tish operatrorining to`lik ko`rinishini tanlang ~A) <operator> if <shart> ~V) <operator> if <shart> else <operator2> ~S) if <shart> else <operator2> ~D) if<shart> then<operator1> else<operator2> ~Ye) if<shart> else <operator1> then <operator2> ~89.Takrorlanuchi operator strukturasi to`g`ri ko`rsatilgan qatorni tanlang: ~A) if<shart> then<oper1> else <oper2> ~V) for< _tsikl parametri >:=<bosh. qiymat> downto<oxirgi qiymat> do<operator> ~S) for<tsikl parametri>:=< bosh. qiymat> do<operator> ~D) for<tsikl parametri>:=< bosh. qiymat > do<oxirgi qiymat> ~Ye) for<tsikl parametri>:=< bosh. qiymat> Until

71

15-16 ma'ruza. Mavzu: Takrorlanuvchi (tsiklik) jarayonlarni dasturlash. Maqsad: Talabalarda takrorlanuvchi jarayonlarni dasturlash ko`nikmalarini hosil qilish, tsikl operatorlari haqida ma`lumot berish. Kalit so`zlar: for, while, repeat.. until operatorlari. Reja: 1. Takrorlanuvchi (tsiklik) jarayonlarning turlari 2. Sharti oldin tekshiriladigan takrorlanuvchi tsiklik jarayon. 3. Shart oxirida tekshiriladigan takrorlanuvchi tsiklik jarayon. 4. Takrorlanuvchi jarayonlarni tadbiqi Ko`p masalalarni yechishda hisoblash jarayoni takrorlanuvchi (tsiklik) xarakterga ega. Bu degani, ma`lum operatorlar qismi o`zgaruvchining har xil qiymatlarida ko`p marta takrorlanadi. Uning qaytariladigan qismi esa tsikl deyiladi. Odatda bunday tsiklik jarayonlarda bir yoki bir necha parametrlar o`zgaruvchan bo`lib, ularning qiymati oldingisidan biror qadamga farq qiladi. Dastur tuzishda tsikllarni qo`llash EHM lardan unumli foydalanish, dasturni qisqartirish va uni tuzish va tahlil qilishga ketadigan vaqtni kamaytirish imkonini beradi. Paskal algoritmik tilida tsikl operatori uch xil bo`ladi: 1) oldindan shart tekshiriladigan tsikl operatori; 2) shart ohirida tekshiriladigan takrorlanuvchi (tsiklik) operatori; 3) parametrli tsikl operatori. Tsikl operatori murakkab operatorlar qatoriga kiradi, chunki uning ichida boshqa operatorlar xam qatnashishi mumkin. Hamma tsikl operatorlari uchun quyidagi xususiyat xarakterlidir. Takrorlanuvchi hisoblashlar faqat bir marta yoziladi. Tsiklga kirish faqat uning boshidan mumkin. Tsikl operatorining o`zgaruvchilari tsiklik qismga kirishdan avval aniqlangan bo`lishi kerak. Tsikldan chiqish dastur jarayonida ko`zda tutilishi lozim, ya`ni tsiklning tabiiy tugallanilishi bilan yoki boshqarishni shartsiz uzatish operatori yordamida tugallanilishi kerak. Shartning bajarilishiga qarab tsikl operatori odatda tsikl operatorining takrorlanish soni oldindan noma`lum bo`lgan xollarda ishlatiladi.

72

1. Oldin shart tekshiriladigan tsikl operatori WHILE DO

Sintaksis diagrammasi.

WHILE <mantiqiy ifoda> begin tsikl operatorlar tanasi

do

end; bu yerda WHILE ­ hozircha va do- bajarish xizmatchi so`zlardir. Tsikl operatori quyidagicha bajariladi, ya`ni oldindan mantiqiy iforda qiymati tekshiriladi va uning qiymati rost bo`lsa, tsikl operatori qismi (tanasi) bajariladi, agarda yolg`on bo`lsa, u xolda boshqarish tsikl operatoridan keyin turgan operatorga uzatiladi. Agarda mantiqiy ifodaning qiymati boshidan yolg`on bo`lsa, u holda tsikl operatorlari biror marta ham bajarilmasdan tsikldan chiqib ketadi. Misol 1. y=cos x x 0;1 oraliqda dx=0,1 qadam bilan hisoblang? 1) blok-sxemasi 0 dx=0,1 1 x:=0

WHILE

x<1 uses crt; var x,y:real; begin clrscr; x:=0; WHILE x<1 do begin y:=cos(x); x:=x+0.1; writeln(y=`,y, x=`,x) ; end ;

+ x<1

DO y:=cosx x:=x+0,1

-

Misol 2. y

a3 x funktsiyani [0; 3] oraliqda dx=0,1 qadam bilan hisoblash a2 x2

dasturini tuzing. (WHILE ... DO yordamida). Dasturi: Uses crt; Var a,x,dx,y:real;

73

begin clrscr; x:=0; dx:=0.1; WHILE X<=3 DO BEGIN y:= (SQR(a)*a-x)/sqr(a+b); x:=x+dx; writeln(y=`,y); end; end. Ushbu tsikl operatori murakkab operatorlar qatoriga kiradi. Chunki uning ichida boshqa operatorlar qatnashishi mumkin. Barcha tsikl operatorlari uchun quyidagi xususiyatlari xarakterlidir: Shartning bajarilishiga qarab tsikl operatorlari odatda uning tsikl operatorlarining takrorlanish soni oldindan noma`lum bo`lgan hollarda ishlatiladi. 2. Sharti oxirida tekshiriladigan takrorlanuvchi tsikl operatori. Uning umumiy ko`rinish strukturasi quyidagicha: Repeat Until

;

REPEAT UNTIL <shart> ; REPEAT ­ takrorlanish , UNTIL ­ so`ng(gacha) xizmatchi so`zlardir. Bu tsikl operatorlarining oxirida shartning tekshirilishi, agarda takrorlanish soni oldindan noma`lum bo`lsa foydalaniladi. U quyidagicha ish bajaradi: Tsikl tanasining operatorlari xech bo`lmasada bir marta hisoblanadi. Bunda mantiqiy ifodaning qiymati yolg`on bo`lsa, hisoblash bajarilaveradi. Takrorlanishning to`xtashi mantiqiy ifodaning qiymati rost bo`lishi bilan yakunlanadi. Misol 2. y

a3 x funktsiyani [0;3] oraliqda dx=0,1 qadam bilan hisoblash a2 x2

dasturini tuzing. Dasturi: (Repeat Until yordamida). Var a,x,dx,y:real; begin clrscr; x:=0; dx:=0.1; Repeat

74

y:=(SQR(a)*a-x)/sqr(a+b); x:=x+dx; Until x>=3.1; writeln(y=`,y); end; end. Tsikl operatorining ohirida shartning tekshirilishi, agarda takrorlanish soni oldindan noma`lum bo`lsa foydalaniladi. Takrorlanishning ohirida shart tekshiriladigan tsikl operatori quyidagicha ish bajaradi. Tsikl qismi operatorlarining takrorlanishi (xech bo`lmaganda bir marta) mantiqiy ifodaning qiymati yolg`on bo`lsa bajarilaveradi. Takrorlanishning to`xtashi mantiqiy ifodaning qiymati rost bo`lishi bilan yakunlanadi. Shunday qilib, avval tsikl qismi operatorlari bajariladi, so`ng shart tekshiriladi. Bu operatorning bajarilishi oldindan shart tekshiriladigan takrorlanish operatoriga umuman teskari. Bu operatorda tsikl qismi operatorlarining pastki chegarasi UNTIL xizmatchi so`zi bilan aniq chegaralab qo`yilgan, shuning uchun tsikl qismi operatorlarini BEGIN va END qavslar bilan chegaralash shart emas. Shunga qaramay bu qavslarning qo`yilishi xato bo`lmaydi. Misol. Y=X funktsiyaning qiymatlari X=8,6,4,2 larda hisoblansin. Programma bo`lagi quyidagicha X: = 8 ; REPEAT Y: = X*X; WRITELN (X:3, Y=5) ; X: =X-2; INTIL X<0 bu yerda avval argument X ning birinchi qiymati beriladi, ya`ni X=8. Shu qiymatda Y funktsiya hisoblanadi va displey ekraniga X va Y ning qiymatlari chiqariladi va X ning yangi qiymatlari xisoblanadi, agarda X<0 mantiqiy qiymat rost bo`lgunga qadar takrorlanadi. Bu tsiklning bajarilish jarayonida X va Y o`zgaruvchilarning qiymatlari quyidagicha bo`ladi: x 8 6 4 2 0 y 64 36 16 4 _ x=0 ifoda qiymati rost yolg`on yolg`on yolg`on yolg`on rost yoki yolg`on. 3. Parametrli tsikl operatori. Masalada oldindan takrorlanishlar soni ma`lum bo`lsa, u holda parametrli tsikl operatoridan foydalaniladi. Uning umumiy kurinishi quyidagicha ko`rinishga ega: FOR I:=A to DO

FOR _ I := A_ TO _ V _ DO BEGIN END.

75

bu yerda FOR (uchun), TO (gacha), DO (bajarish ) xizmatchi so`zlar bo`lib, Itsikl parometri, A, V -tsikl parametrining boshlangich va ohirgi qiymatlari. Dasturning tsikl qismi I tsikl parametrining A boshlangich qiymatidan boshlab to V ohirgi qiymatigacha takrorlanadi.

y a3 x funktsiyani [0;3] oraliqda dx=0,1 qadam bilan hisoblash dasturini tuzing. a2 x2

(FOR operatori yordamida). 1. blok-sxemasi:

Dasturi: var a,x,y:real; i:integer; begin Read(a); x:=0; For i:=1 to 31 do begin y:=(a*a*a-x)/(a*a+x*x); Writeln(x,y); x:=x+0.1; end end. Tsikl parametri sifatida faqat o`zgaruvchi bo`lishi kerak, A va V haqiqiy (REAL) toifa bo`lmagan ifoda bo`lishi xam mumkin. Ko`pincha tsikl parametri sifatida butun tipdagi o`zgaruvchi qatnashadi, uning o`zgarish qadami esa +1 yoki -1 bo`lishi mumkin. Agarda tsikl parametri o`suvchi bo`lsa, u xolda uning o`zgarish qadami +1 ga teng va aksincha, tsikl parametri kamaysa, uning o`zgarish qadami -1 ga teng bo`lib, bu xolda FOR tsikl operatoridagi TO xizmatchi so`zi DOWNTO xizmatchi so`ziga almashtiriladi. Masalan:

76

............. FOR I:=1 to 5 do begin a:=2*i; b:=2*i+1; end; ....... Izoh: bu yerda I ­ 1 2 3 4 5 a 2 4 6 8 10 b 3 5 7 9 11 Bu dasturning o`zgarish qadami (+1). Kamayish ko`rinishi esa: FOR I:=5 Downto 1 do begin a:=2*i; b:=2*i+1; end; ....... Izoh: bu yerda I ­ 5 4 3 2 1 a 10 8 6 4 2 b 11 9 7 5 3 Misol 2. Birdan to 10 gacha bo`lgan sonlarning yig`indisini hisoblash dasturini tuzing. Dasturi: (For operatori yordamida (o`sish +1)). Uses crt; S:=0 Var i,n,s:integer; Begin clrscr; Writeln( n qiymatini kiriting :`); I:=1_ n Readln(n); S:=0; S:=S+i For i:=1 to n do begin s:=s+i; end; writeln( s=`,s:5:2); readln; end.

77

Dasturi: (Downto operatori yordamida (kamayish -1)). Uses crt; Var i,n,s:integer; Begin clrscr; Writeln( n qiymatini kiriting :`); Readln(n); S:=0; For i:= n Downto 1 do s:=s+i; writeln( s=`,s:5:2); readln; end. Agarda programmaning tsikl qismi bitta operatordan iborat bo`lsa, u xolda BEGIN- END operator qavslarini yozmasa ham bo`ladi. Bu xolda FOR I : =A TO V DO operator . Misol. Lotin alfavitining xarflari simvolli tip bo`ladi. PROGRAM M2 ( INPUT, OUTPUT ) ;

78

VAR SIM: CHAR ; BEGIN WRITELIN ( Lotin alfaviti` ); FOR SIM : =`A` TO `Z` DO WRITE ( , SIM ) END. Natijada displey ekranida Lotin alfaviti A B C D E F U H I J L M N O P Q R S T O` V W X Y Z chikadi.

1. 2. 3. 4. 5. 6.

Nazorat savollari: Takrorlanuvchi (tsiklik) jarayon turlarini tushintiring. Oldindan shart tekshirilib takrorlanuvchi tsiklik jarayon Shart oxirida tekshirilib takrorlanuvchi tsiklik jarayon Ushbu ko`rinishlarning bir-biridan afzaliklari. Oldindan shart tekshirilib takrorlanuvchi tsiklik jarayonning sintaksis diagrammasi Shart oxirida tekshirilib takrorlanuvchi tsiklik jarayonning sintaksis diagrammasi

79

Test savollari #1. Tanlash operatorini kursating. ~A) CASE B OF; ~B) GOTO N; ~C) IF A>1 THEN K:=0; ~D) FOR I:=1 TO N DO; ~E) GO TO M: #2. Quyidagilardan qaysi biri Paskal` tilining takrorlash operatori ~A) GO TO ~B) WHILE ~C) STEP ~D) CASE ~E) UNTIL #3. Sharti avval tekshiriladigan takrorlash operatorini ko`rsating. ~A) WHILE ~B) REPEAT ~C) FOR ~D) IF ~E) UNTIL #4. Quyidagi operator natijasi qanday bo`ladi. FOR X:=1 TO 100 DO y:=SQR(X); ~A) 1 dan 100 gacha natural sonlar kvadratlarini xisoblaydi. ~B) 1 dan 100 gacha natural sonlar kvadrat ildizlarini xisoblaydi. ~C) 1 dan 100 gacha natural sonlar kvadrat ildizlarini bosmaga chikaradi. ~D) a va b tugri. ~E) 1 dan 100 gacha natural sonlarni bosmaga chikaradi. #5. Quyidagi programma bo`lagi natijasini aniqlang p:=1; For i:=1 To 6 Do p:=p*i; ~A) 726 ~B) 724 ~C) 720 ~D) 718 ~Ye) 700

80

17-18 ma'ruza. Ichma-ich joylashgan tsiklik operatorlar. Qatorlar yig'indisi va rekkurent formulalar. Maqsad: Talabalarda murakkab tsiklik jarayonlarni tashkil etish ko`nikmalarini hosil qilish Kalit so'zlar: for, while, repeat.. until operatorlari Reja: 1. Ichma-ich joylashgan tsiklik jarayonlar 2. Jarayonning strukturasi 3. Ichki va tashqi tsikllarning bajarilish tartibi 4. Yig`indini hisoblash algoritmi va dasturi 5. Ko`paytmani hisoblash algoritmi va dasturi 7. Yig`indi va ko`paytmani hisoblash algoritmi va dasturi 8. Rekkurent formulalarni tadbiq qilish Ichma-ich joylashgan tsikllar hisoblash jarayonida bir-birining ichiga joylashgan bo`lib, tsikl tanasi xam yana tsikldan iborat bo`lsa. Tashqi tsikl deb: ichida boshqa tsikl bo`lsa va bundan tashqari boshqa tsikl ichida joylashgan tsikl ichki tsikl hisoblanadi. Ushbu hollarda ichki va tashqi tsikllar sifatida parametrli, sharti oldin va sharti keyin qo`yilgan takrorlanuvchi (tsiklik) operatorlardan birini qo`llashimiz mumkin. Uning bajarilish tartibi, oldin ichki tsikl ichidagi operatorlar ketma-ketligi hisoblanadi va so`ngra bajarilish tashqi tsiklga uzatiladi.

n n

Masalan: S

i 1

i3

j 1

j 3 ifodani hisoblash dasturini tuzing?

Ushbu masalani hisoblashning dasturi: Uses crt; var i,j,n: integer; s1:real; begin clrscr; readln(n); s:=0; s1:=0; for i:=1 to n do s:=s+(i*i*i); for j:=1 to n do begin s1:=s1+(j*j*j); for i:=1 to n do s:=s+s1; writeln(....`); end; ...........

81

Murakkab tsikllar. Ushbu jarayon bir necha tsiklik operatorlarning bir dastruda qatnashuvi tushiniladi. Masalan: y=2K+N funktsiyani hisoblash dasturini tuzing. N=1,2,3 va K=2,4,6,8 N-tashqi tsikl parametri, K-ichki tsikl parametri. Bu yerda K,N,y ­ o`zgaruvchilar butun toifali bo`lsin. Dasturi: uses crt; var K,N,y:integer; begin clrscr; for N:=1 to 3 do begin K:=2; WHILE K<=8 do begin y:=2*K+n; writeln(N:4,K:4,y:4); K:=K+2; Tashqi tsikl for operatori bilan, ichki tsikl WHILE operatori yordamida ushbu masala hisoblandi. Izoh: 1) N=1 uchun 2) N=2 uchun 3) N=3 uchun 4) N=4 uchun Begin k=2 Begin k=4 Begin k=6 Begin k=8 WHILE 2<=8 WHILE 4<=8 WHILE 6<=8 WHILE 8<=8 Y=2*2+1=5 Y=2*4+1=9 Y=2*6+1=13 Y=2*8+1=17 Tsiklik jarayonlar uchun rekkurent formulalar. Rekkurent formulalarning quyidagi formalari mavjud:

a) xn x2n 1 x2 n ; ( 1) n ; n! (2n 1)! (2n)! cos nx sin(2n 1) x cos 2nx ; ; n 2n 1 4n 2 1 x4n 1 cos nx n2 1 x n ; ( 1) n ; ( ) 2 4n 1 n! 2 n x4n 1 , 4n 1

b) c)

. an n Cn

x 4 n 1 , Cn 1 x 4 , a 1 4n 1 .

a)

2.

25

S

n 2

( 1) n

n n

2

1

sin nx

bu umumiy ko`rinishi bo`yicha s) ko`rinishga mansub bo`lganligi uchun, rekkurent formula bo`yicha hisoblash

82

Sn =(-1) ­ maqsadga muvofiq (Sn =-Sn-1); n/n-1 sin nx U xolda, an=Cn n/n2-1 sinnx; Sn =-Sn-1; bu yerda n=2,3,.....25; S1 =-1 va hisoblash S=S+C n/n2-1 sin nx . bu yerda S- har xil qiymatga ega bo`ladi, ya`ni o`ng tomondagi S (Sn-1) ni qiymatini, chap tomon navbatdagi qiymatni qabul qiladi Sn+1 ni. Misol3. Qatorlar yig`indisini S 1 aniqlikda hisoblash dasturini tuzing. 1) blok-sxemasi uses crt; var y,s,x,eps:real; n:integer; begin clrscr; readln(x,eps); y:=1; s:=1; n:=1; Repeat y:=y*(-x*x/(2*n+(2*n+(2*n-1)))); s:=s+y; n:=n+1; Until y<eps; writeln(s=`,s); .............

x2 2! x4 x2n .... ( 1) n ... 1 4! (2n)! ( 1) n

i 1

x2n (2n)!

Y:=1;S:=1; N:=1 Y:=y -x2/2n(2n1) S:=S+y N:=N+1 y>

+

S

S=12+22 +32 +.....+ n2 yig`indini hisoblash algoritmi va dasturini tuzing. 1)

N S:=0 S:=0 I:=0 I:= 1,N I:=i+1 S:=S+i*i S:=s+i*i I<n

2)

S

S

83

Nazorat savollari: 1. Murakkab jarayonlarni dasturlash tushunchasi 2. Murakkab jarayonlarni tashkil etish usullari 3. Qator yig`indisini hisoblash asoslari Test savollari 1.Takrorlanuchi operator strukturasi to`g`ri ko`rsatilgan qatorni tanlang: ~A) if<shart> then<oper1> else <oper2> ~V) for< _tsikl parametri >:=<bosh. qiymat> downto<oxirgi qiymat> do<operator> ~S) for<tsikl parametri>:=< bosh. qiymat> do<operator> ~D) for<tsikl parametri>:=< bosh. qiymat > do<oxirgi qiymat> ~Ye) for<tsikl parametri>:=< bosh. qiymat> Until 2. Quyidagi dastur bajarilishi natijasida ekranda qanday natija paydo bo`ladi? Var n,i:integer; begin n:=0;for i:=1 to 10 do n:=n+i; write(n) end. ~A) 55 ~V) 10 ~S) 25 ~D) 225 ~Ye) 45 3.Tanlash operatorining to`g`ri strukturasi yozilgan qatorni ko`rsating ~A) case<tanlash ro`yxati> of <tanlash kaliti> [else<operatorlar>] end ~V) case<operatorlar> of<tanlash ro`yxati> end ~S) case<tanlash belgisi> of<tanlash ro`yxati> [else<operatorlar>] end ~D) case<tanlash ro`yxati> of <tanlash kaliti> [else<operatorlar>] end ~Ye) case<selektor> of <operatorlar>] end ;

84

Information

BLACKCURSE

84 pages

Report File (DMCA)

Our content is added by our users. We aim to remove reported files within 1 working day. Please use this link to notify us:

Report this file as copyright or inappropriate

52575


You might also be interested in

BETA
2-jild.p65
BLACKCURSE
<4D6963726F736F667420576F7264202D20CAEEEFE8FF20C4EEEAF3ECE5EDF22E646F63>
BLACKCURSE