Домой / Группы / Троичная система счисления использовалась в эвм. Компьютеры советской россии с троичной сбалансированной системой счисления

Троичная система счисления использовалась в эвм. Компьютеры советской россии с троичной сбалансированной системой счисления

Н.П. Брусенцов, Рамиль Альварес Хосе

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

Обстоятельное изучение в течение года имевшихся в то время вычислительных машин и технических возможностей их реализации привело к нестандартному решению употребить в создаваемой машине не двоичный, а троичный симметричный код, реализовав ту самую уравновешенную систему счисления, которую Д. Кнут двадцать лет спустя назовет быть может, самой изящной и как затем стало известно, достоинства которой были выявлены К. Шенноном в 1950 г. 121.

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

Троичная ЭВМ “Сетунь” , опытный образец которой разработали, смонтировали и к концу 1958 г. ввели в эксплуатацию сотрудники отдела электроники, как показал опыт ее освоения, программного оснащения и многообразных практических применений, с исчерпывающей полнотой удовлетворяла всем предусмотренным заданием на ее разработку требованиям. Этот успех, с учетом того, что разработка троичной ЭВМ предпринималась впервые, проводилась немногочисленным коллективом начинающих сотрудников (8 выпускников МЭИ и МГУ, 12 техников и лаборантов) и была выполнена в короткий срок, явно свидетельствует о благодатности троичной цифровой техники. Ценой усложнения по сравнению с двоичными элементов памяти и элементарных операций достигается существенное упрощение и, главное, естественность архитектуры троичных устройств.

При минимальном наборе команд (всего 24 одноадресные команды) “Сетунь” обеспечивала возможность вычислений с фиксированной и с плавающей запятой, обладала индекс-регистром, значение которого можно как прибавлять, так и вычитать при модификации адреса, предоставляла операцию сложения с произведением, оптимизирующую вычисление полиномов, операцию поразрядного умножения и три команды условного перехода по знаку результата. Простая и эффективная архитектура позволила усилиями небольшой группы программистов уже к концу 1959 г. оснастить машину системой программирования и набором прикладных программ , достаточными для проведения в апреле 1960 г. междуведомственных испытаний опытного образца.

По результатам этих испытаний “Сетунь” была признана первым действующим образцом универсальной вычислительной машины на безламповых элементах, которому свойственны “высокая производительность, достаточная надежность, малые габариты и простота технического обслуживания”. По рекомендации Междуведомственной комиссии Совет Министров СССР принял постановление о серийном производстве “Сетуни” на Казанском заводе математических машин. Но почему-то троичный компьютер пришелся не по нраву чиновникам радиоэлектронного ведомства: они не обеспечили разработку серийного образца машины, а после того как он все-таки был осуществлен с использованием конструктивов выпускавшейся заводом машины М-20, не содействовали наращиванию выпуска в соответствии с растущим числом заказов, в частности из-за рубежа, а наоборот, жестко ограничивали выпуск, отклоняя заказы, и в 1965 г. полностью прекратили, причем воспрепятствовали освоению машины в ЧССР, планировавшей ее крупносерийное производство. Поводом для этой странной политики могла быть рекордно низкая цена “Сетуни” - 27,5 тыс., рублей, обусловленная бездефектным производством ее магнитных цифровых элементов на Астраханском заводе ЭА и ЭП, по 3 руб. 50 коп. за элемент (в машине было около 2 тыс., элементов). Существенно то, что электромагнитные элементы “Сетуни” позволили осуществить пороговую реализацию трехзначной логики на редкость экономно, естественно и надежно. Опытный образец машины за 17 лет эксплуатации в ВЦ МГУ, после замены на первом году трех элементов с дефектными деталями, не потребовал никакого ремонта внутренних устройств и был уничтожен в состоянии полной работоспособности. Серийные машины устойчиво функционировали в различных климатических зонах от Одессы и Ашхабада до Якутска и Красноярска при отсутствии какого-либо сервиса и запчастей.

Благодаря простоте и естественности архитектуры, а также рационально построенной системе программирования, включающей интерпретирующие системы: ИП-2 (плавающая запятая, 8 десятичных знаков), ИП-3 (плавающая запятая, 6 десятичных знаков), ИП-4 (комплексные числа, 8 десятичных знаков), ИП-5 (плавающая запятая, 12 десятичных знаков), автокод ПОЛИЗ с операционной системой и библиотекой стандартных подпрограмм (плавающая запятая, 6 десятичных знаков), машины “Сетунь” успешно осваивались пользователями в вузах, на промышленных предприятиях и в НИИ, оказываясь эффективным средством решения практически значимых задач в самых различных областях, от научно-исследовательского моделирования и конструкторских расчетов до прогноза погоды и оптимизации управления предприятием . На семинарах пользователей вычислительных машин “Сетунь”, проведенных в МГУ (1965), на Людиновском тепловозостроительном заводе (1968), в Иркутском политехническом институте (1969) были представлены десятки сообщений о результативных народнохозяйственных применениях этих машин. “Сетунь”, благодаря естественности троичного симметричного кода, оказалась поистине универсальным, несложно программируемым и весьма эффективным вычислительным инструментом, положительно зарекомендовавшим себя, в частности, как техническое средство обучения вычислительной математике более чем в тридцати вузах. А в Военно-воздушной инженерной академии им. Жуковского именно на “Сетуни” была впервые реализована автоматизированная система компьютерного обучения .

Троичная система счисления основана на том же позиционном принципе кодирования чисел, что и принятая в современных компьютерах двоичная система, однако вес i -й позиции (разряда) в ней равен не 2 i , а 3 i . При этом сами разряды не двухзначны (не биты), а трехзначны (триты) - помимо 0 и 1 допускают третье значение, которым в симметричной системе служит -1, благодаря чему единообразно представимы как положительные, так и отрицательные числа. Значение n -тритного целого числа N определяется аналогично значению n -битного:

где а i ∈ {1, 0, -1} - значение цифры i -го разряда.

Цифры в троичной симметричной системе целесообразно обозначать их знаками, т.е. вместо 1, 0, -1 писать +, 0, -. Например, десятичные числа 13, 7, 6, -6 в такой троичной записи будут: 13 = +++, 7 = +-+, б = +-0, -6 = -+0. Изменение знака числа в симметричном коде равносильно потритной инверсии, т.е. взаимозамене всех “+” на “-” и всех “-” на “+”. Операции сложения и умножения в троичном симметричном коде определены таблицами:

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

Машина “Сетунь” может быть охарактеризована как одноадресная, последовательного действия, с 9-тритным кодом команды, 18-тритными регистрами сумматора S и множителя R , 5-тритными индекс-регистром модификации адреса F и счетчиком-указателем выполняемых команд C , а также однобитным указателем знака результата ? , управляющим условными переходами.

Оперативная память - 162 9-тритных ячейки - разделена на 3 страницы по 54 ячейки для постраничного обмена с основной памятью - магнитным барабаном емкостью 36 либо 72 страницы. Считывание и запись в оперативную память возможны 18-тритными и 9-тритными словами, причем 9-тритное слово соответствует старшей половине 18-тритного в регистрах S и R . Содержимое этих регистров интерпретируется как число с фиксированной после второго из старших разрядов запятой, т.е. по модулю оно меньше 4,5. При вычислениях с плавающей запятой мантисса М нормализованного числа удовлетворяет условию 0,5 < |М| <1,5, а порядок представлен отдельным 5-тритным словом, интерпретируемым как целое со знаком.

Страничная двухступенная структура памяти с пословной адресацией в пределах трех страниц ОЗУ, обходящейся 5-тритными адресами и соответственно 9-тритными командами, обусловила необыкновенную компактность программ и вместе с тем высокое быстродействие машины, несмотря на то, что в интерпретирующих системах магнитный барабан функционирует как оперативная память.

В 1967-1969 гг. на основе опыта создания и практических применений машины “Сетунь” разработана усовершенствованная троичная цифровая машина “Сетунь 70”, опытный образец которой вступил в строй в апреле 1970 г. Это была машина нетрадиционной двухстековой архитектуры, ориентированной на обеспечение благоприятных условий дальнейшего развития ее возможностей методом интерпретирующих систем .

Принятие арифметического стека (стека 18-тритных операндов) обусловлено использованием в качестве машинного языка так называемой польской инверсной записи программ (ПОЛИЗ), положительно зарекомендовавшей себя в одноименном интерпретаторе на “Сетуни”. ПОЛИЗ-программа состоит не из команд той или иной адресности, а является последовательностью коротких слов - 6-тритных трайтов (троичных байтов). Как элемент программы трайт может быть либо адресным, либо операционным. Адресный трайт либо используется в качестве операнда предшествующим операционным, либо воспринимается как предписание заслать в стек операндов из оперативной памяти адресуемое слово от одного до трех трайтов. В оперативной памяти всего 9 страниц по 81 трайту, причем открыты для доступа в данный момент три страницы, номера которых указаны в так называемых “регистрах приписки”.

Операционный трайт указывает операции, а вернее процедуры, выполняемые над стеком операндов, а также над регистрами процессора. Всего предусмотрена 81 операция - 27 основных, 27 служебных и 27 программируемых пользователем.

Второй (системный) стек, содержащий адреса возврата при обработке прерываний и при выполнении вложенных подпрограмм, позволил успешно реализовать на “Сетуни 70” идею структурированного программирования Э. Дейкстры, введя операции вызова подпрограммы, вызова по условию и циклического выполнения подпрограмм. Осуществленное таким образом процедурное структурированное программирование на практике подтвердило заявленные Дейкстрой преимущества его метода: трудоемкость создания программ сократилась в 5-7 раз, благодаря исключению традиционной отладки тестированием на конкретных примерах, причем программы обрели надлежащую надежность, упорядоченность, понятность и модифицируемость. В дальнейшем эти особенности архитектуры “Сетуни 70” послужили основой диалоговой системы структурированного программирования ДССП, реализованной на машинах серии ДВК и на последующих персональных компьютерах .

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

Учебный материал в “Наставнике” предоставляется учащимся в печатном виде с пронумерованными секциями, абзацами, упражнениями и справками к ошибочным ответам, благодаря чему при помощи простейшего терминала с цифровой клавиатурой и калькуляторным индикатором компьютер без гипертекстового дисплея легко и безвредно взаимодействует с обучаемым, придавая книге недостающую ей способность диалога с читателем. Создание учебных материалов для “Наставника” не связано с программированием компьютера, и, как показала практика, разработка вполне удовлетворительных пособий по математике, физике, английскому языку и другим предметам посильна школьным учителям. Дидактическая эффективность этой немудреной системы оказалась на редкость высокой. Так, курс “Базисный Фортран” студенты факультета ВМК МГУ проходили в “Наставнике” за 10-15 часов, студенты экономического факультета - за 15-20 часов, показывая затем в практикуме более совершенное умение программировать на Фортране, чем после обычного семестрового курса.

Реализованный в “Наставнике” принцип “книга-компьютер” обусловил оптимальное использование компьютера как средства обучения практически во всех отношениях: необходимая аппаратура (микрокомпьютер и подключенные к нему 3-4 десятка терминалов, подобных простейшему калькулятору) предельно дешева, надежна и легко осваивается как учащимися, так и преподавателями, работа в режиме диалога с книгой неутомительна, увлекательна и при надлежащей организации изложения гарантирует быстрое и полноценное усвоение изучаемого предмета. Применение системы в МГУ, МАИ, ВИА им. Куйбышева, в средней школе и для профессионального обучения на ЗИЛе подтвердили ее высокую эффективность в широком спектре предметов и уровней обучения. Вместе с тем “Наставник” уже более 30 лет постоянно используется на факультете ВМиК для автоматизированного проведения контрольных работ, а также тестирования поступивших на факультет, определяющего уровень владения английским языком для комплектования однородных учебных групп.

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

Система команд машины “Сетунь”

Литература

  1. Shаnnonc. Е.А Symmetrical notation for numbers. - “The American Mathematical Monthly”, 1950, 57, N 2, р, 90 - 93,
  2. Reid J.B. Letter to the editor. - “Comm. ACM”, 1960, 3, N 3, р. А12 - A13.
  3. Howden Р.F. Weigh-counting technique is faster then binary. - “Electronics”, 1974, 48, N 24, р. 121 - 122.
  4. Байцер Б. Архитектура вычислительных комплексов , т. 1. М., “Мир”, 1974.
  5. Proceedings of the Sixth International Symposium on Multiple-Valued Logic , Мау 25 - 28 1976. IEEE Press, 1976.
  6. Croisier А. Introduction to pseudoternary transmission codes. - “IBM Journal of Research and Development”, 1970, 14, N 4, р. 354 - 367.
  7. Брусенцов Н.П. Электромагнитные цифровые устройства с однопроводной передачей трехзначных сигналов. - В кн.: Магнитные элементы автоматики и вычислительной техники. XIV Всесоюзное совещание (Москва, сентябрь 1972 г.). М., “Наука”, 1972, с. 242 - 244.
  8. Аристотель. 06 истолковании. СПб., 1891.
  9. Брусенцов Н.П. Диаграммы Льюиса Кэррола и аристотелева силлогистика. - В кн.: Вычислительная техника и вопросы кибернетики, вып. 13. Изд-во МГУ, 1976, с. 164-182.
  10. Introduction to programming. PDP-8 handbook series. Digital Equipment Corporation, 1972.

Материалы международной конференции SORUCOM 2006 (3-7 июля 2006 года)
Развитие вычислительной техники в России и странах бывшего СССС: история и перспективы
Статья помещена в музей 31.10.2007 с разрешения автора

Наверняка на хабре уже немало постов на эту тему. Тем не менее, я попытаюсь рассказать свою точку зрения на всё это…

Однажды я прочитал в интернете про троичную систему счисления и заинтересовался. Меня мучил вопрос, а нельзя использовать в основе компьютера симметричную троичную систему счисления (СС), и даже вдруг это увеличит производительность компьютера? Мне казалось, что это возможно, и я жаждал это проверить.

Информация:
Троичная система счисления - позиционная система счисления с целочисленным основанием, равным 3. Существует в двух вариантах: несимметричная и симметричная.
В несимметричной троичной системе счисления чаще применяются цифры {0,1,2}, а в симметричной троичной системе счисления знаки {−,0,+}, {−1,0,+1}.
У некоторых людей эта логика вызывает затруднения. Они говорят, например, приведите пример подобной логики в жизни.
Человек, немного подумавший над этой логикой поймет, что она более жизненна чем двоичная. Обычный пример троичной логики в жизни связан с постоянным током: ток движется в одну сторону, в другую сторону, его нет.

Оказалось, что симметричная троичная система счисления использовалась давным-давно для решения «задачи о гирях», использовалась в компьютере Сетунь , построенном в 50-е годы в МГУ. С 2008 года в университете « California Polytechnic State University of San Luis Obispo» функционирует цифровая компьютерная система TCA2 , основанная на троичной системе счисления.

В чем же плюсы троичной СС над двоичной? Рассмотрим эти плюсы:

Меньше разрядов

(Написано разжевано, чтобы каждый смог понять суть этого пункта)
Возьмем число 10 в десятичной СС и переведем его в двоичную СС, получим 1010, переведем в троичную симметричную СС, получим +0+, ну а если в троичную несимметричную СС, то получим 101. Из этого мы видим, что в некоторых числах в троичной симметричной и несимметричной СС-ах меньше разрядов, чем в двоичной СС.
Возьмем число 5 в десятичной СС и переведем его в двоичную СС, получим 101, переведем в троичную симметричную СС, то получим +--, ну а если в троичную несимметричную СС, то получим 12. Из этого мы видим, что в некоторых числах в троичной несимметричной СС меньше разрядов, чем в двоичной и троичной симметричной СС-ах.

Емкость


Троичная СС вмещает больший диапазон чисел, т.к. 3^n>2^n (где n-натуральное число). Например, если n=9, то 3^9=19683>2^9=512.
3.

Экономичность системы счисления


Экономичность системы счисления - запас чисел, который можно записать в данной системе с помощью определенного количества знаков. Чем больше запас тем экономичнее система. По затратам числа знаков (в трёхразрядном десятичном числе 3*10=30 знаков) наиболее экономична из позиционных показательных несимметричных систем счисления. Обозначим p основание системы счисления, n количество требуемых знаков. Тогда получим n/p разрядов требуемых для записи этого набора знаков в заданной системе счисления, а количество чисел которое при этом можно записать будет равно pn/p.

Мы рассмотрели троичную арифметику, теперь затронем логику:

В чем же проблемы двоичной логики?
1.Мощности компьютера, основанного на двоичной логике, не всегда хватает. Приведем пример. Одна из наиболее сложных систем защиты – криптосистема RSA. Вскрытие шифра RSA с длиной ключа 1024 бита (такая длина часто используется в информационных системах) займет в лучшем случае - при проведении распределенных вычислений на тысячах мощных ПК - не менее пятнадцати лет, а к тому времени данная система шифровки перестанет быть востребованной.
Докажем математически какая система счисления будет наилучшей для максимальной мощности и емкости памяти. Для этого рассмотрим функцию f(p)=p^(n/p), в которой p – основание системы счисления, а n – количество требуемых знаков. Тогда получим n/p разрядов требуемых для записи этого набора знаков в заданной системе счисления, а количество чисел, которое при этом можно записать, будет равно pn/p

F(p)=p^(n/p)
Для того, чтобы определить максимальное значение функции, найдем ее производную:
ln f = ln p^(n/p)
ln f =n/p* ln p
...(Я не буду приводить здесь всю математику)
n*p^(n/p-2) никогда не будет равно 0 => (1 - ln⁡ p)=0, ln p = 1, p = e
e = 2,71, а ближайшее целое число к нему – это три.
Значит, в этом плане лучшая система с целочисленным основанием - троичная.

Самое вкусненькое - рассмотрим троичные логические операции:

1.Отрицание

2.Конъюнкция - логическое И

3.Дизъюнкция - логическое ИЛИ

4.Операция Выбора . Эта операция существует только для троичной логики. Таблица истинности каждой из этих трёх операций содержит везде „-“, кроме единственного значения, которое ею можно выбрать.

5.Модификация . Полное название этих одноместных операций: увеличение на единицу по модулю три (INC) и уменьшение на единицу по модулю три (DEC). Увеличение на единицу по модулю три – это циклическое прибавление единицы.

Здесь видны и прежде знакомые вам логические операции из двоичной логики, но добавились и новые…

Квантовые компьютеры

Квантовый компьютер - вычислительное устройство, работающее на основе квантовой механики. Квантовый компьютер принципиально отличается от классических компьютеров, работающих на основе классической механики.
Благодаря огромной скорости разложения на простые множители, квантовый компьютер позволит расшифровывать сообщения, зашифрованные при помощи популярного асимметричного криптографического алгоритма RSA. До сих пор этот алгоритм считается сравнительно надёжным, так как эффективный способ разложения чисел на простые множители для классического компьютера в настоящее время неизвестен. Для того, например, чтобы получить доступ к кредитной карте, нужно разложить на два простых множителя число длиной в сотни цифр. Даже для самых быстрых современных компьютеров выполнение этой задачи заняло бы больше времени, чем возраст Вселенной, в сотни раз. Благодаря алгоритму Шора эта задача становится вполне осуществимой, если квантовый компьютер будет построен.
Канадская компания D-Wave заявила в феврале 2007 года о создании образца квантового компьютера, состоящего из 16 кубит. Это устройство работает на кубитах - квантовых аналогах битов.
Но можно построить компьютеры не на битах, а на кутритах - аналогах трита в квантовом компьютере.
Кутрит (квантовый трит) - квантовая ячейка, имеющая три возможных состояния.
Подлинное новаторство метода Ланьона в том, что, используя в универсальных квантовых вентилях кутриты вместо кубитов, исследователи могут существенно снизить количество необходимых вентилей.
Ланьон утверждает, что компьютер, который в обычном случае использовал бы 50 традиционных квантовых вентилей, сможет обойтись всего девятью, если будет основан на троичном представлении.
Также, согласно некоторым исследованиям, использование кутритов вместо кубитов позволит упростить реализацию квантовых алгоритмов и компьютеров.

Итог:
В конечном итоге видно, что троичная симметричная система лучше двоичной системы в некоторых показателях, но не сильно выигрывает. Но с пришествием квантовых компьютеров троичные вычисления получили новую жизнь. Универсальные квантовые логические вентили - краеугольный камень новорожденных квантовых вычислительных систем - требует сотни вентилей для завершения одной полезной операции. Квантовый компьютер канадской компании D-Wave, анонсированный в прошлом году, состоит всего из 16 квантовых битов - кубитов - минимум, необходимый для управляемого вентиля «NOT». Использование в квантовом компьютере кутритов нужно было бы намного меньше вентилей для завершения одной операции. Я думаю, если бы началось производство и тестирование таких компьютеров, то результаты были бы лучше, чем у обычных компьютеров, вскоре началось бы массовое их производство, и про двоичные компьютеры все бы забыли…

Троичные ЭВМ (компьютеры) обладают рядом преимуществ по сравнению с двоичными ЭВМ (компьютерами).

При сложении тритов в троичных полусумматорах и в троичных сумматорах количество сложений в \log_23=1,58... раза меньше, чем при сложении битов в двоичных полусумматорах и в двоичных сумматорах, и, следовательно, быстродействие при сложении в 1,58.. раза (на 58%) больше.

При применении симметричной троичной системы счисления и сложение и вычитание производится в одних и тех же двухаргументных (двухоперандных) полусумматорах-полувычитателях или полных трёхаргументных (трёхоперандных) сумматорах-вычитателях без преобразования отрицательных чисел в дополнительные коды , то есть ещё немного быстрее, чем в двоичных полусумматорах и в двоичных полных сумматорах, в которых для вычитания используется сложение с двумя преобразованиями отрицательных чисел, сначала в первое дополнение , а затем во второе дополнение , т.е. два дополнительных действия ("инверсия" и "+1") на каждое отрицательное слагаемое.

Сложение сильно тормозят переносы, которые в двоичном сумматоре возникают в 4-х случаях из 8-ми (в 50% случаев), в троичном несимметричном сумматоре возникают в 9-ти случаях из 18-ти (в 50% случаев), а в троичном симметричном сумматоре в 8-ми случаях из 27-ми (в 29,6...% случаев), что ещё немного увеличивает быстродействие.

3-х битная троичная физическая система кодирования и передачи данных 3B BCT имеет на 15,3% большее быстродействие, чем обычная двоичная система кодирования и передачи данных , что ещё немного увеличивает быстродействие.

3-х битная троичная физическая система кодирования троичных данных 3B BCT избыточна (используются только 3 кода из 8-ми), что позволяет обнаружить ошибки и повысить надёжность изделия.

В сумме, приблизительно в 2 раза большее увеличение быстродействия в изделиях долговременного применения может окупить приблизительно в 1,5 раза большие единовременные затраты на аппаратную часть. В некоторых изделиях одноразового применения увеличение быстродействия и надёжности может перевесить увеличение затрат на аппаратную часть.

Кроме этого, вместо 4-х унарных, 16-ти бинарных и 256-ти тринарных двоичных логических функций в троичных эвм появляются 27-мь унарных, 19 683-и бинарных и 7 625 597 484 987-мь тринарных (трёхоперандных) троичных логических функций , которые намного мощнее бинарных. Увеличение "логической мощности" в неизвестное число раз, может в 19 683/16 = 1 230 раз, а может в 7 625 597 484 987/256 = 29 787 490 175 раз (нет методики сравнения "логических мощностей"), но намного, может увеличить "логическую мощность" даже медленнодействующих физических систем кодирования и передачи данных, в том числе и трёхуровневой (3-Level CodedTernary (3L CT), "однопроводной").

Подобно тому, как в двоичных эвм деление на 2 осуществляется для целых чисел операцией сдвига кода на 1 разряд вправо, а для чисел в виде мантиссы и экспоненты (с плавающей запятой) вычитанием 1 из экспоненты, в троичных эвм для целых чисел операцией сдвига кода на 1 разряд вправо, а для чисел в виде мантиссы и экспоненты (с плавающей запятой) вычитанием из экспоненты 1 производится деление на 3. Из-за этого свойства троичные алгоритмы, а некоторые троичные алгоритмы работают быстрее двоичных алгоритмов, работают на троичных эвм быстрее, чем на двоичных эвм, что ещё немного увеличивает скорость решения некоторых задач, особенно имеющих троичность, на троичных эвм.

Может быть, что на первых порах пакеты прикладных программ с применением более мощной, чем двоичная логика, троичной логики, особенно в задачах имеющих троичность (обработка RGB-изображений, трёхкоординатные (объёмные) x,y,z-задачи и др.) позволит существенно сократить время решения многих троичных задач на обычных двоичных компьютерах (двоичная эмуляция троичных эвм и троичной логики на двоичных компьютерах).

Удельное натуральнологарифмическое число кодов (чисел) (плотность записи информации) описывается уравнением y = \frac{\ln x}x, где x - основание системы счисления . Из уравнения следует, что наибольшей плотностью записи информации обладает система счисления с основанием равным основанию натуральных логарифмов , то есть равным числу Эйлера (е=2,71…). Эту задачу решали ещё во времена Непера при выборе основания для логарифмических таблиц . Из целочисленных систем счисления наибольшей плотностью записи информации обладает троичная система счисления .

Потенциальные

Трёхуровневые

Амплитуда наибольшего сигнала помехи равной помехоустойчивости с двухуровневыми элементами не более (+/-)Uп/6 (16,7% от Uп), при делении всего диапазона напряжений на три равные части и номинальных напряжениях сигналов в срединах поддиапазонов.

Недостатки:
1. необходимость, для равной помехоустойчивости с обычной двоичной системой, увеличения размаха сигнала в 2 раза,
2. неодинаковость среднего состояния с верхним и нижним состояниями,
3. неодинаковость амплитуд переходов из крайних состояний в среднее (одинарная амплитуда) и переходов из одного крайнего состояния в другое крайнее состояние (двойная амплитуда).

Двухуровневые

Амплитуда наибольшего сигнала помехи не более (+/-)Uп/4 (25% от Uп), при делении всего диапазона напряжений на две равные части и номинальных напряжениях сигналов в срединах поддиапазонов.

Двухбитные

Недостатки:

1. два провода на один разряд.

Трёхбитные

Недостатки:

1. три провода на один разряд.

Смешанные

Узлы троичных ЭВМ

Полный троичный тринарный (трёхоперандный) одноразрядный сумматор является неполной троичной логической тринарной (трёхоперандной) функцией.

Будущее

В работе возможным путём считают комбинацию оптического компьютера с троичной логической системой. По мнению авторов работы, троичный компьютер, использующий волоконную оптику, должен использовать три величины: 0 или ВЫКЛЮЧЕНО, 1 или НИЗКИЙ, 2 или ВЫСОКИЙ.

Будущий потенциал троичной вычислительной техники был также отмечен такой компанией как Hypres , которая активно участвует в троичной вычислительной технике. IBM в своих публикациях также сообщает о троичной вычислительной технике, но активно не участвует в ней.

См. также

Напишите отзыв о статье "Троичный компьютер"

Примечания

  1. . Mузей Гармонии и Золотого Сечения.
  2. . Mузей Гармонии и Золотого Сечения
  3. (англ.)
  4. .
  5. Брусенцов Н. П. // Международная конференция SORUCOM. - 2006.
  6. Брусенцов Н. П. Электромагнитные цифровые устройства с однопроводной передачей трёхзначных сигналов // Магнитные элементы автоматики и вычислительной техники. XIV Всесоюзное совещание (Москва, сентябрь 1972 г.). - Москва: Наука, 1972. - С. 242-244.
  7. emag.iis.ru/arc/infosoc/emag.nsf/f0c3e40261f64c5b432567c80065e37d/72de119fdb628501c3257193004180c8?OpenDocument МГУ - не конкурент, а колыбель науки или о том, что в информационном обществе нельзя без Аристотеля. Н. П. Брусенцов. О «Сетуни», её разработках, производстве
  8. www.trinitas.ru/rus/doc/0226/002a/02260054.htm АКАДЕМИЯ ТРИНИТАРИЗМА. Дмитрий Румянцев. Долой биты! (Интервью с конструктором троичной ЭВМ)
  9. www.trinary.cc/Tutorial/Tutorial.htm
  10. trinary.ru/materials/ternary-binary-based-trigger Троичные триггеры на двоичных логических элементах
  11. D.E. Knuth, The Art of Computer Programming - Volume 2: Seminumerical Algorithms, pp. 190-192. Addison-Wesley, 2nd ed., 1980. ISBN 0-201-03822-6 .

Ссылки

  • (недоступная ссылка с 13-05-2013 (2154 дня) - история )
  • - команда, которая в 2004 г., в Catholic University of Louvain-La-Neuve (UCL) (Франция), выпустила первые полностью троичные микросхемы (64-term SRAM и 4-term сумматор).
  • [ ]

Отрывок, характеризующий Троичный компьютер

– Nous autres nous sommes clements apres la victoire: mais nous ne pardonnons pas aux traitres, [Разбойник, ты мне поплатишься за это. Наш брат милосерд после победы, но мы не прощаем изменникам,] – прибавил он с мрачной торжественностью в лице и с красивым энергическим жестом.
Пьер продолжал по французски уговаривать офицера не взыскивать с этого пьяного, безумного человека. Француз молча слушал, не изменяя мрачного вида, и вдруг с улыбкой обратился к Пьеру. Он несколько секунд молча посмотрел на него. Красивое лицо его приняло трагически нежное выражение, и он протянул руку.
– Vous m"avez sauve la vie! Vous etes Francais, [Вы спасли мне жизнь. Вы француз,] – сказал он. Для француза вывод этот был несомненен. Совершить великое дело мог только француз, а спасение жизни его, m r Ramball"я capitaine du 13 me leger [мосье Рамбаля, капитана 13 го легкого полка] – было, без сомнения, самым великим делом.
Но как ни несомненен был этот вывод и основанное на нем убеждение офицера, Пьер счел нужным разочаровать его.
– Je suis Russe, [Я русский,] – быстро сказал Пьер.
– Ти ти ти, a d"autres, [рассказывайте это другим,] – сказал француз, махая пальцем себе перед носом и улыбаясь. – Tout a l"heure vous allez me conter tout ca, – сказал он. – Charme de rencontrer un compatriote. Eh bien! qu"allons nous faire de cet homme? [Сейчас вы мне все это расскажете. Очень приятно встретить соотечественника. Ну! что же нам делать с этим человеком?] – прибавил он, обращаясь к Пьеру, уже как к своему брату. Ежели бы даже Пьер не был француз, получив раз это высшее в свете наименование, не мог же он отречься от него, говорило выражение лица и тон французского офицера. На последний вопрос Пьер еще раз объяснил, кто был Макар Алексеич, объяснил, что пред самым их приходом этот пьяный, безумный человек утащил заряженный пистолет, который не успели отнять у него, и просил оставить его поступок без наказания.
Француз выставил грудь и сделал царский жест рукой.
– Vous m"avez sauve la vie. Vous etes Francais. Vous me demandez sa grace? Je vous l"accorde. Qu"on emmene cet homme, [Вы спасли мне жизнь. Вы француз. Вы хотите, чтоб я простил его? Я прощаю его. Увести этого человека,] – быстро и энергично проговорил французский офицер, взяв под руку произведенного им за спасение его жизни во французы Пьера, и пошел с ним в дом.
Солдаты, бывшие на дворе, услыхав выстрел, вошли в сени, спрашивая, что случилось, и изъявляя готовность наказать виновных; но офицер строго остановил их.
– On vous demandera quand on aura besoin de vous, [Когда будет нужно, вас позовут,] – сказал он. Солдаты вышли. Денщик, успевший между тем побывать в кухне, подошел к офицеру.
– Capitaine, ils ont de la soupe et du gigot de mouton dans la cuisine, – сказал он. – Faut il vous l"apporter? [Капитан у них в кухне есть суп и жареная баранина. Прикажете принести?]
– Oui, et le vin, [Да, и вино,] – сказал капитан.

Французский офицер вместе с Пьером вошли в дом. Пьер счел своим долгом опять уверить капитана, что он был не француз, и хотел уйти, но французский офицер и слышать не хотел об этом. Он был до такой степени учтив, любезен, добродушен и истинно благодарен за спасение своей жизни, что Пьер не имел духа отказать ему и присел вместе с ним в зале, в первой комнате, в которую они вошли. На утверждение Пьера, что он не француз, капитан, очевидно не понимая, как можно было отказываться от такого лестного звания, пожал плечами и сказал, что ежели он непременно хочет слыть за русского, то пускай это так будет, но что он, несмотря на то, все так же навеки связан с ним чувством благодарности за спасение жизни.
Ежели бы этот человек был одарен хоть сколько нибудь способностью понимать чувства других и догадывался бы об ощущениях Пьера, Пьер, вероятно, ушел бы от него; но оживленная непроницаемость этого человека ко всему тому, что не было он сам, победила Пьера.
– Francais ou prince russe incognito, [Француз или русский князь инкогнито,] – сказал француз, оглядев хотя и грязное, но тонкое белье Пьера и перстень на руке. – Je vous dois la vie je vous offre mon amitie. Un Francais n"oublie jamais ni une insulte ni un service. Je vous offre mon amitie. Je ne vous dis que ca. [Я обязан вам жизнью, и я предлагаю вам дружбу. Француз никогда не забывает ни оскорбления, ни услуги. Я предлагаю вам мою дружбу. Больше я ничего не говорю.]
В звуках голоса, в выражении лица, в жестах этого офицера было столько добродушия и благородства (во французском смысле), что Пьер, отвечая бессознательной улыбкой на улыбку француза, пожал протянутую руку.
– Capitaine Ramball du treizieme leger, decore pour l"affaire du Sept, [Капитан Рамбаль, тринадцатого легкого полка, кавалер Почетного легиона за дело седьмого сентября,] – отрекомендовался он с самодовольной, неудержимой улыбкой, которая морщила его губы под усами. – Voudrez vous bien me dire a present, a qui" j"ai l"honneur de parler aussi agreablement au lieu de rester a l"ambulance avec la balle de ce fou dans le corps. [Будете ли вы так добры сказать мне теперь, с кем я имею честь разговаривать так приятно, вместо того, чтобы быть на перевязочном пункте с пулей этого сумасшедшего в теле?]
Пьер отвечал, что не может сказать своего имени, и, покраснев, начал было, пытаясь выдумать имя, говорить о причинах, по которым он не может сказать этого, но француз поспешно перебил его.
– De grace, – сказал он. – Je comprends vos raisons, vous etes officier… officier superieur, peut etre. Vous avez porte les armes contre nous. Ce n"est pas mon affaire. Je vous dois la vie. Cela me suffit. Je suis tout a vous. Vous etes gentilhomme? [Полноте, пожалуйста. Я понимаю вас, вы офицер… штаб офицер, может быть. Вы служили против нас. Это не мое дело. Я обязан вам жизнью. Мне этого довольно, и я весь ваш. Вы дворянин?] – прибавил он с оттенком вопроса. Пьер наклонил голову. – Votre nom de bapteme, s"il vous plait? Je ne demande pas davantage. Monsieur Pierre, dites vous… Parfait. C"est tout ce que je desire savoir. [Ваше имя? я больше ничего не спрашиваю. Господин Пьер, вы сказали? Прекрасно. Это все, что мне нужно.]
Когда принесены были жареная баранина, яичница, самовар, водка и вино из русского погреба, которое с собой привезли французы, Рамбаль попросил Пьера принять участие в этом обеде и тотчас сам, жадно и быстро, как здоровый и голодный человек, принялся есть, быстро пережевывая своими сильными зубами, беспрестанно причмокивая и приговаривая excellent, exquis! [чудесно, превосходно!] Лицо его раскраснелось и покрылось потом. Пьер был голоден и с удовольствием принял участие в обеде. Морель, денщик, принес кастрюлю с теплой водой и поставил в нее бутылку красного вина. Кроме того, он принес бутылку с квасом, которую он для пробы взял в кухне. Напиток этот был уже известен французам и получил название. Они называли квас limonade de cochon (свиной лимонад), и Морель хвалил этот limonade de cochon, который он нашел в кухне. Но так как у капитана было вино, добытое при переходе через Москву, то он предоставил квас Морелю и взялся за бутылку бордо. Он завернул бутылку по горлышко в салфетку и налил себе и Пьеру вина. Утоленный голод и вино еще более оживили капитана, и он не переставая разговаривал во время обеда.
– Oui, mon cher monsieur Pierre, je vous dois une fiere chandelle de m"avoir sauve… de cet enrage… J"en ai assez, voyez vous, de balles dans le corps. En voila une (on показал на бок) a Wagram et de deux a Smolensk, – он показал шрам, который был на щеке. – Et cette jambe, comme vous voyez, qui ne veut pas marcher. C"est a la grande bataille du 7 a la Moskowa que j"ai recu ca. Sacre dieu, c"etait beau. Il fallait voir ca, c"etait un deluge de feu. Vous nous avez taille une rude besogne; vous pouvez vous en vanter, nom d"un petit bonhomme. Et, ma parole, malgre l"atoux que j"y ai gagne, je serais pret a recommencer. Je plains ceux qui n"ont pas vu ca. [Да, мой любезный господин Пьер, я обязан поставить за вас добрую свечку за то, что вы спасли меня от этого бешеного. С меня, видите ли, довольно тех пуль, которые у меня в теле. Вот одна под Ваграмом, другая под Смоленском. А эта нога, вы видите, которая не хочет двигаться. Это при большом сражении 7 го под Москвою. О! это было чудесно! Надо было видеть, это был потоп огня. Задали вы нам трудную работу, можете похвалиться. И ей богу, несмотря на этот козырь (он указал на крест), я был бы готов начать все снова. Жалею тех, которые не видали этого.]
– J"y ai ete, [Я был там,] – сказал Пьер.
– Bah, vraiment! Eh bien, tant mieux, – сказал француз. – Vous etes de fiers ennemis, tout de meme. La grande redoute a ete tenace, nom d"une pipe. Et vous nous l"avez fait cranement payer. J"y suis alle trois fois, tel que vous me voyez. Trois fois nous etions sur les canons et trois fois on nous a culbute et comme des capucins de cartes. Oh!! c"etait beau, monsieur Pierre. Vos grenadiers ont ete superbes, tonnerre de Dieu. Je les ai vu six fois de suite serrer les rangs, et marcher comme a une revue. Les beaux hommes! Notre roi de Naples, qui s"y connait a crie: bravo! Ah, ah! soldat comme nous autres! – сказал он, улыбаясь, поело минутного молчания. – Tant mieux, tant mieux, monsieur Pierre. Terribles en bataille… galants… – он подмигнул с улыбкой, – avec les belles, voila les Francais, monsieur Pierre, n"est ce pas? [Ба, в самом деле? Тем лучше. Вы лихие враги, надо признаться. Хорошо держался большой редут, черт возьми. И дорого же вы заставили нас поплатиться. Я там три раза был, как вы меня видите. Три раза мы были на пушках, три раза нас опрокидывали, как карточных солдатиков. Ваши гренадеры были великолепны, ей богу. Я видел, как их ряды шесть раз смыкались и как они выступали точно на парад. Чудный народ! Наш Неаполитанский король, который в этих делах собаку съел, кричал им: браво! – Га, га, так вы наш брат солдат! – Тем лучше, тем лучше, господин Пьер. Страшны в сражениях, любезны с красавицами, вот французы, господин Пьер. Не правда ли?]
До такой степени капитан был наивно и добродушно весел, и целен, и доволен собой, что Пьер чуть чуть сам не подмигнул, весело глядя на него. Вероятно, слово «galant» навело капитана на мысль о положении Москвы.
– A propos, dites, donc, est ce vrai que toutes les femmes ont quitte Moscou? Une drole d"idee! Qu"avaient elles a craindre? [Кстати, скажите, пожалуйста, правда ли, что все женщины уехали из Москвы? Странная мысль, чего они боялись?]
– Est ce que les dames francaises ne quitteraient pas Paris si les Russes y entraient? [Разве французские дамы не уехали бы из Парижа, если бы русские вошли в него?] – сказал Пьер.
– Ah, ah, ah!.. – Француз весело, сангвинически расхохотался, трепля по плечу Пьера. – Ah! elle est forte celle la, – проговорил он. – Paris? Mais Paris Paris… [Ха, ха, ха!.. А вот сказал штуку. Париж?.. Но Париж… Париж…]
– Paris la capitale du monde… [Париж – столица мира…] – сказал Пьер, доканчивая его речь.
Капитан посмотрел на Пьера. Он имел привычку в середине разговора остановиться и поглядеть пристально смеющимися, ласковыми глазами.
– Eh bien, si vous ne m"aviez pas dit que vous etes Russe, j"aurai parie que vous etes Parisien. Vous avez ce je ne sais, quoi, ce… [Ну, если б вы мне не сказали, что вы русский, я бы побился об заклад, что вы парижанин. В вас что то есть, эта…] – и, сказав этот комплимент, он опять молча посмотрел.
– J"ai ete a Paris, j"y ai passe des annees, [Я был в Париже, я провел там целые годы,] – сказал Пьер.
– Oh ca se voit bien. Paris!.. Un homme qui ne connait pas Paris, est un sauvage. Un Parisien, ca se sent a deux lieux. Paris, s"est Talma, la Duschenois, Potier, la Sorbonne, les boulevards, – и заметив, что заключение слабее предыдущего, он поспешно прибавил: – Il n"y a qu"un Paris au monde. Vous avez ete a Paris et vous etes reste Busse. Eh bien, je ne vous en estime pas moins. [О, это видно. Париж!.. Человек, который не знает Парижа, – дикарь. Парижанина узнаешь за две мили. Париж – это Тальма, Дюшенуа, Потье, Сорбонна, бульвары… Во всем мире один Париж. Вы были в Париже и остались русским. Ну что же, я вас за то не менее уважаю.]
Под влиянием выпитого вина и после дней, проведенных в уединении с своими мрачными мыслями, Пьер испытывал невольное удовольствие в разговоре с этим веселым и добродушным человеком.
– Pour en revenir a vos dames, on les dit bien belles. Quelle fichue idee d"aller s"enterrer dans les steppes, quand l"armee francaise est a Moscou. Quelle chance elles ont manque celles la. Vos moujiks c"est autre chose, mais voua autres gens civilises vous devriez nous connaitre mieux que ca. Nous avons pris Vienne, Berlin, Madrid, Naples, Rome, Varsovie, toutes les capitales du monde… On nous craint, mais on nous aime. Nous sommes bons a connaitre. Et puis l"Empereur! [Но воротимся к вашим дамам: говорят, что они очень красивы. Что за дурацкая мысль поехать зарыться в степи, когда французская армия в Москве! Они пропустили чудесный случай. Ваши мужики, я понимаю, но вы – люди образованные – должны бы были знать нас лучше этого. Мы брали Вену, Берлин, Мадрид, Неаполь, Рим, Варшаву, все столицы мира. Нас боятся, но нас любят. Не вредно знать нас поближе. И потом император…] – начал он, но Пьер перебил его.
– L"Empereur, – повторил Пьер, и лицо его вдруг привяло грустное и сконфуженное выражение. – Est ce que l"Empereur?.. [Император… Что император?..]
– L"Empereur? C"est la generosite, la clemence, la justice, l"ordre, le genie, voila l"Empereur! C"est moi, Ram ball, qui vous le dit. Tel que vous me voyez, j"etais son ennemi il y a encore huit ans. Mon pere a ete comte emigre… Mais il m"a vaincu, cet homme. Il m"a empoigne. Je n"ai pas pu resister au spectacle de grandeur et de gloire dont il couvrait la France. Quand j"ai compris ce qu"il voulait, quand j"ai vu qu"il nous faisait une litiere de lauriers, voyez vous, je me suis dit: voila un souverain, et je me suis donne a lui. Eh voila! Oh, oui, mon cher, c"est le plus grand homme des siecles passes et a venir. [Император? Это великодушие, милосердие, справедливость, порядок, гений – вот что такое император! Это я, Рамбаль, говорю вам. Таким, каким вы меня видите, я был его врагом тому назад восемь лет. Мой отец был граф и эмигрант. Но он победил меня, этот человек. Он завладел мною. Я не мог устоять перед зрелищем величия и славы, которым он покрывал Францию. Когда я понял, чего он хотел, когда я увидал, что он готовит для нас ложе лавров, я сказал себе: вот государь, и я отдался ему. И вот! О да, мой милый, это самый великий человек прошедших и будущих веков.]
– Est il a Moscou? [Что, он в Москве?] – замявшись и с преступным лицом сказал Пьер.
Француз посмотрел на преступное лицо Пьера и усмехнулся.
– Non, il fera son entree demain, [Нет, он сделает свой въезд завтра,] – сказал он и продолжал свои рассказы.
Разговор их был прерван криком нескольких голосов у ворот и приходом Мореля, который пришел объявить капитану, что приехали виртембергские гусары и хотят ставить лошадей на тот же двор, на котором стояли лошади капитана. Затруднение происходило преимущественно оттого, что гусары не понимали того, что им говорили.
Капитан велел позвать к себе старшего унтер офицера в строгим голосом спросил у него, к какому полку он принадлежит, кто их начальник и на каком основании он позволяет себе занимать квартиру, которая уже занята. На первые два вопроса немец, плохо понимавший по французски, назвал свой полк и своего начальника; но на последний вопрос он, не поняв его, вставляя ломаные французские слова в немецкую речь, отвечал, что он квартиргер полка и что ему ведено от начальника занимать все дома подряд, Пьер, знавший по немецки, перевел капитану то, что говорил немец, и ответ капитана передал по немецки виртембергскому гусару. Поняв то, что ему говорили, немец сдался и увел своих людей. Капитан вышел на крыльцо, громким голосом отдавая какие то приказания.
Когда он вернулся назад в комнату, Пьер сидел на том же месте, где он сидел прежде, опустив руки на голову. Лицо его выражало страдание. Он действительно страдал в эту минуту. Когда капитан вышел и Пьер остался один, он вдруг опомнился и сознал то положение, в котором находился. Не то, что Москва была взята, и не то, что эти счастливые победители хозяйничали в ней и покровительствовали ему, – как ни тяжело чувствовал это Пьер, не это мучило его в настоящую минуту. Его мучило сознание своей слабости. Несколько стаканов выпитого вина, разговор с этим добродушным человеком уничтожили сосредоточенно мрачное расположение духа, в котором жил Пьер эти последние дни и которое было необходимо для исполнения его намерения. Пистолет, и кинжал, и армяк были готовы, Наполеон въезжал завтра. Пьер точно так же считал полезным и достойным убить злодея; но он чувствовал, что теперь он не сделает этого. Почему? – он не знал, но предчувствовал как будто, что он не исполнит своего намерения. Он боролся против сознания своей слабости, но смутно чувствовал, что ему не одолеть ее, что прежний мрачный строй мыслей о мщенье, убийстве и самопожертвовании разлетелся, как прах, при прикосновении первого человека.
Капитан, слегка прихрамывая и насвистывая что то, вошел в комнату.
Забавлявшая прежде Пьера болтовня француза теперь показалась ему противна. И насвистываемая песенка, и походка, и жест покручиванья усов – все казалось теперь оскорбительным Пьеру.
«Я сейчас уйду, я ни слова больше не скажу с ним», – думал Пьер. Он думал это, а между тем сидел все на том же месте. Какое то странное чувство слабости приковало его к своему месту: он хотел и не мог встать и уйти.
Капитан, напротив, казался очень весел. Он прошелся два раза по комнате. Глаза его блестели, и усы слегка подергивались, как будто он улыбался сам с собой какой то забавной выдумке.
– Charmant, – сказал он вдруг, – le colonel de ces Wurtembourgeois! C"est un Allemand; mais brave garcon, s"il en fut. Mais Allemand. [Прелестно, полковник этих вюртембергцев! Он немец; но славный малый, несмотря на это. Но немец.]
Он сел против Пьера.
– A propos, vous savez donc l"allemand, vous? [Кстати, вы, стало быть, знаете по немецки?]
Пьер смотрел на него молча.
– Comment dites vous asile en allemand? [Как по немецки убежище?]
– Asile? – повторил Пьер. – Asile en allemand – Unterkunft. [Убежище? Убежище – по немецки – Unterkunft.]
– Comment dites vous? [Как вы говорите?] – недоверчиво и быстро переспросил капитан.
– Unterkunft, – повторил Пьер.
– Onterkoff, – сказал капитан и несколько секунд смеющимися глазами смотрел на Пьера. – Les Allemands sont de fieres betes. N"est ce pas, monsieur Pierre? [Экие дурни эти немцы. Не правда ли, мосье Пьер?] – заключил он.
– Eh bien, encore une bouteille de ce Bordeau Moscovite, n"est ce pas? Morel, va nous chauffer encore une pelilo bouteille. Morel! [Ну, еще бутылочку этого московского Бордо, не правда ли? Морель согреет нам еще бутылочку. Морель!] – весело крикнул капитан.
Морель подал свечи и бутылку вина. Капитан посмотрел на Пьера при освещении, и его, видимо, поразило расстроенное лицо его собеседника. Рамбаль с искренним огорчением и участием в лице подошел к Пьеру и нагнулся над ним.
– Eh bien, nous sommes tristes, [Что же это, мы грустны?] – сказал он, трогая Пьера за руку. – Vous aurai je fait de la peine? Non, vrai, avez vous quelque chose contre moi, – переспрашивал он. – Peut etre rapport a la situation? [Может, я огорчил вас? Нет, в самом деле, не имеете ли вы что нибудь против меня? Может быть, касательно положения?]


Информация, которой оперирует компьютер, так или иначе раскладывается на единицы и нули - графика, музыка, тексты, алгоритмы программ. Все просто и понятно: «включено» - «выключено», «есть сигнал» - «нет сигнала». Либо «истина», либо «ложь» - двоичная логика. А между тем еще в 1961-м, в год первого полета человека в космос, в Советском Союзе наладили производство необычных вычислительных машин, оперировавших не двоичной, а троичной логикой.

В принципе, у троичной системы счисления было не меньше шансов, чем у двоичной. Кто знает, по какому пути развития пошел бы технический прогресс, если бы «трайты» одержали победу над «байтами». Как выглядели бы современные смартфоны или GPS-навигаторы, как отразилось бы значение «может быть» на их быстродействии? Сложно сказать. Мы проанализируем этот вопрос, а вам предоставим возможность сделать выводы самостоятельно.

Машина Фоулера


Справедливости ради сразу следует заметить: первую вычислительную машину с троичной системой счисления задолго до советских конструкторов построил английский изобретатель-самоучка Томас Фоулер в далеком 1840 году. Его машина была механической и полностью деревянной.

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

Затем он пошел дальше, решив полностью автоматизировать расчеты по таблицам, и построил счетную машину. Английская патентная система того времени была несовершенна, предыдущее изобретение Фоулера (термосифон для систем парового отопления) было скопировано с минимальными изменениями и запатентовано множеством недобросовестных «изобретателей», поэтому, опасаясь, что его идею снова могут украсть, он решил изготовить машину в единственном экземпляре и - из дерева. Так как дерево - материал ненадежный, для обеспечения достаточной точности вычислений Фоулеру пришлось сделать машину весьма громоздкой, около 2 м в длину. Впрочем, как писал сам изобретатель в сопроводительной записке, отправляя машину в Лондонский королевский колледж, «если бы ее можно было изготовить из металла, она бы оказалась не больше пишущей машинки».

Машина Фоулера была проста, эффективна и использовала новаторский подход: вместо десятичной системы счисления оперировала «триадами», то есть степенями тройки. К сожалению, замечательное изобретение так и осталось незамеченным, оригинал машины не сохранился до наших времен, и о ее устройстве известно только из сочинения Фоулера-младшего, написавшего биографию отца.

Первые советские опыты


О практическом использовании троичной системы счисления забыли более чем на сто лет. Следующими, кто вернулся к этой идее, были инженеры с кафедры вычислительной математики механико-математического факультета МГУ.

Все началось в 1954 году: кафедре должны были передать электронно-вычислительную машину М-2, но не сложилось. А машину-то ждали, готовились ее устанавливать и налаживать, с нею связывались определенные ожидания и планы. И кто-то предложил: давайте построим свою.

Взяли - и построили, благо в то время в МГУ существовали некоторые теоретические наработки. Руководителем группы, осуществлявшей проектирование и изготовление машины, был назначен Николай Петрович Брусенцов. Задача была такая: сделать машину предельно простой и недорогой (потому что никакого специального финансирования у проекта не было). Поначалу собирались делать двоичную ЭВМ, но позже - как раз из соображений экономичности и простоты архитектуры - пришли к решению, что она будет троичной, использующей «естественный» троичный симметричный код, простейший из симметричных кодов.

