Смекни!
smekni.com

Роль систем счисления в истории компьютеров (стр. 2 из 3)

Леонардо Пизано Фибоначчи (1170-1228)

Что касается выбора числа 10 в качестве основания десятичной системы счисления, то существует общепринятое мнение, что оно имеет "пальцевое" происхождение. Однако не следует забывать, что в древней науке число 10 всегда несло в себе особую смысловую нагрузку. Пифагорейцы называли его четверицей или тетрактидой. Говоря словами Эмпедокла в нем - "вечно текущей природы : корень источный". Четверица 10 = 1 + 2 + 3 + 4 считалась у пифагорейцев одной из высших ценностей и являлась "символом всей Вселенной", так как содержала в себе четыре "основных элемента": единицу или "монаду", обозначающую, по Пифагору, дух, из которого проистекает весь видимый мир; двойку, или "диаду" (2 = 1 + 1), символизирующую материальный атом; тройку, или "триаду" (3 = 2 + 1), то есть символ живого мира; и наконец, четверку, или "тетраду", (4 = 3 + 1), соединявшую живой мир с монадой и поэтому символизировала целое, то есть "видимое и невидимое". А поскольку тетрактида 10 = 1 + 2 + 3 + 4, то она выражала собой "Все". Таким образом, гипотеза о "гармоничном" происхождении числа 10 имеет не меньшее право на существование, как и "пальцевая".

В современной науке с развитием компьютерной техники на первые роли выдвинулась двоичная система счисления. Ее зачатки наблюдаются у многих народов. Например, у древних египтян широкое распространение получили методы умножения и деления, основанные на принципе удвоения. Изобретение двоичного способа нумерации приписывают китайскому императору Фо Ги, жизнь которого относится к 4-му тысячелетию до новой эры. Оказывается, к открытию двоичной системы счисления имели отношение многие математики, в частности, Фибоначчи. В своей книге "Liber abaci" он сформулировал "задачу о выборе наилучшей системы весовых гирь для взвешивания грузов на рычажных весах". В русской историко-математической литературе эта задача известна под названием Баше-Менделеева в честь французского математика 17-го века Баше де Мезириака, поместившего ее в своем "Сборнике приятных и занимательных задач" (1612 г.), и выдающегося русского химика Дмитрия Ивановича Менделеева, который к концу жизни стал директором Главной Палаты мер и весов России и интересовался этой задачей по долгу своей службы.

Известно два варианта решения задачи Баше-Менделеева. Первый предполагает, что гири разрешается класть только на одну, свободную от груза чашу весов; при этом оптимальным решением является "двоичная система гирь": 1, 2, 4, 8, 16,:, которая при взвешивании "порождает" двоичный способ представления чисел. При втором варианте гири разрешается класть на обе чаши весов; оптимальным решением при этом является "троичная система гирь": 1, 3, 9, 27,:, которая при взвешивании "порождает" троичную симметричную систему счисления, которая и была положена Н. П. Брусенцовым в основу троичного компьютера "Сетунь".

Но автор двоичной арифметики в истории науки доподлинно известен: это известный немецкий математик Лейбниц (1646-1716), который в 1697 г. разработал правила двоичной арифметики. Лейбниц настолько был восхищен своим открытием, что в его честь выпустил специальную медаль, на которой были даны двоичные изображения начального ряда натуральных чисел - возможно, это был тот редкий случай в истории математики, когда математическое открытие было удостоено такой высокой почести.

Лейбниц (1646-1716)

Лейбниц, однако, не рекомендовал двоичную арифметику для практических вычислений вместо десятичной системы, но подчеркивал, что "вычисление с помощью двоек, то есть 0 и 1, в вознаграждение его длиннот является для науки основным и порождает новые открытия, которые оказываются полезными впоследствии, даже в практике чисел, а особенно в геометрии: причиной чего служит то обстоятельство, что при сведении чисел к простейшим началам, каковы 0 и 1, всюду выявляется чудесный порядок".

Блестящие предсказания Лейбница сбылись только через два с половиной столетия, когда выдающийся американский ученый, физик и математик Джон фон Нейман предложил использовать именно двоичную систему счисления в качестве универсального способа кодирования информации в электронных компьютерах ("Принципы Джона фон Неймана").

Джон фон Нейман (1903-1957)

Таким образом, как подчеркивают многие выдающиеся математики, открытие вавилонянами позиционного принципа, а затем индусами десятичной системы счисления, основанной на позиционном принципе, а также разработку Лейбницем двоичной арифметики по праву можно отнести к разряду действительно эпохальных математических открытий, существенно повлиявших на развитие материальной культуры, в частности, на развитие компьютерной техники.

Почему же в теории чисел и в теоретической арифметике системам счисления не уделялось того внимания, которого они несомненно заслуживали? Все дело - в традиции. В античной науке, достигшей высокого уровня развития, впервые произошло сохранившееся до наших дней разделение математики на "высшую" куда относились геометрия и теория чисел, и "логистику" - прикладную науку о технике арифметических вычислений ("школьная" арифметика), геометрических измерениях и построениях. Уже со времени Платона логистика третировалась как низшая, прикладная дисциплина, не входящая в круг образования философа и ученого. Восходящее к Платону пренебрежительное отношение к школьной арифметике и ее проблемам, а также отсутствие какой-либо достаточно серьезной потребности в создании новых систем счисления в практике вычислений, которая в течение последних столетий всецело удовлетворялась десятичной системой, а в последние десятилетия - двоичной системой (в информатике), может служить объяснением того факта, что в теории чисел системам счисления не уделялось должного внимания и в этой части она не намного ушла вперед по сравнению с периодом своего зарождения.

Ситуация резко изменилась после появления современных компьютеров. Именно в этой области опять проявился интерес к способам представления чисел и новым компьютерным арифметикам. Все дело в том, что классическая двоичная система счисления обладает рядом принципиальных недостатков, главными из которых являются: проблема представления отрицательных чисел и "нулевая" избыточность классического двоичного способа представления чисел.

Особенно неприятен второй недостаток. "Нулевая" избыточность двоичного представления означает, что в системе счисления отсутствует механизм обнаружения ошибок, которые, к сожалению, неизбежно возникают в компьютерных системах под влиянием внешних и внутренних факторов. В условиях, когда человечество все больше становится заложником компьютерной революции и все чаще полагается на компьютер при решении сложнейших задач управления ракетами, самолетами, атомными реакторами, вопрос об эффективных механизмах обнаружения ошибок выдвигается на передний план. Ясно, что компьютеры, основанные на двоичной системе счисления, не всегда могут эффективно решать эту проблему.

Чтобы преодолеть указанные недостатки двоичной системы, уже на этапе зарождения компьютерной эры был выполнен ряд проектов и сделано несколько интересных математических открытий, связанных с системами счисления. Пожалуй, наиболее интересным проектом в этом отношении является троичный компьютер "Сетунь", разработанный в Московском университете под руководством Н. П. Брусенцова. Использование в нем так называемой троичной симметричной системы счисления для представления чисел впервые в истории компьютеров поставило знак равенства между отрицательными и положительными числами, позволив отказаться от различных "ухищрений" (обратный и дополнительный код), используемых для представления отрицательных чисел. Это обстоятельство, а также использование "троичной логики" при создании программ привело к созданию весьма совершенной архитектуры, которая и была воплощена в модели "Сетуни". Именно "Сетунь" является наиболее ярким историческим примером, подтверждающим влияние системы счисления на архитектуру компьютера!

Однако на заре компьютерной эры было сделано еще два открытия в области позиционных способов представления чисел, которые, однако, мало известны и которые в тот период не привлекли особого внимания математиков и инженеров.

В 1939 г. бельгийский врач Эдуард Цекендорф, увлекавшийся числами Фибоначчи, опубликовал статью, посвященную так называемым "суммам Цекендорфа". Под представлением Фибоначчи-Цекендорфа понимается следующий позиционный способ представления чисел:

N = anF(n) + an-1F(n-1) + ... + ai F(i) + ... + a1F(1); (1)

где a i = {0, 1} - двоичная цифра i-го разряда представления; n - разрядность представления; F(i) - число Фибоначчи, задаваемое с помощью следующего рекуррентного соотношения:

F(i) = F(i-1) + F(i-2);

F(1) + F(2) = 1;

Однако наиболее революционным предложением в современной теории систем счисления по праву можно считать систему счисления с иррациональным основанием, предложенную в 1957 г. американским математиком Джорджем Бергманом. Под "Тау-системой", или системой Бергмана, понимается следующий способ представления действительного числа А:

A= Σ aiτi; (2)
i

где ai - двоичные цифры, 0 или 1; i = 0, +1, +2, +3; τ i - вес i-й цифры в представлении; τ - основание системы счисления.

На первый взгляд может показаться, что в система Бергмана не представляет собой ничего особенного по сравнению с традиционным позиционным представлением, но это только на первый взгляд. Вся суть состоит именно в том, что основанием системы счисления является знаменитое иррациональное число