Число в двоичной системе запишется так:
M = an∙2n + an-1∙2n-1 + ... + a1∙2 + a0
Если в десятичной системе "вес" каждой позиции (или разряда) числа равен 10 в некоторой степени, то в двоичной системе вместо числа 10 используется число 2. "Веса" первых 13 позиций (разрядов) двоичного числа имеют следующие значения:
Попробуем записать уже привычное нам число (777)10 в двоичной системе счисления. Мы сможем легко сделать это, вспомнив принцип последовательного деления числа на основание системы, в данном случае числа 777 на число 2:
Представляя наше число в виде разложения по степеням двойки и отбрасывая потом при записи сами степени, получаем его запись в двоичной системе:
(777)10 = 1∙29 + 1∙28 + 0∙27 + 0∙26 + 0∙25 + 0∙24 + 1∙23 + 0∙22 + 0∙2 + 1 = (1100001001)2
Итак, в двоичной системе счисления вместо числа 777 приходится писать число 1100001001.
Другой пример: десятичное число (45)10 имеет двоичную запись (101101)2.
При записи числа в десятичной системе каждая позиция занята десятичной цифрой. Аналогично при записи числа в двоичной системе каждая позиция занята двоичной цифрой. В научном мире вместо двух слов "двоичная цифра" употребляют одно слово: "бит". Оно произошло от английского bit, составленного из начальных и конечной букв словосочетания binary digit, что в переводе означает "двоичная цифра". Мы можем сказать, что двоичная запись числа (45)10 содержит шесть бит, а числа (777)10 - десять бит.
С помощью одного бита можно записать только числа 0 и 1, двух бит - числа от 0 до 3, трех бит - числа от 0 до 7, четырех бит — числа от 0 до 115 и т.д.
Чтобы записать числа от 0 до 1000, пот ребуется десять бит. В двоичной системе счисления даже сравнительно небольшое число занимает много позиций.
А как "разгадать", какое десятичное число скрывается под его записью в двоичной системе? Правило простое: под каждым разрядом двоичного числа следует записать его "вес". Те "веса", которые соответствуют единичным разрядам, нужно сложить. Полученная сумма и есть "разгадка". Вот перед нами "загадочное" число 1001011, записанное в двоичной нумерации. Поступаем согласно сказанному выше:
Как видим, заинтересовавшее нас число складывается из единицы, двойки, восьмерки и шестидесяти четырех (1 + 2 + 8 + 64). Очевидно, оно равно 75. Попробуйте самостоятельно определить, какому числу соответствует его двоичная запись 10110011.
Вот и состоялось наше первое знакомство с двоичной системой счисления, начавшей свое победное шествие со второй половины XX в. Но не нужно связывать появление на сцене двоичной арифметики с изобретением электронных вычислительных машин. Использование ее в ЭВМ - только одно из новейших применений двоичной системы. Дело в том, что двоичная система счисления стара, как мир!
Так, в начале прошлого века у вымирающего охотничьего индейского племени абипонов в Аргентине путешественники обнаружили числительные только для 1 - "инитара" и 2 - "иньоака". Число 3 они выражали как "иньоака-инитара".
Австралийские племена, обитавшие в бухте Купера, также имели две цифры и пользовались двоичным счетом: 1 - "гуна", 2 - "баркула", 3 - "баркула-гуна", 4 - "баркула-баркула"...
Не правда ли, это очень напоминает современное двоичное представление чисел. Если слово "гуна" заменить словом "нуль", а слово "баркула" словом "один", то получим современную двоичную последовательность: "нуль" (0), "один" (1), "один-нуль" (10), "один-один" (II).
Еще один пример. У туземцев островов, расположенных в Торресовом проливе (отделяющем Новую Гвинею от Австралии), тоже было всего две цифры - это "урапун" (1) и "окоза" (2). Островитяне считали так: "окоза-урапун" (3), "окоза-окоза" (4), "окоза-окоза-урапун" (5), "окоза-окоза-окоза" (6). И здесь замена слов "урапун" и "окоза" словами "нуль" и "один" позволяет разглядеть своеобразную цепочку двоичных чисел: "нуль" (0), "один" (1), "один-нуль" (10), "один-один" (11), "один-один-нуль" (110), "один-один-один" (111).
Двоичная система счисления существовала в Китае. Говорят, ее изобрел император Фо Ги, который жил в четвертом тысячелетии до нашей эры. Найдена надпись (ее называют табличкой Фо Ги), в которой числа от 0 до 7 обозначались с помощью черточек и пар точек. Черточка означает "1", пара точек - "0".
Миссионеры, посещавшие Китай, познакомили с табличкой императора Фо Ги выдающегося немецкого математика Г.Ф. Лейбница (1646 -1716).
Удивительна судьба этого человека. Сын профессора Лейпцигского университета. В 12 лет изучил латинский язык, увлекся древнегреческим. В 18 лет окончил университет, в котором преподавал его отец. Дипломат, историограф, надворный советник, член Лондонского королевского общества. Почти все время работал при дворах немецких государей, князей и герцогов. Основал в 1700 г. Берлинскую академию наук и стал ее первым президентом. Оказал влияние на развитие наук в России и организацию Петербургской академии. Пожалован Петром I в тайные советники.
Блестящая жизнь и нищая смерть. Старый и больной Лейбниц умирал, забытый всеми. Смерть его не была замечена ни в Берлинской академии наук, ни в Лондонском королевском обществе. Он был похоронен как нищий, а не как гений Германии.
Заслуги Г.Ф. Лейбница перед наукой поистине грандиозны. Его удивительный ум породил большое количество плодотворных идей почти во всех областях человеческих знаний. В физике Лейбниц сформулировал основной закон сохранения кинетической энергии, в математике открыл основные принципы дифференциального и интегрального исчислений. Именно Лейбниц положил начало новой науке - алгебре логики, которая приобрела исключительное значение для создания компьютеров. Он даже сумел построить механическую счетную машину, которая могла складывать, вычитать, умножать целые числа.
Возможно, стремление воплотить в жизнь свои мысли о правилах логики, о механизации и автоматизации мыслительных процессов, о значении игр в теории познания, т. е. о том, что мы сейчас объединяем одним словом "кибернетика", и привело Лейбница к созданию двоичной арифметики. Натолкнуть его на эту идею могла и табличка китайского императора Фо Ги.
Сохранился рисунок Лейбница. Посмотрите, как на нем изображены числа от 0 до 17: правые числа в обеих колонках записаны в десятичной системе, левые - в двоичной. Перед числами 2, 4, 8, 16 поставлены звездочки: так отмечены "веса" двоичных разрядов. Вверху рисунка расположена латинская надпись: "1,2,3,4, 5 и т.д. Для получения всех чисел из нуля достаточно единицы". Внизу рисунка - надпись: "Картина создания. Г(отфрид) Г(ильом) Л(ейбниц). MDC XCVN" (1697 г.).
Кто из нас не зачитывался в юности романом известной писательницы Этель Лилиан Войнич "Овод". Но на сей раз нас будет интересовать не романтический герой произведения, а отец писательницы - замечательный английский математик прошлого века Джордж Буль (1815-1864). В 1854 г. в Лондоне было напечатано его основополагающее сочинение "Исследование законов мысли", которое в основном завершило создание алгебры логики. По имени Буля алгебру логики часто называют булевой.
Двоичная арифметика является частным случаем булевой алгебры. Правила действия над числами, записанными в двоичной системе, выглядят весьма просто. Сложение чисел осуществляется но правилу
0 + 0 = 0, 0 + 1 = 1, 1 + 1 =(10)2
а вся таблица умножения сводится к четырем простейшим произведениям:
0 x 0 = 0, 1 x 0 = 0, 0 x 1 = 0, 1 x 1 = 1.
Не зря древние египтяне почти 4000 лет назад применяли двоичное умножение для своих громоздких иероглифических чисел!
Давайте воспроизведем снова задачу на умножение чисел 12x12 из математического папируса Ринда, записывая теперь уже числа не иероглифами, а в двоичной системе счисления. Число 12 имеет двоичную запись 1100. Напомним, что египтяне удваивали первый сомножитель (число 12) до тех пор, пока из комбинации степеней двойки не получался второй сомножитель (в нашем случае тоже число 12). Результат умножения они вычисляли путем суммирования определенных строк с записями удваиваемого сомножителя.
Занесем в таблицу результаты многократного удвоения числа 12 и соответствующие им степени двойки. А чтобы можно было легко разобраться с двоичными числами, приведем "веса" всех используемых разрядов:
В правом столбце второй сомножитель получается при суммировании двух последних строк (это видно из анализа "весов" единичных разрядов, входящих в сумму). Значит, результат следует получить, суммируя (с учетом переноса единицы в старшие разряды) две последние строки левого столбца. "Веса" единичных разрядов этой суммы показывают, что произведение чисел равно 144.
И снова неожиданность, да еще какая: мы выполнили умножение, ничего не умножая, а только суммируя! Так поступают и современные компьютеры: они анализируют "веса" единичных разрядов одного из сомножителей и "узнают", какие строки, полученные последовательным удвоением другого сомножителя, нужно складывать. Заметим, что операция удвоения числа в вычислительной машине самая простая из всех операций: она заключается, как видно из таблицы, в сдвиге записи двоичного числа влево на одну позицию.
Итак, у десятичных цифр появился серьезный конкурент - двоичные цифры 0 и 1, которыми "предпочитают пользоваться" компьютеры. Да и не только они!
Еще 15 лет назад на Международной выставке роботов в Японии посетители могли увидеть изящного робота-музы канта, напоминающего средневекового рыцаря, закованного в латы, который с помощью электронного глаза читал ноты и переворачивал рукой нотные страницы. Его пальцы могли нажимать на клавиши электронного органа до 50 раз в секунду. Он мог исполнять любое произведение - от Баха до музыки битлзов.