в 1951 году было объявлено о строительстве UNIVAC I (Универсального Автоматического Компьютера) - первой коммерческой ЭВМ в Америке и третьей в мире.
Для справки: первым коммерческим компьютером в мире стал немецкий Z4 (1950), вторым — британский Ferranti Mark 1 (1951).
UNIVAC хоть и был третьим, но зато оказался самым мощным и популярным из всей троицы. Работами по нему руководили Джон Экерт и Джон Мокли — создатели знаменитого ENIAC.
Желание получить мультизадачную ЭВМ еще в 1946 году выразили Бюро переписи и Бюро стандартов США. Приобрести один компьютер на целое федеральное бюро тогда было в общем-то нормально. Это был скорее вопрос престижа, чем реальная необходимость. Однако переговоры и строительство такой машины растянулось на несколько лет.
Производство UNIVAC I было настолько сложным, что свое приобретение Бюро переписи (Бюро стандартов к тому моменту уже отказалось) официально получило лишь в 1951 году, а фактически — в 1952-м.
Новая ЭВМ использовала 5200 электровакуумных ламп, весила 13 тонн, потребляла 125 кВт электроэнергии и могла выполнять до 1905 операций в секунду, работая на тактовой частоте 2,25MHz. Центральный комплекс (процессор и память) имел размеры 4,3 × 2,4 метра и высоту 2,6 метра. Вся система занимала площадь в 35,5 квадратных метров.
Их есть у нас! Красивая карта, целых три уровня и много жителей, которых надо осчастливить быстрым интернетом. Для этого придется немножко подумать, но оно того стоит: ведь тем, кто дойдет до конца, выдадим красивую награду в профиль!
Увидел в ленте этот пост и не смог пройти мимо. Популяризация отечественной вычислительной техники — это хорошо и нужно, но в данном случае рассказ, к сожалению, получился в духе «не Волгу, а сто рублей, и не в лотерею, а в карты, и не выиграл, а проиграл». Давайте разберёмся в том, в чём автор напутал, и узнаем побольше про троичные компьютеры, а заодно увидим редкие фотографии сохранившихся экземпляров (да, оказывается, есть и такие!).
Пульт от той самой «Сетуни»
Что мы знаем бесспорно? В СССР в 1959 году действительно была разработана единственная в мире серийно выпускавшаяся троичная ЭВМ. Я неслучайно выделил эти слова — без них утверждение будет неверным. К 1965 году в СССР было выпущено 46 компьютеров этой модели.
Далее в исходном тексте начинаются заявления, которые... скажем так, требуют комментирования.
Например, единицы измерения назывались тритами, а не битами. Говоря простым языком, использовались цифры 0, 1 и 2, а не 0 и 1 как в двоичной.
Неверно — в Сетуни использовались не 0, 1 и 2, а −1, 0 и 1. Да, фактически в ней были «отрицательные цифры». Это называется симметричной троичной системой счисления. Наличие 1 в тех или иных разрядах увеличивало общую величину числа, а наличие −1 — уменьшало. Можно представить себе троичное число как рычажные весы, где вы можете ставить гирьки на обе чаши — как добавляя к итоговым показаниям, так и отнимая от них.
Теперь, как вы поняли, у нашей страны было все свое, и даже компьютеры и язык программирования.
Если что, всё это появилось на много лет раньше. К 1959 году в стране были разработаны ЭВМ М-1, М-2, М-3, МЭСМ, БЭСМ и БЭСМ-2, СЭСМ, ЦЭМ-1 и ЦЭМ-2, М-20, М-40 и М-50, «Стрела», «Урал», несколько специализированных ЭВМ военного назначения. Готовились к выпуску «Минск», «Проминь» и следующие модификации «Уралов» и БЭСМ — всех и не перечислишь. И, разумеется, для многих из этих машин существовали языки программирования собственной разработки. Так что странно писать, что в этом смысле появление «Сетуни» как-то радикально изменило расклад.
По меркам 1959-го года <...> "Сетунь" была, по сути, более быстродейственна, чем ЭВМ того времени, использовавшая двоичную систему.
Крайне спорное утверждение. Возможно, автор хотел сделать акцент на словах «по сути», имея в виду, что при сходной архитектуре и равном физическом быстродействии базовых элементов троичная машина будет эффективнее. Но здесь слишком много допущений.
Если же брать реальное быстродействие, то «Сетунь» выдавала 4800 операций в секунду. В сравнении с другими ЭВМ того времени это были довольно скромные характеристики — даже с поправкой на выигрыш от троичной системы. Модернизированная БЭСМ уже в 1953 году делала до 12 000 оп./с, М-20 — до 20 000, а специализированные М-40 и М-50 — и того больше.
Маленьким был и объём оперативной памяти «Сетуни» — всего 162 слова. Для сравнения, М-20 имела память 4096 слов. Причём троичность «Сетуни» здесь не даёт ей выигрыша, поскольку одно её 18-тритное слово эквивалентно 29 двоичным разрядам, а М-20 имела разрядность целых 45 бит.
В общем, при работе "Сетунь" было необходимо обработать в полтора раза меньше вычислений, чем такому же ЭВМ того времени, но с двоичной системой за то же самое время. В общем, "Сетунь", банально, работала в 1,5 раза быстрее.
Это очень большое упрощение. Далеко не все программы обязаны давать выигрыш при переносе на троичную ЭВМ, и не всегда он обязан быть именно полуторакратным. Есть конкретные операции, которые выполняются быстрее на троичной машине. Самый понятный пример — ветвление в зависимости от результата предыдущей операции. Если он был положительным — программа пойдёт по одному пути, отрицательным — по другому, нулевым — по третьему. Двоичной машине нужно выполнить для этого две проверки, троичной — одну.
В симметричной троичной системе счисления проще представлять отрицательные числа — не нужно вводить специальный разряд для знака. В ней быстро выполняется округление — достаточно отбросить младшие разряды. Но в целом троичный компьютер не делает ничего такого, чего принципиально не мог бы двоичный. Это не моё заявление — дадим слово изобретателю машины, Николаю Петровичу Брусенцову:
Ясно, что троичная техника равноценна двоичной технике в том смысле, что все, осуществимое в одной из них, с тем или иным приближением осуществимо и в другой. Ясно также, что трехзначные вентили и элементы памяти должны быть сложнее и дороже, чем двузначные, а трехзначная логика заведомо сложнее двузначной.
Выделенный фрагмент очень важен, ведь в нём содержится ответ на вопрос автора исходного поста.
Не очень понятно, почему было решено отказаться от данной ЭВМ
На самом деле всё понятно. Как бы банально это ни звучало, для того, чтобы построить эффективный троичный компьютер, нужны троичные элементы. Но их не было! И об этом даже сказано в посте, только как-то мимоходом.
В своей работе данная ЭВМ использовала, внимание, двухбитный троичный код.
Дело в том, что для «Сетуни» не удалось найти тристабильные базовые элементы, поэтому каждую троичную ячейку собирали из двух двоичных. Двоичное состояние 00 соответствовало троичному «0», двоичное 01 — троичному «−1», двоичное 10 — троичному «1». Состояние 11 не использовалось. То есть уже на стадии конструирования машины мы имеем 25-процентную избыточность по аппаратуре.
Кстати, элементы «Сетуни» были выполнены не на транзисторах, а на так называемых феррит-диодных ячейках Гутенмахера — бесконтактных электромагнитных реле. Они были надёжны и просты в производстве, но не слишком поддавались миниатюризации. При этом стоит понимать, что с 1965 года, когда завершился выпуск «Сетуни», уже производился IBM/360 — первый компьютер на интегральных микросхемах. Вскоре появились и советские компьютеры третьего поколения, оставившие «Сетунь» с её дискретными элементами далеко позади.
Поскольку, как мы уже знаем, двоичный компьютер спокойно может эмулировать троичный (пусть и ценой большего количества операций), оказалось банально проще наращивать мощность двоичных машин, чем конструировать специфические и программно несовместимые с ними троичные.
Больше никогда никому так и не удалось создать аналогичный компьютер на основе троичного кода, хотя попытки создания в других странах продолжаются до сих пор.
Дело вовсе не в том, что кому-то что-то не удалось. Любая страна, способная построить двоичный компьютер, способна построить и троичный. Реальность куда скучнее — троичные машины банально оказались никому не нужны, кроме немногочисленных энтузиастов. Сегодняшнее развитие техники и доступность ресурсов спокойно позволяют подкованному радиолюбителю создать свой троичный компьютер. Можете при желании спросить у небезызвестного Артёма Кашканова, почему он не берётся за такой проект :)
Что интересно, история «Сетуни» в 1965 году не завершилась. Николай Петрович по-прежнему видел в своём детище потенциал — если не в качестве полноценной ЭВМ для научных и инженерных расчётов, то в роли учебного компьютера. Это действительно было не лишено смысла: чем проще устроена машина, чем крупнее её элементы, тем легче разобраться, как именно она действует.
И через 5 лет в МГУ заработала «Сетунь-70» — более совершенный компьютер на основе тех же идей. Быстродействие её было ненамного выше, поскольку в основе машины лежали всё те же ячейки Гутенмахера, но она имела более развитую архитектуру и оснащалась современным для тех лет набором периферийного оборудования. А что особенно ценно — она сохранилась до наших дней в комплектном виде! Вот несколько её фотографий из фондохранилища Политехнического музея:
Общий вид машины (блоки светло-серого цвета с дверцами). На переднем плане — магнитные барабаны
Фрагмент пульта управления с неизменными часами, правда, уже не авиационными
Устройства ввода и вывода — электрическая пишущая машинка Consul-254, выступавшая в качестве терминала, и перфоратор (служил для пробивки бумажной ленты)
Устройство ввода с перфоленты Readmom 300
Машина более 30 лет проработала на факультете ВМиК МГУ и уже в 2000-х была передана самим Николаем Брусенцовым в Политехнический музей, когда моральное и физическое устаревание компьютера сделало его дальнейшую эксплуатацию нецелесообразной.
Какими же будут выводы? «Сетунь» — несомненно, оригинальная и интересная отечественная разработка. Она показывает, что привычные нам стандарты вроде двоичной системы счисления и восьмибитного байта — вовсе не аксиомы, и заставляет задуматься, как и почему они возникли. Наконец, она стала прекрасной «учебной партой» для тысяч советских программистов и инженеров-системотехников.
Но нет никакого смысла подгонять её под набивший оскомину штамп «не имеет аналогов в мире!» и рассказывать небылицы о её возможностях. Потому что это создаёт очень шаткую основу для гордости, которую легко выбить из-под ног указанием на элементарные несоответствия действительности.
А за подлинными фактами из истории отечественной вычислительной техники (и не только!) приходите в Политехнический музей. Наша «Открытая коллекция» работает каждую неделю. Вы можете записаться, например, на экскурсию по выставке «Компьютеры от М до А» и попросить экскурсовода заодно показать вам «Сетунь». Думаю, вам с радостью пойдут навстречу. А у меня пока всё — спасибо, что уделили время!
Не для кого не будет секретом, если сказать, что подавляющая часть современных ЭВМ, они же компьютеры, работают на основе двоичного кода. Говоря проще, на них разряд равен степени двойки. Кто разбирается в данной теме - поймут. В современном мире все уже унифицировалось, что о машинах, которые работали бы на другой системе - можно и не думать, за небольшим исключением. Но в Советском Союзе ученые пошли другим путем. Еще в далеком 1959-м году учёные из МГУ разработали первую, и кстати, единственную в мире ЭВМ на основе троичной системы. Название данной ЭВМ было "Сетунь". Больше никогда никому так и не удалось создать аналогичный компьютер на основе троичного кода, хотя попытки создания в других странах продолжаются до сих пор.
ЭВМ "Сетунь". Взято из открытых источников
Данный, по истине, русский компьютер был разработан под руководством Николая Брусенцева. В своей работе данная ЭВМ использовала, внимание, двухбитный троичный код. Дальше - будет только интереснее. В данном компьютере все было по-другому, в том числе и названия. Например, единицы измерения назывались тритами, а не битами. Говоря простым языком, использовались цифры 0, 1 и 2, а не 0 и 1 как в двоичной. А всем нам привычный байт на "Сетуни" назывался трайт и был равен шести тритам. Это равно около 9,5 битам в современной двоичной системе. Ну и "вишенка на торте": наши ученые, вы не поверите, разработали для ЭВМ "Сетунь" собственный язык программирования, который назывался DSSP.
Теперь, как вы поняли, у нашей страны было все свое, и даже компьютеры и язык программирования. По меркам 1959-го года, когда только шло зарождение эры электронно-вычислительных машин (ЭВМ), "Сетунь" была, по сути, более быстродейственна, чем ЭВМ того времени, использовавшая двоичную систему. В общем, при работе "Сетунь" было необходимо обработать в полтора раза меньше вычислений, чем такому же ЭВМ того времени, но с двоичной системой за то же самое время. В общем, "Сетунь", банально, работала в 1,5 раза быстрее. Но к великому сожалению, судьба, что ни на есть русской ЭВМ не завидная. В Советском Союзе выпустили всего 46 таких ЭВМ, из которых 30 единиц были переданы институтам по всему Союзу. "Сетуни" доверили решение задач средней сложности.
ЭВМ "Сетунь". Взято из открытых источников
Через некоторое время, вовсе, перестали выпускать данные ЭВМ. Не очень понятно, почему было решено отказаться от данной ЭВМ, но история распорядилась именно так. Опять же, есть ли смысл что-то менять и изобретать, если двоичная система показывает себя хорошо по настоящее время и современные ЭВМ работают на двоичной системе.
Если Вам понравилась статья - поставьте лайк. Будем рады вашей подписке на нашу страницу в Пикабу и сообщество в ВК, а также сообщество в Пикабу "Все о космосе".