К концу 1958 года был закончен первый экземпляр машины, которой дали имя «Сетунь» - по названию московской речки. «Сетунь» была относительно невелика для вычислительных машин того поколения и занимала площадь 25−30 м2. Благодаря своей изящной архитектуре она была способна выполнять 2000−4500 операций в секунду, обладала оперативной памятью в 162 девятитритных ячейки и запоминающим устройством на магнитном барабане емкостью 36−72 страницы по 54 ячейки каждая. Машинных команд было всего 27 (причем три так и остались невостребованными), благодаря чему программный код получался весьма экономным; программирование непосредственно в машинных кодах было настолько простым, что для «Сетуни» даже не разрабатывали свой ассемблер. Данные вводили в машину с перфоленты, результаты выводились на телетайп (причем, что любопытно, отрицательные цифры печатались как обычные, но перевернутые кверху ногами). При эксплуатации машина показывала 95−98% полезного времени (расходуемого на решение задач, а не на поиск неисправностей и устранение неполадок), а в те времена очень хорошим результатом считалось, если машина могла дать хотя бы 60%.

На межведомственных испытаниях 1960 года машину признали пригодной для массового использования в КБ, лабораториях и вузах, последовало распоряжение о серийном выпуске «Сетуни» на Казанском заводе математических машин. С 1961 по 1965 год было построено 50 экземпляров, которые работали по всей стране. Затем производство свернули. Почему перестали выпускать «Сетунь», если она успешно использовалась всюду от Калининграда до Якутска? Одна из возможных причин в том, что компьютер оказался слишком дешевым в производстве и потому невыгодным для завода. Другая причина- косность бюрократических структур, противодействие ощущалось на каждом из этапов.

Впоследствии Николай Брусенцов и Евгений Жоголев разработали более современную версию машины, использовавшую те же принципы троичности, - «Сетунь-70″, но она так и не пошла в серийное производство, единственный опытный образец работал в МГУ до 1987 года.

Трехзначная логика


Двухзначная математическая логика, которая повсеместно царит в мире компьютерной и прочей «интеллектуальной» техники, по мнению создателя троичного компьютера Николая Брусенцова, не соответствует здравому смыслу: «закон исключенного третьего» отрезает иные заключения, кроме «истины» и «не-истины», а между тем процесс познания реальности человеком отнюдь не сводится к дихотомии «да/нет». Поэтому, утверждает Брусенцов, чтобы стать интеллектуальным, компьютеру следует быть троичным.

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

Логике, оперирующей тремя значениями, естественным образом соответствует троичная система счисления - троичная симметричная, если говорить точнее, простейшая из симметричных систем. К этой системе впервые обратился Фибоначчи для решения своей «задачи о гирях».

В троичной симметричной системе используются цифры: –1, 0 и 1 (или, как их еще обозначают, –, 0 и +). Преимущества ее как симметричной системы состоят в том, что, во-первых, не нужно как-то особо отмечать знак числа - число отрицательно, если его ведущий разряд отрицателен, и наоборот, а инвертирование (смена знака) числа производится путем инвертирования всех его разрядов; во-вторых, округление здесь не требует каких-то специальных правил и производится простым обнулением младших разрядов.

Кроме того, из всех позиционных систем счисления троичная наиболее экономична - в ней можно записать большее количество чисел, нежели в любой другой системе, при равном количестве используемых знаков: так, например, в десятичной системе, чтобы представить числа от 0 до 999, потребуется 30 знаков (три разряда, десять возможных значений для каждого), в двоичной системе теми же тридцатью знаками можно закодировать числа в диапазоне от 0 до 32767, а в троичной - от 0 до 59048. Самой экономичной была бы система счисления с основанием, равным числу Эйлера (e = 2,718…), и 3 - наиболее близкое к нему целое.

