logo

Ma’lumotlar strukturalarining zamonaviy konsepsiyasi

Загружено в:

15.08.2023

Скачано:

0

Размер:

58.466796875 KB
“ MA’LUMOTLAR STRUKTURA LARINING ZAMONAVI Y  
KONSEPSIYASI ” MAVZUSIDA TAYYORLAGAN
MUSTAQIL ISHI Reja
1,  Ma’lumotlarning elementar tiplari  
2,  Belgili satrlar  
3, Foydalanuvchi tomonidan aniqlanuvchi ketma 
ket tiplar   Ma’lumotlarning elementar tiplari
■
Ma’lumotlarni  qayta  ishlash  orqali  kompyuter  natijalarga  erishadi.  Ushbu 
jarayonni  bajarishning  osonligi  ma’lumotlar  tipi  ushbu  masalaga  qanchalik 
muvofiqligi  bilan  o‘lchanadi.  Buning  natijasida,  mos  tiplarning  xilma xilligi  va 
ma’lumotlar  strukturalarini  qo‘llab	
 quvvatlash  tilda  oldindan  ko‘rib  chiqilishi 
juda muhim. 
■
Ma’lumotlar  tiplarining  zamonaviy  konsepsiyalari  oxirgi  40  yillardan  beri 
rivojlanib  kelmoqda.  Boshlang‘ich  dasturlash  tillarida  aniq  bir  masalalarga  mos 
keluvchi  barcha  ma’lumotlarning  strukturalari  ushbu  tilda  qo‘llaniluvchi 
ma’lumotlarning  asosiy  strukturalarining  kichik  miqdori  bilan  shakllantirilgan. 
Masalan, FORTRAN 90 tiligacha ishlab chiqilgan FORTRAN tili versiyalarida aloqa 
ro‘yxati va ikkilik daraxtlar, odatda, massivlar yordamida modellashtirilgan.  ■ 1970 yillar oxirlarida paydo bo‘lgan ma’lumotlar tiplarini shakllantirish 
konsepsiyasi  foydalanuvchi  tomonidan  aniqlanuvchi  tiplar  g‘oyalarini 
birlashtirish  natijasida  Ada  83  tiliga  kiritilgan  edi.  Foydalaluvchi 
tomonidan  aniqlanuvchi  ma’lumotlar  tiplari  asosida  yotuvchi 
metodologiyasi shundan iboratki, dasturchi o‘zgaruvchilarning har bir 
alohida  sinflari  uchun  alohia  tip  yaratishi  lozim  va  u  vazifaning 
predmetli sohasida aniqlanadi. Bundan tashqari, vazifaning predmetli 
sohasidan  o‘zgaruvchilar  abstraksiyasi  bo‘lgan  tiplar  unikalligini 
dasturlash tili ta’minlashi lozim. Ma’lumotlarning elementar tiplari
■
Ma’lumotlarning strukturaviy  tiplarini  yaratish uchun tilda  ma’lumotlarning asosiy tiplari bir  yoki bir nechta 
konstruktorlari bilan birga qo‘llaniladi. 
■
  Sonli tiplar 
■
Ko‘pchilik  boshlang‘ich  dasturlash  tillarida  faqat  sonli  elementar  tiplar  mavjud  bo‘lgan.  Zamonaviy  tillarda 
ushbu tiplar oldingidek asosiy rolni o‘ynaydi. 
■
  Butun sonlar 
■
E ng ko‘p tarqalgan elementar sonli tip butun son hisoblanadi. Hozirda ko‘p kompyuterlar butun sonlarning 
bir  qancha  o‘lchamlarini  qo‘llaydi  va  ushbu  imkoniyatlar  dasturlashning  ba’zi  tillarida  o‘z  aksini  topgan.  Ada  tili 
amalga  oshirilganda,  masalan,  butun  sonlarning  uch  o‘lchamliligiga  yo‘l  qo‘yiladi:  SHORT  INTEGER,  INTEGER  va 
LONG  INTEGER.  S  kabi  ba’zi  dasturlash  tillari  butun  sonlarning  ishorasiz  tiplariga  ega  va  ushbu  tiplar  o‘zida 
ishorasiz butun sonlarni taqdim etadi. 
■
Barcha  butun  sonlar  bitlar  satrlari  ko‘rinishida  kompyuterda  beriladi,  bunda  bitlardan  biri  (qoidaga  ko‘ra, 
chapdan oxirgisi) ishora taqdim etadi. Ma’lumotlarning butun tiplari uskunaviy ta’minot orqali ta’minlanadi.  ■ Manfiy  butun  sonlar  ishorali  son  yozuvi  ko‘rinishida  xotirada  saqlanadi,  bunda 
ishora  biti  son  manfiyligini  ko‘rsatib,  qolgan  bitlar  sonlarning  absolyut 
qiymatlarini  taqdim  etadi.  Ishorali  sonni  yozish  kompyuter  arifmetikasida 
qo‘llanilmaydi.  Ko‘pgina  zamonaviy  kompyuterlarda  manfiy  sonlarni  saqlash 
uchun hisoblash va sanash uchun qulay bo‘lgan ikkilik sanoq sistemasida sonning 
qo‘shimcha kodi qo‘llaniladi. Manfiy butun sonning qo‘shimcha kodi ikkilik sanoq 
sistemasida  mantiqan  unga  musbat  son  va  bir  qo‘shish  orqali  bajariladi.  Bir 
qancha  kompyuterlarda  quyidagi  kabi  boshqacha  usul  qo‘llaniladi:  ikkilik  sanoq 
sistemasidagi  sonning  teskari  kodi.  Bunday  yozishda  butun  sonning  manfiy 
qiymati  uning  absolyut  qiymatiga  mantiqiy  qo‘shilish  hisoblanadi.  Teskari  aloqa 
ko‘rinishida taqdim etishning kamchiligi shundaki, u 0 sonini yozishning ikki usuli 
mavjudligidir.  Agar  sizni  butun  sonlarni  taqdim  etish  muammosi  qiziqtirsa, 
assembler tilidagi har qanday dasturlash kitobidan o‘qib olishingiz mumkin.  Foydalanuvchi tomonidan aniqlanuvchi ketma ket 
tiplar 
■
Ketma	
 ket  tip  deb,  ehtimol  qiymatlar  sohasi  natural  raqamlar  ketma	 ketligi  bilan  bog‘liq 
bo‘lishi  mumkin.  Pascal  va  Ada  tillarida  asosiy  ketma	
 ketlikli  tiplar  butun,  belgili  va  mantiqiy 
tiplari  hisoblanadi.  Ko‘pgina  tillarda  foydalanuvchilarning  o‘zi  ikkita  turli  ketma	
 ket  tiplarini 
aniqlashlari mumkin: sanaluvchi va cheklangan tiplar. 
■
  Sanaluvchi tiplar 
■
Sanaluvchi  tiplar  deb,  uni  tavsiflashda  barcha  ehtimol  qiymatlar  sanab  o‘tilgan  tipga 
aytiladi. Oddiy sanaluvichi tip quyidagicha: 
■
type DAYS is (Mon, Tue, Wed, Thu, Fri, Sat, Sun); 
■
Sanaluvchi  tiplarga  xos  muammo  quyidagicha:  literal  o‘zgarmas bir  nechta  tip  tavsifida 
kelishi mumkinmi va agar javob ha bo‘lsa, aniq literal tipi dasturda qanday aniqlanadi?  ■
Strukturalar 
■
Pascal  tilida  literal  konstantani  sanaluvchi  tiplarning  bir  qancha 
tavsiflarida  keltirish  mumkin  emas.  Sanaluvchi  tiplarga  tegishli 
o‘zgaruvchilar  massivlar  indeksi  kabi  qo‘llanilishi  mumkin,  ammo 
kiritilishi yoki chiqarilishi mumkin emas. 
■
type  colortype  =  (red,  blue,  green,  yellow);  var 
color : colortype; 
■
…  color:=blue; if color>red … 
■
Bu yerda bul ifodasi if operatorida rost deb berilgan.  ■
Massivlar 
■
Massivlar  deb  bir  turdagi  ma’lumotlarga  aytiladi  va  bunda  har  bir  alohida  element  birinchi  elementga  muvofiq  holda 
identifikatsiyalanadi.  Massiv  elementini  chaqirish  dasturda  ko‘pincha  bir  yoki  bir  nechta  indeks  o‘zgaruvchilarini  saqlaydi.  Bunday 
ss ы lkalarni bajarish vaqtida hisoblash mumkin. 
■
  Ishlab chiqarish muammolari 
■
Quyida massivlarga xos bo‘lgan ishlab chiqarishda kelib chiquvchi muammolar keltirilgan: 
■
Indekslar qanday tipda bo‘lishi mumkin? 
■
Kerakli diapazondan indeksning chiqishiga yo‘l qo‘yiladimi? 
■
Indekslar qiymatlar sohasi cheklanganmi? 
■
Qachon massiv xotirada joylashadi? 
■
Indekslarning qanchasiga yo‘l qo‘yilgan? 
■
Massivlar ular xotiraga joylashtirilganidan so‘ng initsializatsiyalanishi mumkinmi? 
■
Massivlarning qanday kesishmasiga yo‘l qo‘yiladi yoki bunga umuman ruxsat berilganmi o‘zi? 
■
Keyingi bo‘limlarda loyihaviy yechimlarga misollar keltirilgan bo‘lib, dasturlashning eng keng tarqalgan tillarida qo‘llaniladi.  ■
Strukturalar va amallar 
■
Perl  tilining  assotsiatsiativ  massivlari  xesh  deb  ataladi,  chunki  ularning  elementlari  xotiraga  joylanadi  va 
xesh  funksiyasi  orqali  ulardan  chiqariladi.  Perl  tilida  xesh  ismlar  fazosi  aniq  belgilangan:  har  bir  xeshlangan 
o‘zgaruvchi protsent belgisi bilan boshlanishi kerak. 
■
salaries = (“Cedric” => 7500, “Perry” => 57000, 
■
         “ Mary” => 55750, “Gary” => 47850); 
