Чтение онлайн

на главную - закладки

Жанры

Информационные технологии в СССР. Создатели советской вычислительной техники
Шрифт:

В 1961–1968 годах на основе опыта «Сетуни» Брусенцов вместе с Жоголевым разработали архитектуру новой машины, названной затем «Сетунь-70». Алгоритм ее функционирования был с исчерпывающей полнотой записан на несколько расширенном «Алголе-60» (за рубежом подобное делали затем на специально изобретаемых языках описания архитектуры, например, на ISP). Это описание заведующий ВЦ МГУ И. С. Березин утвердил в 1968 году в качестве ТЗ на машину. Оно задавало инженерам предписание того, какую машину надлежит сделать, а программисты имели точное до битов описание, позволявшее заблаговременно создавать для нее программное оснащение, готовить эмуляторы ее архитектуры на имевшихся машинах и т. д. Было намечено, что к 1970 году лаборатория Брусенцова создаст действующий образец, а отдел Жоголева — систему программного обеспечения. «Сроки были в обрез, но в апреле 1970 г. образец уже действовал, — писал Н. П. Брусенцов. — Работал он на тестах, которые мне пришлось написать самому, потому что Жоголев не сделал по

своей части буквально ничего. Он увлекся другой работой в сотрудничестве с Дубной. Машину мы все же „оседлали“, помог программист из команды Жоголева — Рамиль Альварес Хосе, а еще через год, „слегка“ модернизировав „Сетунь-70“, сделали ее машиной структурированного программирования [73] .

73

Об этом подробно см. статью Н. П. Брусенцова и др. в сборнике «Вычислительная техника и вопросы кибернетики», вып. 15. МГУ, 1978; там же — о преимуществах троичности. — Прим. авт.

Машина задумана так, что обеспечивалась эффективная возможность ее программного развития. Теперь это называют RISC-архитектурой. Троичность в ней играет ключевую роль. Команд в традиционном понимании нет — они виртуально складываются из слогов (слоги-адреса, слоги-операции, длина слога — 6 тритов, иначе; трайт — троичный аналог байта). Длина и адресность команд варьируются по необходимости, начиная с нульадресной. На самом деле программист не думает о командах, а пишет в постфиксной форме (ПОЛИЗ) выражения, задающие вычисления над стеком операндов. Для процессора эти алгебраические выражения являются готовой программой, но алгебра дополнена операциями тестирования, управления, ввода-вывода. Пользователь может пополнять набор слогов своими операциями и вводить (определять) постфиксные процедуры, использование которых практически не снижает быстродействия, но обеспечивает идеальные условия для структурированного программирования — то, чего не обеспечил Э. Дейкстра, провозглашая великую идею. Результат — трудоемкость программ уменьшилась в 5–10 раз при небывалой надежности, понятности, модифицируемости и т. п., а также компактности и скорости. Это действительно совершенная архитектура, и к ней всё равно придут».

Из интервью Н. П. Брусенцова журналу «Upgrade»:

UP: А «Сетунь-70»?

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

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

ЭВМ «Сетунь-70»

«Мне, конечно, было горько от того, что нас не поняли, но затем я увидел, что это нормальное положение в человеческом обществе, и что я еще легко отделался, — с горьким юмором написал Брусенцов. — А вот Уильям Оккам, проповедовавший трехзначную логику в XIII веке, с большим трудом избежал костра и всю жизнь прожил изгоем. Другой пример — Льюис Кэррол, которому только под личиной детской сказки удалось внедрить его замечательные находки в логике, а ведь

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

Полноценная информатика не может ограничиться общепринятой сегодня по техническим причинам двоичной системой — основа должна быть троичной. Как-то я встретился с Глушковым и попытался поговорить об этом. Как истинный алгебраист Глушков сказал тогда, что вопрос о том, включать пустое или не включать, давно решен: включать! Но в действительности все не так просто. Современные математики, в особенности Н. Бурбаки, в самом деле считают, что Аристотель не знал „пустого“, поэтому его логика несовместима с математической логикой и математикой вообще. Если бы они почитали Аристотеля, то могли бы узнать, что именно им введено не только это понятие, но и буквенные обозначения переменных и прочих абстрактных сущностей, которыми кормится современная математика, не всегда осознавая их смысл. Оказалось, что Аристотель за 2300 лет до появления компьютеров и расхожего теперь термина „информатика“ не только заложил достоверные основы этой науки (у него это называлось „аналитика“, „диалектика“, „топика“, „первая философия“), но и поразительно эффективно применил ее методы к исследованию таких областей, как этика, поэтика, психология, политика, о чем мы со своими ЭВМ пока и мечтать боимся.

Отдельные примеры алгебраизации (достоверной) аристотелевской логики я опубликовал в виде статей „Диаграммы Льюиса Кэррола и аристотелева силлогистика“ (1977 г.), „Полная система категорических силлогизмов Аристотеля“ (1982 г.).

У меня налицо убедительные доказательства верности открытого пути. С какой лег-костью была создана „Сетунь“, как просто ее осваивали и продуктивно применяли пользователи во всех областях, и как они плевались, когда пришлось переходить на двоичные машины. Наивысшее достижение сегодня — RISC-архитектура — машины с сокращенным набором команд (типично — 150 команд), но где им до „Сетуни“, у которой 24 команды обеспечивали полную универсальность и несвойственные RISC эффективность и удобство программирования! Истинный RISC может быть только троичным.

В сущности мы его уже сделали, это „Сетунь-70“ — машина, в которой неизвестные в то время (1966–1968 гг.) RISC-идеи счастливо соединились с преимуществами трехзначной логики, троичного кода и структурированного программирования Э. Дейкстры, реализованного как наиболее совершенная и эффективная его форма — процедурное программирование в условиях двухстековой архитектуры. Впоследствии на этой основе была создана реализуемая на имевшихся двоичных машинах диалоговая система структурированного программирования ДССП, а в ней множество высокоэффективных, надежных и поразительно компактных продуктов, таких как „Наставник“, кросс-системы программирования микрокомпьютеров, системы разработки технических средств на базе однокристальных микропроцессоров, системы обработки текстов, управления роботами-манипуляторами, медицинский мониторинг и многое другое.

Сейчас мы развиваем ДССП в „процедурный ЛИСП“. Известно, что ЛИСП — единственный язык, на котором можно сделать все: от управления простейшими системами до проблем искусственного интеллекта и логического программирования. Но ЛИСП с его функциональным программированием и списковыми структурами программ и данных — это магия, доступная немногим. Мы обеспечим те же (и больше) возможности, но без магии. К сожалению, приходится делать это не на троичной машине и полного совершенства достичь не удается, но и в двоичной среде многое можно значительно упростить и улучшить. Правда, отдельные фрагменты трехзначной логики используются в двоичной ДСПП как логика знаков чисел (—, 0, +), также в виде трехзначных операций конъюнкции и дизъюнкции, существенно ускоряющих принятие решений.

Все же главным применением трехзначной логики стала у меня теперь силлогистика и модальная логика Аристотеля. Арифметические и машинные достоинства троичности в достаточной степени были освоены нами уже в „Сетуни-70“ — операции со словами варьируемой длины, оптимальный интервал значений мантиссы нормализованного числа, единый натуральный код чисел, адресов и операций, идеальное естественное округление при простом усечении длины числа, алгебраические четырехвходные сумматоры и реверсивные счетчики, экономия соединительных проводов и контактов за счет передачи по каждому проводу двух несовместимых двузначных сигналов (т. е. одного трехзначного). Короче говоря, всё, о чем мечтает Д. Кнут в „Искусстве программирования для ЭВМ“, мы уже осуществили. Адекватное отображение логики Аристотеля в трехзначной системе откроет выход компьютерам на те проблемы, которые он в свое время исследовал и которые сегодня, по-моему, актуальней вычислительной математики и электронной почты, а тем более одуряющих компьютерных игр. К тому же логика приобретет естественный вид и ее можно будет наконец пустить в школу, чтобы учились соображать, а не занимались зубрежкой».

Поделиться:
Популярные книги

Законы Рода. Том 10

Андрей Мельник
10. Граф Берестьев
Фантастика:
юмористическая фантастика
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 10

Офицер

Земляной Андрей Борисович
1. Офицер
Фантастика:
боевая фантастика
7.21
рейтинг книги
Офицер

На границе империй. Том 3

INDIGO
3. Фортуна дама переменчивая
Фантастика:
космическая фантастика
5.63
рейтинг книги
На границе империй. Том 3

Наследие Маозари 6

Панежин Евгений
6. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 6

Камень. Книга вторая

Минин Станислав
2. Камень
Фантастика:
фэнтези
8.52
рейтинг книги
Камень. Книга вторая

Черный Маг Императора 11

Герда Александр
11. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Черный Маг Императора 11

Отмороженный 9.0

Гарцевич Евгений Александрович
9. Отмороженный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Отмороженный 9.0

Метатель

Тарасов Ник
1. Метатель
Фантастика:
боевая фантастика
попаданцы
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель

Гоплит Системы

Poul ezh
5. Пехотинец Системы
Фантастика:
фэнтези
рпг
фантастика: прочее
5.00
рейтинг книги
Гоплит Системы

Хозяйка покинутой усадьбы

Нова Юлия
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка покинутой усадьбы

Моя (не) на одну ночь. Бесконтрактная любовь

Тоцка Тала
4. Шикарные Аверины
Любовные романы:
современные любовные романы
7.70
рейтинг книги
Моя (не) на одну ночь. Бесконтрактная любовь

Газлайтер. Том 4

Володин Григорий
4. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 4

Боярышня Евдокия

Меллер Юлия Викторовна
3. Боярышня
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Боярышня Евдокия

Опасная любовь командора

Муратова Ульяна
1. Проклятые луной
Фантастика:
фэнтези
5.00
рейтинг книги
Опасная любовь командора