Двійкова система числення - це позиційна система числення з основою 2. У цій системі числення, числа записуються за допомогою двох символів (0 і 1).
1. Історія
- В 1605 Френсіс Бекон описав систему, літери алфавіту якої можуть бути зведені до послідовностей двійкових цифр, які в свою чергу можуть бути закодовані як ледь помітні зміни шрифту в будь-яких випадкових текстах. Важливим кроком у становленні загальної теорії двійкового кодування є зауваження про те, що вказаний метод може бути використаний стосовно будь-яких об'єктів. [7] (Див. Шифр Бекона)
- Сучасна двійкова система була повністю описана Лейбніцем в XVII столітті в роботі Explication de l'Arithmtique Binaire [8]. В системі числення Лейбніца були використані цифри 0 і 1, як і в сучасній двійковій системі. Як людина, що захоплюється китайською культурою, Лейбніц знав про книзі Змін і зауважив, що гексаграми відповідають двійковим числах від 0 до 111 111. Він захоплювався тим, що це відображення є свідченням великих китайських досягнень у філософській математики того часу. [9]
- В 1937 Клод Шеннон предствить до захисту кандидатську дисертацію Символічний аналіз релейних і перемикальних схем в MIT, в якій булева алгебра і двійкова арифметика були використані стосовно до електронних реле і перемикачів. На дисертації Шеннона по суті заснована вся сучасна цифрова техніка.
- У листопаді 1937 Джордж Штібіц, згодом працював у Bell Labs, створив на базі реле комп'ютер "Model K" (від англ. "K itchen", кухня, де проводилася збірка), який виконував двійкове додавання. В кінці 1938 року Bell Labs розгорнула дослідницьку програму на чолі зі Штібіцом. Створений під його керівництвом комп'ютер, завершений 8 січня 1940, умів виконувати операції з комплексними числами. Під час демонстрації на конференції American Mathematical Society в Дармутском коледжі 11 вересня 1940 Штібіц продемонстрував можливість посилки команд віддаленого калькулятору комплексних чисел по телефонній лінії з використанням телетайпа. Це була перша спроба використання віддаленої обчислювальної машини за допомогою телефонної лінії. Серед учасників конференції, колишніх свідками демонстрації, були Джон фон Нейман, Джон мокли і Норберт Вінер, згодом писали про це у своїх мемуарах.
2. Запис двійкових чисел
Двійкова система числення є окремим випадком здвоєних двійкових показових позиційних систем числення з обома підставами (a і b) рівними 2. Цілі числа записуються у вигляді:

де:
- Репрезентована число,
- Запис числа, рядок цифр і знаків,
- Число цифр (знаків) в числі x 2,2,
- Порядковий номер цифри,
- Цифри числа x 2,2 з безлічі a = {0,1}, вагові коефіцієнти, у двійковій системі числення підставу внутріразрядной системи числення дорівнює 2,
- Підстава показовою вагової функції, підстава міжрозрядної системи числення.
Цілі числа є приватними сумами степеневого ряду :

в якому коефіцієнти a n беруться з кільця R = a {0,1}, X = 2, n = k, а верхня межа в приватних сумах обмежений з
до - n-1.
Підстава показовою функції - b визначає лише діапазон представляються числами x 2, b величин.
Число записуваних кодів від підстави показовою функції - b не залежить.
Число записуваних кодів залежить від основи внутріразрядной системи числення - a, визначається в комбінаториці і дорівнює числу розміщень з повтореннями :

де a = 2 - 2-х елементне безліч a = {0,1} з якого беруться цифри a k, n - число елементів (цифр) в числі x 2, b.
Дробові числа записуються у вигляді:

