1. Byte tipiga doir:
Byte a,b,c; a=byte. parse.(console.readline()); b=byte. parse.(console.readline()); // yuqoridagi ifodada sonlarga qiymat o’qitildi. c=a*b; //c o’zgaruvchiga a va b sonlarini ko’paytirib qiymatlaydi. Console .write(“c= “+c) ; // masalan a=5,b=6 bo’lsa .natija c=30 degan natija chiqadi. 2. int tipiga doir: //sonning min va max topishga oid masala. Int a,b,min,max; a=byte. parse.(console.readline()); b=byte. parse.(console.readline()); // yuqoridagi ifodada sonlarga qiymat o’qitildi. If(a>b) {max=a; min=b;} If(a {max=b; min=a;} console.writeLine(“max= ”+max); console.writeLine(“min= ”+min); Natija a=125; b=135; bo’lsa bizga natija quyidagicha chiqadi. Max=135 min=125;
1.3 Haqiqiy tiplar sonlarning kompyuter xotirasida tasvirlanishi.
Haqiqiy tip. C# tilida oltita haqiqiy tipdagi ma‘lumotlar mavjud: real, double, float. Bu tiplar bir-biridan qabul qiladigan qiymatlarining diapazoni, ishonchli raqamlarining soni va kompyuter xotirasidan egallaydigan xajmlari bilan farqlanadi. 2-jadvalda bu tiplar ular oraidagi farq keltirilgan. C# tili Double tipiga ekvivalent bo’lgan universal haqiqiy tip - Real tipidagi ma‘lumotlarni ham qabul qiladi. Haqiqiy tipdagi ma‟lumotlar
Tipi Diapazon Ishonchli raqamlari Turli tipdagi ma‘lumotlar bilan ishlaganda o’lchamiga e‘tibor berish kerak
masalan dastur tez ishlash uchun xotirani tejash kerak. O’lchami qancha kichik
bo’lsa dastur tezligi ham yuqori bo’ladi.
Haqiqiy tur. Haqiqiy turiga haqiqiy sonlar to’plamidagi qiymatlar (amalga
oshirishga bog’liq) kiradi.
EHMda har bir haqiqiy son qandaydir
xatolik bilan saqlanadi, shuning uchun ularni ustida tenglikka taqqoslash amallari
bajarilganda, to’g’ri natija bermasligi mumkin. Ular ustida 4 asosiy amallar
bajariladi: qo’shish (+), ayirish (-), ko’paytirish (*), bo’lish (/). Bo’lish amallini
bajarganda ikkita operand butun bo’lganda ham, natija haqiqiy bo’ladi.
Quyidagi funksiyalarni argumenti real yoki integer bo’lganda ham natijasi
haqiqiy bo’ladi: sin(x)-sinus, cos(x)-kosinus, arctan(x)-arktangens, ln(x)-natural
logarifm, exp(x)-eksponenta, sqrt(x)-x-ni kvadrat ildizi. abs va sqr funksiyalari esa
argumenti haqiqiy bo’lgandagina haqiqiy natija beradi.
Haqiqiy o’zgarmaslar o’nli sanoq sistemasida beriladi. Ular fiksirlangan nuqta
va suzuvchi nuqta ko’rinishida yoziladi. Birinchi ko’rinishida sonni butun va kasr
qismlari nuqta bilan ajratiladi. Ikkinchisida esa son quyidagicha yoziladi:
::=< ishorasiz butun son>E< butun son >
yoki < fiksirlangan nuqta bilan yozilgan son >E< butun son > bilan yozilgan son>::= yoki E 1.4 butun va xaqiqiy sonlarni 2lik sanoq sistemasida tasvirlash yo’li
Kompyuter sanoati rasm, matn, raqam, audio, va videolardan iborat
axborotni tariflash uchun multimedia terminini ishlatadi.
Kompyuterdagi ma‟lumotlar.
Barcha turdagi ma‘lumotlar kompyuterda to’planganda standart ko’rinishga
o’tkaziladi va ajratilayotganda ularning asl holatiga qaytariladi.
Bu universal ko’rinish bit modeli yoki 0 va 1 larning tartibi deb ataladi.
1 0 0 0 1 0 1 0
8 bitning tasvirlanishi.
Ma‘lumotlar Raqamlar Matn Audio Rasm Video Turli xil axborotlarning yig’ilishi.
Turli xil axborotlarning yig’ilishi.
Ma‟lumotlarni siqish.
Kamroq xotirani band qilish uchun axborot kompyuterda to’planishidan oldin siqiladi. Axborot siqilishi juda keng va qiyin soha . Xatoni aniqlash va
to’g’irlash: Abxorotga oid yana bir muammo bu axborotni uzatish yoki to’plash
paytida xatolarni aniqlash va tuzatishdir.
Sonlarni to’plash.
Raqam kompyuterda yig’ilishidan oldin ikkilik sanoq sistemasiga o’tkaziladi.
Shunga qaramasdan, bunda to’g’irlanishi kerak bo’lgan 2 ta muammo bor.
1. Qanaqa qilib raqam belgisini to’plash.
2. Qanaqa qilib o’nlik kasrdagi nuqtani ko’rsatish.
Butun sonlarni to’plash.
Ular kasr qismisiz sonlar . Masalan 134 va -125. Butun son sifatida o’nli kasr
nuqtasi o’zgarmas sonlar keltirilishi mumkin: bu nuqta o’ngdagi bitdan keyin
keladi. Shu sababdan , o’zgarmas - nuqtali tasvirlanishi butun sonlarni to’plashda
qo’llaniladi, pastda ko’rsatilganidek.
0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0
Xotiraga joylashuvi o’nli nuqta
Ma‘lumotning xotirada joylashishi.
Odatda butun sonlar o’zgarmas - nuqta tushunchasi orqali xotirada yig’iladi.
Ishorasiz taqdim etish.
Ishorasiz o’zgaruvchi hech qachon manfiy bo’la olmaydi . 0 yoki musbat
Qiymatlarni qabul qilishi mumkin. O’garish diapazoni 0 dan cheksizgacha .
Axborot keluvchi moslama ishorasiz o’zgaruvchini quyidagi bosqichlar yordamida
to’playdi.
1. Butun son (integer) 2 lik sanoq sistemasiga o’tkaziladi.
2. Agar bitlar soni n dan kam bo’lsa , chap tarafidan 0 lar qo’shiladi.
Misol 1: 7 ni 8 bitlik xotira joylashuvida ishorasiz taqdim etish yordamida
to’plang .
Yechim: Birinchi o’zgaruvchi 2 likka o’tkaziladi:
Butun sonni ikkilikka o’tkazish.
bitlar soni 8 ta qilish uchun unga 5 ta nol qo’shiladi. O’zgaruvchi xotira
joylashuvida yig’iladi:
7 ni 2 likka o’zgartirish
Chap tarafdan 5ta nol qo’shish (00000111)
Misol 2: 258 ni 16 bitlik xotira joylashuvida saqlang:
Yechim: Birinchi o’zgaruvchi 2 likka o’tkaziladi:
ni ikkilikka o’tkazish jarayoni.
258 soni 10likda turibdi
ni 2 likka o’tkazamiz (100000010)
Chap tarafdan 7 ta nol qo’shish (0000000100000010)
Misol 3: Agar xotirada ishorasiz o’zgaruvchi sifatida (00101011)
2likda to’plangan bo’lsa , tashqaridan qanday ma‘lumot kirgan : (00101011)
2 likni 10 likka o’tkazamiz:
1+2+8+32 = 43
Namoyon bo’ladi Ortiqcha
0 1 2 3 4 ………. 15 16 17 18 19 20….
Butun sonni 4 bitni tasvirlanishi va undan ortib ketishi mumkin bo’lgan sonlar 2^n songacha sigadi
Ishorasiz sonning tasvirlanishi.
Ishora va qiymatlarni taqdim etish.
Birinchi yarmini musbat butunsonlar, ikkinchisi esa manfiy butun sonlar uchun ajratiladi.
Ishora va qiymatlarni taqdim etish.
0 ga ikki xil taqdim etish to’g’ri keladi. Bu (ishora va qiymatli ) ajratish ,
chapdagi bit butun sonning ishorasini aniqlaydi. Agar u 0 bo’lsa, butun son
musbat, agar 1 bo’lsa manfiy bo’ladi.
Misol 4: 28 ni 8 bitli xotirada joylashuvida ishora va qiymatli ko’rinishida
joylashtiring.
Yechim: Butun son 7 bitli 2 lik sanoq sistemasiga o’tkaziladi.
28 butun sonini ikkilikka o’tkazish jarayoni.
28 [ 10 likda]= 11100[ 2likda]
bo’lgani uchun uning oldiga yana bitta 0 qo’shiladi va 8 bitli son
yig’iladi:
28 ni 7 bitli 2 likka o’tkazamiz: 0011100
0 ni qo’shamiz va joylashtiramiz: 00011100
Yechim:-28 Butun son 7 bitli 2 lik sanoq sistemasiga o’tkaziladi. Sonimiz
-28 bo’lgani uchun 7- bitli son oldiga 1 qo’yiladi va 8 bitli axborot olinadi.
28 ni 7 bitli 2 likka o’tkazamiz: 0011100
20
1 ni oldidan qo’shamiz va yozamiz: 10011100
Misol 6: Ishora va qiymatli usulida yig’ilgan (01001101)2likdagi
ni butun songa qaytaring:
Yechish:
(01001101)2 likda
1+ 4+8+64 = 77 [10likda]
Misol 7: Ishora va qiymatli usulida yig’ilgan (10100001)
2likda
butun songa
qaytaring.
Yechim: Sonning chapdagi biti 1 bo’lgani uchun butun son ishorasi manfiy,
qolgan (0100001)
2
bitlar o’nlikda 33
10likda
Bo’lib o’tadi. Demak , butun son: -33
10likda
Butun sonni ishora va qiymat ko’rinishida 4 bitli xotira joylashuvida to’plashda
yuzaga keluvchi Musbat ( positive) va Manfiy (negative) larning hajmga
sig’maslik.
Ifodalab beruvchi soha
Manfiy sig’maslik Manfiy Musbat Musbatning sig’maslik
…-11....-7 … -3 -2 -1 ±0 1 2 3 ...7…. 11…
1.9 – rasm. Manfiy va musbat sonni ifodalab beruvchi soha.
a) Manfiy b) Musbat
1.10 – rasm. Manfiy va musbat sonning tasvirlanishi.
Ikkilik to’ldirish bilan taqdim etish.
21
Deyarli barcha kompyuterlar ikkilik to’ldirish bilan ishorali butun sonni nbitli xotira joylashuviga yozadi.
0 dan 2*n^(– 1) gacha bo’lgan ishorasiz butun son teng ikki qism –sohaga
bo’linadi. Birinchi qism musbat butun sonlarni , ikkinchi qism manfiy butun sonlar
uchun ajratiladi. Keyin bit modellari musbat va manfiy butun sonlarga
taqsimlanadi.
Musbat va manfiy butun sonlarga taqsimlanishi.
Ikkilik to’ldirish bilan taqdim etishda chapdagi bit butun sonning ishorasini
aniqlaydi. U 0 bo’lsa butun son musbat, 1 bo’lsa manfiy bo’ladi.
Teskari kod
Teskari kodni muhokama qilish uchun biz 2 ta amal bilan tanishib chiqamiz:
1). 2 lik songa teskari kod: Bu amal ixtiyoriy butun (musbat yoki manfiy ) songa
qo’llaniladi. Ma‘nosi - har bir bitni unga teskari bo’lgan bitga o’zgartirish . Ya‘ni 0
ni 1 ga, 1 esa 0 ga o’zgaradi.
Misol 8: Quyida keltirilgan (00110110)2lik
ma‘lumotni teskari kodga almashtirish.
Orginal ko’rinishi
(00110110)2lik
Teskari kodga almashtirish (11001001)2lik
Misol 9: Agar teskari kodga almashtirish amalini ketma – ket 2 marta qo’llasak,
orginal butun sonning o’zini olamiz:
Orginal ko’rinishi (00110110)2lik
Bir marta teskari kodlash (11001001)2lik
Ikki marta teskari kodlash (00110110)2lik
2). 2 lik sanoq sistemasidagi songa qo’shimcha kod ya‘ni ikkiga to’ldirish
deyiladi .
Misol : 28 ni 8 bitli xotiraga qo’shimcha kodlash usuli yordamida kiriting.
Yechim: 28- musbat son , shuning uchun 28 ni ikkilikka o’tkazamiz:
28 [10likda]=00011100[2likda]
28 butun sonni ikkilikka o’tkazish jarayoni.
O’tkazganimizdan so’ng hech qanday qo’shimcha harakat talab qilinmaydi.
Faqat 8 bitni olish uchun oldidan 3 ta 0 qo’shsak kifoya.
28[1010likda]
= ( 11100)
2
Misol 11: Xotirani 2 ga to’ldirish usuli orqali (00001101)
2likda
Bo’lib kirayotgan butun
sonni toping .
Yechim : Eng chapdagi bit 0, demak butun son musbat bo’lgan.Butun son o’nlikka
o’tkaziladi va ishorasi qo’yiladi:
1 + 4 + 8 = 13
10
Demak ishora ―+‖ (0 0 0 0 1 1 0 1)
O’nlik sanoq sistemasida 13
Ishora qo’yiladi + 13
Misol 12: Xotiraga 2 ga to’ldirish usuli orqali (11100110)
ni kiritilgan butun
sonni toping.
Yechim: Chapdagi bit 1 ga teng, demak butun son manfiy. Butun son 10 likka o’tkaziladi va bir marta ikkiga to’ldirish orqali amalga oshiramiz:
Ishora ―-‖ (11100110)2likda
Bir marta 2 ga to’ldirish (00011010)
2+8+16= (26)[10likda
Ishorasini qo’yish -26
Ikkiga to’ldirish amalida berilgan hajmga sig’maslik.
0 0 0 1 1 1 0 0
1.5- jadval .Taqqoslash butun sonlarni.
Xotira hajmi Ishorasiz Ishora va qiymatli 2 ga to’ldirish
0000 0 0 +0
0001 1 1 +1
0010 2 2 +2
0011 3 3 +3
0100 4 4 +4
0101 5 5 +5
0110 6 6 +6
0111 7 7 +7
1000 8 -0 -8
1001 9 -1 -7
1010 10 -2 -6
1011 11 -3 -5
1100 12 -4 -4
1101 13 -5 -3
1110 14 -6 -2