Uploaded by haydarovlochinbek23101994

2 Mavzu Sanoq sistemalari Sanoq sistemalarida arifmetik amalla fayllar

advertisement
1-Mavzu: Sanoq sistemalari. Sanoq sistemalarida arifmetik amallarni bajarish. Reja
1-Mavzu: Sanoq sistemalari. Sanoq sistemalarida arifmetik amallarni bajarish.
Reja:
1.Sanoq sistemasi haqida tushuncha.
2.Sonlarni bir sanoq sistemasidan ikkinchi sanoq sistemasiga o’tkazish.
3.Sanoq sistemalarida arifmetik amallarni bajarish.
4. Ikkili-sakkizli va ikkilik-o’n oltili sanoq sistemalari.
1. Sanoq sistemasi haqida tushuncha. Sanoq sistemasi — bu, sonlarni belgilangan miqdoriy
qiymatga еga bo’lgan belgilar asosida nomlash va tasvirlash usulidir. Sonlarni tasvirlash usuliga
bog’liq ravishda sanoq sistema pozitsion va nopozitsion bo’ladi.
Pozitsion sanoq sistemasida har bir raqamning miqdoriy qiymati uning sondagi joyiga
(pozitsiyasiga) bog’liq bo’ladi. Quyidagi jadvalda pozitsion sanoq sistemaga misollar keltirilgan(
1-rasm):
Asosi
Sanoq sistemasi
Foydalaniladigan belgilar
2
Ikkili
0,1
3
Uchli
0,1.2
4
To’rtli
0,1,2,3
5
Beshli
0,1,2,3,4
8
Sakkizli
0,1,2,3,4,5,6,7
10
O’nli
0,1,2,3,4,5,6,7,8,9
12
O’n ikkili
0,1,2,3,4,5,б,7,8,9,А,В
16
O’n oltili
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
1-rasm
Sonning pozitsion sanoq sistemasida tasvirlash uchun ishlatiladigan turli raqamlar miqdori (N)
sanoq sistemasini asosi deyiladi. Raqamlar qiymati 0 dan N-1 gacha oraliqda yotadi. Umumiy
holda ixtiyoriy sonni N asosli sanoq sistemasida yozish quyidagi yig’indi ko’rinishiga еga:
AnAn-1An-2 … A1A0,A-1A-2 =
АnВn + An-1Bn-1 + ... + A1B1 + А0В0 + A-1B-1 + А-2В-2 + ... (1)
bu erda, pastki indekslar raqamning sondagi joylashgan joyini (razryadini) aniqlaydi:

B — sanoq sistemasi asosi;

n — raqamlarni pozitsiyasi(o’rni);

An , An-1, An-2 … A1, A0, A-1, A-2 — berilgan sonni raqamlari;

indekslarning musbat qiymatlari — sonning butun qismi uchun;

manfiy qiymatlar — kasr qism uchun;

Misol: 23,4310=2*101+3*100+4*10-1+3*10-2
Nopozitsion sanoq sistemasida raqamlar o’zining miqdoriy qiymatini, ularning sondagi
joylashishi o’zgarganda, o’zgartirmaydi. Bu turda sanoq sistemasiga Rim raqamlarini misol
qilish mumkin. Bu sanoq sistemasida 7 ta belgidan foydalaniladi: I, V, X, L, C, D, M.
Ularni o’nli sanoq sistemasida mos keluvchi qiymatlari:
I(1) V(5) X(10) L(50) С (100) D(500) M(1000)
Misol: III – 3 LIX – 59 DLV – 555
Rim raqamlarini ifodalash murakkabligi va ular ustida arifmetik amallarni bajarish qoidalari
yo’qligi ularni kamchiligi hisoblanadi. Shuning uchun, undan ayrim joylarda foydalaniladi. Biz,
asosan, pozitsion sanoq sistemasidagi sonlar ustida ish olib boramiz.
2. Sonlarni bir sanoq sistemasidan ikkinchi sanoq sistemasiga o’tkazish. Biz o’rgangan o’nli
sanoq sistemasidagi sonlarni boshqa sanoq sistemasidagi son ko’rinishiga o’tkazish uchun, uni
butun va kasr qismilariga alohida usul qo’llaniladi. Sonni butun qismini boshqa sanoq sistemasi
o’tkazish uchun, berilgan son, o’tkazilishi kerak bo’lgan sanoq sistemasi asosiga bo’linadi.
Bo’linma qoldig’i belgilab qo’yiladi. Bo’linma yana sanoq sistemasi asosiga bo’linadi. Bu
jarayon bo’linma sanoq sistemasi asosidan kichik bo’lguncha davom ettiriladi. Hosil bo’lgan
qoldiqlar oxiridan boshlab navbati bilan yozib chiqiladi.
Misol-1.1. a) 26710 →X2 b) 26710 →Y8 c) 26710 →X16
267| 2 a)
266| 133| 2
1 132| 66| 2
1 66| 33| 2
0 32| 16| 2
1 16| 8| 2
0 8| 4| 2
0 4| 2| 2
0 2| 1
0
Demak, 26710=1000010112
267| 16 c)
256| 16| 16
11 16| 1
0
Demak, 26710=10B16
267| 8 b)
264| 33| 8
3 32| 4
1
Demak, 26710=4138
O’nli sanoq sistemasidagi sonlarni kasr qismini boshqa sanoq sistemasiga o’tkazish uchun, kasr
qismini sanoq sistemasi asosiga ko’paytiriladi, hosil bo’lgan sonni butun qismi belgilab qo’yiladi
va kasr qismi esa yana sanoq sistemasi asosiga ko’paytiriladi. Bu jarayon yetarli aniqlikda
hisoblanguncha davom ettiriladi.
Misol-1.2. a) 267,6810 →X2 b) 267,6810 →Y8 c) 267,6810 →X16
Berilgan misoldagi sonlarni butun qismi Misol-1.1da aniqlangan. Shuning uchun ularni kasr
qismi ustida amallarni bajaramiz.
a) x 0,68 x 0,36 x 0,72 ….. Demak, 267,6810=100001011,1012
222
1,36 0,72 1,44
b) x 0,68 x 0,44 x 0,52 ..... Demak, 267,6810=413,5348
888
5,44 3,52 4,16
c) x 0,68 x 0,88 x 0,08 ….. Demak, 267,6810= 10B,AE116
16 16 16
10,88 14,08 1,28
Boshqa sanoq sistemasidagi sonlarni o’nli sanoq sistemasidagi son ko’rinishiga o’tkazish uchun
1-formuladan foydalanamiz.
Misol-1.3. a) 100001011,1012 →X10 b) 413,5348→Y10 c) 10B,AE116→Z10
a) 100001010,1012=1*28+0*27+0*26+0*25+0*24+1*23+0*22+1*21+1*20+1*2-1+0*2-2+1*2-3=
256+8+2+1+0,5+0,125=267,62510
b) 413,5348=4*82+1*81+3*80+5*8-1+3*8-2+4*8-3=256+8+3+0,625+0,1725+0,0156≈267,6810
c) 10B,AE116=1*162+0*161+11*160+10*16-1+14*16-2+1*16-3=256+11+0,625+0,054+0,01
≈267,6810
3. Sanoq sistemalarida arifmetik amallarni bajarish. Xuddi 10 li sanoq sistemasidagi sonlar
ustida arifmetik amallarni bajarganimiz kabi, boshqa sanoq sistemasidagi sonlar ustida ham
arifmetik amallarni bajarish mumkin.Ikkili sanoq sistemasidagi sonlar ustida arifmetik amallarni
bajarish uchun quyidagi jadvallardan foydalanish kerak:
Misol-1.4 Quyidagi yig’indilarni hisoblang:
a) 1001100,0012+10101010,1012
+ 1001100,001
10101010,101
11110110,110
1001100,0012+10101010,1012=11110110,1102
c) 81A,9216+235,7616
+
81A,92
235,76
A50,08
81A,9216+235,7616= A50,0816
b) 354,728+23,128
+ 354,72
23,12
400,04
354,728+23,128=400,048
4. Ikkili-sakkizli va ikkilik-o’n oltili sanoq sistemalari. Komp’yuterlarda barcha ma’lumotlar
ikkilik sanoq sistemasida ifodalanadi. Ammo, bu degani barcha sonli ma’lumotlar biz yuqorida
keltirgan usulda ikkilik sanoq sistemasiga o’tkazilishini anglatmaydi. Ikkili-sakkizli va ikkiliko’n oltili sanoq sistemalari qo’llash natijasida 2 ga bo’lish amallari sonini qisqartirishga erishish
mumkin.
Ikkili-sakkizli sanoq sistemasida 0 dan 7 gacha bo’lgan raqamlar uchta nol va birlar orqali
ifodalanadi. To’g’rirog’i, bu raqam ikkilik sanoq sistemasiga o’tkaziladi va chap tomondan 0
larni qo’shib, uchtagacha to’ldiriladi. Bunda quyidagi jadvaldan foydalaniladi:
Sakkizli
ikkili-sakkizli
sakkizli
ikkili-sakkizli
0
000
4
100
1
001
5
101
2
010
6
110
3
011
7
111
O’nli sanoq sistemasida berilgan xar qanday son avval sakkizlik sanoq sistemasiga o’tkaziladi.
SHunday keyin natijaviy sondagi xar bir raqam yuqoridagi jadval asosida ikkili-sakkizli
sistemadagi raqamlar uchligi bilan almashtiriladi.
Misol-7. 123 sonini ikkili-sakkizli sanoq sistemasiga o’tkazing.
Echish: Dastlab 123 sonini 8 lik sanoq sistemasiga o’tkazamiz. . endi hosil qilingan ning xar bir
raqamini yuqorida jadval yordamida almashtiramiz.
Demak, soni ikkli-sakkizli sanoq sistemasida 001 111 011 tarzida yoziladi.
Ikkili-o’n oltili sanoq sistemasida 0 dan 15 gacha bo’lgan sonlar to’rtta nol va birlar orqali
ifodalanadi. To’g’rirog’i, bu raqam ikkilik sanoq sistemasiga o’tkaziladi va chap tomondan 0
larni qo’shib, to’rttagacha to’ldiriladi. Bunda quyidagi jadvaldan foydalaniladi:
o’n oltili
ikkili-o’n oltili
o’n oltili
ikkili-o’n oltili
0
0000
8
1000
1
0001
9
1001
2
0010
A
1010
3
0011
B
1011
4
0100
C
1100
5
0101
D
1101
6
0110
E
1110
7
0111
F
1111
O’nli sanoq sistemasida berilgan xar qanday son avval o’n oltili sanoq sistemasiga o’tkaziladi.
SHunday keyin natijaviy sondagi xar bir raqam yuqoridagi jadval asosida ikkili-o’n oltili
sistemadagi raqamlar to’rtligi bilan almashtiriladi.
Misol-8. sonini ikkili-o’n oltili sanoq sistemasiga o’tkazing.
Echish. Dastlab sonini o’n oltili sanoq sistemasiga o’tkazamiz. . SHundan keyin sonidagi
raqamlarni mos ravishda ikkili-o’n oltili sonlar jadvali yordamida almashtiramiz:
.
Demak, soni ikkili-o’n oltili sanoq sistemasida 0100 1101 0010 tarzida yozilar ekan.
TAKRORLASH UCHUN SAVOL VA TOPSHIRIQLAR
1.
Sanoq sistemasi nima?
2.
5 lik sanoq sistemasidagi raqamlarni ayting.
3.
Ikkili sanoq sistemasida asosiy arifmetik amallarning bajarilishini misollar orqali
tushuntiring.
4.
Nima uchun hisoblash mashinalarida ikkili-sakkizli va ikkili-o’n oltili sanoq
sistemalaridan foydalaniladi?
5.
Quyidagi misollarni bajaring:
a) 1000010011102®X10; d) 12410®X2;
b) 10510®X8; e) 6458®X10;
c) (0,54)10®X2; g) (405,5)8®X2;
6. O’nli sanoq sistemasida berilgan quyidagi sonlarni ikkili-sakkizli va ikkili-o’n oltili sanoq
sistemasida ifodalang:
a) 1234 c) -156356
b) 4536,25 d) -23895,125
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.
http://fayllar.org
Download