Shofirkon maishiy xizmat kasb hunar kolleji «dasturlash asoslari»



Download 0,81 Mb.
bet44/53
Sana29.12.2022
Hajmi0,81 Mb.
#896990
1   ...   40   41   42   43   44   45   46   47   ...   53
Bog'liq
Ma\'ruza matn

11.7.1. Turdoshlashtirilmagan fayllar bilan ishlash uchun protsedura va funktsiyalar
Turdoshlashtirilgan fayllarda ishlatiladigan barcha protsedura va funktsiyalar turdoshlashtirilmagan fayllarda ham ishlatiladi. Faqat bunda Read va Write protseduralari o`rnida BlockRead va BlockWrite protseduralari ishlatiladi, Reset va Rewrite protseduralar, ma`lumotlarni uzatishda ishlatiladigan yozuv o`lchamini aniqlovchi ikkinchi Word turidagi parametrga ega bo`ladi. Agar bu parametr tushirib qoldirilgan bo`lsa, yozuv o`lchami sukut holatida 128 baytga teng, deb qabul qilinadi.
Nazorat savollari

  1. Fayl deb nimaga aytiladi?

  2. Fizik va mantiqiy fayllar tasniflari o`rtasida nima farq bor?

  3. Massiv va fayl o`rtasida qanday o`xshashlik va farq bor?

  4. Turbo Paskalda fayllar qanday belgilariga ko`ra sinflanadi?

  5. Faylni ochish uchun qanday ish bajarish kerak?

  6. Faylni ochish uchun qanday protseduralar belgilangan va ular qanday ishlaydi?

  7. Qaysi protseduralar kataloglar bilan ishlaydi?

  8. Close protsedurasi nima uchun kerak?

  9. Rename va Erase protseduralar qanday ishlarni bajaradi?

  10. Turdoshlashtirilgan fayllarni qanday turlarda bayon etish mumkin?

  11. Turdoshlashtirilgan fayllarning elementlari qanday raqamlanadi?

  12. Turdoshlashtirilgan fayllardan o`qish qaysi qoidalar bo`yicha bajariladi?

  13. Write protsedura turdoshlashtirilgan fayllar uchun qanday formatga ega?

  14. Turdoshlashtirilgan fayl elementlaridan to`g`ridan-to`g`ri foydalanish uchun qanday protsedura va funktsiyalar bor?

  15. Foydalanuvchi matn fayllarining Input va Output fayllaridan farqi nimada?

  16. Matn fayllarining xususiyatlari nimada?

  17. Matn faylining File of Char dan farqi nimada?

  18. Turdoshlashtirilmagan fayllar qanday e`lon qilinadi?

  19. Turdoshlashtirilmagan fayllarning turdoshlashtirilgan fayllardan farqi nimada?

  20. Turdoshlashtirilmagan fayllarda qanday protsedura va funktsiyalar ishlatiladi?

XII BOB.


DINAMIK TASNIFLI MA`LUMOTLAR BILAN ISHLASH

Dinamik tasnifli ma`lumotlarning tarmoqli tuzilishi V bobda berilgan edi


12.1. Dinamik xotira
Dasturda e`lon qilingan hamma o`zgaruvchilar tezkor xotiraning ma`lumotlar segmenti deb ataluvchi bitta uzluksiz sohasida joylashtiriladi. Ma`lumotlar segmentining uzunligi 80x86 mikroprotsessorlar arxitekturasi bilan aniqlanadi va 65536 baytni tashkil qiladi, bu esa ma`lumotlarning katta massivlari bilan ishlashda ma`lum qiyinchiliklarni keltirib chiqaradi. Boshqa tomondan esa, SHK xotira sigimi (odatda 640 K baytdan kam emas) katta o`lchamli ma`lumotlarga ega masalalar bilan ishlash uchun etarli. Holatdan chiqishga dinamik xotira xizmat qiladi.
Dinamik xotira – bu ma`lumotlar segmenti (64Kbayt), stek (odatda 16 Kbayt) va dastur tanasi uchun ketgan sigimlar olib tashlangandan keyin dasturga, uning ishi vaqtida beriladigan, shaxsiy komp’Yuterning tezkor xotira qismi. Dinamik xotira o`lchami keng chegaralarda farqlanishi mumkin. Sukut saqlanganda u komp’Yuterning ishlatish mumkin bo`lgan hamma xotira o`lchami bilan (200…300 Kbaytdan kam emas) aniqlanadi.
Dinamik xotira – bu katta o`lchamdagi ma`lumotlar massivlarini qayta ishlashning haqiqiy yagona imkoniyati. Ko`pchilik amaliy masalalarni dinamik xotirani ishlatmasdan turib echish qiyin yoki mumkin emas. SHuningdek, dinamik xotira, SHK ning grafik va tovush vositalari bilan ishlashda ma`lumotlarni vaqtincha eslab qolishda keng ishlatiladi.
Ma`lumotlarni dinamik joylashtirish dinamik xotirani bevosita dastur ishi vaqtida qo`llashni bildiradi. Bundan farq qilib, statik joylashtirish Turbo Paskalning kompilyatori tomonidan dasturni kompilyatsiya qilish jarayonida amalga oshiriladi. Dinamik joylashtirishda, oldindan turlar ham, joylashtiriladigan ma`lumotlar soni ham ma`lum bo`lmaydi, ularga statik o`zgaruvchilardagi kabi ismi bilan murojaat qilish mumkin emas.
12.2. Adreslar va ko`rsatkichlar
SHaxsiy komp’yuter tezkor xotirasi, axborotni saqlash uchun elementar yacheykalar-baytlar to`plamidan iborat. Bu yacheykalarning har biri o`z shaxsiy raqamiga ega. Bu raqamlar adreslar deyiladi, ular xotiraning ixtiyoriy baytiga murojaat qilishga imkon beradi.
Turbo Paskal, dasturchi ixtiyoriga ko`rsatkichlar, deb ataluvchi dinamik xotirani boshqarish, vositasini beradi. Ko`rsatkich – qiymati xotira bayti adresiga teng bo`lgan o`zgaruvchidir.
Shaxsiy komp’yuterda adreslar, ikkita segment va siljish deb ataluvchi o`n olti xonali so`zlar to`plami bilan beriladi. Segment uzunligi 65336 bayt (64 Kbayt) ga teng bo`lgan va 16 ga bo`linadigan (ya`ni 0, 16, 32, 48 va h.k) fizik adres bilan boshlanadigan xotira qismidir. Siljish kerakli adresga murojaat etish uchun segment boshidan nechta bayt o`tkazish zarurligini ko`rsatadi.
Shaxsiy komp’Yuter adres makoni 1 Mbaytni tashkil qiladi (gap shaxsiy komp’Yuterning standart xotira deb ataluvchi xotirasi to`g`risida borayapti; 80386 va undan Yuqori protsessorli zamonaviy kompyuterlarda adresli makon 4 G baytni hosil qiladi, lekin Turbo Paskalda qo`shimcha xotiralar bilan ishni quvvatlovchi vositalar yo`q; Borland Pascal with Objects 7.0 muhitini ishlatishda bunday imkoniyat bor). 1 Mbayt chegarasida adresatsiyalash uchun ikkita o`n olti xonalik so`zlardan (segment va siljishdan) quyidagicha hosil bo`ladigan, 20 ta ikkilamchi razryadlar kerak, segment tarkibi chapga 4 xonaga siljitiladi, bo`shagan xonalar nollar bilan to`ldiriladi, natija siljish tarkibidan hosil bo`ladi.

Segment

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

+

Siljish

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

=

Adres

19

18

17

16

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

12.1. Shaxsiy komp’yuterda adresning tashkil bo`lish sxemasi

16 baytlik xotira bo`lagi paragraf deyiladi, shuning uchun segment xotirani paragrafgacha, siljish esa – baytgacha bo`lgan aniqlikda adreslaydi, deb aytish mumkin. Har bir segmentga xotiraning uzluksiz va alohida adreslanadigan sohasi mos keladi. Segmentlar xotirada biri ketidan ikkinchisi, oraliqsiz yoki qandaydir oraliq bilan, kelishi yoki, nihoyat bir-birini yopishi mumkin. SHunday qilib, o`zining ichki tuzilishiga ko`ra ixtiyoriy ko`rsatkich, segment va siljish deb tushuntiriladigan ikki so`z to`plamini (WORD turidagi ma`lumotni) ifodalaydi. Ko`rsatkichlar yordamida dinamik xotirada Turbo Paskalda ma`lum ma`lumotlarning ixtiyoriy turini joylashtirish mumkin. Ularning faqat ba`zilarigina (BYTE, CHAR, SHORTINT, BOOLEAN) ichki ifodalashda bir baytni, qolganlari esa bir nechta (aralash) baytni egallaydi. SHuning uchun, aslida ko`rsatkich ma`lumotlarning faqat birinchi baytini adreslaydi.


12.3. Xotira taqsimoti
Dinamik tarkibli ma`lumotlar bayonlar bo`limida e`lon qilinganda qandaydir turdagi o`zgaruvchining o`zi emas, balki unga murojaat (ko`rsatkich) ko`rsatiladi. Natijada ko`rsatkich odatdagi o`zgaruvchi, u ko`rsatayotgan o`zgaruvchi esa dinamik bo`ladi.

Dasturda ko`rsatkich identifikatorining ishlatilishi u ko`rsatayotgan xotira yacheykasi adresiga murojaatni bildiradi, uning identifikatoridan keyin ^ belgini qo`yish talab qilinadi.


Dastur ishi vaqtida dinamik o`zgaruvchilar uchun xotira ajratish va bo`shatish New, Dispose, GetMet, FreeMet, Mark, Release standart protseduralari bilan bajariladi.
R ko`rsatkichli o`zgaruvchi uch xil holatda bo`lishi mumkin.

  1. X otiradan oldindan ajratilgan qandaydir bir o`zgaruvchining adresiga ega bo`lish:




  1. Maxsus bo`sh nil adresga ega bo`lish:




  1. Noaniq holatda bo`lish:

Bu holatda ko`rsatkich dastur ishi boshida, u birinchi aniq adresni yoki bo`sh nil adresni o`zlashtirguncha, shuningdek u ko`rsatayotgan xotira sohasi bo`shatilgandan keyin bo`ladi.


nil va noaniq holat o`rtasidagi farq:

New (A) protsedura, A ko`rsatkich uchun bayon etilgan turga mos ravishda xotira sohasini ajratadi va ajratilgan xotira adresini ko`rsatkichga yozadi.


Dispose (A) protsedura, A ko`rsatkich ko`rsatayotgan xotira sohasini bo`shatadi, shundan keyin xotiraning bu sohasi boshqa dinamik o`zgaruvchilar taqsimoti uchun ishlatilish imkoniyatiga ega bo`ladi.
12.5. Bog`liqmas dinamik ma`lumotlar.
Bog`liqmas dinamik ma`lumotlar xuddi statik ma`lumotlar kabi sinflanadi va bajariladi. Bog`liqmas dinamik ma`lumotlarning dinamik xususiyatlari dastur ishi vaqtida ularning «paydo bo`lishi» va «yo`qolishi» bilangina ifodalanadi. Bunday berilganlar ishlatilishidagi farqlarni quyidagi hollarda ko`rsatish mumkin.

  • var bo`limida talab qilingan turidagi o`zgaruvchi emas, balki shu turga ko`rsatkich e`lon qilinadi;

  • ishlatishdan oldin New protsedurasini, ishlatib bo`linganidan keyin Dispose protsedurasini chaqirish zarur.

12.6. Bog`liqli dinamik ma`lumotlar



Download 0,81 Mb.

Do'stlaringiz bilan baham:
1   ...   40   41   42   43   44   45   46   47   ...   53




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish