Миналия път се запознахме с двоичните числа, които са съставени само
от две цифри – нула и едно. Научихме, че първите няколко числа са 1, 10,
11, 100, 101 и т.н. Лесно ги съставихме – просто в двоичната система
няма цифрите 2, 3, и останалите цифри до девет. Отбелязахме, че ще видим
как двоични числе се превръщат в десетични и обратно. Сега точно с това
ще се занимаем, но нека започнем с познатите ни десетични числа.
Когато запишем, например, числото 265 имаме предвид, че сме сумирали две
стотици, шест десетици и пет единици, т.е. 265 е съставено по следния
начин (с x означаваме операцията умножение):
265 = 2 x 100 + 6 x 10 + 5 x 1
Всъщност 100 е равно на 102, 10 е равно на 101, а 1 ... на 100. (Да –
всяко положително число, повдигнато на нулева степен дава единица!)
Затова горното представяне на числото 265 може да се запише така:
265 = 2 x 102 + 6 x 101 + 5 x 100
И в това няма нищо чудно! Нали говорихме за десетичната система?! Всяко
едно число е сума от съответните степени на 10 умножени по цифрите в
него. И тези степени започват от нула (и са нула за единиците) и
нарастват с едно наляво – 0, 1, 2 и т.н.
Както се досещате числото 1,048,576 се записва по следния начин (със
запетайка са разделени всеки три цифри за по-добра четимост на числото –
иначе десетичната точка ще я означаваме така, както американците я
означават – с точка “.”, а не със запетайка “,”):
1,048,576 = 1 x 106 + 0 x 105 + 4 x 104 + 8 x 103 + 5 x 102 + 7 x 101 + 6 x 100
По същата логика двоичната система има за основа числото 2, както
десетичната има за основа 10. Следователно двоичните числа означават
аналогични суми, но на степените на числото 2.
1 = 1 x 20 = 1 x 1 = 1
10 = 1 x 21 + 0 x 20 = 1 x 2 + 0 x 1 = 2 + 0 = 2
11 = 1 x 21 + 1 x 20 = 1 x 2 + 1 x 1 = 2 + 1 = 3
и т.н.
101 = 1 x 22 + 1 x 21 + 1 x 20 = 1 x 4 + 0 x 2 + 1 x 1 = 4 + 0 + 1 = 5
Може би си спомняте една таблица от миналата лекция за съответствието
между двоични и десетични числа – сега ще я запишем по-подробно:
Десетично число |
Двоично число |
сума |
1 |
1 |
1 x 20 |
2 |
10 |
1x21 + 0x20 |
3 |
11 |
1x21 + 1x20 |
4 |
100 |
1x22 + 0x21 + 0x20 |
5 |
101 |
1x22 + 0x21 + 1x20 |
6 |
110 |
1x22 + 1x21 + 0x20 |
7 |
111 |
1x22 + 1x21 + 1x20 |
8 |
1000 |
1x23 + 0x22 + 0x21 + 0x20 |
9 |
1001 |
1x23 + 0x22 + 0x21 + 1x20 |
10 |
1010 |
1x23 + 0x22 + 1x21 + 0x20 |
Малко по-сложно е от десетична система да се премине в двоична
система. Очевидно, първо трябва да намерим най-високата степен, с която
като повдигнем на число 2 получаваме число, което не надминава
десетичното число. За десетичното 10 тази степен е 3, т.е 23 = 8, което е
по-малко от 10, докато 24 = 16, което е по-голямо от 10 (десетичното
десет). Следващата стъпка е да извадим това число от десетичното число –
за този пример получаваме 10 – 8 = 2. Е, получихме 2, което е 21, т.е.
10 = 23 + 21 = 8 + 2. А по логиката, дадена по-горе това е числото
10 = 1 x 23 + 0 x 22 + 1 x 21 + 0 x 20 = 8 + 0 + 2 + 0
т.е. това е двоичното число 1010 (сравнете този запис с тези от таблица по-горе!)
Нека потренираме този алгоритъм с едно по-голямо число – 233. Почваме със степените на двойката
20 = 1, 21 = 2, 22 = 4, и т.н. 27 = 128, 28 = 256. Последното число,
256, е по-голямо от 233, значи ще работим с 27 = 128. Изваждаме 128 от
числото, което ще превръщаме и получаваме
233 – 128 = 105
Същото повтаряме за полученото число: 26 = 64 < 105 и като ги извадим ще получим
105 – 64 = 41
За 41 получаваме аналогично 25 = 32 < 41
41 – 32 = 9
За 9 пък имаме 23 = 8 < 9, т.е изваждаме 9 – 8 = 1, което e 1 = 20.
Забелязахте ли, че постоянно изваждахме степени на двойката от числото
докато получим единица или нула (както бе в примера за десетичното 10)?
Кои степени на двойката изваждахме докато получим 1? Извадихме 27, 26,
25, 23, и 20. А това означава, че нашето десетично число се състои от
тези умалители (които изваждахме от него за да получим нула), т.е.
233 = 27 + 26 + 25 + 23 + 20 = 1x27 + 1x26 + 1x25 + 0x24 + 1x23 + 0x22 + 0x21 + 1x20
или
233 = 11101001
или за да стане това разлагане по-ясно, то е показано по-долу на картинката
На практика това превръщане може да се направи с калкулатора на Windows.
Стартираме калкулатора и написваме десетичното число като внимаваме
радиобутона Dec да е включен.
След което натискаме радиобутона Bin и получаваме 11101001.