Ma'lumotlar tuzilmalari ma’lumotlarning abstract turlarini ko'rsatish usullari sifatida chiziqli ma'lumotlar tuzilmalari


Mavzu: Ma'lumotlar tuzilmalari ma’lumotlarning abstract turlarini ko'rsatish usullari sifatida: chiziqli ma'lumotlar tuzilmalari (qator, navbat, ro'yxat, stek) Reja: 1)Ma’lumot. Ma'lumotlar tuzilmalari 2)Malumotlarning abstact turlari. 3) chiziqli ma'lumotlar tuzilmalari (qator, navbat, ro'yxat, stek)
Ma’lumot - bu biror bir ob’ekt, jarayon, hodisa yoki voqelikni ifodalab (tasniflab) beruvchi belgi yoki belgilar majmuasidir. Berilgan ma’lumot (belgi)lar qanday qiymat qabul qilishiga qarab ma’lumotlarni bir qancha turlarga ajratish mumkin. Ma’lumotlar tuzilmasi va algoritmlar dastur tuzish uchun zarur bo’lgan tushunchalar sifatida qaraladi. O’rnatilgan ma’lumotlar tuzilmasi ikkilik miqdor (kodlangan ma’lumot)lar saqlanadigan registrlar va xotira so’zlarini ifodalab beradi. Qurilmani loyihalash uchun ishlab chiqilgan algoritm – bu elektron mantiqiy qurilmalarda qat’iy amalga oshiriladigan qoidalar bo’lib, xotirada saqlangan ma’lumot bajarilishi lozim bo’lgan komanda sifatida bo’ladi. Dasturlash – bu nafaqat aqliy faoliyatni avtomatlashtirish, balki, ilmiy tadqiqot predmeti hisoblanadi. Qandaydir amaliy masalani yechish uchun dastur tuzish jarayoni quyidagi bir nechta bosqichlardan tashkil topgan: 1. Masalaning qo’yilishi (qo’yilgan masalaga texnik topshiriqni ishlab chiqish); 2. Rasmiylashtirish – formallashtirish (masalaning matematik qo’yilishi); 3. Masalani yechish usulini tanlash (yoki ishlab chiqish); 4. Algoritmni ishlab chiqish (algoritmlash); 5. Dastur tuzish (dasturlash); 6. Dasturni testlash va otladka qilish ; 7. Natijalarni hisoblash va qayta ishlash hamda dasturni hujjatlashtirish (foydalanuvchi yo’riqnomasini ishlab chiqish). Dasturlash jarayonini quyidagicha sxema orqali iqodalash mumkin: Matematik model Ma’lumotlarning abstrakt turlari Ma’lumot tuzilmasi Norasmiy algoritm Psevdo tildagi dastur C++ tilidagi dastur
Birinchi bosqichda qo’yilgan masalaga matematik model tuziladi, buning uchun mos matematik model tadbiq qilinadi (masalan, graflar nazariyasiga o’xshash). Keyingi bosqichda umumlashgan psevdo til - oddiy operatorlar va – S++ tilidagi konstruktsiyalar aralashmasi yordamida algoritm yoziladi. Ushbu bosqichni norasmiy (formal bo’lmagan) operatorlarni almashtirish bilan davom ettiramiz. Dasturlashning uchinchi bosqichida ma’lumotlarning har bir abstrakt turining tadbiqi ta’minlanadi va ushbu turdagi ma’lumotlar ustida bajariladigan turli xil operatorlar uchun protseduralar ishlab chiqiladi. Bu bosqichda barcha psevlo tilda yozilgan operatorlar C++ tilidagi kod bilan almashtiriladi. Bosqichning natijasi ishlaydigan dastur bilan yakunlanadi. Ma’lumot va uning xotirada tasvirlanishi Hisoblash mashinalari yordamida har qanday masalani yechish ma’lumotlarni xotiraga yozish, xotiradan o’qish va uni qayta ishlashni hisobga olgan holda bajariladi. Nazariy jihatdan ma’lumot noaniqliklarni aniqlovchi vosita sifatida qaraladi. Faraz qilaylik , biror bir tizimning N ta mumkin bo’lgan holati mavjud bo’lsin, har bir holat paydo bo’lishi mustaqil P ehtimolga ega bo’lsin. U holda bu tizimning noaniqligi quyidagi ko’rinishda aniqlanadi: ∑=(P(i)*log2 P(i)) Tizimning noaniqligini o’lchash uchun bit deb ataluvchi maxsus birlik qabul qilingan. Bit hech bo’lmaganda ikkita mumkin bo’lgan holatga bog’liq noaniqlik (yoki ma’lumot)ning o’lchovi hisoblanadi, masalan rost-yolg’on yoki bor-yo’q holatlar. Bit noaniqlik va axborotning o’lchovi sifatida qo’llaniladi, ya’ni olingan axborotlar soni axborotlarni olish natijasida yo’qotilgan noaniqliklar soniga teng. Ma’lumotlarni saqlash Kompyuterda eslab qoluvchi qurilmalarni asosiy uchta ko’rinishi mavjud: o’ta
tezkor, tezkor va tashqi xotira. Odatda o’ta tezkor xotira registrlardan tashkil topgan bo’ladi. Registrlar ma’lumotlarni vaqtincha saqlab turish va akslantirish uchun qo’llaniladi. Juda muhim registrlardan ba’zilari komp’yuterning markaziy protsessorida joylashgan. Markaziy protsessor arifmetik amallarning argumentlari (ya’ni operandlar) joylashadigan (vaqtincha saqlanadigan) registrlardan tashkil topgan. Registrga yuborilagan ma’lumotlarni qo’shish, ayirish, ko’paytirish va bo’lish amallar juda murakkab mantiqiy sxema orqali bajariladi. Bundan tashqari, registrlarda boshqaruv ketma-ketligini to’g’ri bajarilishini tekshirish zaruriyatidan kelib chiqqan holda alohida bitlarda tahlil qilinadi. Arifmetik amallardagi operandlar va natijalarni vaqtincha saqlashdan tashqari, registrlar dastur komandalarini va keyingi bajariladigan komandaning tartib raqami haqidagi boshqaruv ma’lumotlarini ham vaqtincha saqlash vazifasini bajaradi. Tezkor xotira ma’lumotlarni o’z muhitida nisbatan doimiy saqlash uchun mo’ljallangan. Tezkor xotiraning muhim xususiyatlaridan biri bu adreslanganligi hisoblanadi. Bu xotira yacheykalari massividagi har bir xotira yacheykasi birqiymatli o’z nomi (identifikatori)ga egaligini anglatadi. Ushbu nom yacheyka adresi deb ataladi. Yacheyka adresi tezkor xotiraga murojaat qilgan mashina kommandasining operandi hisoblanadi. Zamonaviy hisoblash tizimlarida adreslash uchun ikkilik 8 razryaddan tashkil topgan bayt-yacheyka birligi qo’llaniladi. Tezkor xotiraning aniq yacheykalari yoki yacheykalar majmuasi dasturdagi aniq o’zgaruvchi bilan bog’liq bo’lishi mumkin. Lekin o’zgaruvchilar ishtirok etgan arifmetik hisoblashlarni bajarish uchun hisoblash boshlanmasdan oldin o’zgaruvchilar xotira yacheykasidan registrlarga o’tkazilishi zarur bo’ladi. Agar hisoblash natijasi ham ushbu o’zgaruvchiga o’zlashtirilgan bo’lsa, u holda natija qiymat ham yana mos registrdan ushbu o’zgaruvchiga bog’liq bo’lgan tezkor xotira yacheykasiga o’tkazilishi kerak. Dastur bajarilishi vaqtida uning komandalari va ma’lumotlari asosan tezkor xotira yacheykalarida joylashadi.