Если в привычных нам двоичных компьютерах информация измеряется в битах и байтах, то компьютеры на троичной системе счисления оперируют новыми единицами: тритами и трайтами. Трит - это один троичный разряд; подобно тому, как бит может принимать значения 0 и 1 («ложь» и"истина»), трит может быть (+), (0) или (–) (то есть «истина», «неизвестно» или «ложь»).

Один трайт традиционно (так было на «Сетуни») равен шести тритам и может принимать 729 различных значений (байт - только 256). Впрочем, возможно, в будущем трайты станут 9- или 27-разрядными, что естественнее, так как это степени тройки.

Настоящее и будущее троичных компьютеров


После «Сетуни» было несколько экспериментальных проектов, осуществлявшихся энтузиастами (таких, например, как американские Ternac и TCA2), однако это были либо весьма несовершенные машины, далекие от двоичных аналогов, либо и вовсе программные эмуляции на двоичном «железе».

Основная причина состоит в том, что использование в компьютерах троичных элементов пока не дает никаких существенных преимуществ перед двоичными: выпуск последних налажен массово, они проще и дешевле по себестоимости. Даже будь сейчас построен троичный компьютер, недорогой и по своим характеристикам сравнимый с двоичными, он должен быть полностью совместим с ними. Уже разработчики «Сетуни-70» столкнулись с необходимостью обеспечить совместимость: чтобы обмениваться информацией с другими университетскими машинами, пришлось добавить возможность читать с перфолент двоичные данные и при выводе также конвертировать данные в двоичный формат.

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

Одно из таких исследовательских направлений - поиск альтернативных способов увеличения производительности процессоров. Каждые 24 месяца число транзисторов в кристалле процессора увеличивается примерно вдвое - эта тенденция известна как «закон Мура», и вечно продолжаться она не может: масштабы элементов и связей можно измерить в нанометрах, и очень скоро разработчики столкнутся с целым рядом технических сложностей. Кроме того, есть и экономические соображения - чем меньше, тем дороже разработки и производство. И с какого-то момента окажется дешевле поискать альтернативные способы делать процессоры мощнее, нежели продолжать гонку за нанометрами, - обратиться к технологиям, от которых раньше отказывались как от нерентабельных. Переход от однородных кремниевых структур к гетеропереходным проводникам, состоящим из слоев различных сред и способным генерировать несколько уровней сигнала вместо привычных «есть» и «нет», - это возможность повысить интенсивность обработки информации без увеличения количества элементов (и дальнейшего уменьшения их размеров). При этом от двухзначной логики придется перейти к многозначным - трехзначной, четырехзначной и т. д.

Другое направление, также нацеленное на увеличение производительности, - разработки в области асинхронных процессоров. Известно, что обеспечение синхронности процессов в современных компьютерах изрядно усложняет архитектуру и расходует процессорные ресурсы - до половины всех транзисторов в чипе работает на обеспечение этой самой синхронности. Компания Theseus Logic предлагает использовать «расширенную двоичную» (фактически - троичную) логику, где помимо обычных значений «истина» и «ложь» есть отдельный сигнал «NULL», который используется для самосинхронизации процессов. В этом же направлении работают еще несколько исследовательских групп.

Есть и более фантастические направления, где оправдано использование трехзначной логики: оптические и квантовые компьютеры.

Информация, которой оперирует компьютер, так или иначе раскладывается на единицы и нули — графика, музыка, тексты, алгоритмы программ. Все просто и понятно: «включено» — «выключено», «есть сигнал» — «нет сигнала». Либо« истина», либо« ложь» — двоичная логика. А между тем еще в 1961-м, в год первого полета человека в космос, в Советском Союзе наладили производство необычных вычислительных машин, оперировавших не двоичной, а троичной логикой

«Лишняя» переменная Недвухзначность логики восходит к основоположнику первой законченной логической теории — Аристотелю, который между утверждением и антиутверждением помещал третье «привходящее» — «может да, а может нет». В последующем развитии логика была упрощена за счет отказа от этого третьего состояния и в таком виде оказалась необычайно живучей, несмотря на свое несоответствие нечеткой, не всегда раскладывающейся на «да» и «нет» действительности. В разные века «расширить» логику пытались Оккам, Лейбниц, Гегель, Кэрролл и некоторые другие мыслители, в конечном же виде трехзначную логику разработал в начале XX века польский ученый Ян Лукасевич.


«Сетунь» Несмотря на то что впоследствии команда Брусенцова разработала вторую модель «Сетунь-70», а в США в 1970-х годах шла работа над аналогичной ЭВМ Ternac, «Сетунь» осталась единственным в истории троичным компьютером, производившимся серийно.

В принципе, у троичной системы счисления было не меньше шансов, чем у двоичной. Кто знает, по какому пути развития пошел бы технический прогресс, если бы «трайты» одержали победу над «байтами». Как выглядели бы современные смартфоны или GPS-навигаторы, как отразилось бы значение «может быть» на их быстродействии? Сложно сказать. Мы проанализируем этот вопрос, а вам предоставим возможность сделать выводы самостоятельно.

Машина Фоулера

Справедливости ради сразу следует заметить: первую вычислительную машину с троичной системой счисления задолго до советских конструкторов построил английский изобретатель-самоучка Томас Фоулер в далеком 1840 году. Его машина была механической и полностью деревянной.

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

Затем он пошел дальше, решив полностью автоматизировать расчеты по таблицам, и построил счетную машину. Английская патентная система того времени была несовершенна, предыдущее изобретение Фоулера (термосифон для систем парового отопления) было скопировано с минимальными изменениями и запатентовано множеством недобросовестных «изобретателей», поэтому, опасаясь, что его идею снова могут украсть, он решил изготовить машину в единственном экземпляре и — из дерева. Так как дерево — материал ненадежный, для обеспечения достаточной точности вычислений Фоулеру пришлось сделать машину весьма громоздкой, около 2 м в длину. Впрочем, как писал сам изобретатель в сопроводительной записке, отправляя машину в Лондонский королевский колледж, «если бы ее можно было изготовить из металла, она бы оказалась не больше пишущей машинки».

Машина Фоулера была проста, эффективна и использовала новаторский подход: вместо десятичной системы счисления оперировала «триадами», то есть степенями тройки. К сожалению, замечательное изобретение так и осталось незамеченным, оригинал машины не сохранился до наших времен, и о ее устройстве известно только из сочинения Фоулера-младшего, написавшего биографию отца.

Первые советские опыты

О практическом использовании троичной системы счисления забыли более чем на сто лет. Следующими, кто вернулся к этой идее, были инженеры с кафедры вычислительной математики механико-математического факультета МГУ.

Все началось в 1954 году: кафедре должны были передать электронно-вычислительную машину М-2, но не сложилось. А машину-то ждали, готовились ее устанавливать и налаживать, с нею связывались определенные ожидания и планы. И кто-то предложил: давайте построим свою.

Взяли — и построили, благо в то время в МГУ существовали некоторые теоретические наработки. Руководителем группы, осуществлявшей проектирование и изготовление машины, был назначен Николай Петрович Брусенцов. Задача была такая: сделать машину предельно простой и недорогой (потому что никакого специального финансирования у проекта не было). Поначалу собирались делать двоичную ЭВМ, но позже — как раз из соображений экономичности и простоты архитектуры — пришли к решению, что она будет троичной, использующей «естественный» троичный симметричный код, простейший из симметричных кодов.

К концу 1958 года был закончен первый экземпляр машины, которой дали имя «Сетунь» — по названию московской речки. «Сетунь» была относительно невелика для вычислительных машин того поколения и занимала площадь 25−30 м2. Благодаря своей изящной архитектуре она была способна выполнять 2000−4500 операций в секунду, обладала оперативной памятью в 162 девятитритных ячейки и запоминающим устройством на магнитном барабане емкостью 36−72 страницы по 54 ячейки каждая. Машинных команд было всего 27 (причем три так и остались невостребованными), благодаря чему программный код получался весьма экономным; программирование непосредственно в машинных кодах было настолько простым, что для «Сетуни» даже не разрабатывали свой ассемблер. Данные вводили в машину с перфоленты, результаты выводились на телетайп (причем, что любопытно, отрицательные цифры печатались как обычные, но перевернутые кверху ногами). При эксплуатации машина показывала 95−98% полезного времени (расходуемого на решение задач, а не на поиск неисправностей и устранение неполадок), а в те времена очень хорошим результатом считалось, если машина могла дать хотя бы 60%.

На межведомственных испытаниях 1960 года машину признали пригодной для массового использования в КБ, лабораториях и вузах, последовало распоряжение о серийном выпуске «Сетуни» на Казанском заводе математических машин. С 1961 по 1965 год было построено 50 экземпляров, которые работали по всей стране. Затем производство свернули. Почему перестали выпускать «Сетунь», если она успешно использовалась всюду от Калининграда до Якутска? Одна из возможных причин в том, что компьютер оказался слишком дешевым в производстве и потому невыгодным для завода. Другая причина- косность бюрократических структур, противодействие ощущалось на каждом из этапов.

Впоследствии Николай Брусенцов и Евгений Жоголев разработали более современную версию машины, использовавшую те же принципы троичности, — «Сетунь-70″, но она так и не пошла в серийное производство, единственный опытный образец работал в МГУ до 1987 года.

Трехзначная логика

Двухзначная математическая логика, которая повсеместно царит в мире компьютерной и прочей «интеллектуальной» техники, по мнению создателя троичного компьютера Николая Брусенцова, не соответствует здравому смыслу: «закон исключенного третьего» отрезает иные заключения, кроме «истины» и «не-истины», а между тем процесс познания реальности человеком отнюдь не сводится к дихотомии «да/нет». Поэтому, утверждает Брусенцов, чтобы стать интеллектуальным, компьютеру следует быть троичным.

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

Логике, оперирующей тремя значениями, естественным образом соответствует троичная система счисления — троичная симметричная, если говорить точнее, простейшая из симметричных систем. К этой системе впервые обратился Фибоначчи для решения своей «задачи о гирях».

В троичной симметричной системе используются цифры: -1, 0 и 1 (или, как их еще обозначают, -, 0 и +). Преимущества ее как симметричной системы состоят в том, что, во‑первых, не нужно как-то особо отмечать знак числа — число отрицательно, если его ведущий разряд отрицателен, и наоборот, а инвертирование (смена знака) числа производится путем инвертирования всех его разрядов; во‑вторых, округление здесь не требует каких-то специальных правил и производится простым обнулением младших разрядов.

Кроме того, из всех позиционных систем счисления троичная наиболее экономична — в ней можно записать большее количество чисел, нежели в любой другой системе, при равном количестве используемых знаков: так, например, в десятичной системе, чтобы представить числа от 0 до 999, потребуется 30 знаков (три разряда, десять возможных значений для каждого), в двоичной системе теми же тридцатью знаками можно закодировать числа в диапазоне от 0 до 32767, а в троичной — от 0 до 59048. Самой экономичной была бы система счисления с основанием, равным числу Эйлера (e = 2,718…), и 3 — наиболее близкое к нему целое.

Если в привычных нам двоичных компьютерах информация измеряется в битах и байтах, то компьютеры на троичной системе счисления оперируют новыми единицами: тритами и трайтами. Трит — это один троичный разряд; подобно тому, как бит может принимать значения 0 и 1 («ложь» и"истина»), трит может быть (+), (0) или (-) (то есть «истина», «неизвестно» или «ложь»).

Один трайт традиционно (так было на «Сетуни») равен шести тритам и может принимать 729 различных значений (байт — только 256). Впрочем, возможно, в будущем трайты станут 9- или 27-разрядными, что естественнее, так как это степени тройки.

Настоящее и будущее троичных компьютеров

После «Сетуни» было несколько экспериментальных проектов, осуществлявшихся энтузиастами (таких, например, как американские Ternac и TCA2), однако это были либо весьма несовершенные машины, далекие от двоичных аналогов, либо и вовсе программные эмуляции на двоичном «железе».

Основная причина состоит в том, что использование в компьютерах троичных элементов пока не дает никаких существенных преимуществ перед двоичными: выпуск последних налажен массово, они проще и дешевле по себестоимости. Даже будь сейчас построен троичный компьютер, недорогой и по своим характеристикам сравнимый с двоичными, он должен быть полностью совместим с ними. Уже разработчики «Сетуни-70» столкнулись с необходимостью обеспечить совместимость: чтобы обмениваться информацией с другими университетскими машинами, пришлось добавить возможность читать с перфолент двоичные данные и при выводе также конвертировать данные в двоичный формат.

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

Одно из таких исследовательских направлений — поиск альтернативных способов увеличения производительности процессоров. Каждые 24 месяца число транзисторов в кристалле процессора увеличивается примерно вдвое — эта тенденция известна как «закон Мура», и вечно продолжаться она не может: масштабы элементов и связей можно измерить в нанометрах, и очень скоро разработчики столкнутся с целым рядом технических сложностей. Кроме того, есть и экономические соображения — чем меньше, тем дороже разработки и производство. И с какого-то момента окажется дешевле поискать альтернативные способы делать процессоры мощнее, нежели продолжать гонку за нанометрами, — обратиться к технологиям, от которых раньше отказывались как от нерентабельных. Переход от однородных кремниевых структур к гетеропереходным проводникам, состоящим из слоев различных сред и способным генерировать несколько уровней сигнала вместо привычных «есть» и «нет», — это возможность повысить интенсивность обработки информации без увеличения количества элементов (и дальнейшего уменьшения их размеров). При этом от двухзначной логики придется перейти к многозначным — трехзначной, четырехзначной и т. д.

Другое направление, также нацеленное на увеличение производительности, — разработки в области асинхронных процессоров. Известно, что обеспечение синхронности процессов в современных компьютерах изрядно усложняет архитектуру и расходует процессорные ресурсы — до половины всех транзисторов в чипе работает на обеспечение этой самой синхронности. Компания Theseus Logic предлагает использовать «расширенную двоичную» (фактически — троичную) логику, где помимо обычных значений «истина» и «ложь» есть отдельный сигнал «NULL», который используется для самосинхронизации процессов. В этом же направлении работают еще несколько исследовательских групп.

Есть и более фантастические направления, где оправдано использование трехзначной логики: оптические и квантовые компьютеры.