Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr



Download 5,36 Mb.
Pdf ko'rish
bet212/335
Sana02.08.2021
Hajmi5,36 Mb.
#136132
1   ...   208   209   210   211   212   213   214   215   ...   335
Bog'liq
Dasturlash asoslari(O'zbekcha)

 
4 Lokal yo‘naltiruvchi muxitlar 
Ushbu bo‘limda qism dastur doirasida belgilangan parametrlarga erishish bilan 
bog‘liq masalalar muxokama qilinadi. Qism dastur masalasi xam o‘rin olgan.  
 
4.1 Lokal o‘zgaruvchilar  
Qism  dastur  o‘zining  o‘zgaruvchilarni  aniqlay  oladi,  shuningdek  lokal  muxit 
o‘zgaruvchilarini  xam.  Qism  dasturlar  ichida  belgilangan  o‘zgaruvchilar  lokal 
o‘zgaruvchilar  deyiladi,  chunki  ular  unda  belgilangan  ya’ni  ularning  kulami  qism 
dasturlar  organi  hisoblanadi.  5  bob  terminalogiyada  lokal  o‘zgaruvchilar  statik  yoki 
dinamik bo‘lishi mumkin.  
 Lokal  o‘zgaruvchilar  dinamik  bo‘lsa,  qism  dastur  ijrosi  boshlanadi  va  saqlash 
qachondan erkin  bo‘lsa, ular saklash uchun bog‘langan deb yakun yasaydi. Dinamik 
lokal  o‘zgaruvchilarni  bir  necha  afzalliklari  bor  ya’ni  asosiysi  qism  dastur  taqdimiga 
moslashuvchan  bo‘ladi.  Qism  dasturlar  dinamik  lokal  o‘zgaruvchilarga  ega  bo‘liщi 
muhimdir.  Dinamik  qism  dasturlarni  yana  bir  afzalligi  shundaki  barcha  harakatsiz 
lokal  o‘zgaruvchilar  bilan  faol  qism  dasturlar  orasida  aloqa  o‘rnatishdir.  Bu  kata 
afzalligi emas qachonki kompyuterni qism xotirasi bo‘lganda. 
Dinamik  lokal  o‘zgaruvchilarning  asosiy  kamchiliklari  kuyidagilardan  iborat: 
birinchi  joylashtirish  uchun  vakt  qiymati  boshlangich  va  har  bir  qism  dasturga 


Dasturlash tillari va axborot-kommunikatsiya texnologiyalari                                                              1-semestr
 
 
224 
 
chaqiruv  uchun  joylashtirish.  Ikkinchidan  murojaat  uchun  dinamik  maxlliy 
o‘zgaruvchilar bilvosita bo‘lishi kerak, statik lokal o‘zaruvchilar yesa to‘g‘ridan to‘g‘ri.  
Bu  indirectness  talab  qilinadi  chunki  faqat  ishlayotgan  paytda  (keyingi 
mavzuda  berilgan)  lokal  o‘zgaruvchilar  aniklashi  mumkin.  Nixoyat  barcha  lokal 
o‘zgaruvchilar  dinamik  bo‘lsa,  qism  dastur  tarixi  sezgir  bo‘lishi  mumkin  emas,  ya’ni 
ular  maxlliy  o‘zgaruvchilar  va  chakiruvlar  orasidagi  ma’lumotlarni  saqlab  qola 
olmaydi.  Bu  bazan  qism  dasturlarga  yozish  imkoniyatiga  ega  bo‘ladi.  Qism  dastur 
tarixi uchun quyidagi misolni ko‘ramiz. pseudorandom raqamlari uchun bir vazifani, 
hisoblashlardan foydalanib, shunday qism dastur pseudorandom raqamlari. shuning 
uchun  xar  bir  statik  maxlliy  ma’lumotlarni  saqlash  kerak.  Tartib  va  qism  dasturlar 
iterator strukturasida ( oldingi mavzudda muxokama kilingan) da foydalaniladi ya’ni 
dastularning boshka misollari kiradi.  
Statik  lokal  o‘zgarvchilarni  afzalligi  dinamik  maxalliy  o‘zgaruvchilardan  ko‘ra 
joylashtirish  va  qaytarishga  ko‘prok  vakt  sarflaydi.  Shuningdek  to‘g‘ridan  to‘g‘ri 
murojaat  qilish  mumkin  bo‘lsa,  bu  yanada  samarali  bo‘ladi  va  albatta  ular  bir  qism 
dastur tarixi bo‘lish imkonini beradi. Statik lokal o‘zgaruvchilarning yana bir afzalligi 
ularning  qobilyatini  qaytadan  qo‘llab  quvatlaydi.  Shuningdek  ularni  saqlash  boshka 
lokal qism o‘zgaruvchilar bilan birgalikda bo‘lmaydi.  
Ko‘pchilik  zamonaviy  dasturlash  tillarida  qism  dastur  lokal  o‘zgaruvchilarni 
dinamik  vazifasini  bajarmaydi.  S  va  S++  vazifalari  lokal  dinamik  o‘zgaruvchilar 
ayniqsa  statik  o‘zgaruvchilar  deb  e’lon  qilinadi.  Masalan  quyidagi  S  va  S++ 
vazifalarida o‘zgaruvchilar sum statik va count dinamik o‘zgaruvchilardir. 
 
int adder(int list[], int listlen) { 
static int sum = 0; 
int count; 
for (count = 0; count < listlen; count ++) 
sum += list [count]; 
return sum; 
 
C++,  Java,  and  C#  fakat  dinamik  lokal  o‘zgaruvchilar.  Python  da  fakat  e’lon 
qilishlar  va  ta’rif  usullari  uchun  ishlatiladi.  E’lon  xar  kanday  global  o‘zgaruvchan 
bo‘lishi  uchun  usul  xam  belgilangan  tartibda  o‘zgaruvchan  bo‘lishi  kerak. 
O‘zgaruvchilar  usuldan  tashqarida  belgilanishi  mumkin  global  deb  e’lon  qilinmasa 
ham. Agar global o‘zgaruvchining nomi usulda belgilangan bo‘lsa, lokal va global deb 
e’lon qilinmagan deyish mumkin.  
Hamma  lokal  o‘zgaruvchilar  phuton  da  dinamik  hisoblanadi.  Faqat  lua  da 
o‘zgaruvilar  cheklangan  deb  e’lon  qilinadi.  Har  qanday  blok  lokal  o‘zgaruvchilarni 
kuyidagicha e’lon qilishi mumkin: 
 


Dasturlash tillari va axborot-kommunikatsiya texnologiyalari                                                              1-semestr
 
 
225 
 
Local sum 
 
Barcha  e’lon  qilinmagan  o‘zgaruvchilar  lua  da  globaldir.  Lua  DA  lokal 
o‘zgaruvchilar global o‘zgaruvchilardan ko‘ra tezroq. (2006) 

Download 5,36 Mb.

Do'stlaringiz bilan baham:
1   ...   208   209   210   211   212   213   214   215   ...   335




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