2-Mavzu. Axborotlarni kompyuter xotirasida tasvirlanishi Reja
Download 0.86 Mb.
|
mavzu-2
- Bu sahifa navigatsiya:
- 1.Axborotlarni kodlashtirish.
- 2.Butun son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi.
- 3.Haqiqiy son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi.
- Misol.
- 4.Matn ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi.
- 5.Grafik ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi.
- 6.Ovozli ma’lumotlarni kompyuter xotirasida tasvirlanishi.
- TAKRORLASH UCHUN SAVOL VA TOPSHIRIQLAR
- Foydalaniladigan a dabiyotlar
2-Mavzu. Axborotlarni kompyuter xotirasida tasvirlanishi Reja: 1.Axborotlarni kodlashtirish. 2.Butun son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. 3.Haqiqiy son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. 4.Matn ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. 5. Grafik ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. 6.Ovozli ma’lumotlarni kompyuter xotirasida tasvirlanishi.
Ma’lumotlar tabiatiga ko’ra sonli, matnli, grafik, tovushli yoki video ko’rinishlarida bo’lishi mumkin. U o’zgaruvchan, o’zgarmas, tasodifiy xarakterga ega bo’lib, ular orasida o’zgaruvchan ma’lumotlar alohida ahamiyat kasb etadi. CHunki, o’zgaruvchan ma’lumotlar jarayon va voqealarning sabab-oqibatlarini o’rganishga imkon beradi. Axborotni(sonli yoki sonli bo’lmagan) kompyuter xotirasida tasvirlash uchun ikkili kodlash usulidan foydalaniladi. Kompyuter xotirasidagi axborotni saqlashga mo’ljallangan katak 8 bit(bayt) uzunlikga ega. Har bir bayt katak manzili deb ataluvchi o’z tartib raqamiga ega. Kompyuter bir butun sifatida qayta ishlashi mumkin bo’lgan bitlarni eng katta ketma ketligiga mashina so’zi deyiladi. Mashina so’zini uzunligi kompyuter prosessorini razryadiga bog’liq bo’lib u 16 bit, 32 bit, 64 bitga teng bo’lishi mumkin. Komp’yuterda qayta ishlanishi zarur bo’lgan ma’lumotlar ikkilik sanoq sistemasida (ya’ni, komp’yuter tilida) 0 va 1 raqamlari orqali ifodalanadi va xotirada saqlanadi. Turli ko’rinishdagi ma’lumotlarni bu tilda kodlash usullari bir-biridan farqlanadi. Mashina tilidagi bitta 0 yoki 1 raqamini bir bit ma’lumot deb ataladi. U eng kichik ma’lumot o’lchovi sanaladi. Undan tashqari ma’lumotlarning quyidagi o’lchov birliklari mavjud:
Komp’yuterda ma’lumotlar asosan baytlarda ifodalanadi. Masala xarakteriga ko’ra, u kodlangan turli tipdagi ma’lumotlarni ko’rsatadi. Bir baytda ifodalash mumkin bo’lgan butun sonlar diapazoni 8 ta nol va birlarning kombinatsiyasi, ya’ni 28=256 bilan chegaralanadi. Ikki bayt bilan esa 0 dan 216=65536 gacha butun sonlarni yozish mumkin. Undan katta sonlarni saqlash uchun 4 bayt (32 bit) talab qilinadi. Mashina so’zi, ya’ni ikki bayt ma’lumotning razryadlari (bitlari) chapdan o’ng tomonga qarab nomerlanadi:
2.Butun son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. Komp’yuter xotirasida sonlarni ikki xil o’lchamda ifodalash mumkin. Ularning birinchisi butun sonlar uchun, ikkinchisi esa haqiqiy sonlar uchun qo’llanadi. Kompyuter xotirasida ifodalash mumkin bo’lgan sonlarning diapazoni chegaralangan. Bu chegara sonlarni saqlash uchun mo’ljallangan xotira hajmi bilan belgilanadi. 2.Butun sonlarni kompyuter xotirasida ifodalashni boshqa usuli – qo’shimcha kodlash usuli deyiladi. Kodlanuvchi sonlar diapazoni ularga xotiradan ajratilgan bitlar soniga bog’liq. Masalan, Integer turidagi sonlar diapazoni -32768(-215) dan 32767(215-1)gacha bo’ladi va ularni xotirada saqlash uchun 2 bayt; LongInt teridagi sonlar diapazoni -231 dan 231 -1 gacha va ularni xotirada saqlash uchun 4 bayt; Word turidagi sonlar diapazoni 0 dan 65535(216-1) va ularni xotirada saqlash uchun 2 bayt joy ajratiladi. Yuqoridagi sonlar turidan ko’rinib turibdiki, qiymatlar ishorali va ishorasiz deb qabul qilinishi mumkin. Agar qiymat ishorasi bilan tasvirlangan ko’rinishda bo’lib eng chapdagi (katta)razryad 0 bo’lsa, son musbat, agar 1 bo’lsa manfiy ekanligini bildiradi. Razryadlar 0 dan boshlab o’ngdan chapga tartiblanadi. Quyidagi rasmda 2 baytli mashina so’zini tartiblash keltirilgan. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Musbat sonni qo’shimcha kodi uni to’g’ri kodi bilan bir xil bo’ladi. Butun sonni to’g’ri kodi quyidagicha hosil qilinadi: berilgan son ikkili sanoq sistemasiga o’tkaziladi, keyin bu son qaysi turga tegishli bo’lsa, uni ikkili sanoq sistemasida ko’rinishini chap tomoni razryad to’lguncha 0 raqami(son qiymati o’zgarmaydi) bilan to’ldiriladi. Masalan, agar 3710 =1001012 soni Integer turiga tegishli deb e’lon qilingan bo’lsa, uni to’gri kodi 0000000000100101, agar LongInt turiga tegishli deb e’lon qilingan bo’lsa, uni to’gri kodi 00000000000000000000000000100101 bo’ladi. Ko’proq, hosil qilingan kodlarni ixchamroq yozish uchun 16li sanoq sistemasidan foydalaniladi.Yuqorida hosil qilingan kodlarni 16li sanoq sistemasida quyidagicha yoziladi: 002516 va 0000002516. Manfiy sonni qo’shimcha kodi quyidagicha hosil qilinadi:
Berilgan sonni musbatini to’g’ri kodi yoziladi; to’gri kod inversilanadi, yani 0 raqami 1 bilan, 1 raqami 0 bilan almashtiriladi; inversiya ko’rinishga 1 qo’shiladi. Masalan, LongInt tipidagi -37 sonini qo’shimcha kodini hosil qilaylik: 37 ni to’g’ri kodi 00000000000000000000000000100101; inversiyasi 11111111111111111111111111011010; qo’shimcha kod 11111111111111111111111111011011 yoki FFFFFFDB16 Sonni qo’shimcha kodi berilgan bo’lsa, uni 10 li sanoq sistemasidagi ko’rinishga o’tkazish uchun avvalo uni ishorasi aniqlanadi. Agar son musbat bo’lsa, berilgan kodni to’g’ridan to’g’ri 10 li sanoq sistemasiga o’tkaziladi. Son manfiy bo’lsa, u quyidagicha hosil qilinadi: Berilgan koddan 1 ni ayiriladi; Kod inversiyalanadi; Inversiyalangan kod 10 li sanoq sistemasiga o’tkaziladi va hosil qilingan son manfiy ishora bilan yoziladi. Misol: Quyidagi kodlarga mos 10 li sanoq sistemasidagi sonlarni aniqlang. 00000000000101112 Bu kodni eng katta razryadi 0. Bu esa hosil bo’ladigan son musbat ekanligini bildiradi. Shuning uchun to’g’ridan to’g’ri uni 10 li sanoq sistemasiga o’tkazamiz. 101112=1*24+0*23+1*22+1*21+1*20=16+4+2+1=2310 11111111110000002 Bu misolda kodni eng katta razryadi 1. Bu esa hosil bo’ladigan son manfiy ekanligini bildiradi. Yuqorida keltirilgan usulni qo’llaymiz 1) Berigan koddan 1 ni ayiramiz: 11111111110000002 – 12= 11111111101111112 ; 2) Kodni inversiyalaymiz: 00000000010000002 3) Inversiyalangan kodni 10 li sanoq sistemasiga o’tkazamiz va hosil qilingan sonni manfiy ishora bilan yozamiz: 10000002=1*26+0*25+0*24+0*23+0*22+0*21+0*20=6410 Demak, javob -6410. 3.Haqiqiy son ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi.Kompyuter xotirasida haqiqiy sonlarni tasvirlash usuli boshqacharoq. Suzuvchi nuqtali haqiqiy sonlarni kompyuter xotirasida tasvirlanishini ko’rib chiqaylik. Ixtiyoriy haqiqiy sonni M∙10 p ko’rinishda yozish mumkin, bu yerda, M - sonni mantis-sasi (1≤M<10) va p- esa sonni tartibi( butun son) deyiladi. Masalan,120100000=1,201∙108. 10 li sanoq sistemasida sonlarni har bir raqamini o’rni qo’shni xonadaga raqam o’rnidan 10 ni darajasiga boqliq holda farqlanadi. Shuning uchun sonni 10 ga ko’paytirish deganda, sondagi vergulni o’ngga bir pozisiya surish, 10 ga bo’lish deganda esa vergulni chapga bir pozisiya surish tushuniladi. Yuqoridagi misolni quyidagicha davom ettirish mumkin: 120100000=1,201∙108=0,1201∙109=12,01∙107…. Kompyuterlarda haqiqiy sonlarni suzuvchi nuqtali ko’rinishda ifodalashda, maksimal aniqlikga erishish sonni mantissasi 110≤M<210 oraliqda bo’lishi kerak. Bundan ko’rinib turibdiki, 2 li sanoq sistemasida haqiqiy sonlarni ifodalashda suzuvchi vergul fiksirlangan bo’ladi, yani vergul birinchi raqamdan(0 yoki 1 dan) keyin keladi. Kompyuterlarda haqiqiy sonlarni suzuvchi nuqtali ko’rinishda tasvirlash uchun ularga ajratilgan joy uch qismdan iborat bo’ladi. 1-qismda sonni ishorasi uchun bir katak joy, 2-qismda sonni tartibi uchun joy(nechta kataklilgi sonni turiga bog’liq), 3-qismda sonni mantissasi uchun joy ajratiladi. Double turiga tegishli haqiqiy sonlarni kompyuter xotirasida qanday joylashishini ko’rib chiqaylik. Yuqoridagi jadvaldan ko’rinib turibdiki, bu turdagi haqiqiy sonlar uchun xotiradan 2 bayt joy ajratiladi. Joylarni qismlarga bo’linishi quyidagicha:
63 62 52 51 0 Son tartibini xotirada saqlash uchun uning o’nli sanoq sistemasidagi tartibiga surilish miqdori qo’shiladi. Masalan, Double tipidagi son uchun tartib 11 bitni egallaydi va diapazoni dan gacha bo’ladi. SHunday qilib, haqiqiy sonlar komp’yuter xotirasida quyidagi algoritm asosida ifodalanadi: 1) son modulini ikkilik sanoq sistemasiga o’tkaziladi: 2) hosil qilingan son normallashtiriladi, ya’ni ko’rinishida yoziladi. Bu erda m-mantissa bo’lib, butun qismi 12 ga teng. p — o’nli sanoq sistemasida yozilgan tartib. 3) tartibga surilish miqdori qo’shiladi va hosil qilingan son ikkilik sanoq sistemasiga o’tkaziladi; 4) ishorasini e’tiborga olib, sonning komp’yuter xotirasidagi ko’rinishi yoziladi.
Echish. Sonning moduli ikkilik sistemadagi yozuvi 100111000,0101. Uni normallashtiramiz: 100111000,0101 = 1,001110000101 × 28. endi uning tartibini suramiz: 8 + 1023 = 1031. 103110 = 100000001112. Son manfiy bo’lgani uchun 63 razryadga 1 yozamiz. Natijada quyidagi songa ega bo’lamiz:
4.Matn ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. Harfiy ma’lumotlarni kodlash uchun turli jadvallardan foydalaniladi. Biz bu holatni halqaro ASCII jadvali misolida bayon qilamiz. ASCII (American Standard Code for Information Interchange – Amerikaning ma’lumot almashish uchun standart kodlari) komp’yuterlarda eng ko’p qo’llanadigan kodlash tizimlaridan biri hisoblanadi. Bu jadvalning barcha belgilari 0 dan 255 gach bo’lgan sonlar bilan nomerlangan. Bu nomerlarning har biriga ikkilik sanoq sistemasidagi 8 ta razryadli 00000000 dan 11111111 gacha sonlar mos keladi. Aynan shu kodlar belgining ikkiliq sanoq sistemasidagi kodini ifodalaydi. ASCII jadvalining dastlabki qismi standart bo’lib, boshqaruvchi (0 dan 32 gacha), tinish belgilari (33 dan 47 gacha), raqamlar (48 dan 57 gacha), katta va kichik lotin harflari (65 dan 90 va 97 dan 122 gacha) kabi belgilardan tashkil topgan. Jadvalning qolgan qismi milliy alfavit (masalan, kirill alfaviti) va psevdografika elementlarini o’z ichiga oladi. ASCII jadvali yordamida hammasi bo’lib 256 ta turli belgilarni kodlash mumkin. Bu jadvaldagi ihtiyoriy belgini 8 bit, ya’ni 1 bayt yordamida kodlash mumkin. Masalan, “Mikroprotsessor” so’zi komp’yuter xotirasida 14 bayt joyni egallaydi. Belgilarni kodlashda ularning ASCII jadvalida turgan o’rnigdan foydalaniladi. Bu kodni ikkilik yoki o’nlik sanoq sistemasida ifodalash mumkin. Masalan, “Hello!” so’zi quyidagicha komp’yuter xotirasida quyidagicha ko’rinishda saqlanadi:
5.Grafik ko’rinishdagi ma’lumotlarni kompyuter xotirasida tasvirlanishi. Grafika elementlarini ko’rsatish uchun uchun dastlab ekran vertikal va gorizontal nuqtalar (piksellar) matritsasiga aylantiriladi. Bunda piksellar osni qancha ko’p bo’lsa, tasvir shunchalik aniq ko’rinadi. So’ngra tasvirning ifodalovchi mos piksellarga rang beriladi. Ma’lumki, ihtiyoriy rangni turli yorqinlikdagi qizil, yashil va ko’k ranglar yordamida hosil qilish mumkin. Demak, pikselga rang berishda bu ranglarning kombinatsiyalaridan foydalaniladi. Oq-qora tasvirlarni ifodalash uchun oq va qora ranglar etarli. Ularni xotirada bir bit yordamida ifodalanadi: 1 - oq, 0 – qora. Rangli monitorlarda bitta piksel’ turli ranglarni qabul qilishi mumkin. 4 ta rangni ifodalash uchun ikki bit ma’lumot zarur bo’ladi. Bunda quyidagi kodlash usulidan foydalanish mumkin: 00 - qora, 10 - yashil, 01 - qizil, 11 – jigar rang. RGB-monitorlarda barcha ranglarni bazaviy ranglar (qizil, yashil va ko’k) yordamida hosil qilinadi va ularni kodlash uchun quyidagi kombinatsiyalardan foydalaniladi:
Agar bazaviy ranglarning yorqinligini boshqarish imkoni mavjud bo’lsa, bu jadvaldagi ranglar sonini orttirish mumkin. Ranglarning soni va ularni komp’yuter xotirasida ifodalash uchun zarur bo’lgan bitlar miqdori formula bilan aniqlanadi. 6.Ovozli ma’lumotlarni kompyuter xotirasida tasvirlanishi. Fiziki kursidan ma’lumki, havo zarralarining ma’lum bir amplitudada tebranishi tovushlarni hosil qiladi. Tovushlar analogli ko’rinishda uzluksiz o’zgaruvchi amplituda va chastotali to’lqinlar tarzida ifodalanadi. Bu tovushlarni bir xil vaqt oraliqlarida o’lchab, ma’lum bir diapazondagi raqamlar yordamida diskret shakli hosil qilinadi. Bundayo metodni impul’sli-kodli modullashtirish PCM (Pulse Code Modulation) deb ataladi. Uzluksiz tovush to’lqinlarini turli amplitudadagi ovoz impul’slariga aylantirish komp’yuterning tovush platasidagi analogli-raqamli almashtirgich qurilmasi orqali amalga oshiriladi. Zamonaviy komp’yuterlar 16-bitli ovoz kartalriga ega bo’lib, turli balandlikdagi 65536 tovushlarni qayd etishga mo’ljallangan. Bu esa tovushlarni 16 bit yordamida ikkilik sanoq sistemasida ifodalash imkonini beradi. Tovushlar sifati vaqt birligida signallarni qayd etish chastotasiga bog’liq bo’ladi. Bu miqdor 8 dan 48 kGts gacha bo’lishi mumkin. Misol: “Kodlash chuqurligi” 16 bit, diskretlash chastotasi 48 kGts bo’lgan va 1 minut davomida eshitish mumkin bo’lgan yuqori sifatli stereoaudiofaylning hajmini aniqlang. Echish: 1 sekundli tovush faylining haajmi 16 bit 48 000 2 = 1 536 000 bit = 187,5 Kbayt Demak, 1 minutli tovushli ma’lumotning hajmi 187,5 Kbayt/s 60 s = 11 Mbayt ga teng bo’ladi. TAKRORLASH UCHUN SAVOL VA TOPSHIRIQLAR 1. 1 bit ma’lumot nima? 2. Ma’lumotlarning qanday o’lchov birliklarini bilasiz? 3. Sonli ma’lumotlarni qanday usulda komp’yuter xotirasiga yoziladi? 4. Matnlar komp’yuter xotirasida qanday kodlanadi? 5. Grafik ma’lumotlarni kodlash qanday usulda amalga oshiriladi? 6. Tovushli ma’lumotlarni kodlash asosini izoxlang. 7. Quyidagi ma’lumotlar komp’yuter xotirasida qanday ifodalanadi: a) 123 b) 23.45 v) -12.345 g) Stop d) Computer e) Paskal tili j) “Kodlash chuqurligi” 1) 16 bit va 8 kGts ; 2) 16 bit va 24 kGts bo’lgan 1 minutli monoaudiofayl hajmini aniqlang. z) YUqori sifatli 10 sekundli audiofayl hajmi 940 Kbayt bo’lsa, tovshu isftaini aniqlang. i) 16 bit yordamida kodlangan, diskretlash chastotasi 32 kGts bo’lgan monoaudiofaylning hajmi 700 Kbayt bo’lsa, bu ma’lumotni qancha vaqt mobaynida eshitish mumkin? Foydalaniladigan adabiyotlar: 1. D.S. Malik. C++ Programming: From problem analysis to program design. Course Technology, 2011. 2. B. Straustrup. Язык программирование С++. Специальное издание.-M.: OOO «Бином-Пресс», 2006. 3. Madraximov SH.F., Gaynazarov S.M. C++ tilida Dasturlash asoslari// Toshkent, O’zbekiston Milliy Universiteti, 2009. Download 0.86 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling