Raqamlarni bir sanoq sistemasidan ikkinchisiga onlayn o'tkazish. Matnni raqamli kodga tarjima qilish

Kompyuterlar hisob-kitoblarni amalga oshirishi mumkinligini hamma biladi katta guruhlar ma'lumotlar yuqori tezlikda. Ammo bu harakatlar faqat ikkita shartga bog'liqligini hamma ham bilmaydi: oqim bormi yoki yo'qmi va qanday kuchlanish.

Qanday qilib kompyuter turli xil ma'lumotlarni qayta ishlashga muvaffaq bo'ladi?
Buning siri ikkilik tizimda. Barcha ma'lumotlar kompyuterga kiradi, birliklar va nollar ko'rinishida taqdim etiladi, ularning har biri elektr simining bir holatiga mos keladi: birliklar - yuqori kuchlanish, nollar - past yoki birliklar - kuchlanish mavjudligi, nollar - uning yo'qligi. Ma'lumotlarning nolga va birlarga aylantirilishi ikkilik konversiya deb ataladi va ularning yakuniy belgilanishi ikkilik kod deb ataladi.
Qo'llaniladigan o'nlik tizimga asoslangan o'nli yozuvda Kundalik hayot, raqamli qiymat 0 dan 9 gacha bo'lgan o'nta raqam bilan ifodalanadi va raqamning har bir joyi o'ng tomonidagi joydan o'n baravar yuqori qiymatga ega. O'nli kasr tizimida to'qqizdan katta raqamni ifodalash uchun uning o'rniga nol, chapdagi keyingi, qimmatroq joyga esa birlik qo'yiladi. Xuddi shunday, ikkilik tizimda faqat ikkita raqam, 0 va 1 ishlatiladi, har bir joy o'ng tomonidagi joydan ikki baravar qimmatroqdir. Shunday qilib, ikkilik kodda faqat nol va bitta bitta son sifatida ifodalanishi mumkin va birdan katta har qanday raqam ikkita joyni talab qiladi. Nol va birdan keyin keyingi uchta ikkilik raqamlar 10 (bir nolni o'qing) va 11 (birni o'qing) va 100 (bir nolni o'qing). 100 ikkilik 4 kasrga teng. O'ngdagi yuqori jadvalda boshqa BCD ekvivalentlari ko'rsatilgan.
Har qanday raqam ikkilik tizimda ifodalanishi mumkin, bu shunchaki talab qilinadi ko'proq joy kasrli yozuvga qaraganda. Ikkilik tizimda, agar siz har bir harfga ma'lum bir raqamni belgilasangiz, alifboni ham yozishingiz mumkin. ikkilik raqam.

To'rtta joy uchun ikkita raqam
16 ta kombinatsiyani to'q va och to'plar yordamida yasash mumkin, ularni to'rtta to'plamga birlashtirsa. Agar qorong'u to'plar nol, engil to'plar esa birlik sifatida qabul qilinsa, 16 to'plam 16 birlikli ikkilik kod bo'lib chiqadi, raqamli qiymat noldan beshgacha (27-betdagi yuqori jadvalga qarang). Ikkilik to'plarda ham, siz har bir guruhdagi to'plar sonini yoki raqamlardagi joylar sonini ko'paytirish orqali cheksiz sonli kombinatsiyalarni yaratishingiz mumkin.

Bitlar va baytlar

Kompyuterni qayta ishlashda eng kichik birlik, bit ikkitadan biriga ega bo'lishi mumkin bo'lgan ma'lumotlar birligidir mumkin bo'lgan sharoitlar. Masalan, birliklar va nollarning har biri (o'ngda) 1 bitni bildiradi. Bitni boshqa yo'llar bilan ifodalash mumkin: mavjudligi yoki yo'qligi bilan elektr toki, teshik va uning yo'qligi, magnitlanish yo'nalishi o'ngga yoki chapga. Sakkiz bit baytni tashkil qiladi. 256 mumkin bayt 256 belgi va belgilarni ifodalashi mumkin. Ko'pgina kompyuterlar bir vaqtning o'zida bayt ma'lumotlarni qayta ishlaydi.

ikkilik konvertatsiya. To'rt xonali ikkilik kod 0 dan 15 gacha bo'lgan o'nlik sonlarni ifodalashi mumkin.

Kod jadvallari

Ikkilik kod alifbo harflarini yoki tinish belgilarini belgilash uchun ishlatilsa, qaysi kod qaysi belgiga mos kelishini ko'rsatadigan kod jadvallari talab qilinadi. Bir nechta shunday kodlar tuzilgan. Ko'pgina shaxsiy kompyuterlar ASCII deb nomlangan etti xonali kod yoki ma'lumot almashish uchun Amerika standart kodi bilan tuzilgan. O'ngdagi jadvalda ASCII kodlari ko'rsatilgan Ingliz alifbosi. Boshqa kodlar dunyoning boshqa tillaridan minglab belgilar va alifbolar uchundir.

ASCII kodlar jadvalining bir qismi

Keling, qanday qilib tushunaylik matnlarni raqamli kodga tarjima qilish? Aytgancha, bizning veb-saytimizda Onlayn kod kalkulyatori yordamida istalgan matnni o'nlik, o'n oltilik, ikkilik kodga aylantirishingiz mumkin.

Matnni kodlash.

Kompyuter nazariyasiga ko'ra, har qanday matn alohida belgilardan iborat. Bu belgilarga quyidagilar kiradi: harflar, raqamlar, kichik tinish belgilari, maxsus belgilar ("", №, () va boshqalar), ular so'zlar orasidagi bo'shliqlarni ham o'z ichiga oladi.

Kerakli bilimlar bazasi. Men matnni yozadigan belgilar to'plami Alifbo deb ataladi.

Alifboda olingan belgilar soni uning kuchini ifodalaydi.

Axborot miqdori quyidagi formula bo'yicha aniqlanishi mumkin: N = 2b

  • N - bir xil kuch (belgilar to'plami),
  • b - Bit (qabul qilingan belgining og'irligi).

256 ta bo'lgan alifbo deyarli barcha kerakli belgilarni o'z ichiga oladi. Bunday alifbolar YETARLI deb ataladi.

Agar biz 256 quvvatga ega alifboni olsak va 256 \u003d 28 ekanligini unutmang.

  • 8 bit har doim 1 bayt deb ataladi:
  • 1 bayt = 8 bit.

Agar biz har bir belgini ikkilik kodga aylantirsak, u holda bu kompyuter matn kodi 1 baytni oladi.

Matnli ma'lumotlar kompyuter xotirasida qanday ko'rinishi mumkin?

Har qanday matn klaviaturada, klaviatura tugmalarida yoziladi, biz o'zimizga tanish belgilarni (raqamlar, harflar va boshqalar) ko'ramiz. Ular kompyuterning operativ xotirasiga faqat ikkilik kod shaklida kiritiladi. Har bir belgining ikkilik kodi sakkiz xonali raqamga o'xshaydi, masalan, 00111111.

Bayt manzilli xotiraning eng kichik birligi bo'lib, xotira har bir belgi uchun alohida manzillanganligi sababli, bunday kodlashning qulayligi aniq. Biroq, 256 belgi har qanday belgi ma'lumotlari uchun juda qulay miqdordir.

Tabiiyki, savol tug'iladi: qaysi? sakkiz xonali kod har bir belgiga tegishlimi? Va matnni raqamli kodga qanday tarjima qilish kerak?

Bu jarayon shartli va biz har xil narsalarni o'ylab topishga haqlimiz belgilarni kodlash usullari. Alifboning har bir belgisi 0 dan 255 gacha bo'lgan o'z raqamiga ega. Va har bir raqamga 00000000 dan 11111111 gacha kod beriladi.

Kodlash jadvali "cheat varaq" bo'lib, unda alifbo belgilari seriya raqamiga muvofiq ko'rsatilgan. Uchun har xil turlari Kompyuterlar kodlash uchun turli jadvallardan foydalanadi.

ASCII (yoki Asci) bo'ldi xalqaro standart shaxsiy kompyuterlar uchun. Jadval ikki qismdan iborat.

Birinchi yarmi ASCII jadvali uchun. (Bu birinchi yarmi standartga aylandi.)

Leksikografik tartibga rioya qilish, ya'ni jadvalda harflar (kichik va katta harflar) qat'iy ravishda ko'rsatilgan. alifbo tartibida, va raqamlar ortib borayotgan tartibda, alifboni ketma-ket kodlash printsipi deb ataladi.

Rus alifbosi uchun ular ham kuzatadilar ketma-ket kodlash printsipi.

Hozir, bizning davrimizda, butun beshta kodlash tizimi Rus alifbosi (KOI8-R, Windows. MS-DOS, Macintosh va ISO). Kodlash tizimlarining soni va bitta standartning yo'qligi sababli, rus tilidagi matnni kompyuter shakliga o'tkazishda ko'pincha tushunmovchiliklar yuzaga keladi.

Birinchilardan biri rus alifbosini kodlash standartlari va shaxsiy kompyuterlarda ular KOI8 ("Axborot almashinuvi kodi, 8-bit") deb hisoblashadi. Ushbu kodlash 70-yillarning o'rtalarida bir qator ES kompyuterlarida ishlatilgan va saksoninchi yillarning o'rtalaridan boshlab rus tiliga tarjima qilingan birinchi UNIX operatsion tizimlarida qo'llanilgan.

90-yillarning boshidan boshlab, qachon deb ataladigan vaqt operatsion tizim MS DOS, CP866 kodlash tizimi paydo bo'ladi ("CP" "Kod sahifasi", "kod sahifasi" degan ma'noni anglatadi).

Kompyuter giganti APPLE, uning bilan innovatsion tizim, ular ostida ishlagan (Mac OS), MAC alifbosini kodlash uchun o'z tizimidan foydalanishni boshlaydi.

Xalqaro standartlar tashkiloti (ISO) rus tili uchun yana bir standartni tayinlaydi alifbo kodlash tizimi ISO 8859-5 deb ataladi.

Va eng keng tarqalgan, bugungi kunda, Microsoft Windows-da ixtiro qilingan va CP1251 deb nomlangan alifboni kodlash tizimi.

90-yillarning ikkinchi yarmidan boshlab rus tilidagi matnni raqamli kodga tarjima qilish standarti muammosi nafaqat Unicode deb nomlangan tizimni standartga kiritish orqali hal qilindi. U o'n olti bitli kodlash bilan ifodalanadi, ya'ni har bir belgi uchun aniq ikki bayt operativ xotira ajratilgan. Albatta, bu kodlash bilan xotira xarajatlari ikki barobar ortadi. Biroq, bunday kod tizimi 65536 tagacha belgini elektron kodga aylantirish imkonini beradi.

Standart Unicode tizimining o'ziga xosligi shundaki, u mavjud, yo'q bo'lib ketgan, ixtiro qilingan bo'lishidan qat'i nazar, har qanday alifboni kiritishdir. Oxir oqibat, mutlaqo har qanday alifbo, bunga qo'shimcha ravishda, Unicode tizimi juda ko'p matematik, kimyoviy, musiqiy va umumiy belgilarni o'z ichiga oladi.

Kompyuteringiz xotirasida so‘z qanday ko‘rinishini ko‘rish uchun ASCII jadvalidan foydalanamiz.

Ko'pincha rus alifbosidan harflar bilan yozilgan matnni o'qib bo'lmaydi, bu kompyuterlarda alifbo kodlash tizimlarining farqiga bog'liq. Bu juda tez-tez uchraydigan juda keng tarqalgan muammo.

ikkilik kod- bu ma'lumotlarning 1 yoki 0 2 ta belgidan iborat kombinatsiyasi, ular dasturlashda aytganidek, ha yoki yo'q, to'g'ri yoki noto'g'ri, rost yoki yolg'on. Oddiy odam uchun ma'lumotni qanday qilib nol va birlar ko'rinishida ifodalash mumkinligini tushunish qiyin. Bu holatga biroz oydinlik kiritishga harakat qilaman.

Aslida, ikkilik kod oson! Misol uchun, alifboning har qanday harfi nol va birliklar to'plami sifatida ifodalanishi mumkin. Masalan, xat H Lotin alifbosi ikkilik tizimda shunday ko'rinadi - 01001000, harf E– 01000101, olxa L quyidagi ikkilik ko'rinishga ega - 01001100, P – 01010000.

Endi nima yozishni taxmin qilish qiyin emas Inglizcha so'z Mashina tilida HELP uchun siz quyidagi ikkilik koddan foydalanishingiz kerak:

01001000 01000101 01001100 01010000

Bu bizning uy kompyuterimiz o'z ishi uchun foydalanadigan koddir. Oddiy odamga bunday kodni o'qish juda qiyin, lekin kompyuterlar uchun bu eng tushunarli.

Ikkilik kod (mashina kodi) Hozirgi vaqtda u dasturlashda qo'llaniladi, chunki kompyuter ikkilik kod tufayli aniq ishlaydi. Ammo dasturlash jarayoni birlar va nollar to'plamiga qisqartiriladi deb o'ylamang. Xususan, odam va kompyuter o'rtasidagi tushunishni soddalashtirish uchun dasturlash tillari (C++, BASIC va boshqalar) ixtiro qilingan. Dasturchi o'zi tushunadigan tilda dastur yozadi, so'ngra maxsus kompilyator dasturi yordamida o'z yaratganini kompyuterni ishga tushiradigan mashina kodiga o'tkazadi.

O'nlik sanoq sistemasining natural sonini ikkilik sanoq sistemasiga o'tkazamiz

Biz olamiz to'g'ri raqam, men uchun bu 5 bo'ladi, raqamni 2 ga bo'ling:
5: 2 = 2,5 qoldiq bor, shuning uchun ikkilik kodning birinchi raqami bo'ladi 1 (Agar yo "q bo" lsa - 0 ). Qolganini tashlang va raqamni yana bo'ling 2 :
2: 2 = 1 javob qoldiqsiz, ya'ni ikkilik kodning ikkinchi soni - 0 bo'ladi. Natijani yana 2 ga bo'ling:
1: 2 = 0.5 raqam qoldiq bilan chiqdi, keyin biz yozamiz 1 .
Xo'sh, natija bo'lgani uchun 0 endi bo'linib bo'lmaydi, ikkilik kod tayyor va natijada biz ikkilik kodning raqamini oldik 101 . O'ylaymanki, biz o'nlikdan ikkilik kasrga tarjima qilishni o'rgandik, endi esa aksincha qilishni o'rganamiz.

Sonni ikkilik sistemadan o‘nlik sistemaga o‘tkazish

Bu erda ham juda oddiy, keling, siz bilan ikkilik raqamimizni raqamlaymiz, siz noldan raqam oxiridan boshlashingiz kerak.

101 - 1^2 0^1 1^0.

Undan nima keldi? Biz darajalarni raqamlarga xiyonat qildik! Endi formula bo'yicha:

(x * 2^y) + (x * 2^y) + (x * 2^y)

qayerda x- ikkilik kodning tartib raqami
y- bu raqamning darajasi.
Formula sizning raqamingiz hajmiga qarab kengayadi.
Biz olamiz:

(1 * 2^2) + (0 * 2^1) + (1 * 2^0) = 4 + 0 + 1 = 5.

Ikkilik sanoq sistemasi tarixi

Birinchi marta ikkilik tizimni Leybits taklif qilgan, u bunga ishongan bu tizim qiyin yordam matematik hisoblar, va umuman, fanga foyda keltiradi. Ammo ba'zi ma'lumotlarga ko'ra, Leybits Xitoyda ikkilik sanoq tizimini taklif qilgunga qadar devorda ikkilik kod yordamida shifrlash mumkin bo'lgan yozuv paydo bo'lgan. Ushbu yozuvga uzun va qisqa tayoqchalar chizilgan va agar uzunini 1, qisqasini esa 0 deb hisoblasak, Xitoyda ikkilik kod g'oyasi uning ixtiro qilinishidan ko'p yillar oldin paydo bo'lgan bo'lishi mumkin. Devorda topilgan kodning dekodlanishi u erda oddiy natural sonni aniqlagan bo'lsa-da, haqiqat saqlanib qolmoqda.

Natija allaqachon olingan!

Sanoq tizimlari

Pozitsion va nopozitsion sanoq sistemalari mavjud. Arab tizimi Biz kundalik hayotda ishlatadigan hisob-kitoblar pozitsiondir, Rim hisobi esa emas. Pozitsion sanoq sistemalarida sonning joylashuvi sonning kattaligini yagona tarzda belgilaydi. Buni o'nlik sanoq sistemasidagi 6372 raqami misolida ko'rib chiqing. Keling, bu raqamni noldan boshlab o'ngdan chapga raqamlaymiz:

Keyin 6372 raqamini quyidagicha ifodalash mumkin:

6372=6000+300+70+2 =6 10 3 +3 10 2 +7 10 1 +2 10 0 .

10 raqami sanoq tizimini belgilaydi (bu holda u 10 ga teng). Berilgan raqamning pozitsiyasining qiymatlari daraja sifatida qabul qilinadi.

Haqiqiy o'nlik sonni ko'rib chiqing 1287.923. Biz uni raqamning nol holatidan boshlab kasrdan chapga va o'ngga raqamlaymiz:

Keyin 1287.923 raqamini quyidagicha ifodalash mumkin:

1287,923 =1000+200+80 +7+0,9+0,02+0,003 = 1 10 3 +2 10 2 +8 10 1 +7 10 0 +9 10 -1 +2 10 -2 +3 10 -3.

Umuman olganda, formulani quyidagicha ifodalash mumkin:

C n s n + C n-1 s n-1 +...+C 1 s 1 + C 0 s 0 + D -1 s -1 + D -2 s -2 + ... + D -k s -k

Bu erda C n - pozitsiyadagi butun son n, D -k - (-k) holatidagi kasr son, s- sanoq tizimi.

Sanoq sistemalari haqida bir necha so'z.O'nlik sanoq sistemasidagi son raqamlar to'plamidan (0,1,2,3,4,5,6,7,8,9), sakkizlik sanoq sistemasida esa quyidagilardan iborat. raqamlar to'plami (0,1, 2,3,4,5,6,7), ikkilik tizimda - raqamlar to'plamidan (0,1), o'n oltilik sanoq tizimida - raqamlar to'plamidan (0, 1,2,3,4,5,6, 7,8,9,A,B,C,D,E,F), bunda A,B,C,D,E,F 10,11 raqamlariga mos keladi, 12,13,14,15.1-jadvalda sonlar turli sanoq sistemalarida berilgan.

1-jadval
Belgilash
10 2 8 16
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

Raqamlarni bir sanoq sistemasidan ikkinchisiga o‘tkazish

Raqamlarni bir sanoq sistemasidan ikkinchi sanoq sistemasiga o‘tkazishning eng oson yo‘li birinchi navbatda sonni o‘nlik sanoq sistemasiga o‘tkazish, so‘ngra o‘nlik sanoq sistemasidan kerakli sanoq sistemasiga o‘tkazishdir.

Sonlarni istalgan sanoq sistemasidan o‘nlik sanoq sistemasiga o‘tkazish

Formuladan (1) foydalanib, raqamlarni istalgan sanoq sistemasidan o'nlik sanoq tizimiga o'tkazishingiz mumkin.

Misol 1. 1011101.001 sonini ikkilik sanoq sistemasidan (SS) o‘nlik SSga o‘tkazing. Qaror:

1 2 6 +0 2 5 + 1 2 4 + 1 2 3 + 1 2 2 + 0 2 1 + 1 2 0 + 0 2 -1 + 0 2 -2 + 1 2 -3 =64+16+8+4+1+1/8=93,125

Misol2. 1011101.001 raqamini sakkizlik sanoq sistemasidan (SS) o‘nlik SSga o‘tkazing. Qaror:

Misol 3 . AB572.CDF sonini o'n oltilik kasrdan o'nlik SSga aylantiring. Qaror:

Bu yerda A- 10 ga almashtirildi, B- 11 da, C- 12 da, F- 15 da.

Sonlarni o‘nlik sanoq sistemasidan boshqa sanoq sistemasiga o‘tkazish

Raqamlarni o‘nlik sanoq sistemasidan boshqa sanoq sistemasiga o‘tkazish uchun sonning butun qismini va sonning kasr qismini alohida tarjima qilish kerak.

Raqamning butun qismi o'nlik SSdan boshqa sanoq tizimiga - sonning butun qismini sanoq tizimining asosiga ketma-ket bo'lish orqali (ikkilik SS uchun - 2 ga, 8 xonali SS uchun - 8 ga) tarjima qilinadi. , 16-raqam uchun - 16 ga va boshqalar ) SS asosidan kamroq butun qoldiqni olish uchun.

Misol 4 . Keling, 159 raqamini o'nlik SSdan ikkilik SSga o'tkazamiz:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Shakldan ko'rinib turibdiki. 1, 159 soni, 2 ga bo'linganda, 79 bo'lakni beradi va qolgan 1. Bundan tashqari, 79 soni, 2 ga bo'linganda, 39 bo'linmasini, qolgan qismi esa 1 ni beradi va hokazo. Natijada, bo'linishning qolgan qismidan (o'ngdan chapga) raqam tuzib, biz ikkilik SSda raqamni olamiz: 10011111 . Shunday qilib, biz yozishimiz mumkin:

159 10 =10011111 2 .

Misol 5 . 615 sonini o'nlik SS dan sakkizlik SS ga aylantiramiz.

615 8
608 76 8
7 72 9 8
4 8 1
1

Raqamni o'nlik SS dan sakkiztalik SS ga o'tkazishda siz 8 dan kichik butun son qoldig'iga ega bo'lguningizcha, raqamni ketma-ket 8 ga bo'lishingiz kerak. Natijada, bo'linishning qolgan qismidan (o'ngdan chapga) raqam tuzamiz. sakkizlik SSda raqamni oling: 1147 (2-rasmga qarang). Shunday qilib, biz yozishimiz mumkin:

615 10 =1147 8 .

Misol 6 . 19673 sonini o‘nlik sanoq sistemasidan o‘n oltilik SS tizimiga o‘tkazamiz.

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

3-rasmdan ko'rinib turibdiki, 19673 sonini ketma-ket 16 ga bo'lish orqali biz 4, 12, 13, 9 qoldiqlarini oldik. O'n oltilik sanoq sistemasida 12 soni C ga, 13 soni - D ga to'g'ri keladi. bizning o'n oltilik raqamimiz 4 CD9.

To'g'ri o'nli kasrlarni (butun qismi nol bo'lgan haqiqiy sonni) s asosli sanoq tizimiga aylantirish uchun kasr qismi sof nolga teng bo'lgunga qadar bu sonni ketma-ket s ga ko'paytirish kerak yoki biz kerakli raqamlar sonini olamiz. Agar ko'paytirish natijasida butun qism noldan boshqa raqamga ega bo'lsa, unda bu butun qism hisobga olinmaydi (ular ketma-ket natijaga kiritiladi).

Keling, yuqoridagilarni misollar bilan ko'rib chiqaylik.

Misol 7 . 0,214 sonini o‘nlik sanoq sistemasidan ikkilik SSga o‘tkazamiz.

0.214
x 2
0 0.428
x 2
0 0.856
x 2
1 0.712
x 2
1 0.424
x 2
0 0.848
x 2
1 0.696
x 2
1 0.392

4-rasmdan ko'rinib turibdiki, 0,214 soni ketma-ket 2 ga ko'paytiriladi. Agar ko'paytirish natijasi noldan boshqa butun qismga ega bo'lgan son bo'lsa, u holda butun qism alohida yoziladi (sonning chap tomonida), son esa nol butun qism bilan yoziladi. Agar ko'paytirilganda nol butun qismga ega bo'lgan raqam olinsa, uning chap tomoniga nol yoziladi. Ko'paytirish jarayoni kasr qismida sof nol olinmaguncha yoki kerakli raqamlar soni olinmaguncha davom etadi. Qalin raqamlarni (4-rasm) yuqoridan pastgacha yozib, biz ikkilik tizimda kerakli sonni olamiz: 0. 0011011 .

Shunday qilib, biz yozishimiz mumkin:

0.214 10 =0.0011011 2 .

Misol 8 . 0,125 sonini o‘nlik sanoq sistemasidan ikkilik SS tizimiga o‘tkazamiz.

0.125
x 2
0 0.25
x 2
0 0.5
x 2
1 0.0

0,125 sonni o’nlik SSdan ikkilik sanoqli sistemaga o’tkazish uchun bu son ketma-ket 2 ga ko’paytiriladi.Uchinchi bosqichda 0 olindi.Shunday ekan, quyidagi natijaga erishildi:

0.125 10 =0.001 2 .

Misol 9 . 0,214 sonini o‘nlik sanoq sistemasidan o‘n oltilik SSga o‘tkazamiz.

0.214
x 16
3 0.424
x 16
6 0.784
x 16
12 0.544
x 16
8 0.704
x 16
11 0.264
x 16
4 0.224

4 va 5-misollardan so'ng biz 3, 6, 12, 8, 11, 4 raqamlarini olamiz. Lekin o'n oltilik SSda C va B raqamlari 12 va 11 raqamlariga to'g'ri keladi. Shuning uchun bizda:

0,214 10 =0,36C8B4 16.

Misol 10 . 0,512 sonini o‘nlik sanoq sistemasidan sakkizlik SS ga o‘tkazamiz.

0.512
x 8
4 0.096
x 8
0 0.768
x 8
6 0.144
x 8
1 0.152
x 8
1 0.216
x 8
1 0.728

Olingan:

0.512 10 =0.406111 8 .

Misol 11 . 159.125 sonini o‘nlik sanoq sistemasidan ikkilik SSga o‘tkazamiz. Buning uchun sonning butun qismini (4-misol) va sonning kasr qismini (8-misol) alohida tarjima qilamiz. Ushbu natijalarni birlashtirib, biz quyidagilarni olamiz:

159.125 10 =10011111.001 2 .

Misol 12 . 19673.214 sonini o‘nlik sanoq sistemasidan o‘n oltilik SS tizimiga o‘tkazamiz. Buning uchun sonning butun qismini (6-misol) va sonning kasr qismini (9-misol) alohida tarjima qilamiz. Keyinchalik bu natijalarni birlashtirib olamiz.

Xizmat topshirig'i. Xizmat raqamlarni bir sanoq tizimidan ikkinchisiga o'tkazish uchun mo'ljallangan onlayn rejimi. Buning uchun raqamni tarjima qilmoqchi bo'lgan tizimning bazasini tanlang. Butun va raqamlarni vergul bilan kiritishingiz mumkin.

Raqam

10 2 8 16 sanoq sistemasidan tarjima. 2 10 8 16 sanoq sistemasiga aylantiring.
Kasr sonlar uchun 2 3 4 5 6 7 8 kasrdan foydalaning.

Siz 34 kabi butun sonlarni yoki 637.333 kabi kasr sonlarni kiritishingiz mumkin. Kasr sonlar uchun kasrdan keyin tarjimaning aniqligi ko'rsatiladi.

Ushbu kalkulyatorda quyidagilar ham qo'llaniladi:

Raqamlarni ifodalash usullari

Ikkilik (ikkilik) raqamlar - har bir raqam bir bitning (0 yoki 1) qiymatini anglatadi, eng muhim bit har doim chap tomonda yoziladi, raqamdan keyin "b" harfi qo'yiladi. Idrok qilish qulayligi uchun daftarlarni bo'sh joylar bilan ajratish mumkin. Masalan, 1010 0101b.
O'n oltilik (on oltilik) raqamlar - har bir tetrad bitta belgi bilan ifodalanadi 0...9, A, B, ..., F. Bunday tasvirni turli yo'llar bilan belgilash mumkin, bu erda faqat oxirgidan keyin "h" belgisi qo'llaniladi. o'n oltilik raqam. Masalan, A5h. Dastur matnlarida bir xil raqam dasturlash tili sintaksisiga qarab ham 0xA5, ham 0A5h sifatida belgilanishi mumkin. Raqamlar va ramziy nomlarni farqlash uchun harf bilan ifodalangan eng muhim o'n oltilik raqamning chap tomoniga ahamiyatsiz nol (0) qo'shiladi.
O'nlik kasrlar (o'nlik) sonlar - har bir bayt (so'z, qo'sh so'z) oddiy son bilan ifodalanadi va o'nli ko'rinishning belgisi ("d" harfi) odatda tushiriladi. Oldingi misollardagi baytning o'nlik qiymati 165 ga teng. Ikkilik va o'n oltilik tizimlardan farqli o'laroq, o'nlik har bir bitning qiymatini aqliy ravishda aniqlash qiyin, ba'zan buni qilish kerak.
Sakkizlik (sakkizlik) sonlar - bitlarning har bir uchligi (ajralish eng muhimidan boshlanadi) 0-7 raqamlari sifatida yoziladi, oxirida "o" belgisi qo'yiladi. Xuddi shu raqam 245o sifatida yoziladi. Sakkizlik sistema noqulay, chunki baytni teng taqsimlab bo‘lmaydi.

Raqamlarni bir sanoq sistemasidan ikkinchisiga o'tkazish algoritmi

Butun o‘nli sonlarni istalgan boshqa sanoq sistemasiga o‘tkazish raqamni asosga bo‘lish yo‘li bilan amalga oshiriladi. yangi tizim Qolgan raqam yangi sanoq tizimining asosidan kichikroq bo'lib qolguncha raqamlash. Yangi raqam oxirgidan boshlab bo'linishning qolgan qismi sifatida yoziladi.
To'g'ri tarjima o'nlik kasr boshqa PSS ga barcha nollar kasr qismida qolguncha yoki ko‘rsatilgan tarjima aniqligiga erishilgunga qadar yangi sanoq tizimi asosida sonning faqat kasr qismini ko‘paytirish yo‘li bilan amalga oshiriladi. Har bir ko'paytirish amali natijasida yangi raqamning eng yuqorisidan boshlab bitta raqami hosil bo'ladi.
Noto'g'ri kasrni tarjima qilish 1 va 2-qoidalarga muvofiq amalga oshiriladi. Butun va kasr qismlar birgalikda yoziladi, vergul bilan ajratiladi.

№1 misol.



2 dan 8 gacha 16 sanoq sistemasiga tarjima.
Ushbu tizimlar ikkiga ko'paytiriladi, shuning uchun tarjima yozishmalar jadvali yordamida amalga oshiriladi (pastga qarang).

Raqamni ikkilik sanoq sistemasidan sakkizlik (oltilik) songa o‘tkazish uchun ikkilik sonni verguldan o‘ngga va chapga uchta (o‘n oltilik uchun to‘rt) raqamdan iborat guruhlarga bo‘lish, ekstremal guruhlarni nol bilan to‘ldirish kerak. agar kerak bo'lsa. Har bir guruh mos keladigan sakkizlik yoki o'n oltilik raqam bilan almashtiriladi.

№2 misol. 1010111010.1011 = 1.010.111.010.101.1 = 1272.51 8
bu yerda 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

O'n oltilik tizimga o'tkazishda siz bir xil qoidalarga rioya qilgan holda raqamni har biri to'rtta raqamdan iborat qismlarga bo'lishingiz kerak.
№3 misol. 1010111010.1011 = 10.1011.1010.1011 = 2B12.13 HEX
bu yerda 0010=2; 1011=B; 1010=12; 1011=13

2, 8 va 16 dan raqamlarni o'nlik kasr tizimiga o'tkazish raqamni alohida-alohidalarga ajratish va uni tartib raqamiga mos keladigan darajaga ko'tarilgan tizimning asosiga (raqam tarjima qilingan) ko'paytirish orqali amalga oshiriladi. tarjima qilingan raqamda. Bunda sonlar kasrning chap tomoniga (birinchi raqam 0 raqamiga ega) ortishi bilan, oʻng tomoniga esa kamayishi bilan (yaʼni manfiy belgi bilan) raqamlanadi. Olingan natijalar qo'shiladi.

4-misol.
Ikkilik sanoq sistemasidan o‘nlik sanoq sistemasiga o‘tkazishga misol.

1010010.101 2 = 1 2 6 +0 2 5 +1 2 4 +0 2 3 +0 2 2 +1 2 1 +0 2 0 + 1 2 -1 +0 2 - 2 +1 2 -3 =
= 64+0+16+0+0+2+0+0.5+0+0.125 = 82.625 10 Sakkizlikdan oʻnlik sanoq sistemasiga oʻtkazishga misol. 108,5 8 = 1* 8 2 +0 8 1 +8 8 0 + 5 8 -1 = 64+0+8+0,625 = 72,625 10 O‘n oltilik sanoq sistemasiga o‘tkazishga misol. 108,5 16 = 1 16 2 +0 16 1 +8 16 0 + 5 16 -1 = 256+0+8+0,3125 = 264,3125 10

Yana bir bor, biz raqamlarni bir sanoq tizimidan boshqa PSSga o'tkazish algoritmini takrorlaymiz

  1. O'nlik sanoq tizimidan:
    • sonni tarjima qilinayotgan sanoq tizimining asosiga bo‘lish;
    • sonning butun qismiga bo'lingandan keyin qoldiqni toping;
    • bo'linishning barcha qoldiqlarini teskari tartibda yozing;
  2. Ikkilik tizimdan
    • O'nlik sanoq sistemasiga o'tkazish uchun 2-bazaning ko'paytmalari yig'indisini mos ravishda tushirish darajasi bo'yicha topish kerak;
    • Raqamni sakkizlikka aylantirish uchun sonni triadalarga bo'lish kerak.
      Masalan, 1000110 = 1000 110 = 106 8
    • Raqamni ikkilikdan o'n oltilik tizimga o'tkazish uchun raqamni 4 ta raqamdan iborat guruhlarga bo'lish kerak.
      Masalan, 1000110 = 100 0110 = 46 16
Tizim pozitsion deb ataladi., buning uchun raqamning ahamiyati yoki vazni uning raqamdagi joylashuviga bog'liq. Tizimlar o'rtasidagi munosabatlar jadvalda ifodalangan.
Sanoq tizimlarining muvofiqlik jadvali:
Ikkilik SSO'n oltilik SS
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

Sakkizlik sanoq sistemasiga o'tkazish jadvali

Savollaringiz bormi?

Xato haqida xabar bering

Tahririyatimizga yuboriladigan matn: