Перейти до вмісту

Двійкова система числення

Матеріал з Вікіпедії — вільної енциклопедії.

Двійкова система числення — це позиційна система числення,[1] основа якої дорівнює двом. Для запису чисел у ній використовують два символи: зазвичай 0 (нуль) та 1 (одиниця).[1] Числа, подані в цій системі, називають двійковими[1] або бінарними[2] числами.

Для запису числа у двійковій системі числення його подають як суму послідовних степенів числа 2 з коефіцієнтами 0 або 1:

[3]

Завдяки простоті реалізації в електричних схемах, двійкова система числення набула поширення в обчислювальних пристроях.[4]

Представлення

[ред. | ред. код]

Двійкова система числення є позиційною системою числення,[1] основа якої дорівнює двом. Завдяки тому, що таку систему доволі просто використовувати у електричних схемах, вона набула поширення в обчислювальних пристроях.[4]

Двійкове число можна подати як послідовність будь-яких об'єктів, які можуть перебувати в одному з двох можливих станів. Наприклад:

  • числа, що можуть набувати значень 0 або 1: 1010011;
  • позиції, на яких можуть стояти хрестики або нулики: хохоохх;
  • вузли електричної схеми, через які може проходити або ні струм;
  • ділянки магнітної стрічки, які можуть бути чи не бути намагніченими.[5]

Зазвичай двійкові числа записують за допомогою нулів та одиниць. Перші комп'ютери відображали числа рядом електричних лампочок (кожна з яких могла світитися або бути вимкненою).[5]

Переваги
  • наявність мікроелектронних схем з двома стійкими станами;[6]
  • подання інформації за допомогою тільки двох станів надійне і завадостійке;
  • для виконання логічних перетворень інформації можна застосувати апарат булевої алгебри;[7]
  • простота виконання арифметичних операцій.[6]
Недолік
  • швидке зростання кількості розрядів, необхідних для запису чисел.

Лічба у двійковій системі

[ред. | ред. код]

Рахувати у двійковій системі не складніше, ніж у будь-якій іншій.[джерело?] Скажімо, у десятковій системі, коли число в поточному розряді сягає десяти, то розряд обнуляється і одиниця додається до старшого. Наприклад: 9 + 1 = 10, 44 + 7 = 51; Аналогічно у двійковій системі: коли число в розряді сягає двох — розряд обнуляється і одиниця додається до старшого розряду. Тобто: 1 + 1 = 10. Зверніть увагу, «10» у цьому записі — двійкове число, у десятковій системі це число записується як «2». А десяткове 9 + 1 = 10 у двійковій системі буде виглядати так: 1001 + 1 = 1010 (після додавання одиниці число в останньому розряді дорівнює двом, тож розряд обнуляється і одиниця додається до передостаннього (старшого) розряду).[джерело?]

Таблиця додавання

[ред. | ред. код]
+ 0 1
0 0 1
1 1 10 (перенесення у старший розряд)

Приклад додавання «стовпчиком» (1410 + 510 = 1910 або 11102 + 1012 = 100112):

+ 1 1 1 0
1 0 1
1 0 0 1 1

Таблиця віднімання

[ред. | ред. код]
- 0 1
0 0 1
1 1 (позика зі старшого розряду) 0

Таблиця множення

[ред. | ред. код]
× 0 1
0 0 0
1 0 1

Приклад множення «стовпчиком» (1410 · 510 = 7010 або 11102 · 1012 = 10001102):

× 1 1 1 0
1 0 1
+ 1 1 1 0
1 1 1 0
1 0 0 0 1 1 0

Приклади

[ред. | ред. код]

Приклад 1. Обчислити кількість інформації в слові «Інформатика» за умови, що для кодування використовується абетка з 32 символів.

Розв'язок. Обчислимо кількість інформації, що відповідає 1 символу при використанні 32-значного алфавіту : 32 = 2х, х = 5 біт. Слово «Інформатика» складається з 11 символів, отримуємо 11· 5 = 55 (біт).

Приклад 2. Растровий графічний файл містить чорно-біле зображення з 2 градаціями кольору (чорний і білий) розміром 800×600 точок. Визначте необхідний розмір цього файлу у байтах для кодування кольору точок (без урахування службової інформації про формат, авторство, способи стиснення тощо).[джерело?]

Розв'язок. Оскільки сказано, що зображення двоколірне, отже, для вказівки кольору однієї точки досить двох значень, що кодують білий або чорний колір. Два значення можуть бути закодовані одним бітом. Обсяг графічного файлу розраховується за формулою V=ik, де i — глибина кольору, k — кількість точок.

Тоді розмір графічного файлу дорівнює 800·600·1 біт = 480 000 бітів, враховуючи, що 8 бітів = 1 байт отримуємо 480 000 / 8 = 60 000 байтів. Насправді в графічних документах окрім опису кольорів точок міститься ще і службова інформація (про формат запису, авторські права, способи стиснення).[джерело?]

Перетворення між двійковою та іншими системами числення

[ред. | ред. код]

Десяткова система числення

[ред. | ред. код]

Для перетворення з двійкової системи в десяткову використовують таку таблицю степенів основи 2:

1024 512 256 128 64 32 16 8 4 2 1

Перетворення двійкових чисел у десяткові

[ред. | ред. код]

Нехай дано двійкове число 1100012. Для перетворення в десяткове запишемо його як суму степенів 2 за розрядами:

1 · 25 + 1 * 24 + 0 · 23 + 0 · 22 + 0 · 21 + 1 · 20 = 49

Або:

1 · 32 + 1 · 16 + 0 · 8 + 0 · 4 + 0 · 2 + 1 · 1 = 49

Також це можна записати у вигляді таблиці:

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Рухаючись справа наліво, під кожною двійковою одиницею напишемо її десятковий еквівалент, післа чого додамо отримані десяткові числа. Отже, двійкове число 1100012 рівнозначне десятковому 4910.

Перетворення дробових двійкових чисел у десяткові

[ред. | ред. код]

Переведемо число 1011010,1012 у десяткову систему. Запишемо число так:

1 · 26 + 0 · 25 + 1 · 24 + 1 · 23 + 0 · 22 + 1 · 21 + 0 · 20 + 1 · 2-1 + 0 · 2-2 + 1 · 2-3 = 90,625

Або:

1 · 64 + 0 · 32 + 1 · 16 + 1 · 8 + 0 · 4 + 1 · 2 + 0 · 1 + 1 · 0,5 + 0 · 0,25 + 1 · 0,125 = 90,625

Або за допомогою таблиці:

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Перетворення методом Горнера

[ред. | ред. код]
Докладніше: Схема Горнера

Для того, щоб перетворювати числа з двійкової в десяткову систему методом Горнера, треба підсумувати цифри зліва направо, множачи раніше отриманий результат на основу системи (в даному випадку 2). Методом Горнера зазвичай переводять числа з двійкової в десяткову систему числення. Зворотна операція складна, оскільки вимагає навичок додавання і множення в двійковій системі числення. Наприклад, двійкове число 10110112 переводиться в десяткову систему так:

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.

Перетворнення десяткових чисел у двійкові

[ред. | ред. код]

Припустимо, нам потрібно перетворити число 21 у двійкове. Скористаємося такою процедурою:

19 : 2 = 10 з остачею 1,

9 : 2 = 5 без остачі 1,

4 : 2 = 2 з остачею 0,

2 : 2 = 1 без остачі 0,

1 : 2 = 0 з остачею 1.

Отже, ми ділимо кожну частку на 2 і записуємо остачу. Продовжуємо ділення, поки частка стане рівною 0. Результат записуємо справа наліво. Тобто остання остача (1) буде найлівішою у двійковому записі результату і т. д. Отже, число 19 у двійковому записі: 10011.[джерело?]

Перетворення дробових десяткових чисел у двійкові

[ред. | ред. код]

Якщо у початковому числі є ціла частина, то її перетворюємо окремо від дробової. Переведення дробового числа з десяткової системи числення у двійкову здійснюємо за таким алгоритмом:

  • Дріб множимо на основу двійкової системи числення (2);
  • В отриманому добутку виділяємо цілу частину, яку приймаємо за старший розряд числа в двійковій системі числення;
  • Алгоритм завершуємо, якщо дробова частина отриманого добутку дорівнює нулю або якщо досягнуто необхідної точності обчислень. В іншому випадку обчислення тривають над дробовою частиною добутку.[джерело?]

Приклад: Переведемо десяткове дробове число 206,116 у дробове двійкове число.

Перетворення цілої частини дає 20610=110011102 за раніше описаним алгоритмом. Дробову частину 0,116 множимо на основу 2, заносячи цілі частини добутку в розряди дробової частини шуканого дробового двійкового числа:

0,116 • 2 = 0,232

0,232 • 2 = 0,464

0,464 • 2 = 0,928

0,928 • 2 = 1,856

0,856 • 2 = 1,712

0,712 • 2 = 1,424

0,424 • 2 = 0,848

0,848 • 2 = 1,696

0,696 • 2 = 1,392

0,392 • 2 = 0,784

і т. д.

Отже, 0,11610 ≈ 0,00011101102

Маємо: 206,11610 ≈ 11001110,0001110110

Шістнадцяткова система числення

[ред. | ред. код]
016=010=08 0000
116=110=180001
216=210=280010
316=310=380011
416=410=480100
516=510=580101
616=610=680110
716=710=780111
816=810=1081000
916=910=1181001
A16=1010=1281010
B16=1110=1381011
C16=1210=1481100
D16=1310=1581101
E16=1410=1681110
F16=1510=1781111

Двійкове число легко перетворити в шістнадцяткову систему числення і навпаки. Це пояснюється тим, що основа шістнадцяткової системи числення (16) є степенем основи двійкової системи (2). Точніше, 16 = 2⁴, тому для подання однієї цифри шістнадцяткової системи числення потрібно чотири цифри двійкової системи, як показано в таблиці.

Щоб перетворити шістнадцяткове число в його двійковий еквівалент, слід просто підставити відповідні двійкові цифри:

3A16 = 0011 10102
E716 = 1110 01112

Щоб перетворити двійкове число на його шістнадцятковий еквівалент, слід розділити його на групи з чотирьох бітів. Якщо кількість бітів не кратна чотирьом, ліворуч слід додати потрібну кількість бітів 0 (так зване доповнення[en]). Наприклад:

10100102 = 0101 0010 згруповано з доповненням = 5216
110111012 = 1101 1101 згруповано = DD16

Вісімкова система числення

[ред. | ред. код]

Число з двійкової системи числення також легко перетворити у вісімкову, оскільки вісімкова використовує основу 8, яка є степенем двійки (а саме 23, тому для подання вісімкової цифри потрібно рівно три двійкові цифри). Відповідність між вісімковими та двійковими числами така ж, як і для перших восьми цифр шістнадцяткової системи у таблиці вище. Двійкове 000 еквівалентне вісімковій цифрі 0, двійкове 111 еквівалентне вісімковій 7 тощо.

Вісімкове Двійкове
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

Перетворення з вісімкової системи числення у двійкову відбувається так само, як і для шістнадцяткової системи числення:

658 = 110 1012
178 = 001 1112

А з двійкової системи числення у вісімкову:

1011002 = 101 1002 згруповано = 548
100112 = 010 0112 згруповано з доповненням = 238

Використання

[ред. | ред. код]

У цифрових пристроях

[ред. | ред. код]

Двійкова система використовується в цифрових пристроях, оскільки відповідає таким вимогам:[джерело?]

  • Що менше значень існує в системі, то простіше виготовити окремі елементи, які оперують цими значеннями. Зокрема, дві цифри двійкової системи числення можна легко подати багатьма фізичними явищами: наявний струм (струм більший від порогової величини) — відсутній струм (струм менший від порогової величини), індукція магнітного поля більша від порогової величини чи ні тощо.
    Двійковий лічильник з генератором імпульсів на мікросхемах К131ЛА3 та К155ИЕ5. Світлодіоди виводять цифри від нуля до 9 в двійковій системі по колу.
  • Що меншу кількість станів має елемент, то вища його надійність і швидше може працювати пристрій. Наприклад, щоб закодувати три стани через величину напруги, струму або індукції магнітного поля, потрібно ввести два граничних значення і два компаратори.
  • Двійкова арифметика є досить простою. Зокрема, простими є таблиці додавання і множення — основних дій над числами.

У цифровій електроніці одному двійковому розряду в двійковій системі числення відповідає (очевидно) один двійковий розряд двійкового регістра, тобто двійковий тригер з двома станами (0, 1).[джерело?]

У обчислювальній техніці широко використовується запис від'ємних двійкових чисел у доповняльному коді. Наприклад, число −510 можна записати як −1012 але в 32-бітовому комп'ютері воно зберігатиметься як 111111111111111111111111111110112.[джерело?]

В англійській системі числення

[ред. | ред. код]

При вказівці лінійних розмірів у дюймах за традицією використовують двійкові дроби, а не десяткові, наприклад: 5¾″, 715/16″, 311/32″ тощо.[8]

Використання різних кодувань

[ред. | ред. код]

У кодуванні ASCII на кожен символ відводиться 7 біт.[9] У розширеному ASC II — 8 біт.[10]

У кодуванні Unicode на кожен символ відводиться від 8 до 32 біт (від 1 до 4 байтів).

Приклад 1. Повідомлення містить 4096 символів. Розмір повідомлення при використанні рівномірного коду склав 1/512 Мбайт. Знайти потужність алфавіту, за допомогою якого записано це повідомлення.

Розв'язання. Потужність алфавіту — кількість символів в алфавіті. Переведемо інформаційний розмір повідомлення у біти.

Для кодування одного символу відводиться

Тоді потужність алфавіту за формулою Р. Хартлі рівна N = 2i= 24= 16.[джерело?]

Приклад 2. Скільки секунд буде потрібно модему, що передає повідомлення із швидкістю 28 800 біт/с для передачі 100 сторінок тексту в 30 рядків по 60 символів кожна в розширеному кодуванні ASCII.

Розв'язання. У розширеному кодуванні ASCII кожен символ займає 8 біт або 1 байт.

Тоді обсяг тексту дорівнює 100 · 30 · 60 · 8 = 1 440 000 біт.

Для його передачі по модему знадобиться 1 440 000/28 800 = 50 секунд[джерело?]

Подання кількості інформації через різні одиниці вимірювання

[ред. | ред. код]

1 біт — мінімальна неподільна одиниця інформації.[джерело?]

8 біт складають 1 байт, отже, 1 байт = 8 біт

1 Кбайт = 1024 = 210 байт

1 Мбайт = 1024 = 210 Кбайт = 220 байт

1 Гбайт = 1024 = 210 Мбайт = 220 Кбайт = 230 байт

1 Пбайт = 1024 = 210 Гбайт = 220 Мбайт = 230 Кбайт = 240 байт

Приклад 1. Перевести 376832 біт в Кбайт.

Рішення 376832 біт = 376832 / 8 = 47104 байт = 47104 / 1024 = 46 Кбайт

Приклад 2. Перевести 37 Кбайт 515 Байт 3 біт у біт.

Рішення 37 Кбайт 515 байт 3 біт = 37 · 1024 + 515 байт 3 біт = 38403 байт 3 біт = 38403 · 8 +3 = 307227 біт.

Узагальнення

[ред. | ред. код]

Двійкова система числення є комбінацією двійкової системи кодування і показникової вагової функції з основою рівною 2. Слід зазначити, що число може бути записано в двійковому коді, а система числення при цьому може бути не двійковою, а мати іншу основу. Приклад: двійково-десяткове кодування, в якому десяткові цифри записуються в двійковому вигляді, а система числення — десяткова.

Історія

[ред. | ред. код]

Сучасну двійкову систему числення вперше вивчав у Європі в XVI та XVII століттях Томас Герріот, а десятиліття потому Готфрід Лейбніц, якому приписують її винайдення.[11] Однак системи, пов'язані з двійковими числами, з'явилися раніше в багатьох культурах, як-от у Стародавньому Єгипті, Китаї, Європі та Індії, наприклад, у зв'язку з ворожінням за допомогою двійкових жеребів[en].[12]

Єгипет

[ред. | ред. код]
Арифметичні значення, які, як вважають, представлено частинами ока Гора

Писарі Стародавнього Єгипту використовували для дробів дві різні системи: єгипетські дроби (не пов'язані з двійковою системою числення) та дроби «око Гора» (названі так, тому що деякі історики математики вважали, що символи, використовувані в цій системі, можна розташувати так, щоб утворити око Гора).[13] Дроби «око Гора» — це двійкова система числення для дробових кількостей зерна, рідин або інших вимірювань, у якій частку геката[en] виражають як суму двійкових дробів 1⁄2, 1⁄4, 1⁄8, 1⁄16, 1⁄32, та 1⁄64. Ранні форми цієї системи можна знайти в документах часів п'ятої династії Єгипту, близько 2400 року до н. е., а її повністю розвинену ієрогліфічну форму датують дев'ятнадцятою династією Єгипту, близькоо 1200 року до н. е.[14]

Метод, який у Стародавньому Єгипті використовували для множення, також пов'язаний із двійковими числами. У ньому множення одного числа на друге виконується послідовністю кроків, у яких значення (спочатку перше з двох чисел) або подвоюється, або до нього додається перше число; порядок, у якому слід виконувати ці кроки, задає двійкове подання другого числа. Цей метод наведено, наприклад, у математичному папірусі Райнда, який датують приблизно 1650 роком до н. е.[15]

Китай

[ред. | ред. код]
Даоський баґуа

Китайську Книгу змін датують IX століттям до н. е.[16] В ній двійкову систему числення використано для інтерпретації четвертинної техніки ворожіння[en].[17]

Вона ґрунтується на даоській двоїстості інь та ян.[18] Вісім триграм (баґуа) та набір із 64 гексаграм, аналогічні трибітовим та шестибітовим двійковим числам, використовували в стародавньому Китаї щонайменше ще за часів династії Чжоу.[16]

Вчений династії Сун Шао Юн (1011—1077) переставив гексаграми у форматі, що нагадує сучасні двійкові числа, хоча він не мав наміру використовувати цю схему математично.[17] Якщо в квадраті Шао Юна вважати верхню лінію кожної гексаграми наймолодшим бітом,[19] то гексаграми можна інтерпретувати як послідовність чисел від 0 до 63. Для цього їх потрібно читати рядками або справа наліво знизу вгору, приймаючи суцільні лінії за 0, а перервані — за 1, або, навпаки, зліва направо зверху вниз, приймаючи суцільні лінії за 1, а перервані — за 0.[20]

Класична античність

[ред. | ред. код]

Етруски ділили зовнішній край ворожильної печінки на шістнадцять частин, на кожній з яких було вигравірувано ім'я божества та його ділянку неба. Кожна ділянка печінки видавала двійковий код, який об'єднувався в остаточний двійковий код для ворожіння.[21]

Ворожіння в давньогрецькому оракулі Додони проводилося через витягування з окремих глечиків, табличок із питаннями та кульок «так» і «ні». Результат потім об'єднували в остаточне пророцтво.[22]

Індія

[ред. | ред. код]

Індійський математик Пінґала[en] (200 до н. е.) розробив математичні основи для опису поезії з використанням першого відомого застосування двійкової системи числення.[23][24] Він описав розміри у вигляді коротких і довгих складів (останні дорівнюють за довжиною двом коротким складам).[25] Вони були відомі як лагху (легкі) та ґуру (важкі) склади.

Індуїстська класична праця Пінґали під назвою «Чандахшастра» (8.23) описує формування матриці для надання кожному метру унікального значення. «Чандахшастра» буквально перекладається з санскриту як наука про метр. Двійкові подання в системі Пінґали зростають вправо, а не вліво, як у двійкових числах сучасної позиційної нотації.[26] У системі Пінґали числа починаються з одиниці, а не з нуля. Чотири короткі склади «0000» — це перший шаблон, який відповідає значенню одиниця. Числове значення отримується додаванням одиниці до суми розрядів.

Західна Африка

[ред. | ред. код]

Набори, що є комбінаціями двійкових цифр, використовували африканці в традиційних ворожіннях (як-от іфа) поряд зі середньовічною геомантією.

Іфа — це західноафриканська система ворожіння, популярна серед племені йоруба стародавньої імперії Ойо. Схожа на Книгу змін, але має не 64, а до 256 двійкових знаків.[27] Число походить від 16 у квадраті, що також відповідає загальній кількості варіантів у 8-бітовій послідовності. У ворожінні іфа це відображає можливі результати, які називають оду.[28] Ці оду визначають за допомогою ланцюга Ọpẹlẹ, який має 8 насінин. Кожна насінина може потрапити в одне з двох положень (відкрите або закрите), утворюючи всі можливі комбінації. Іфа виникла в Західній Африці в XV столітті серед народу йоруба. 2008 року ЮНЕСКО додала іфа до списку «Шедеврів усної і нематеріальної спадщини людства».[27][29]

Інші культури

[ред. | ред. код]

Мешканці острова Мангарева у Французькій Полінезії використовували до 1450 року гібридну двійково-десяткову систему числення.[30] Щілинні барабани[en] з двійковими тонами використовують для кодування повідомлень по всій Африці та Азії.[18] Більшість корінних австралійських мов використовують систему з основою 2.[31]

Прообразом баз даних, що широко використовувалися в Центральних Андах (Перу, Болівія) у державних та громадських цілях в I—II тисячолітті н. е., була вузликова писемність інків — кіпу, що складалася як з числових записів у десятковій системі[32] так і не числових записів у двійковій системі кодування.[33]

Західні попередники Лейбніца

[ред. | ред. код]

1605 року Френсіс Бекон обговорював систему, за допомогою якої літери алфавіту можна було б звести до послідовностей двійкових цифр, які потім можна було б закодувати як ледь помітні варіації шрифту в будь-якому випадковому тексті.[34] Для загальної теорії двійкового кодування важливе те, що він додав, що цей метод можна використовувати з будь-якими об'єктами: «за умови, що ці об'єкти можуть відрізнятися лише двома можливими станами; наприклад, дзвони, сурми, вогні й смолоскипи, рушничні постріли та будь-які інші засоби такого самого роду» (англ. provided those objects be capable of a twofold difference only; as by Bells, by Trumpets, by Lights and Torches, by the report of Muskets, and any instruments of like nature).[34]

1617 року Джон Непер описав систему, яку він назвав локаційною арифметикою[en], для виконання двійкових обчислень з використанням непозиційного подання літерами. Томас Герріот досліджував кілька позиційних систем числення, серед них двійкову, але не опублікував своїх результатів; їх знайдено пізніше серед його статей.[35] Можливо, в Європі вперше цю систему опублікував 1700 року Хуан Карамуель і Лобковіц.[36]

Лейбніц

[ред. | ред. код]
Готфрід Лейбніц

Лейбніц написав понад сто рукописів про двійкову систему числення, більшість з яких залишилися неопублікованими.[37] До його першої спеціалізованої праці 1679 року численні рукописи містять ранні спроби дослідження двійкових концепцій, як-от таблиці чисел та основні обчислення, часто написані на полях праць, не пов'язаних з математикою.[37]

У своїй першій відомій праці з двійкової системи числення «Про двійкову прогресію» 1679 року Лейбніц запровадив перетворення між десятковою та двійковою системами числення, а також алгоритми для виконання над двійковими числами основних арифметичних операцій, як-от додавання, віднімання, множення та ділення. Він також розробив форму двійкової алгебри для обчислення квадрата шестизначного числа та добування квадратних коренів.[37]

Його найвідомішою працею є стаття «Пояснення двійкової арифметики» (Explication de l'Arithmétique Binaire; опубліковано 1703 року; повна назва статті перекладається як «Пояснення двійкової арифметики, яка використовує лише символи 1 та 0, з деякими зауваженнями щодо її корисності та про те, як вона проливає світло на давньокитайські цифри фу-сі»). Як і сучасна двійкова система числення, система Лейбніца використовує 0 та 1. Приклад:[38]

0 0 0 1 числове значення 20
0 0 1 0 числове значення 21
0 1 0 0 числове значення 22
1 0 0 0 числове значення 23

1700 року в листуванні з єзуїтським священиком Йоахимом Буве, який, бувши 1685 року місіонером у Китаї, став експертом з Книги змін, Лейбніц пояснив свою двійкову систему числення, і Буве у своїх листах 1701 року продемонстрував, що Книга змін є незалежним, паралельним винаходом двійкової системи числення. Лейбніц та Буве дійшли висновку, що це відображення свідчить про великі китайські досягнення в тому виді філософської математики, яким він захоплювався. Про цей паралельний винахід Лейбніц писав у своєму «Поясненні двійкової арифметики», що «це відновлення їхнього значення після такого великого проміжку часу здаватиметься ще дивнішим».

Цей зв'язок був центральною ідеєю його універсальної концепції мови або characteristica universalis[en], популярної ідеї, якої дотримувалися його наступники, як-от Готлоб Фреге та Джордж Буль, формуючи сучасну символічну логіку.[39] Лейбніц вважав гексаграми Книги змін підтвердженням універсальності власних християнських переконань.[40] Двійкові числа були в центрі теології Лейбніца. Він вважав, що двійкові числа символізують християнську ідею creatio ex nihilo[en] (створення з нічого).[41]

[Концепція, яку] нелегко пояснити язичникам, це створення «ex nihilo» через всемогутню силу Бога. Тепер можна сказати, що ніщо у світі не може краще представити та продемонструвати цю силу, ніж походження чисел, як це представлено тут через просте та неприкрашене представлення Одиниці та Нуля або Нічого.

Оригінальний текст (англ.)
[A concept that] is not easy to impart to the pagans, is the creation "ex nihilo" through God's almighty power. Now one can say that nothing in the world can better present and demonstrate this power than the origin of numbers, as it is presented here through the simple and unadorned presentation of One and Zero or Nothing.
— Лист Лейбніца до герцога Брауншвейга[en] доповнений гексаграмами Книги змін[40]

Подальший розвиток

[ред. | ред. код]
Джордж Буль

1854 року англійський математик Джордж Буль опублікував знакову роботу, що описує застосування алгебраїчної системи до логіки, яка нині відома як булева алгебра або алгебра логіки. Його логічне числення зіграло важливу роль у розробці сучасних цифрових електронних схем.[42]

1937 року Клод Шеннон захистив у Массачусетському технологічному інституті магістерську дисертацію, в якій уперше в історії реалізував булеву алгебру та двійкову арифметику за допомогою електронних реле та перемикачів. У дисертації Шеннона «Символьний аналіз релейних і комутаційних схем»[en] по суті закладено основу практичного проєктування сучасної цифрової техніки.[43]

У листопаді 1937 року Джордж Штібіц[en], який тоді працював у Bell Labs, завершив створення релейного комп'ютера, який він назвав «Модель K» (від слова «Кухня», де він його і склав), що обчислював за допомогою двійкового додавання.[44] Наприкінці 1938 року Bell Labs схвалила повноцінну дослідницьку програму під керівництвом Штібіца. Їхній Complex Number Computer (CNC), завершений 8 січня 1940 року, був здатний виконувати операції з комплексними числами. 11 вересня 1940 року, під час демонстрації на конференції Американського математичного товариства в Дартмутському коледжі, Штібіц дистанційно надсилав на CNC команди через телефонну лінію за допомогою телетайпу. Це був перший випадок дистанційного керування обчислювальною машиною через телефонну лінію. Серед учасників конференції, які спостерігали за демонстрацією, були Джон фон Нейман, Джон Моклі та Норберт Вінер, який писав про це у мемуарах.[45][46][47]

Комп'ютер Z1, який між 1935 і 1938 роками розробив і побудував Конрад Цузе, використовував булеву логіку та двійкові числа з рухомою комою.[48]

Див. також

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. 1 2 3 4 Чешун, В. М.; Чешун, Т. І. (2009). Подібність двійкової та десяткової систем числення в ознайомленні з основами електронно-обчислювальної техніки (PDF). Вісник Хмельницького національного університету (4): 254.
  2. ↑ Процько, Ігор Омелянович; Грищук, Олександр Васильович. Розпаралелення обчислення канонічного розкладу числа на множники. Інформаційні технології та комп'ютерна інженерія. 44 (1): 46—51.
  3. ↑ СИСТЕМИ ЧИСЛЕННЯ. radio-vtc.inf.ua. Процитовано 30 червня 2026.
  4. 1 2 Тема 3. Системи числення. web.posibnyky.vntu.edu.ua. Процитовано 30 червня 2026.
  5. 1 2 Баляснікова, О. А. (2018). Основи програмування та програмне забезпечення. Конспект лекцій та матеріалів самостійного вивчення для студентів спеціальності 151 “Автоматизація та комп’ютерно-інтегровані технології” (PDF). Чернівці: Державний вищий навчальний заклад "Чернівецький індустріальний коледж". с. 171.
  6. 1 2 Архітектура комп'ютерів - 7 СИСТЕМИ ЧИСЛЕННЯ. sites.google.com (укр.). Процитовано 30 червня 2026.
  7. ↑ Функціонально-логічне проектування: Комбінаційні пристрої. К.: КПІ ім. Ігоря Сікорського. 2017. с. 45.{{cite book}}: Обслуговування CS1: Сторінки з неправильним використанням параметра location (посилання)
  8. ↑ Stefanelli, Prof Eduardo J. (16 травня 2016). Understanding and Using the Fractional Inch Measurement. Prof. Eduardo J. Stefanelli (амер.). Процитовано 3 липня 2026.
  9. ↑ Shirley, R. (Серпень 2007). Internet Security Glossary, Version 2. doi:10.17487/RFC4949. RFC 4949. Процитовано 13 червня 2016.
  10. ↑ Technical Reference (PDF). Personal Computer Hardware Reference Library (вид. First). IBM. Серпень 1981. Appendix C. Of Characters Keystrokes and Color.
  11. ↑ Why Did Thomas Harriot Invent Binary?. springer.com. Процитовано 17 квітня 2026.
  12. ↑ History of The Binary Number System. convertbinary.com. Процитовано 17 квітня 2026.
  13. ↑ Robson, Eleanor; Stedall, Jacqueline, ред. (2009), Myth No. 2: the Horus eye fractions, The Oxford Handbook of the History of Mathematics, Oxford University Press, с. 790, ISBN 9780199213122
  14. ↑ Chrisomalis, Stephen (2010), Numerical Notation: A Comparative History, Cambridge University Press, с. 42—43, ISBN 9780521878180.
  15. ↑ Rudman, Peter Strom (2007), How Mathematics Happened: The First 50,000 Years, Prometheus Books, с. 135—136, ISBN 9781615921768.
  16. 1 2 Edward Hacker; Steve Moore; Lorraine Patsco (2002). I Ching: An Annotated Bibliography. Routledge. с. 13. ISBN 978-0-415-93969-0.
  17. 1 2 Redmond, Geoffrey; Hon, Tze-Ki (2014). Teaching the I Ching. Oxford University Press. с. 227. ISBN 978-0-19-976681-9.
  18. 1 2 Jonathan Shectman (2003). Groundbreaking Scientific Experiments, Inventions, and Discoveries of the 18th Century. Greenwood Publishing. с. 29. ISBN 978-0-313-32015-6.
  19. ↑ Marshall, Steve. Yijing hexagram sequences: The Shao Yong square (Fuxi sequence). Процитовано 15 вересня 2022. You could say [the Fuxi binary sequence] is a more sensible way of rendering hexagram as binary numbers .... The reasoning, if any, that informs [the King Wen] sequence is unknown.
  20. ↑ Zhonglian, Shi; Wenzhao, Li; Poser, Hans (2000). Leibniz' Binary System and Shao Yong's "Xiantian Tu" in :Das Neueste über China: G.W. Leibnizens Novissima Sinica von 1697 : Internationales Symposium, Berlin 4. bis 7. Oktober 1997. Stuttgart: Franz Steiner Verlag. с. 165—170. ISBN 3515074481.
  21. ↑ Collins, Derek (2008). Mapping the Entrails: The Practice of Greek Hepatoscopy. The American Journal of Philology. 129 (3): 319—345. ISSN 0002-9475. JSTOR 27566714.
  22. ↑ Johnston, Sarah Iles (2008). Ancient Greek divination. Blackwell ancient religions (вид. 1. publ). Malden, Mass.: Wiley-Blackwell. ISBN 978-1-4051-1573-5.
  23. ↑ Sanchez, Julio; Canton, Maria P. (2007), Microcontroller programming: the microchip PIC, Boca Raton, Florida: CRC Press, с. 37, ISBN 0-8493-7189-9
  24. ↑ W. S. Anglin and J. Lambek, The Heritage of Thales, Springer, 1995, ISBN 0-387-94544-X
  25. ↑ Math for Poets and Drummers [Архівовано 16 June 2012 у Wayback Machine.] (pdf, 145KB)
  26. ↑ Stakhov, Alexey; Olsen, Scott Anthony (2009). The mathematics of harmony: from Euclid to contemporary mathematics and computer science. World Scientific. ISBN 978-981-277-582-5.
  27. 1 2 Landry, (2019).
  28. ↑ Taster (22 серпня 2025). What Ifá, an Indigenous binary knowledge system can teach us about AI - LSE Impact. LSE Impact - Understanding impact and practice in academic research. Процитовано 3 липня 2026.
  29. ↑ Ifa Divination System. Процитовано 5 липня 2017.
  30. ↑ Bender, Andrea; Beller, Sieghard (16 грудня 2013). Mangarevan invention of binary steps for easier calculation. Proceedings of the National Academy of Sciences. 111 (4): 1322—1327. doi:10.1073/pnas.1309160110. PMC 3910603. PMID 24344278.
  31. ↑ Bowern, Claire; Zentz, Jason (2012). Diversity in the Numeral Systems of Australian Languages. Anthropological Linguistics. 54 (2): 133—160. ISSN 0003-5483. JSTOR 23621076.
  32. ↑ Ordish George, Hyams, Edward. The last of the Incas: the rise and fall of an American empire. — Нью-Йорк : Барнс & Noble, 1996. — С. 80.
  33. ↑ Experts 'decipher' Inca strings. Архів оригіналу за 29 липня 2015. Процитовано 24 червня 2015.
  34. 1 2 Bacon, Francis (1605). The Advancement of Learning. London. с. Chapter 1.
  35. ↑ Shirley, John W. (1951). Binary numeration before Leibniz. American Journal of Physics. 19 (8): 452—454. Bibcode:1951AmJPh..19..452S. doi:10.1119/1.1933042.
  36. ↑ Ineichen, R. (2008). Leibniz, Caramuel, Harriot und das Dualsystem (PDF). Mitteilungen der deutschen Mathematiker-Vereinigung (нім.). 16 (1): 12—15. doi:10.1515/dmvm-2008-0009. Архів оригіналу (PDF) за 28 грудня 2021. Процитовано 15 жовтня 2017.
  37. 1 2 3 Strickland, Lloyd (2020), Leibniz on Number Systems, у Sriraman, Bharath (ред.), Handbook of the History and Philosophy of Mathematical Practice (англ.), Cham: Springer International Publishing, с. 1—31, doi:10.1007/978-3-030-19071-2_90-1, ISBN 978-3-030-19071-2, процитовано 20 серпня 2024
  38. ↑ Leibniz G., Explication de l'Arithmétique Binaire, Die Mathematische Schriften, ed. C. Gerhardt, Berlin 1879, vol.7, p.223; Engl. transl.
  39. ↑ Aiton, Eric J. (1985). Leibniz: A Biography. Taylor & Francis. с. 245–8. ISBN 0-85274-470-6.
  40. 1 2 J.E.H. Smith (2008). Leibniz: What Kind of Rationalist?: What Kind of Rationalist?. Springer. с. 415. ISBN 978-1-4020-8668-7.
  41. ↑ Yuen-Ting Lai (1998). Leibniz, Mysticism and Religion. Springer. с. 149—150. ISBN 978-0-7923-5223-5.
  42. ↑ Boole, George (2009). An Investigation of the Laws of Thought on Which are Founded the Mathematical Theories of Logic and Probabilities (вид. Macmillan, Dover Publications, reprinted with corrections [1958]). New York: Cambridge University Press. ISBN 978-1-108-00153-3.
  43. ↑ Shannon, Claude Elwood. A symbolic analysis of relay and switching circuits (Дипломна робота Thesis). Cambridge: Massachusetts Institute of Technology.
  44. ↑ National Inventors Hall of Fame – George R. Stibitz. 20 серпня 2008. Архів оригіналу за 9 липня 2010. Процитовано 5 липня 2010.
  45. ↑ George Stibitz : Bio. Math & Computer Science Department, Denison University. 30 квітня 2004. Процитовано 5 липня 2010.
  46. ↑ Pioneers – The people and ideas that made a difference – George Stibitz (1904–1995). Kerry Redshaw. 20 лютого 2006. Процитовано 5 липня 2010.
  47. ↑ George Robert Stibitz – Obituary. Computer History Association of California. 6 лютого 1995. Процитовано 5 липня 2010.
  48. ↑ Konrad Zuse's Legacy: The Architecture of the Z1 and Z3 (PDF). IEEE Annals of the History of Computing. 19: 5—16. Квітень–червень 1997. doi:10.1109/85.586067. Архів (PDF) оригіналу за 3 липня 2022. Процитовано 3 липня 2022. (12 pages)

Посилання

[ред. | ред. код]