
- •Нижегородский государственный университет им. Н.И. Лобачевского
- •1.Предисловие
- •2.Замечания по терминологии
- •3.Кибернетика и информатика
- •4.Предпосылки информатики
- •4.1.Мечта человека об искусственном человеке
- •4.2.Усилители физической и умственной деятельности человека
- •4.3.Ключевые проблемы информатики
- •5.Формализация естественного языка как средства общения.
- •6.Формализация физических характеристик среды обитания
- •6.1.Дискретные и непрерывные множества
- •6.2. Понятия измерительной шкалы, числа и измерения
- •6.3.Натуральное число
- •6.4.Позиционная система счисления
- •6.5.Натуральная числовая прямая
- •6.6.Целые числа (положительные и отрицательные)
- •6.7.Вещественные числа
- •7.Формализация физических зависимостей
- •7.1.Функции
- •7.2.Элементарные функции
- •7.3.Элементарная алгебра, аналитические и численные вычисления
- •8.Аналоговые и цифровые вычислители
- •9.Простейшие вычислители
- •9.1.Аналоговые вычислительные линейки
- •9.2.Цифровой абак и русские счеты
- •9.3.Цифровые механические арифмометры
- •9.4.Хронология событий.
- •10.Аналитические машины Чарльза Беббиджа.
- •11.Формализация рассуждений
- •11.1.Логика рассуждений
- •11.2.Логические функции и алгебра логики
- •11.3.Алгебра логики и алгебра релейно - контактных схем
- •12.Накануне компьютерной эры
- •12.1. Зарождение цифровых систем управления
- •12.2.Перфокарточные сортировальные машины
- •12.3.Методология моделирования
- •13.Теоретические модели вычислений
- •13.1.Алгоритм и его свойства
- •13.2.Проблема слов в ассоциативном исчислении
- •13.3.Нормальный алгоритм Маркова
- •13.4.Рекурсивные функции
- •13.5.Машина Тьюринга
- •13.6.Равнодоступная адресная машина
- •14.Пионеры зарубежной компьютеризации
- •15.Становление информатики в России. Борьба за признание
- •16.Два типа электронных вычислительных машин
- •16.1.Аналоговая вычислительная машина (авм)
- •16.2.Цифровая электронная вычислительная машина (компьютер, эвм)
- •16.3.Аналог или цифра
- •17.Пионеры отечественной компьютеризации
- •18.Становление информатики в России. Начальный период
- •19.Оригинальные отечественные серийные эвм (компьютеры)
- •19.1.Эвм Стрела
- •Элементная база
- •Программное обеспечение
- •Описание машины
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.2.Семейство эвм "м-20"
- •Структура эвм
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности машины
- •Об использовании эвм м-20
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.3.Семейство эвм "бэсм"
- •19.3.1.Бэсм-1
- •Структура эвм
- •19.3.2.Бэсм-2
- •Структура эвм
- •19.3.3.Бэсм-4
- •Структура эвм
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •19.4.Семейство эвм "Минск"
- •19.4.1.Минск-1
- •19.4.2.Минск-2
- •19.4.3.Минск -22
- •19.4.4.Минск-23
- •19.4.5.Минск-32
- •Описание машины
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.5.Семейство эвм "Урал"
- •19.5.1.Урал-1, Урал-2, Урал-3, Урал-4
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Основные эксплуатационно-технические данные
- •Особенности эвм
- •19.5.2.Урал-11, Урал-14, Урал-16
- •Описание машины
- •Элементная база
- •Программное обеспечение.
- •Основные эксплуатационно-технические данные машины “Урал-11”
- •Особенности эвм
- •19.6.Эвм "Весна" и "Снег"
- •19.7.Эвм бэсм-6
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности машины
- •19.8.Многопроцессорные вычислительные комплексы "Эльбрус"
- •Описание машины.
- •Элементная база
- •Программное обеспечение
- •Типовые комплектации
- •Производительность
- •19.9.Управляющие эвм
- •20.Эволюция элементарной базы и поколения эвм
- •20.1.Базисные логические элементы
- •20.2.Элементы регистровой памяти
- •20.3.Элементы памяти на магнитных сердечниках.
- •20.4.Интегральные схемы
- •20.5.Поколения эвм
- •21.Американская система ibm-360
- •22.Семейство Ряд "ес эвм"
- •22.1.Хронология создания
- •22.2.Ес эвм. Крупнейший промах или всеобщее счастье?
- •23.Автоматизация программирования
- •23.1.От двоичных кодов к ассемблерам - языкам символьного кодирования
- •Ассемблеры
- •Программы - загрузчики
- •23.2.Языки программирования высокого уровня
- •23.3.Трансляция программ
- •24.Первые компьютеры Сарова
- •25.Начало компьютеризации Нижегородского госуниверситета
- •26.Они были первыми
- •26.1.Конрад Цузе
- •26.2.А лан Тьюринг
- •26.3.Джон Маулчи и Джон Эккерт
- •26.4.Джон фон Нейман
- •26.5.А ксель Берг
- •26.6.В иктор Глушков
- •26.7.Сергей Лебедев
- •26.8.Исаак Брук
- •26.9.Николай Матюхин
- •26.10.Михаил Карцев
- •26.11.Юрий Базилевский
- •26.12. Башир Рамеев
- •26.13.Георгий Лопато
- •26.14. Всеволод Бурцев
- •27.Приложения
- •27.1.Основные черты кибернетики
- •27.1.1.Общенаучное значение кибернетики
- •27.1.2.Электронные счетные машины и нервная система
- •27.1.3.Прикладное значение кибернетики
- •27.2."Сигнал" Игоря Полетаева
- •27.3.Хронология компьютеростроения
- •Литература
- •Оглавление
14.Пионеры зарубежной компьютеризации
В конце 30-х годов XX века появляются первые проекты компьютеров. Идея конструктивного воплощения машины Тьюринга витает в воздухе.
1937 год. В университете штата Айова профессор Джон Атанасов, болгарин по происхождению, начал работы по созданию автоматической вычислительной машины, предназначенной для решения задач математической физики. (Электромеханические блоки и около 300 электронных ламп).
1942 год. Профессор Джон Атанасов и его аспирант Клиффорд Берри создают первый в США электронный цифровой компьютер (Atanasoff-Berry Computer - ABC). Хотя эта машина так и не была завершена (Атанасов ушел в действующую армию), она, как пишут историки, оказала большое влияния на Джона Мочли, создавшего двумя годами позже ЭВМ ENIAC. Вторая мировая война не позволила Атанасову и его сотрудникам полностью завершить проект. Однако, были запатентованы первые узлы ЭВМ.
1937 год. Джорж Стибиц построил первый двоичный калькулятор в Bell Telephone Laboratories. Компьютер Стибса действительно работал, хотя и был примитивнее чем машина Атанасова, Он продемонстрировал работу своей машины на конференции в Дартмундском колледже в 1940 году.
В 1937 году Говард Айкен из Гарвардского университета предложил проект большой релейной машины вычислительной машины.. Спустя семь лет, в мае 1944-го года машина, получившая название "Марк-I", вступила в строй. Существенное влияние на Г. Айткена и четырех его соавторов оказали идеи Ч. Беббиджа. Машина содержала около 765 тысяч деталей (электромеханических реле, переключателей и т. п.) достигала в длину почти 17 м (машина занимала в Гарвардском университете площадь в несколько десятков квадратных метров), в высоту — более 2,5 м и весила около 4,5 тонн. Общая протяжённость соединительных проводов составляла почти 800 км. Основные вычислительные модули синхронизировались механически при помощи 15-метрового вала, приводимого в движение электрическим двигателем, мощностью в 5 л. с. (4 кВт).
Эта машина, работавшая с 23-значными десятичными числами, выполняла операцию сложения за 0,3 сек. и операцию умножения за 3 сек. и имела внушительные размеры (длина — 17,4 м, высота — 2,5 м).
“Марк-I отличалась высокой работоспособностью (если этот термин можно применить к машине) и надежностью. Этот колосс работал по 24 часа в сутки, без выходных, выполняя главным образом расчеты по секретным проектам военно-морского флота. За первые три года работы на компьютере “Марк-I были составлены 19 таблиц различных математических функций (функций Бесселя, функций Хенкеля, интегральных синусов и косинусов и т. д.). Многочисленные исследования, связанные с решением больших систем линейных уравнений, с помощью компьютера “Марк-1 проводил профессор отделения экономики Гарвардского университета Василий Леонтьев (позже лауреат Нобелевской премии).
Фактически «Марк I» представлял собой усовершенствованный арифмометр, заменявший труд примерно 20 операторов с обычными ручными арифмометрами, однако из-за наличия возможности программирования некоторые исследователи называют его первым реально работавшим компьютером. На самом деле, машина начала перемалывать свои разряды лишь через два года после того как в Германии немецкий изобретатель Конрад Цузе создал вычислительную машину Z3.
«Марк I» последовательно считывал и выполнял инструкции с перфорированной бумажной ленты. Компьютер не умел выполнять условные переходы, из-за чего каждая программа представляла собой довольно длинный ленточный рулон. Циклы (англ. loops — петли) организовывались за счёт замыкания начала и конца считываемой ленты (то есть действительно за счёт создания петель). Принцип разделения данных и инструкций получил известность, как гарвардская архитектура.
Однако, главным отличием компьютера «Марк I» было то, что он был первой полностью автоматической вычислительной машиной, не требовавшей какого-либо вмешательства человека в рабочий процесс.
Говард Айкен также продолжил работу над созданием новых вычислительных машин. За «Марком I» последовал «Марк II», затем в сентябре 1949 года «Марк III/ADEC», а в 1952 году — «Марк IV».
Немецкий инженер Конрад Цузе в 30-х годах XX века занимался проектированием самолетов в компании Henschel Aircraft и ему приходилось выполнять огромные объемы вычислений для определения оптимальной конструкции крыльев. В то время существовали только механические калькуляторы с десятичной системой счисления и Цузе заинтересовала проблема автоматизации всего процесса вычислений, так как он вынужден был выполнять множество однообразных рутинных расчетов по заданной схеме. В 1934 г. Цузе придумал модель автоматического калькулятора, которая состояла из устройства управления, вычислительного устройства, а также и полностью совпадала с архитектурой сегодняшних компьютеров.
В те годы Цузе пришел к выводу, что будущие компьютеры будут основаны на шести принципах:
1. двоичная система счисления;
2. использование устройств, работающих по принципу “да/нет” (логические 1 и 0);
3. полностью автоматизированный процесс работы вычислителя;
4. программное управление процессом вычислений;
5. поддержка арифметики с плавающей запятой;
6. использование памяти большой емкости.
Цузе на квартире родителей построил свою первую машину, названную Z1. Это полностью механическая программируемая цифровая машина. Модель была пробной и в практической работе не использовалась. Ее восстановленная версия хранится в музее Verker und Technik в Берлине. Именно эту машину в Германии, а сейчас уже все чаще и во всем мире называют первым в мире компьютером.
В 1940 году закончена следующая работа Цузе – компьютер Z2, первый в мире релейный компьютер. В 1941 году Цузе вместе с несколькими друзьями построил первый в мире программируемый калькулятор Z3, состоящий из 2600 электромеханических реле, использовались, как мы это теперь называем, элементы б/у. Z3 - первая реализация принципа программного управления. Оригинал Z3 был, к сожалению, разрушен во время войны. Реконструированную модель можно увидеть в Немецком музее в Мюнхене. Логическая структура у обеих моделей (Z1 и Z3) была одинакова. Отметим, что Z3 был быстрее, чем Harvard Mark I, появившийся двумя годами позже.
Одновременно Цузе занимался проектированием механических устройств дистанционного управления бомбами для повышения точности попадания в цель. Для создания модели требовалось провести очень большие вычисления, и он сначала сделал специализированный компьютер, выполнявший фиксированную последовательность операций. Затем он решил также автоматизировать работу оператора, занимавшегося вводом данных, и первым в мире сделал то, что сегодня называется аналогово-цифровым преобразователем.
Из-за небольшого объема памяти на Z3 нельзя было решать, в частности, системы линейных уравнений. В 1941 г. Цузе решил разработать более мощную модель - Z4. Он понимал все минусы своей машины и хотел создать полноценный компьютер, которому, по оценкам самого Цузе, требовалась емкость памяти как минимум 8 тысяч слов. Но немецкое руководство ответило ему, что Германия так близка к победе, что компьютеры ей не нужны. Во время войны все практические работы в этой области полностью прекратились.
Приближалась пора компьютеров, появление которых обычно приравнивается к появлению первых паровых машин и двигателей внутреннего сгорания. Стимулом для создания электронного компьютера стала вторая мировая война.
В начале войны германские адмиралы посылали сообщения на подводные лодки, а англичане могли эти сообщения перехватывать. Сообщения были закодированы машиной ENIGMA, предшественница которого была спроектирована изобретателем дилетантом и бывшим президентом США Томасом Джеферсоном.
Поляки украли эту машину у немцев и продали англичанам. Но для расшифровки сообщений требовалось огромное количество вычислений. Британское правительство основало секретную лабораторию для создания электронного компьютера COLOSSUS. В его создании принимал участие Алан Тьюринг. COLOSSUS уже работал в 1943 году, но в силу секретности не мог служить основой для дальнейшего развития компьютеров.
В Пенсильванском университете США такую работу для военного ведомства с целью вычисления таблиц стрельб, возглавляли талантливые инженеры Маучли и Эккерт. В 1946 году первая электронная вычислительная машина ЭНИАК (Electronic Numerical Integrator and Computer) начала производить вычисления. 18000 электронных ламп, 1500 реле, 30 тонн весом, 140 киловатт электроэнергии, 6000 многоканальных переключателей множество кабелей, протянутых к розеткам.
Числа в этой первой машине представлялись не двоичными кодами, а в десятичной системе счисления.
Эту машину уже можно назвать машиной с автоматическим программным управлением, хотя она не имела внутреннего запоминающего устройства. Она включала в себя ряд специализированных блоков, предназначенных для деления, извлечения корня, умножения и т.д. Общее управление ими осуществлялось центральным программным блоком. Но самой программы, в ее теперешнем смысле, не было.
Программированием машины — разработчики называли этот процесс “установкой” (setting up) — занималась группа из семи молодых женщин-математиков (среди них были жены Моучли, Бёркса и Голдстайна). Выполнялось оно следующим образом.
Во-первых, с помощью коммутационной доски и штекеров соединялись между собой устройства, которые должны были участвовать в решении конкретной задачи.
Во-вторых, так называемые приемно-передающие переключатели (transceiver switches), расположенные на передней панели каждого из этих устройств, устанавливались в положение “включено” и образовывали местные программно-управляющие цепи (local program-control circuits). Включенное положение переключателей разрешало устройству выполнять его действия после прихода программного импульса от ТГ.
Кроме того, на панели устройств был установлен многополюсный шаговый распределитель (stepper switches), который позволял осуществлять многократное (до девяти раз подряд) повторение одних и тех же операций.
Описанным выше действием предшествовала длительная бумажная работа. С помощью установочной таблицы (setup table) детально описывалась последовательность операций, необходимых для решения конкретной задачи. Таблица имела 27 колонок (по одной для каждого аккумулятора и функциональных таблиц, для управляющего программатора, передатчика констант и т. д.) и содержала временную последовательность программных установок, входных и выходных импульсов для каждой операции.
Программирование машины являлось, таким образом, трудоемким и длительным процессом (он занимал порой дни и даже недели). Любая “установка” машины изменяла ее конфигурацию и превращала ее в специализированное устройство для решения конкретной задачи, а “программа” становилась внутренней, неотъемлемой частью ENIAC'а.
Примечание. Аналогичная методика "программирования" применялась и в первых отечественных компьютерах.
Главная инженерная проблема, с которой столкнулись создатели и пользователи ENIAC'а, была проблема частых выходов из строя электронных ламп. На основании формул теории надежности было подсчитано, что при наличии почти 17,5 тыс. ламп, не отличавшихся в то время высокой надежностью и работавших одновременно с частотой 100 кГц, каждую секунду возникало 1,7 млрд. ситуаций, при которых хотя бы одна из них “летела”, что приводило к сбою в работе всего колосса.
Напомним, что тогда ни в радиотехнике, ни в радарах и дешифровальных устройствах такого “лампового изобилия” и близко не было. Многие оппоненты Моучли — Эккерта сомневались, что ENIAC сможет продержаться без сбоя хотя бы несколько часов (несмотря на то, что электронные компоненты, предназначавшиеся для машины, тщательно тестировались, а качеству пайки уделялось особое внимание).
Несмотря на теоретические расчеты скептиков, первые ламповые машины заработали. Ошибка последних оказалась в следующем. В расчет бралось среднее время работы радиолампы – 1000 часов. Но эта цифра характеризовала надежность радиолампы при подаче на него непрерывного квази синусоидального сигнала. При этом катод излучает электроны непрерывно и быстро "истощается".
Радиолампы в схемах компьютера работают в импульсном режиме, когда между соседними импульсами проходит много времени и катод восстанавливает свои свойства. Таким образом, реально срок работы радиоламп в импульсном режиме был неизмеримо больше 1000 часов и время работы компьютера между сбоями достигало 10-ти часов. Перевод компьютеров на транзисторную базу в значительной степени снял эту проблему.
Первым «настоящим» компьютером следует считать не машину ЭНИАК (и подобные ей), а введенную в эксплуатацию в 1949 году в Великобритании ЭВМ, разработанную Уилксом при участии Тьюринга.
Когда работа над машиной была закончена, она была уже не нужна Но Моушли и Экерту позволили организовать школу, где они рассказывали о своей работе коллегам – ученым. С этой школы началось развитие интереса к созданию больших цифровых компьютеров. (EDSAC Кембридж, JOHNIAC – корпорация RAND, ILLIAC – Иллинойский университет,, MANIAC – Лос Аламос и WEIZAC – Израиль.)
Экерт и Моушли хотели получить патент на изобретение ЦВМ, но после нескольких лет тяжбы не получили, т.к. было принято решение, что первую ЦВМ изобрел Атанасов, хотя и не запантентовал.
В то время как Экерт и Моушли работали над очередной машиной EDVAC (не оконченной Electronic Discrete Variable Computer) Джон фон Нейман в институте специальных исследований в Пристоне конструировал свою версию EDVAC– машину IAS (Immediate Addres Storadge – память с прямой адресацией)
Фон Нейман осознал, что машина с большим числом переключателей и коммутирующих шнуров не технологична. Он пришел к мысли, что программа должна храниться в двоичном виде в той же памяти, что и данные. Также осознал необходимость бинарной арифметики. ( В ENIAC каждый разряд представлялся десятью электронными лампами). Основной проект, который он описал вначале, известен сейчас как фон-неймановская машина. По нему реализована одноадресная машина EDSAC: память включала 4096 слов по 40 бит, каждое слово содержало или одно число или две команды. Команда: 8 бит код операции, 12 бит – адрес.
Примечание авторов. После запуска в США первых компьютеров правительством была создана экспертная комиссия, перед которой были поставлены два вопроса: нужны ли вычислительные машины такого типа Соединенным Штатам Америки и, если нужны, сколько их потребуется в ближайшее время? На первый вопрос комиссия ответила утвердительно: вычислители такого типа нужны для решения задач повышения военного потенциала страны. (Кстати сказать, первая задача, которая была решена на первом американском компьютере ENIAC, была задача из области ядерной физики). На второй вопрос комиссия ответила следующим образом: "В ближайшие 30 лет Соединенным Штатам Америки понадобится 9 вычислительных машин такого типа!!! Комментарии излишни.
Аналогичная комиссия в конце сороковых годов XX века была создана в СССР под председательством контр адмирала Акселя Берга для разрешения не столько технического, сколько идеологического спора – нужны ли эти компьютеры стране победившего социализма. По воспоминаниям современников, в этой комиссии участвовал сотрудник Горьковского (Нижегородского) университета Александр Александрович Андронов. По сути дела, эта комиссия дала добро на разработку цифровых компьютеров в нашем Отечестве.
Конец примечания.
Вернемся снова к Конраду Цузе. После войны он временно остался не у дел. Z3 был разрушен, Z4 не закончен, зарубежные компьютеры Mark I и ENIAK еще не работали, и он занялся теоретическими исследованиями. Ему помогал математик Герр Лохмейер. Цузе попытался автоматизировать игру в шахматы, описать правила игры в терминах логических вычислений. Сразу возникли проблемы, хорошо известные сегодня специалистам по искусственному интеллекту, - не было подходящего инструментария для работы со сложными структурами данных. В 1945 г. Цузе создал первый в мире символический язык Plankalkul (термина “алгоритмический язык” еще не существовало) и технику трансляции адресов, кроме того, у него родились идеи использования подпрограмм с параметрами. В то же время Цузе придумал название своему устройству - логическая вычислительная машина.
В начале 50-х годов экономика Германии пошла на подъем. Цузе организовал фирму Zuze KG, построил машину Z11 и использовал ее для решения задач перепланировки земель, проектирования оптических приборов. Уже тогда возникли проблемы создания хорошего ПО. Затем Цузе построил Z22, которая поддерживала общие алгоритмы вычислений, могла работать с произвольными структурами данных, имела достаточный объем памяти и была популярна у многих немецких инженеров и ученых. Цузе полагал, что у него появятся заказы на расчеты от малых и средних компаний, но они тогда не очень нуждались в подобных услугах, и Zuze KG оказалась убыточной. Государственное финансирование работ в компьютерной области началось позже.
Цузе продолжал экспериментировать с различными вычислительными устройствами, сделал автоматическую рисовальную доску - первый прообраз современных CAD. В 1964 г. он предложил автоматическую систему управления крупными ткацкими станками. С 1966 г. Цузе стал работать в компании Siemens AG.
Одним из своих наиболее выдающихся достижений Цузе считал создание языка Plankalkul, который не был привязан к архитектуре и наборам команд конкретного компьютера в отличие от первых языков ассемблера.
В Plankalkul было введено понятие объекта. Объект мог быть примитивным, основанным на двоичных числах произвольной длины (при записи логической единицы Цузе использовал символ L; например, двоичное число 1001 записывалось как L00L), и составным (структуры, рекурсивно определяемые массивы произвольной размерности и т. д
В качестве идентификаторов переменных применялось сочетание “буква + число”. Первой буквой могла быть V (параметр ввода), Z (промежуточное значение), R (результирующее значение), C (константа). Программы и подпрограммы (параметры передавались по значению) трактовались как переменные (префикс P). Например, запись P3 . 7 означала вызов 7-й программы 3-й программной группы. Plankalkul предусматривал возможность работы массивов программ, что сегодня только реализуется в распределенных системах!
Цузе придумал оператор присваивания, для которого определил специфический знак. На Цюрихской конференции по Алголу европейская группа хотела ввести в стандарт языка именно его, и только под сильным давлением американской группы, не заинтересованной в введении символов, не поддерживаемых в компьютерах США, согласилась на сочетание :=.
Plankalkul поддерживал мощные синтаксические конструкции и позволял компактно описывать сложные условные циклы. Правда, запись программы была “многоэтажной”, с верхними и нижними индексами, и походила на символические потоковые диаграммы, получившие распространение в США в 60-х годах. По мощности Plankalkul приближался к Алголу 68, но в отличие от него, в Plankalkul не поддерживалась адресная арифметика, что в целом повышало надежность программы. На Plankalkul было написано много самых разных невычислительных алгоритмов: обработки символьной информации, генерации шахматных ходов и др.
Сегодня работы Цузе известны во всем мире. Он оказал несомненное влияние на развитие европейских компьютерных технологий. Его труды использовались при создании новых компьютеров и особенно при разработке первых алгоритмических языков программирования. Конрад Цузе получил множество наград и призов и заслужил международное признание. В последние годы жизни он занимался преимущественно рисованием. Любовь к изобразительному искусству Цузе сохранил, видимо, с тех пор, как двадцатипятилетним инженером рисовал многочисленные схемы своих первых компьютеров.
По материалам сайтов: www.computer-museum.ru, www.chernykh.net/, www.schools.keldysh.ru