■
Pascal,  Modula-2  va  Ada  tillari  yozuvlarda  COBOL  tilida  tasdiqlangan  bosqichlar  nomerini  emas,  balki 
o‘zinining sintaktik qoidalarini qo‘llaydi: ushbu tillarda yozuvlar strukturasini yaratish uchun ortogonal struktura 
qo‘llaniladi, u bir e’lonlarni boshqalariga kiritishga ruxsat beradi. Ada tilidagi quyidagi e’lonni ko‘rib chiqamiz: 
■
EMPLOYEE_RECORD : record 
■
EMPLOYEE_NAME : record 
■
FIRST : STRING (1..20); 
■
MIDDLE : STRING (1..10); LAST : STRING (1..20); end record 
■
HOURLY_RATE : FLOAT; end record;

“ MA’LUMOTLAR STRUKTURA LARINING ZAMONAVI Y KONSEPSIYASI ” MAVZUSIDA TAYYORLAGAN MUSTAQIL ISHI

Reja 1, Ma’lumotlarning elementar tiplari 2, Belgili satrlar 3, Foydalanuvchi tomonidan aniqlanuvchi ketma ket tiplar

Ma’lumotlarning elementar tiplari ■ Ma’lumotlarni qayta ishlash orqali kompyuter natijalarga erishadi. Ushbu jarayonni bajarishning osonligi ma’lumotlar tipi ushbu masalaga qanchalik muvofiqligi bilan o‘lchanadi. Buning natijasida, mos tiplarning xilma xilligi va ma’lumotlar strukturalarini qo‘llab quvvatlash tilda oldindan ko‘rib chiqilishi juda muhim. ■ Ma’lumotlar tiplarining zamonaviy konsepsiyalari oxirgi 40 yillardan beri rivojlanib kelmoqda. Boshlang‘ich dasturlash tillarida aniq bir masalalarga mos keluvchi barcha ma’lumotlarning strukturalari ushbu tilda qo‘llaniluvchi ma’lumotlarning asosiy strukturalarining kichik miqdori bilan shakllantirilgan. Masalan, FORTRAN 90 tiligacha ishlab chiqilgan FORTRAN tili versiyalarida aloqa ro‘yxati va ikkilik daraxtlar, odatda, massivlar yordamida modellashtirilgan.

■ 1970 yillar oxirlarida paydo bo‘lgan ma’lumotlar tiplarini shakllantirish konsepsiyasi foydalanuvchi tomonidan aniqlanuvchi tiplar g‘oyalarini birlashtirish natijasida Ada 83 tiliga kiritilgan edi. Foydalaluvchi tomonidan aniqlanuvchi ma’lumotlar tiplari asosida yotuvchi metodologiyasi shundan iboratki, dasturchi o‘zgaruvchilarning har bir alohida sinflari uchun alohia tip yaratishi lozim va u vazifaning predmetli sohasida aniqlanadi. Bundan tashqari, vazifaning predmetli sohasidan o‘zgaruvchilar abstraksiyasi bo‘lgan tiplar unikalligini dasturlash tili ta’minlashi lozim.

Ma’lumotlarning elementar tiplari ■ Ma’lumotlarning strukturaviy tiplarini yaratish uchun tilda ma’lumotlarning asosiy tiplari bir yoki bir nechta konstruktorlari bilan birga qo‘llaniladi. ■ Sonli tiplar ■ Ko‘pchilik boshlang‘ich dasturlash tillarida faqat sonli elementar tiplar mavjud bo‘lgan. Zamonaviy tillarda ushbu tiplar oldingidek asosiy rolni o‘ynaydi. ■ Butun sonlar ■ E ng ko‘p tarqalgan elementar sonli tip butun son hisoblanadi. Hozirda ko‘p kompyuterlar butun sonlarning bir qancha o‘lchamlarini qo‘llaydi va ushbu imkoniyatlar dasturlashning ba’zi tillarida o‘z aksini topgan. Ada tili amalga oshirilganda, masalan, butun sonlarning uch o‘lchamliligiga yo‘l qo‘yiladi: SHORT INTEGER, INTEGER va LONG INTEGER. S kabi ba’zi dasturlash tillari butun sonlarning ishorasiz tiplariga ega va ushbu tiplar o‘zida ishorasiz butun sonlarni taqdim etadi. ■ Barcha butun sonlar bitlar satrlari ko‘rinishida kompyuterda beriladi, bunda bitlardan biri (qoidaga ko‘ra, chapdan oxirgisi) ishora taqdim etadi. Ma’lumotlarning butun tiplari uskunaviy ta’minot orqali ta’minlanadi.