Здравствуйте, Stanislaw K, Вы писали:
SK>В XIII веке итальянский математик Фибоначчи предложил использовать для вычислений троичную систему. Он сформулировал задачу о наборе гирь, позволяющих взвесить любые грузы. Оказалось, что для этого оптимально использовать гири, веса которых составляют геометрическую прогрессию со знаменателем 3.
Тупая статья чисто на набор рейтинга от фриков.
Естественно, троичную систему попробовали. Но не по причине Фибоначчи, а под идеей (якобы) Клода Шеннона о том, что при прочих равных условиях оптимум между поддержанием множества разных цифр в позиционной системе счисления и длиной записи числа в такой системе — достигается при основании, равном <e> (2.718...)
Я не могу нагуглить это утверждение в чистом виде, оно утверждалось без ссылки в нескольких учебниках. Возможно, это вывод из его теории информации, но она подана в таком виде, что её ещё надо всосать и переварить. Кто знает точную ссылку — прошу опубликовать.
И уже из этого утверждения была идея, что основание 3 выгоднее основания 2. И "Сетунь" как раз пыталась практически проверить это. Оказалось — нет, потому что цена на поддержание основания 3 даже больше, чем на поддержание основания 4: все схемы на лампах и транзисторах для значений -1, 0, 1 вынуждены дублировать логику.
Заметим, что попробовать такое нашёлся человек только в СССР. Видимо, проскочило между "серьёзными" ведомствами. Я не слышал про аналогичные пробы на условном Западе.
SK>В сравнении с привычным двоичным кодом, у троичного есть кое-какие плюсы: SK>1. Единообразие кода чисел SK>2. Варьируемая длина операндов
Этого не понял.
SK>3. Трехзначность функции знак числа SK>4. Оптимальное округление чисел простым отсечением младших разрядов
Недостатки хорошо бы тоже было перечислить. Полным списком.
SK>Кроме того, в троичной системе счисления нет особого разряда знака, что упрощает логику арифметических операций. Троичное слово на 1,6 раза короче двоичного, что ускоряет выполнение операций в 1,6 раза.
Зато сами операции усложняются, соответственно, время на один разряд от входа до выхода увеличивается.
SK>Троичный код с цифрами (-1, 0, 1) упростил логику арифметических операций и ускорил обработку данных на 60% по сравнению с двоичными устройствами тех лет.
Тут бы точные данные, чем оно могло "ускорить обработку данных", но, учитывая, что это 1958, а конкуренты разрабатывались в "почтовых ящиках", они могли быть просто неоптимальны по дизайну.
SK>В качестве оперативки «Сетунь» использовала ферритовый куб из 37 матриц ферритовых сердечников. Каждая матрица содержала 45 строк и 45 столбцов, что позволяло хранить 18-разрядные длинные троичные слова или 9-разрядные короткие троичные слова. Общий объем оперативной памяти составлял 162 коротких слова.
SK>В качестве внешнего запоминающего устройства использовали магнитный барабан емкостью 1944 коротких слова (или 3888 коротких слов при использовании обеих сторон барабана). Обмен информацией между ОЗУ и магнитным барабаном проходил группами по 54 коротких слова, что было достаточно быстро.
И вот в обоих случаях уже не упоминают, что и на ферритах, и на барабане троичный разряд мог быть представлен только как два двоичных.
В общем, как интересный эксперимент — да. Не более того...
В 1956 году стало понятно, что стране нужна практичная машинка, доступная для использования в образовательных учреждениях и лабораториях. Она должна была быть простой в эксплуатации, надежной, недорогой и отвечать следующим требованиям:
1. Обрабатывать несколько сотен операций в секунду.
2. Быть удобной для программиста.
3. Точно считать: до 6–8 верных десятичных знаков
4. Не занимать здание и экономить электричество
5. Быть построенной из доступных и недорогих компонентов.
Как часто бывает, почти все эти требования противоречили друг другу. Удобство для программистов, например, могло привести к увеличению количества оборудования, снижению надежности и повышению цены. Отчасти эту задачу решили программными методами: создали системы стандартных подпрограмм, ввели компилирующие и интерпретирующие системы.
Компьютер построили на основе 37 электронных ламп, ±300 транзисторов, 4500 полупроводниковых диодов и 7000 ферритов.
* * *
В XIII веке итальянский математик Фибоначчи предложил использовать для вычислений троичную систему. Он сформулировал задачу о наборе гирь, позволяющих взвесить любые грузы. Оказалось, что для этого оптимально использовать гири, веса которых составляют геометрическую прогрессию со знаменателем 3.
Троичная система счисления отличается от привычной нам десятичной тем, что в ней цельночисленное основание равно трём. То есть, все множество целых чисел можно записать с помощью всего трех цифр, например, 0, 1 и 2.
Эту идею использовали в команде Николая Бруснецова, которая и создала машину на «Сетунь» на магнитных элементах. Ее преимущество заключалось в использовании троичного кода с цифрами -1, 0 и 1, что обеспечивало оптимальное построение арифметики чисел со знаком.
В сравнении с привычным двоичным кодом, у троичного есть кое-какие плюсы:
1. Единообразие кода чисел
2. Варьируемая длина операндов
3. Трехзначность функции знак числа
4. Оптимальное округление чисел простым отсечением младших разрядов
Кроме того, в троичной системе счисления нет особого разряда знака, что упрощает логику арифметических операций. Троичное слово на 1,6 раза короче двоичного, что ускоряет выполнение операций в 1,6 раза.
Троичный код с цифрами (-1, 0, 1) упростил логику арифметических операций и ускорил обработку данных на 60% по сравнению с двоичными устройствами тех лет.
* * *
В качестве оперативки «Сетунь» использовала ферритовый куб из 37 матриц ферритовых сердечников. Каждая матрица содержала 45 строк и 45 столбцов, что позволяло хранить 18-разрядные длинные троичные слова или 9-разрядные короткие троичные слова. Общий объем оперативной памяти составлял 162 коротких слова.
В качестве внешнего запоминающего устройства использовали магнитный барабан емкостью 1944 коротких слова (или 3888 коротких слов при использовании обеих сторон барабана). Обмен информацией между ОЗУ и магнитным барабаном проходил группами по 54 коротких слова, что было достаточно быстро.
Среднее быстродействие «Сетуни» без учета обращений к магнитному барабану — 4800 операций в секунду. Время сложения составляло 180 микросекунд, умножения — 320 микросекунд, передачи управления — 100 микросекунд.
Данные вводили с пятидорожечной перфоленты со скоростью 800 строк в секунду. Выводили её на такой же носитель со скоростью 20 строк в секунду (или на принтер). Машина также могла вводить и выводить алфавитно-цифровую информацию.
Здравствуйте, netch80, Вы писали:
N>Я не могу нагуглить это утверждение в чистом виде, оно утверждалось без ссылки в нескольких учебниках. Возможно, это вывод из его теории информации, но она подана в таком виде, что её ещё надо всосать и переварить. Кто знает точную ссылку — прошу опубликовать. http://phg.su/basis2/X51.HTM
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
SK>Эту идею использовали в команде Николая Бруснецова, которая и создала машину на «Сетунь» на магнитных элементах. Ее преимущество заключалось в использовании троичного кода с цифрами -1, 0 и 1, что обеспечивало оптимальное построение арифметики чисел со знаком.
Т. е. 2 напряжения питания, зеркальный копипаст всех электронных узлов 2 раза, и непрестанная поддержка этого копипаста точного соответствия?
Здравствуйте, netch80, Вы писали:
N>Естественно, троичную систему попробовали. Но не по причине Фибоначчи, а под идеей (якобы) Клода Шеннона о том, что при прочих равных условиях оптимум между поддержанием множества разных цифр в позиционной системе счисления и длиной записи числа в такой системе — достигается при основании, равном <e> (2.718...)
N>Я не могу нагуглить это утверждение в чистом виде, оно утверждалось без ссылки в нескольких учебниках. Возможно, это вывод из его теории информации, но она подана в таком виде, что её ещё надо всосать и переварить. Кто знает точную ссылку — прошу опубликовать.
Эх, когда я учился в ВятГТУ(ФАВТ/ВМ) где-то в 90-х, там у нас был полоумный профессор, который носился с идеей третичных компов. Может даже статьи какие-то научные публиковал. Но вообще не могу вспомнить, как его звали
Здравствуйте, Stanislaw K, Вы писали:
SK>Троичное слово на 1,6 раза короче двоичного, что ускоряет выполнение операций в 1,6 раза.
Но бенчмарков конечно нет. Про основание системы счисления нам на первом курсе читали. Про 2 и про 3 и про e, только про минусы тоже говорили. А так сферически в вакууме е-ричная всех рвет.
Здравствуйте, Sinclair, Вы писали:
N>>Я не могу нагуглить это утверждение в чистом виде, оно утверждалось без ссылки в нескольких учебниках. Возможно, это вывод из его теории информации, но она подана в таком виде, что её ещё надо всосать и переварить. Кто знает точную ссылку — прошу опубликовать. S>http://phg.su/basis2/X51.HTM
Без ссылок на исходного автора, но очень похоже. Спасибо.
Видим, что речь идёт только о представлении чисел (не об операциях) и при условии подхода, что, например, десятичная цифра представлена 10 элементами, из которых только один true, остальные false. И вот тут оказывается, что это чушь;\
Пусть N=миллиард.
Двоичное представление — по формуле должно быть 2*30=60.
Реально каждый бит представим одним элементом, получаем 30. (Триггеры — да, два. Но в транзите один провод, в промежуточных конденсаторах, которых полно в современной схемотехнике, один элемент, в DRAM один транзистор, и так далее.)
p=3: по формуле 3*19=57. Реально, уже таки два элемента (один с тремя состояниями не получается): 2*19=38.
p=10: по формуле 10*9=90. Реально, однако, можем сократить (в BCD) до 4*9=36, экономнее реального троичного. (Через Чен-Хо можно и 30. Но вычислять в нём неудобно, всё равно для вычислений будет BCD. Ещё и затраты на упаковку и распаковку.)
А теперь подсчитаем сложность схем для операций...
Ну вот типа и всё
И снова склоняюсь к выводу, что Брусенцов просто получил возможность сделать что-то прикольное независимое от больших монстров, и он это успешно реализовал, войдя в историю.
Здравствуйте, alpha21264, Вы писали:
A>А у нас в Зеленограде разрабатывали ЭВМ на основе системы остаточных классов:
A>ru.wikipedia.org/wiki/Система_остаточных_классов
A>Та ещё дурь. Хотя, в своё время вызывала большой энтузиазм.
Алгоритм быстрого длинного умножения Шёнхаге-Страссена основан на очень близкой идее, и родился как раз из экспериментов над СОК. Аналогичные ускоренные результаты есть и по делению. Для основного деления не применяются, кроме частных случаев, а вот какое-нибудь умножение по модулю или быстрое вычисление НОД (важно для ряда областей, включая криптографию) активно использует такие представления.
Так что хоть для базовой функциональности и дурь, но без неё прогресс в некоторых областях был бы сильно медленнее.