де:
- Число цифр дробової частини числа,
- Вагові коефіцієнти з безлічі
, Підстава внутріразрядной системи числення дорівнює 2,
- Підстава показовою вагової функції, підстава міжрозрядної системи числення.
Слід зазначити, що число може бути записано в двійковому вигляді, а система числення при цьому може бути не двійковій, з іншою підставою. Приклад: двійково-десяткове кодування, в якому десяткові цифри записуються у двійковому вигляді, а система числення - десяткова.
3. Додавання, віднімання і множення двійкових чисел
Таблиця складання
Приклад складання "стовпчиком" (14 + 5 = 19):
| | 1 | ↖ | | |
---|
+ | | 1 | 1 | 1 | 0 |
| | 1 | 0 | 1 |
|
| 1 | 0 | 0 | 1 | 1 |
Таблиця віднімання
Таблиця множення
Приклад множення "стовпчиком" (14 5 = 70):
| | | | 1 | 1 | 1 | 0 |
| | | | 1 | 0 | 1 |
|
+ | | | | 1 | 1 | 1 | 0 |
| 1 | 1 | 1 | 0 | | |
|
| 1 | 0 | 0 | 0 | 1 | 1 | 0 |
4. Перетворення чисел
Для перетворення з двійкової системи в десяткову використовують наступну таблицю ступенів підстави 2:
512 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Починаючи з цифри 1 всі цифри множаться на два. Точка, яка стоїть після 1, називається двійковій крапкою.
4.1. Перетворення двійкових чисел в десяткові
Припустимо, вам дано двійкове число 110001. Для перекладу на десяткове просто запишіть його справа наліво як суму за розрядами наступним чином:
. Можна записати це у вигляді таблиці наступним чином:
512 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| | | | 1 | 1 | 0 | 0 | 0 | 1 |
| | | | +32 | +16 | | | | +1 |
Точно так же, починаючи з двійковою точки, рухайтеся справа наліво. Під кожною двійковій одиницею напишіть її еквівалент в рядку нижче. Складіть отримані десяткові числа.
Таким чином, двійкове число 110001 рівнозначно десятковому 49.
4.2. Перетворення методом Горнера
Переклад цілих чисел методом Горнера Для того, щоб перетворювати числа з двійкової в десяткову систему даним методом, треба підсумувати цифри зліва направо, множачи раніше отриманий результат на основу системи (в даному випадку 2). Наприклад, бінарне число 1011011 переводиться в десяткову систему так: 0 * 2 + 1 = 1>> 1 * 2 + 0 = 2>> 2 * 2 + 1 = 5>> 5 * 2 + 1 = 11>> 11 * 2 + 0 = 22>> 22 * 2 + 1 = 45>> 45 * 2 + 1 = 91 Тобто в десятковій системі це число буде записано як 91. Або число 101111 переводиться в десяткову систему так: 0 * 2 + 1 = 1>> 1 * 2 + 0 = 2>> 2 * 2 + 1 = 5>> 5 * 2 + 1 = 11>> 11 * 2 + 1 = 23>> 23 * 2 + 1 = 47 Тобто в десятковій системі це число буде записано як 47. Переклад дробових чисел методом Горнера 1) 0,1101 2 = 0, X 10 (розглядаємо цифри в зворотному порядку)
1:2 = 0,5
0,5 +0 = 0,5
0,5:2 = 0,25
0,25 +1 = 1,25
1,25:2 = 0,625
0,625 +1 = 1,625
1,625:2 = 0,8125
Відповідь: 0,1101 2 = 0,8125 10
2) 0,356 8 = 0, X 10 (розглядаємо цифри в зворотному порядку)
6:8 = 0,75
0,75 +5 = 5,75
5,75:8 = 0,371875
0,371875 +3 = 3,371875
3,371875:8 = 0,46484375
Відповідь: 0,356 8 = 0,46484375 10
3) 0, A6E 16 = 0, X 10 (розглядаємо цифри в зворотному порядку)
14:16 = 0,875
0,875 +6 = 6,875
6,875:16 = 0,4296875
0,4296875 +10 = 10,4296875
10,4296875:16 = 0,65185546875
Відповідь: 0, A6E 16 = 0,65185546875 10
4.3. Перетворення десяткових чисел у двійкові
Припустимо, нам потрібно перевести число 19 в двійкове. Ви можете скористатися такою процедурою:
19 / 2 = 9 із залишку 1 9 / 2 = 4 c залишком 1 4 / 2 = 2 без залишку 0 2 / 2 = 1 без залишку 0 1 / 2 = 0 з залишку 1
Отже, ми ділимо кожне приватне на 2 і записуємо залишок у кінець двійковій запису. Продовжуємо поділ до тих пір, поки в приватному не буде 0. Результат записуємо справа наліво. Тобто нижнє число буде самим лівим і.т.д. В результаті отримуємо число 19 в двійковій запису: 10011.
4.4. Перетворення дрібних двійкових чисел в десяткові
Потрібно перевести число 1011010.101 в десяткову систему. Запишемо це число наступним чином:

4.5. Перетворення дрібних десяткових чисел у двійкові
Переклад дробового числа з десяткової системи числення в двійкову здійснюється за наступним алгоритмом:
- Спочатку перекладається ціла частина десяткового дробу в двійкову систему числення;
- Потім дробова частина десяткового дробу множиться на основу двійкової системи числення;
- В отриманому творі виділяється ціла частина, яка приймається як значення першого після коми розряду числа в двійковій системі числення;
- Алгоритм завершується, якщо дробова частина отриманого твори дорівнює нулю або якщо досягнута необхідна точність обчислень. В іншому випадку обчислення тривають з попереднього кроку.
Приклад: Потрібен перевести дробове десяткове число 206,116 в дробове двійкове число.
Переклад цілої частини дає 206 10 = 11001110 2 по раніше описаним алгоритмам; дробову частину множимо на підставу 2, заносячи цілі частини твору в розряди після коми шуканого дробового двійкового числа:
.116 2 = 0.232
.232 2 = 0.464
.464 2 = 0.928
.928 2 = 1856
.856 2 = 1.712
.712 2 = 1.424
.424 2 = 0.848
.848 2 = 1.696
.696 2 = 1.392
.392 2 = 0.784
і т. д.
Отримаємо: 206,116 10 = 11001110,0001110110 2
5. Застосування
5.1. У цифрових пристроях
Двійкова система використовується в цифрових пристроях, оскільки є найбільш простий і відповідає вимогам:
- Чим менше значень існує в системі, тим простіше виготовити окремі елементи, які оперують цими значеннями. Зокрема, дві цифри двійкової системи числення можуть бути легко представлені багатьма фізичними явищами: є струм (струм більше порогової величини) - немає струму (струм менше порогової величини), індукція магнітного поля більше порогової величини чи ні (індукція магнітного поля менше порогової величини) і т. д.
- Чим менше кількість станів у елемента, тим вище перешкодостійкість і тим швидше він може працювати. Наприклад, щоб закодувати три стани через величину напруги, струму або індукції магнітного поля, потрібно ввести два граничних значення і два компаратора, що не сприятиме завадостійкості та надійності зберігання інформації.
- Двійкова арифметика є досить простою. Простими є таблиці додавання і множення - основних дій над числами.
У цифровій електроніці одному двійковому розряду в двійковій системі числення відповідає (очевидно) один двійковий розряд двійкового регістра, тобто двійковий тригер з двома станами (0,1).
5.2. В англійській системі мір
При вказівці лінійних розмірів у дюймах за традицією використовують двійкові дроби, а не десяткові, наприклад: 5 ", 7 15 / 16", 3 11 / 32 "і т. д.
6. Приклади чисел-ступенів двійки
Ступінь | Значення |
---|
1 | 2 |
2 | 4 |
3 | 8 |
4 | 16 |
5 | 32 |
6 | 64 |
7 | 128 |
8 | 256 |
9 | 512 |
10 | 1024 |
11 | 2048 |
12 | 4096 |
13 | 8192 |
14 | 16384 |
15 | 32768 |
16 | 65536 |
17 | 131072 |
18 | 262144 |
19 | 524288 |
20 | 1048576 |
21 | 2097152 |
22 | 4194304 |
23 | 8388608 |
24 | 16777216 |
25 | 33554432 |
26 | 67108864 |
27 | 134217728 |
28 | 268435456 |
29 | 536870912 |
30 | 1073741824 |
31 | 2147483648 |
32 | 4294967296 |
33 | 8589934592 |
34 | 17179869184 |
35 | 34359738368 |
36 | 68719476736 |
37 | 137438953472 |
38 | 274877906944 |
39 | 549755813888 |
40 | 1099511627776 |
41 | 2199023255552 |
42 | 4398046511104 |
43 | 8796093022208 |
44 | 17592186044416 |
45 | 35184372088832 |
46 | 70368744177664 |
47 | 140737488355328 |
48 | 281474976710656 |
49 | 562949953421312 |
50 | 1125899906842624 |
Примітки
- Sanchez, Julio & Canton, Maria P. (2007), Microcontroller programming: the microchip PIC, Boca Raton, Florida: CRC Press, p. 37, ISBN 0-8493-7189-9
- WS Anglin and J. Lambek, The Heritage of Thales, Springer, 1995, ISBN 0-387-94544-X
- Ordish George, Hyams, Edward. The last of the Incas: the rise and fall of an American empire - New York: Barnes & Noble, 1996. - С. 80. - ISBN 0-88029-595-3.
- Experts 'decipher' Inca strings - news.bbc.co.uk/2/hi/americas/4143968.stm. архіві - www.webcitation.org/611umbKKZ з першоджерела 18 серпня 2011.
- Carlos Radicati di Primeglio, Gary Urton Estudios sobre Los quipus - books.google.com / books? id = TmbajGgliYYC & printsec = frontcover. - P. 49.
- Dale Buckmaster (1974). " The Incan Quipu and the Jacobsen Hypothesis - www.jstor.org/stable/2490534 ". Journal of Accounting Research 12 (1): 178-181. Перевірено 2009-12-24.
- Bacon, Francis, The Advancement of Learning - home.hiwaay.net / ~ paul/bacon/advancement/book6ch1.html, vol. 6, London, pp. Chapter 1 , < http://home.hiwaay.net/ ~ paul/bacon/advancement/book6ch1.html - home.hiwaay.net / ~ paul/bacon/advancement/book6ch1.html>
- http://www.leibniz-translations.com/binary.htm - www.leibniz-translations.com/binary.htm Leibniz Translation.com EXPLANATION OF BINARY ARITHMETIC
- Aiton, Eric J. (1985), Leibniz: A Biography, Taylor & Francis, pp. 245-8, ISBN 0-85274-470-6