Показано с 1 по 5 из 5

Тема: Троичное мышление

  1. #1
    Регистрация
    14.06.2006
    Адрес
    Волгоград
    Сообщений
    202

    По умолчанию Троичное мышление

    "Сетунь" - единственный серийный троичный компьютер.
    Sep. 11th, 2013 at 8:03 PM
    https://masterok.livejournal.com/1334660.html

    «Сетунь» представляет собой малую ЭВМ, построенную на принципах троичной логики, другими словами это троичный компьютер. Она была разработана в 1959 году в стенах вычислительного центра Московского государственного университета. Этот уникальный троичный компьютер, практически не имеет аналогов не только в данный момент времени, но и вообще в истории вычислительной техники.

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

    Из истории вычислительной техники известно, что вначале число разрядов в машинном слове определялось разными конструкторами по разному, почти произвольно. Сам байт первоначально был шестью двоичными разрядами, но шестиразрядный байт не прижился, так как был слабо связан с двоичной системой (6 слабо связано с двоичной системой). 8 разрядов являются 3-ей степенью двойки, то есть лучше связаны с двоичной системой, поэтому позже от шестиразрядного байта перешли к восьмиразрядному байту, но и эта система не совершенна из-за некратной двум 3-ей степени двойки, 4-я степень двойки лучше связана с двоичной системой счисления.





    Более совершенным рядом в двоичной системе является ряд 2, 4, 16, 256, … , но из-за аппаратных трудностей сразу от 4-х разрядов к 16-ти перейти было трудно, поэтому появились 8-ми разрядные ЭВМ, как предшественники 16-ти разрядных ЭВМ. В настоящее время из-за аппаратных трудностей 32-х, 64-х и 128-ми разрядные ЭВМ являются предшественниками 256-ти разрядных ЭВМ.

    Можно выделить следующие основные этапы развития троичного компьютера:
    - в период с середины 12-13 веков Фибоначчи смог доказать, что троичная система счисления может быть более экономичной по сравнению с двоичной – в случае, когда при условном взвешивании можно класть гири не на одну чашу весов, а на обе;
    - в 1840 году появилась первая троичная вычислительная машина, ставшая вообще одной из первых механических вычислительных машин;
    - в период с 1956 по 1958 годы Н.П. Брусенцов создал первый троичный компьютер серийного производства – ту самую «Сетунь»;
    - позднее, в 1970 году, Брусенцов выпустил вторую версию своего детища, получившего имя «Сетунь-70»;
    - долгое время данное направление не имело практически никакого развития, однако, в 2008 году была построена трёхтритная цифровая компьютерная система TCA2, которая, в отличие от «Сетуни», работала не на ферритдиодных магнитных усилителях переменного тока, а на интегральных транзисторах. Но это уже, как говорится, совсем другая история.







    Руководитель проекта — Н. П. Брусенцов, основные разработчики: Е. А. Жоголев, В. В. Веригин, С. П. Маслов, А. М. Тишулина. Разработка машины была предпринята по инициативе и осуществлялась при активном участии виднейшего советского математика С. Л. Соболева.

    Казанским заводом Математических машин было произведено 50 компьютеров Сетунь, 30 из них использовались в университетах СССР.

    Автор «Сетуни» на основе обычной двоичной ферритодиодной ячейки Гутенмахера разработал её уникальный троичный аналог, работа которого была построена на двухбитном троичном коде. Всё это выглядело следующим образом – один трит (так называется единица измерения в данном случае) записывается в два двоичных разряда.

    Помимо трита, в троичной логике, используемой «Сетуньей», аналогично двоичной системе, в которой есть бит и байт, применяется термин «трайт», являющийся минимальной непосредственно адресуемой единицей главной памяти «Сетуни», равный шести тритам, что примерно равен девяти с половиной битов. Таким образом, получается, что трайт чуть больше привычной единицы измерения двоичной системы байта. Два трайта равны 19 битам, три трайта – почти 29 битам и т.д. Он может принимать значения в довольно широком диапазоне – от -364 до 364.

    Число разрядов процессора — 9 тритов.
    Тактовая частота процессора — 200 кГц.

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

    Стоит отметить забавный факт – отрицательные троичные и девятеричные цифры, выводимые на «Сетуни» на печать, отображались перевёрнутыми «вверх ногами», то есть повёрнутыми на 180 градусов.







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

    Говоря о будущем таких машин, как «Сетунь» (то есть троичных компьютеров), известный американский учёный Дональд Кнут, отмечал, что они занимают очень мало место в отрасли вычислительной техники, что объясняется массовым засильем двоичных компонентов, производимых в огромных количествах. Но, поскольку троичная логика гораздо эффектнее, а главное, эффективнее двоичной, не исключено, что в недалёком будущем к ней вернутся.

    На данный момент вполне реальным выглядит вариант использования троичного компьютера в сочетании с волоконной оптикой, имеющий три заданных значения: 0, соответствующий состоянию Выключено, 1 – состояние Низкий и 2 – состояние Высокий.









    Вот есть такой разговор с создателем этого компьютера от автора Д.Г. Румянцева:

    Дмитрий Румянцев: Так, собственно, почему троичная машина?

    Николай Брусенцов: Тогда задача была очень простая: мы должны были для МГУ получить машину М-2, которую сделали в лаборатории Брука. Но получилась неувязочка. На выборах академиков Сергей Львович Соболев — наш руководитель — проголосовал не за Брука, а за Лебедева. Брук обиделся и машину не дал. Я пришел к Соболеву и спросил: чем же я теперь буду заниматься? Он мне отвечает: „А давайте свою машину сделаем”. Это было в конце 1955 года.

    В то время транзисторы были еще недоступны, но было ясно, что машина не должна быть ламповой. Лампы имеют короткий срок службы, и машины на ламповой базе большую часть времени простаивали, потому что их вечно чинили. Ламповая машина работала в лучшем случае в течение нескольких часов, потом нужно было искать очередную неисправность. Юлий Израилевич Гутенмахер строил машину ЛЭМ-1 на феррит-диодных элементах. Мне пришла в голову мысль, что раз транзисторов нет, то можно попытаться делать ЭВМ на этих элементах. Соболев, которого все очень уважали, договорился, чтобы я побывал на стажировке у Гутенмахера. Я все детально изучил. Поскольку по образованию я радиоинженер, то сразу увидел: не все нужно делать так, как делают они. Главное, что я увидел: они используют пару сердечников под каждый бит — рабочий и компенсационный. И мне пришла в голову идея: а что, если заставить компенсационный сердечник работать. Тогда каждая ячейка становится трехзначной. В результате получилось, что в «Сетуни» количество сердечников было в семь раз меньше, чем в ЛЭМ-1. При этом «Сетунь» имела почти вдвое большую разрядность.

    Тогда в МГУ как раз собирались получать большую машину «Стрела», создали вычислительный центр. Сергей Львович предусмотрел в нем отдел электроники — мой отдел. И мы должны были создать машину с нуля. Условия такие: машина должна быть небольшой, надежной, простой в освоении и использовании — короче, машина широкого назначения, для учебных заведений, лабораторий и т. п. Когда я выяснил, что можно воспользоваться троичной системой счисления, я сказал об этом Сергею Львовичу. Он полностью все одобрил. Уверен, что другой на его месте сказал бы: „Да ты что, все делают двоичные, а ты куда?”







    Дмитрий Румянцев: Он фактически дал полный карт-бланш?

    Николай Брусенцов: Да. В нашей лаборатории никогда не работало более двух десятков человек, считая девочек, которые мотали сердечники. А в начале у меня вообще было три-четыре сотрудника. Я должен сказать: для того, чтобы разрабатывать компьютеры, совершенно не нужны тысячные институты. Мы работали в компании с нашим программистским отделом, который возглавлял Е.А. Жоголев. То, что затем получило название “архитектура машины”, создавалось нами вместе. Он предлагал программистские идеи, а я думал, насколько их можно реализовать на аппаратном уровне. В конечном итоге мы создали всего 24 машинных команды. Многие до сих пор в это не верят. И в дальнейшем архитектура «Сетуни» не подверглась никаким изменениям. Все серийные машины были архитектурно точно такими же, ну, может, слегка адаптированы под производство. Начав в 1956 году, мы уже через два с половиной года, в 1958 году, сделали образец, который работал. И вот тут-то началось нечто несуразное.

    Осенью 1959 года нас пригласили на Коллегию Государственного Комитета Радиоэлектроники — ГКРЭ. И там мы узнали, что наша машина не нужна. И Госплан, и ВСНХ заняли отрицательную позицию. На Коллегии нас записали в черный список закрываемых разработок. Мы никогда никаких дополнительных денег на создание машины ни копейки не получали. Мы работали только за зарплату здесь, в МГУ. Использовали оборудование, списываемое заводами при снятии изделий с производства. Тем не менее, ради экономии средств нас решили закрыть.

    Дмитрий Румянцев: Но какое-то объяснение этому должно быть?

    Николай Брусенцов: Соболев спросил: „А вы хотя бы видели эту машину, ведь она уже существует?” Директор СКБ-245 В.В. Александров ответил: „Нам не надо ни видеть, ни знать — должна быть авторитетная бумага с печатями и подписями”. После Коллегии Сергей Львович пошел в ЦК КПСС. Уже вечером к нам приехал сотрудник отдела ЦК Ф.К. Кочетов и привез с собой М.К. Сулима — начальника восьмого управления ГКРЭ. «Сетунь» нормально работала и производила необыкновенно хорошее впечатление. Обычно ведь как было: на выставке стоят машины, а сзади люди в белых халатах что-то там налаживают. У нас все работало как часы. Ну, понятно, после этого закрывать нас не стали, ведь машина уже сделана. Было принято решение провести ее межведомственные испытания. Испытания были проведены в апреле 1960 г. На них «Сетунь» показала 95% полезного времени. А в то время, если машина показывала 60%, это считалось очень хорошим результатом.

    Дмитрий Румянцев: А что значит термин “полезное время”?

    Николай Брусенцов: Вы включаете машину, прогоняете тесты, начинаете решать задачу, происходит сбой, все повторяете. И так до тех пор, пока задача не будет решена. Полезное время — это все то время, которое машина занята решением задач, а не тестово-наладочными работами.

    После этих испытаний было принято постановление Совмина об организации серийного производства. Мы не очень удачно выбрали Казанский завод, лучше бы Астраханский. Астраханцы потом взялись делать элементы к этой машине и делали их превосходно. Элемент стоил 3,5 руб. Конечно, никаких высоких технологий там не было. ЭВМ «Сетунь» выпускали по 10-12 штук в год, то есть вроде бы выполняется постановление Совмина СССР, а на самом деле — нет. Притом, что было очень много заявок не только внутри страны, но и из-за рубежа. Во-первых, разумеется, из соцстран, но также и из таких стран, как США и Англия, где разработчикам было очень интересно посмотреть, что это за троичная штука.

    Дмитрий Румянцев: Американский аналог «Сетуни» — это PDP-8, на которой тинэйджер Билл Гейтс составлял свои первые программы?

    Николай Брусенцов: Да. Кстати, интересно сравнить «Сетунь» и PDP-8. Процессор PDP-8 — восьмибитный. У «Сетуни» процессор в пересчете на биты был 30-битным. PDP-8 стоила 20 тысяч долларов без всякой периферии, только один процессорный блок. Считалось, что это рекордно низкая цена. «Сетунь» стоила 27,5 тысяч рублей со всей периферией. Чехи считали, что могли хорошо продавать «Сетунь» в соответствии с рыночными ценами и получать порядка полумиллиона долларов прибыли с каждой машины. По их приглашению я ездил в Чехословакию, мне показали завод, который планировалось использовать для производства машины «Сетунь», — «Зброевка Яна Швермы». Этот завод, кстати, во время войны делал самые лучшие пушки для немецкой армии, вроде нашей ЗИС-3. Завод меня просто восхитил. Они уже приготовили для «Сетуни» магнитные барабаны, печатающее устройство, устройство ввода. В общем, все было готово для производства «Сетуни». И они мне задают вопрос: „Ну, когда же, наконец, мы получим документацию? Нам обещали еще в декабре, а ее до сих пор нет”. А я молиться готов был на такой завод — настоящая высокая культура производства.

    Когда я вернулся в СССР, меня вызвал референт Косыгина и попросил передать чешским товарищам, как тогда говорилось, что документацию на «Сетунь» они получат сразу после освоения крупносерийного производства этой машины в Советском Союзе. Но какое к черту крупносерийное производство, когда принимались все возможные меры, чтобы заморозить «Сетунь». Понятно, что тут не обошлось без ГКРЭ. Тот же самый Сулим был заместителем главного конструктора М-20. А с М-20 в КБ провозились 2,5 года, прежде чем передать ее на завод. Для «Сетуни» никакого КБ не дали — завод указан, езжайте и выпускайте. Хорошо В.М. Глушков предложил свое КБ за символическую плату в сто тысяч рублей, чтобы выпустить конструкторскую документацию.

    Дмитрий Румянцев: Сто тысяч рублей — это символическая плата?

    Николай Брусенцов: Ну конечно! Те 2,5 года, которые в КБ разрабатывали М-20, обошлись в десятки миллионов рублей. Что такое КБ того времени? Это несколько сот человек с высокой оплатой по первой категории и т. д. Позднее я узнал, что чехам говорили: все равно мы эту машину снимем с производства, так что вы ее не заказывайте. Вот так все и закончилось с «Сетунью». В начале 70-х нас из главного корпуса ВЦ переселили на чердак. «Сетунь», несмотря на то, что она была полностью исправной и загруженной задачами, через пару лет была уничтожена — ее разрезали и выкинули на свалку.

    Дмитрий Румянцев: А «Сетунь-70»?

    Николай Брусенцов: К 100-летию со дня рождения Ленина все должны были делать всякие производственные подарки. Разумеется, и мы взяли обязательство к этой дате сделать «Сетунь-70». Но это уже совсем другая машина. Это была стековая машина, вроде наших «Эльбрусов». Но у «Эльбруса» был всего один стек — стек операндов. У PDP-11 также был всего один стек — процедурный. А «Сетунь-70» имела два стека — команд и операндов. Надо сказать, что эти стеки мы сделали независимо от PDP-11, которая появилась позднее. Когда Дейкстра выступил с идеей структурного программирования, мы увидели, что сделали машину как раз для реализации его идеи. Программирование на «Сетунь-70» было даже не структурированное, а структурирующее. Программы получались легко читаемыми и осваиваемыми, легко модифицированными. Главное, что программы не подвергались отладке, а делалась так называемая контрольная сборка. После того как программу сверху вниз написали, ее проходили снизу вверх. В хороших КБ всегда так делается — типичный конструкторский прием. После этого программа оказывается, как правило, безошибочной. Позднее «Сетунь-70» была эмулирована на двоичных машинах в форме диалоговой системы структурного программирования ДССП.

    Дмитрий Румянцев: И все-таки, Николай Петрович, кому мешала «Сетунь»?

    Николай Брусенцов: Людям с косным мышлением, которые, тем не менее, занимали высокие руководящие посты. Как показала практика, «Сетунь» была работоспособна без всякого сервиса. Те, кто душил ЭВМ «Сетунь», раскидали ее по всей стране.

    Дмитрий Румянцев: А смысл?

    Николай Брусенцов: Видимо, для того, чтобы удаленность от сервисного центра и разброс климатических зон максимально выявили конструктивные недочеты. Но вся штука в том, что их практически не было. «Сетунь» была очень простой машиной. Я, как инженер, считаю, что простота вещи — это главное ее качество. В природе все то, что удалось ей выработать в простой форме, оказывается самым надежным, самым устойчивым. География обитания «Сетуни»: Якутск, Иркутск, Красноярск, Душанбе, Ашхабад, Махачкала, Калининград и т. д. Причем часто она попадала к людям, которые впервые видели цифровую технику. И несмотря на это, практически всюду машина нашла существенное применение. В Якутске «Сетунь» была в астрофизическом институте. У них была какая-то сложная задача, которую они в течение двух лет не могли поставить на большой машине «Урал-2». Потом кто-то сказал: „Давайте попробуем на «Сетуни»”. Все решили, что это шутка. Однако через полтора месяца задача была решена. Дело в том, что «Сетунь» была естественной машиной. Там нет этого идиотского дополнительного кода для отрицательных чисел. И положительные, и отрицательные числа задаются естественно. Потом всего 24 команды. Освоить такую машину и программировать в машинном коде было ничуть не сложнее, чем, скажем, осваивать «Алгол» или «Фортран».

    Дмитрий Румянцев: Но программист фактически должен был работать в пространстве трехзначной логики?

    Николай Брусенцов: А что значит трехзначная логика? Знак числа — это какая функция? Трехзначная! Число может быть положительным, отрицательным, а может быть равным нулю. Это совершенно естественно, и это понятней, чем то, что мы имеем в двоичных машинах, когда, чтобы разобраться, какого знака результат, нужно сделать два шага. Но, строго говоря, в самой «Сетуни» логическая часть была не особенно развита. Правда, та трехзначная логика, которая была в «Сетуни», с избытком покрывала то, что было в двоичных машинах. Но аристотелевских суждений там, конечно, не было. Мы в то время собственно логикой не занимались. Я уже после создания «Сетуни» стал понимать, что логику как таковую не знаю, стал читать книги. Оказалось, что у меня были предшественники. И у них, кстати, путь тоже не был устлан розами. Еще в XIII веке был такой Раймунд Луллий (1235-1315 гг.). Он создал логическую машину, правда, на бумаге, в виде круговых диаграмм с секторами. Эта машина была троичной. Этого Луллия забили камнями. Был Вильям Оккам, он тоже предложил трехзначную логику, значительно более реальную, чем та, которую изобрел Ян Лукасевич в 1920 году. Далее всех продвинулся Льюис Кэрролл. Он нигде не говорит, что у него трехзначная логика. Но диаграммы Кэрролла из его «Символической логики», кроме красных и белых фишек, допускают еще пустые клетки. Это и есть трехзначная логика. Кэрролл на Аристотеля не ссылается и свою силлогистику создал как реализацию логики естественного языка. Поразительно, что Гарднер — популяризатор информатики — охарактеризовал Кэрролла посредственным логиком и посредственным математиком. И это притом, что Кэрролл в сущности создал систему — у него были очень незначительные неувязки, — решающую задачу, над которой бились логики последних полутора столетий.

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

    Николай Брусенцов: Буквально на днях я получил письмо из США, где также спрашивают, как удалось реализовать троичную логику? К нам постоянно приходят по e-mail письма с запросами. Надо сказать, что наибольший интерес проявляют такие страны, как Бангладеш, Пакистан, Индия. У меня такое ощущение, что там сейчас главный центр компьютерного развития. Но на сегодня все попытки повторить троичную машину не удаются. Причина не технологическая — все-таки по сравнению с тем периодом технологии ушли далеко вперед. Дело в другом: людям, оболваненным двузначной логикой, войти в трехзначную логику не дано. По традиции считается, что та логика, которую мы сегодня исповедуем, — аристотелевская логика. Это совершенно неверно. Дело в том, что аристотелевская логика трехзначная. Естественно, что трехзначная логика в двузначную вписаться не может. Конечно, можно симулировать: парами битов задать триты, но не в этом дело.

    Та логика, которую сегодня называют математической, основана на нелепости. Допустил ее Гильберт. В его совместной с Аккерманом книге «Основы теоретической логики» сказано так: „Мы отклоняемся от Аристотеля в истолковании суждения “Все А суть В”. По Аристотелю, это суждение может быть истинным, то есть выполняется только лишь в случае, когда существуют какие-то А. Мы считаем это нецелесообразным”. Что в результате получилось? В результате получилось то, что выполняется “Все А суть В” и в то же время не выполняется “Некоторые А суть В”. Это нелепость! Вместо аристотелевского следования, которое во всех естественных языках выражается словами “Все А суть В”, — и Аристотель очень точно это в своей системе воспроизвел, — они подсунули так называемую материальную импликацию. Дело в том, что суждение “Все А суть В” у Аристотеля трехзначно, в двузначной логике оно не выразимо. В результате возникли так называемые парадоксы материальной импликации, с которыми вот уже сто лет как логики пытаются справиться.

    В 1918 году Кэрролл предложил строгую импликацию, потом Аккерман разработал исчисление сильной импликации, была предложена релевантная импликация, и, тем не менее, логика остается без естественного содержательного следования. То есть то, что называется следованием логике, не соответствует тому, как мы это понимаем. Обычно говорят: не соответствует нашей интуиции. Но это очень мягко сказано. На самом деле оно не соответствует не интуиции, а тому, как вещи связаны между собой в том мире, в котором мы живем.

    Аристотель не признавал закона исключенного третьего. Даже речи о нем не было. Гильберт считал, что аристотелевское понимание суждения “Все А суть В” не нужно принимать, потому что это неприемлемо с точки зрения математических применений. А абсурд приемлем? Вся история говорит о том, что этот абсурд существует.

    Вот почему столько раз тщетно логику пытались ввести в школы? Казалось бы, ведь числовую алгебру уже даже в начальной школе осваивают, а булеву алгебру освоить не могут. Дело в том, что двузначная логика противоестественна. Вместо того чтобы изучение логики развивало интеллект человека, оно его подавляет. У нас в МГУ на философском факультете, да и на нашем факультете, изучают математическую логику, и что вы думаете — люди от этого становятся умнее? Они вызубривают доказательства теорем, сдают экзамены и все.

    Единственное адекватное применение двузначной логики — двоичные цифровые схемы. Но это особый мир двоичных компьютеров, и только в нем эти правила работают, не требуя понимания. Я поинтересовался у студентов: что такое конъюнкция? А мне в ответ: да это такая табличка, в которой единичка и три нуля… Ну, а по смыслу что это такое? Переведите на русский язык латинское слово “конъюнкция”. Никто не может. То есть эту логику усваивают чисто формально, в точном соответствии с ее названием — формальная логика. При синтезе схем возможности ограничены. Минимизировать произвольную схему наука не в состоянии. В трехзначной логике минимизация осуществляется, а в двузначной универсального алгоритма нет.

    Я бы эту проблему сформулировал так: если мы хотим обрести нормальное мышление, мы должны уйти из двузначного мира и освоить трехзначную логику в том виде, как ее создал Аристотель. Не совсем, конечно, так. Не нужны его фигуры. Все это сегодня с помощью алгебры можно будет изящно изложить и легко воспринимать. Но важно понимать, что, кроме ДА и НЕТ, есть еще и НЕ-ДА и НЕ-НЕТ.

    Сейчас двузначную логику в школу ввести удалось под названием “информатика”. Я должен сказать, что после этого школа уже не будет воспитывать таких людей, как наши ученые прошлого века. Почему в то время было так много творческих ученых? Где-то в 1936 году в образовании был примерно такой же бедлам, как наступил сейчас в России. Потом, по-видимому, сам Сталин обратил на это внимание. Кстати, Сталин был поразительно трудолюбивым в плане обучения человеком. Сохранилось его письмо к жене, в котором он, находясь на отдыхе, просит ее прислать ему учебник по электротехнике. Он понимал, что все нужно знать “в натуре”, а не в виде каких-то теоретических схем. Тогда в школу были возвращены учебники Киселева по алгебре и геометрии. Киселевские учебники — это евклидова математика. А Евклид — это математик с философией Аристотеля, и, судя по всему, он Аристотеля понимал верно. Если мы не хотим в школах воспитывать людей с рефлексами бюрократов и формалистов, то должны заменить двузначную логику трехзначной диалектической логикой Аристотеля.

    Дмитрий Румянцев: Николай Петрович, вы создали уникальный компьютер, который, возможно, опередил время. Но всю свою жизнь вынуждены были преодолевать невероятное сопротивление, косность бюрократической машины и видеть, как ваше детище уничтожается. С другой стороны, скажем, в США, тот же Стив Джобе, который в гараже сделал свою первую и довольно убогую персоналку, сегодня мультимиллионер. По-человечески вам не обидно?

    Николай Брусенцов: Да нет. Я понимаю, что, увы, так устроено человечество. И, в общем, оно обречено, если ничего не изменится. К сожалению, все попытки как-то исправить ситуацию, сделать ее более соответствующей естественному порядку вещей проваливаются. Давайте посмотрим: действительно ли мы так много имеем от того, что компьютеризировали этот мир. Теперь компьютеры везде. Причем система устроена таким образом, что каждые три-четыре года нужно покупать новый компьютер и новый софт. Но почему? Да потому, что в самом начале заложены неверные принципы. Если вы в основу заложите простые, естественные принципы, то и все развитие происходит просто, логично, естественно. Я не обижен судьбой. Не в деньгах счастье, тем более не в миллиардах. Когда все сведено к деньгам, жизнь людей утрачивает смысл, становится абсурдом. На войне не могло быть радости от того, что грохнувший вблизи разрыв сразил не тебя, а находящегося рядом твоего товарища. Радостью, счастьем было наше духовное единство. То труднейшее, отмеченное беспросветностью утрат и страданий время озарено вместе с тем не ярким, но вечным светом бескорыстного согласия людей. „Но только крепче мы дружили под перекрестным артогнем”. Похоже, что такое согласие возникает у людей, объединенных общностью цели, увлеченных реализацией рациональной идеи.





    Биографические данные Николая Брусенцова

    Брусенцов Николай Петрович родился в 1925 году на Украине, в городе Каменское (Днепродзержинск).
    Во время войны с семьей был в эвакуации.
    Поступил в находящуюся в Свердловске Киевскую консерваторию на факультет народных инструментов.
    В феврале 1943 года призван в армию, направлен на свердловские курсы радистов.
    Через полгода направлен радистом в артиллерийский полк, в отделение разведки.
    В одном из боев разорвавшийся рядом снаряд убил двоих его товарищей и офицера, сам Н. П. Брусенцов не пострадал. Награжден медалью «За Отвагу» и Орденом Красной Звезды.
    После войны вернулся в Днепродзержинск, работал на заводе.
    В 1948 году поступил на радиотехнический факультет Московского энергетического института.
    На последнем курсе МЭИ составил таблицы дифракции на эллиптическом цилиндре,
    которые сегодня известны как таблицы Брусенцова.
    После окончания института в 1953 году был направлен на работу в СКВ МГУ.
    В 1956-58 гг. с группой единомышленников создал в МГУ единственную в мире
    троичную ЭВМ «Сетунь», получившую название по имени протекавшей рядом речки.
    В 1970 году создал новую машину «Сетунь-70»,
    также имевшую ряд конструктивных новаций.
    В настоящее время работает заведующим лаборатории ЭВМ
    на Факультете Вычислительной математики и кибернетики МГУ им. М.В. Ломоносова.

  2. #2
    Регистрация
    14.06.2006
    Адрес
    Волгоград
    Сообщений
    202

    По умолчанию

    Недвоичная логика
    История IT
    https://geektimes.ru/post/160595/
    В начале Второй мировой войны перед армией США остро встала проблема нехватки баллистических таблиц стрельбы, жизненно необходимых для работы артиллерии. Типичная баллистическая таблица представляет собой набор числовых данных траекторий полета снаряда, предварительно расчитанных для определенных условий стрельбы, ствола, снаряда, погодных условий и температуры воздуха. Ручной расчет лишь одной траектории занимал несколько дней, и каждая таблица обходилась в огромные количества человеко-часов.

    В то время этими расчетами занимались лишь несколько высококвалифицированных специалистов, и даже увеличение штата лаборатории в 1942 году помогло незначительно. В июне этого же года был заключен контракт с Школой электротехники Мура Пенсильванского университета, которая располагала диффереренциальным анализатором конструкции Вэнивара Буша — механическим вычислителем той эпохи. Работой руководил лейтенант, а позже капитан Герман Голдстайн, получивший степень доктора математики в Чикагском университете. Именно он с профессором Брайнердом в 1943 году представил идею «электронного дифференциального анализатора» авторства Джона Мокли.

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

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


    Десятичные накопители ЭВМ ЭНИАК

    Выбор десятичной системы был продиктован вопросами удобства её использования; создатели машины решили пренебречь достоинствами иных систем счисления. ЭНИАК мог складывать, вычитать, умножать, делить, извлекать квадратный корень и сравнивать любые десятичные числа из 10 цифр. В памяти 20 накопителей, являвшихся также и сумматорами, могло храниться до 20 таких чисел. При этом числа представлялись не десятью различными электрическими значениями, которые легко могли измениться, а отсутствием или наличием активных импульсов, и набор сигналов одного числа передавался совместно по нескольким различным проводам. Таким образом к каждому регистру подходило 11 линий (10 цифр и знак).

    Каждый триггер машины имел два входа и два выхода и содержал два триода, соединенных таким образом, что в любой момент времени ток проходил лишь через один. Десять триггеров формировали десятичное кольцо, способное считать числовые сигналы и хранить числа. В свою очередь десять колец объединялись в базовый арифметический накопитель. Если одно из колец выходило за предел в 9 значений, старший сосед получал дополнительный импульс.

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

    Очевидно, что ЭНИАК был в значительной степени аппаратно избыточен. Его сложность, вызванная использованием такой «человечной» десятичной формы представления чисел на основе двоичных триггеров, и нестабильность в работе вакуумных ламп несколько затрудняла его работу и заставляла персонал идти на различные ухищрения в его эксплуатации.

    Последний апгрейд машины произошел в июле 1953 года (до этого ЭНИАК обзавелся, к примеру, механической системой развязки питания). Уже в 1951 году встал вопрос о недостаточности количества памяти, и в Burroughs Corporation предложили использовать перспективную технологию магнитных ячеек. Основной проблемой исполнителя стал язык. Для реализации в ЭНИАК памяти в 100 слов, каждое из которых представляло из себя 10 десятичных цифр и 10 знаков этих чисел, потребовалось бы 9.100 бит хранилища. Вместо этого каждую цифру представили в виде 4 бит с введением преобразователей кода, но даже с учетом потерянных бит запрещенных состояний экономия была значительна — потребовалось всего 4.100 бит.

    За ЭНИАКом последовала серия машин IBM, UNIVAC и других, но десятичные компьютеры постепенно были вытеснены двоичными. Причины этого просты: у распространенных сегодня элементарных логических элементов лишь два состояния, которые они могут принять, поэтому запись данных в двоичной форме заведомо проще и плотнее. Шестьдесят лет спустя отход от бинарной логики воспринимается как заведомо проигрышный шаг, но является ли двоичная логика математически лучшим выбором?

    Удельная натуральнологарифмическая плотность записи информации описывается функцией



    Эта функция достигает максимума в точке a = e. Это означает, что наибольшей плотностью записи информации обладает система исчисления с основанием, равным основанию натуральных логарифмов (е ≈ 2,718281828459045). Именно так было выбрано основание для фиксирования логарифмических таблиц. При этом из целочисленных систем счисления наибольшей плотностью записи информации обладает троичная, а не двоичная система исчисления.

    Троичная система счисления существует в двух вариантах: симметричная, имеющая в наборе отрицательные цифры (−1, 0, 1), и несимметричная (0, 1, 2). Необходимо отметить, что троичная симметричная система счисления обладает тем свойством, что обеспечивает более простое представление отрицательных чисел в памяти компьютера. (Как известно, в двоичное число для этого нужно вводить дополнительный код, чтобы не усложнять архитектуру компьютера.)

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

    Не все законы двоичной логики верны для троичной логики, для некоторых сформулированы троичные аналоги. Ряд исследователей апеллирует к тому, что трехзначная логика значительно более натуральна и свойственна человеческому мышлению, чем двоичная. Сегодня закоснелая бинарная логика, согласно их заявлениям, не дает нам войти в трехзначную. Развитием троичной логики в разные периоды времени занимались польский философ и логик Ян Лукасевич, английский математик Льюис Кэролл и другие.

    Несмотря на все достоинства троичной логики и троичной системы счисления, в истории человечества остались лишь две наиболее успешные попытки создать троичный компьютер. Первая из них — механическая — датируется XIX веком. Деревянный калькулятор Фаулера использовал симметричную троичную систему счисления, и Августом де Морганом было сделано наиболее точное на сегодня его описание, на основе которого машина была воссоздана.



    Опасаясь кражи его идеи, Фаулер в одиночку выполнял детали из древесины. Чтобы скомпенсировать вызываемую ей низкую точность, изобретатель придал своей машине крупные габариты — 1,80 метра в длину, 90 см в глубину и 30 см в высоту. До этого Фаулер разработал методы работы с используемой в его машине системой счисления.

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

    Множитель — это рама, которая может перемещаться перпендикулярно стержням множимого и произведения, и расположена между их плоскостями таким образом, что её край может быть совмещён скользящим движением с каждым стержнем множимого поочередно. Множитель состоит из набора стержней, при этом каждый из стержней имеет зубец с каждого края и зубец, которым множитель взаимодействует со стержнями множимого. Один набор зубцов размещён так, что опирается на раму, которая может вращаться вокруг оси. Каждый стержень может соприкасаться с рамой выше, ниже или в районе оси вращения. Зубцы, находящиеся на оси, не получают движения, остальные же придут в движение в ту или иную сторону в зависимости от того, с какой стороны зубец касается рамы. Перпендикулярные зубцы с другого конца могут совершать движение вперёд–назад или оставаться неподвижными, в свою очередь они тем самым взаимодействуют со стержнями, которые составляют раму произведения, которая схожа с рамой множимого и имеет деталь, соединяющую её с множителем.



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

    Результат умножения будет представлен не в простейшей форме: он должен содержать только +1 или −1, а полученный промежуточный ответ может содержать на любом стержне +2, −2, +3 или −3 и т.д. Для корректировки результата используется механизм переноса, который представляет собой простое устройство, которое, как и множитель, может совершать поперечное перемещение, и может быть помещено на любой паре соседних стержней. Аппарат переноса выдвигает левый из двух стержней на единицу и втягивает стержень находящийся справа на 3 единицы или наоборот. Даже без наличия обязательного навыка работы с механизмом переноса серьезная ошибка невозможна, так как за каждую операцию можно перенести нижнюю колонку только на 3 единицы, в то время как следующая колонка изменится в противоположном направлении на одну единицу.

    Деление чисел осуществляется противоположным способом.

    Второй наиболее успешный проект троичной вычислительной машины — это относительно современная серийная (50 экземпляров) ЭВМ «Сетунь», построенная в вычислительном центре МГУ в 1959 году. Её создателем является советский конструктор Николай Петрович Брусенцов, также в проекте принимали участие Е.А. Жоголев, В.В. Веригин, С.П. Маслов, А.М. Тишулина и др. Машина использовала симметричную троичную систему счисления.



    Минимальной адресуемой единицей памяти «Сетуни» стал трайт, равный шести тритам и принимающий значения от -364 до 364. Работа с диапазоном отрицательных значений — особенность, отличающая трайт от двоичного байта, значения которого распространяются от 0 до 255. С помощью трайта можно закодировать все заглавные и строчные символы русского и латинского алфавитов, необходимые математические и служебные символы.



    Машина была реализована не на ненадежных вакуумных лампах или дорогих в ту эпоху транзисторах, а на феррит-диодных элементах, собранных на гетинаксовой основе. Генератор тактовой частоты задавал такт работы ячеек в 200 кГц. Ячейки компоновались в функциональные блоки: сумматоры, дешифраторы троичного кода, регистры сдвига. С помощью тридцатиконтактного разъёма каждый блок стыковался с другими блоками «Сетуни», формируя базовые компоненты ЭВМ: арифметическое устройство и устройство управления

    При проектировании Брусенцов позаимствовал принцип работы логических элементов у ЭВМ ЛЭМ-1, но в то время как в последнем используется пара сердечников под каждый бит — рабочий и компенсационный, в «Сетуни» работает и компенсационный сердечник, что задает троичный характер компьютера. В троичной ячейке Брусенцова один трит записывался в два двоичных разряда, четвёртое состояние двух двоичных разрядов не использовалось.

    Первый опытный экземпляр машины «Сетунь» показывал при испытаниях 95% полезного времени (реальной работы вне тестирования, техобслуживания и устранения неисправностей), в то время как 60% считалось хорошим результатом. За счет несложных технологий «Сетунь» со всей периферией стоила 27,5 тысяч рублей (для сравнения: только процессорный блок рекордно дешевой PDP-8 стоил 20 тыс. долларов), и к машине проявляли интерес не только в соцстранах, но и на Западе. Чехословацкий завод «Зброевка Яна Швермы» был готов начать выпуск машины для покупателей за рубежом и обещал выгоду в полмиллиона долларов с каждой машины, но более высокое руководство требовало сначала развернуть массовый выпуск машины в СССР, хотя уже тогда было очевидно, что проект близится скорее к закрытию.

    И проект действительно был закрыт. В 1967 году, когда было решено делать к 100-летию со дня рождения Ленина разнообразные производственные подарки, конструктора, некоторые из которых уже сменили места работы, взяли обязательство к этой дате сделать «Сетунь-70» — улучшенную версию оригинала. Это была несколько иная ЭВМ: она была стековой, но в отличие от «Эльбруса» с его стеком операндов и более позднего PDP-11 с его процедурным стеком, «Сетунь-70» имела два стека — команд и операндов. Как говорит сам Брусенцов, программы на «Сетунь-70» получались легкочитаемыми и осваиваемыми, а вместо отладки использовалась контрольная сборка — проход написанного кода снизу вверх. Позднее «Сетунь-70» была эмулирована на двоичных машинах в форме диалоговой системы структурного программирования ДССП, но попыток тиражировать «Сетунь-70» разработчики, обладая горьким опытом «Сетуни», естественно, не предпринимали.



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

    IBM, Motorola, Hypres и Texas Instruments ведут различные исследования в области троичных компьютеров. Значительных аппаратных проблем в реализации трехзначной логики на сегодняшний день не существует; наоборот, предлагаются новые и новые перспективные элементы с тремя состояниями. В рамках кремниево-германиевых сплавов (SiGe) можно реализовать цифровые интегральные схемы, работающие с тремя и более уровнями сигнала.

    В своей научной работе «Архитектура троичного оптического компьютера» Джин Йи, Хи Хуакан и Лу Янгтиан предлагают использовать для выражения информации два состояния поляризации света с ортогональными направлениями колебаний. Три исследователя предлагают использовать кольцо оптоволокна в качестве регистра, полупроводниковую память для троичной ячейки и жидкие кристаллы как модуляторы и сумматоры.

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

    Для продуктивной работы троичного компьютера необходимо много качественного троичного программного обеспечения, которого сейчас не существует. На сегодняшний день на некоторые двоичные программные проекты было потрачено несколько тысяч человеко-лет и миллиарды долларов, и воссоздавать с нуля подобное для трехзначной логики было бы слишком дорогим решением.

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

    При подготовке публикации использовались материалы монографии «Электронные компьютеры в артиллерийских войсках», сайтов mortarti.com, trinary.ru, trinitas.ru, журнала Компьютерра и архивов МГУ.

  3. #3
    Регистрация
    09.01.2013
    Адрес
    Севастополь
    Сообщений
    56

    По умолчанию Троичное мышление

    Несколько ссылок (в основном техническая сторона вопроса):

    nedoPC о троичных компьютерах и не только - http://www.nedopc.org/forum/viewforum.php?f=79
    Троичная логика и троичная цифровая техника - http://trinary.ru/

  4. #4
    Регистрация
    14.06.2006
    Адрес
    Волгоград
    Сообщений
    202

    По умолчанию


  5. #5
    Регистрация
    14.06.2006
    Адрес
    Волгоград
    Сообщений
    202

    По умолчанию


Похожие темы

  1. Ответов: 32
    Последнее сообщение: 23.02.2010, 20:15

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •