Кто сформулировал и описал общие принципы функционирования компьютеров
Во второй половине XX века два крупнейших ученых независимо друг от друга сформулировали основные принципы построения компьютера.
К основополагающим принципам Неймана-Лебедева можно отнести следующие:
1. Состав основных компонентов вычислительной машины.
2. Принцип двоичного кодирования.
3. Принцип однородности памяти.
4. Принцип адресности памяти.
5. Принцип иерархической организации памяти.
6. Принцип программного управления.
Рассмотрим подробно каждый из принципов Неймана-Лебедева. Любое устройство, предназначенное для автоматических вычислений, должно содержать определённый состав основных компонентов: блок обработки данных, блок управления, блок памяти и блоки ввода/вывода информации.
Перечисленные в функциональной схеме блоки есть и у современных компьютеров. К ним относятся:
- Арифметико-логическое устройство — АЛУ, в котором происходит обработка данных.
- Устройство управления (УУ) отвечает за выполнение программы и согласование взаимодействий всех узлов компьютера. В современных компьютерах АЛУ и УУ изготавливаются в виде единой интегральной схемы — микропроцессора.
- Память — устройство, где хранятся программы и данные. Различают внутреннюю и внешнюю память. Основная часть внутренней памяти предназначена для оперативного хранения программ и данных, её принято называть оперативным запоминающим устройством — ОЗУ. К внутренней памяти относится и ПЗУ (постоянное запоминающее устройство, англ. ROM — Read Only Memory для диктора рид онли мемори), в нём содержится программа начальной загрузки компьютера. Основное отличие ПЗУ от ОЗУ заключается в том, что при решении задач пользователя содержимое ПЗУ не может быть изменено. Внешняя память, называемая ещё долговременной, используется для длительного хранения программ и данных.
- Устройства ввода используются для преобразования данных в удобную для обработки компьютером форму.
- Устройства вывода преобразуют работу ЭВМ в удобную для восприятия человеком форму.
Отличительной особенностью функциональной схемы компьютеров первых поколений от являлось то, что программное управление всеми процессами ввода-вывода происходило от процессора.
Рассмотрим принцип двоичного кодирования информации. Он заключается в том, что в ЭВМ используется двоичная система счисления. Это означает, что любая информация, предназначенная для обработки на компьютере, а также и программы, представляются в виде двоичного кода, т. е. последовательности нулей и единиц.
Благодаря использованию двоичного кодирования для представления не только данных, но и программ, форма их представления становится одинаковой, а это означает, что их можно хранить в единой памяти, поскольку нет принципиальной разницы между двоичным представлением машинной команды, числа, символа и др. В этом заключается принцип однородности памяти.
Оперативная память компьютера представляет собой набор битов — однородных элементов с двумя устойчивыми состояниями, одно из которых соответствует нулю, другое — единице. Группы соседних битов объединяются в ячейки памяти, которые пронумерованы, т. е. имеют свой адрес. Это соответствует принципу адресности памяти.
На современных компьютерах может одновременно извлекаться из памяти и обрабатываться до 64 разрядов, т. е. восьми байтовых ячеек. Это стало возможным при реализации принципа параллельной обработки данных.
С позиции пользователя существуют два противоречивых требования, предъявляемых к памяти компьютера: память должна быть как можно больше, а скорость работы — как можно быстрее.
Противоречие заключается в том, что при увеличении объёма памяти неизбежно уменьшается скорость работы, поскольку увеличивается время на поиск данных. С другой стороны, более быстрая память является и более дорогой, что увеличивает общую стоимость компьютера.
Преодолением противоречия между объёмом памяти и её быстродействием стало использование нескольких различных видов памяти, связанных друг с другом. В этом состоит принцип иерархической организации памяти.
Основным отличием компьютеров от любых других технических устройств является программное управление их работой.
Важным элементом устройства управления является счётчик адреса команд, где в любой момент времени хранится адрес следующей по порядку выполнения команды. Используя значение из счётчика, процессор поочередно считывает из памяти команду программы, расшифровывает её и выполняет. Действия выполняются до завершения работы программы.
Современные персональные компьютеры разнообразны — это и настольные, и переносные, и планшетные устройства. Они различаются по размерам, назначению, но фунциональное устройство у них одинаковое.
Оно определяется архитектурой персонального компьютера.
Архитектура — это наиболее общие принципы построения компьютера, отражающие программное управление работой и взаимодействием его основных функциональных узлов.
Для рассмотрения взаимодействие основных функциональных узлов обратимся к функциональной схеме компьютера.
На ней представлены основные узлы современного компьютера, к которым, как вам уже известно, относятся процессор, внутренняя память, устройства ввода, устройства вывода и внешняя память.
В компьютерах с классической фон-неймановской архитектурой все процессы ввода-вывода находились под управлением процессора. Поскольку процессор является самым быстрым устройством, то любое обращение к устройствам ввода-вывода и ожидание отклика от них замедляло общее время работы.
В современных компьютерах эту проблему решают специальные электронные схемы, которые обеспечивают обмен данных между процессором и внешними устройствами. Они называются контрОллерами, а на функциональной схеме они обозначены буквой К.
При наличии контроллеров данные могут передаваться по магистрали между внешними устройствами и внутренней памятью без использования процессора.
Это существенно снижает нагрузку на работу центрального процессора, а значит приводит к повышению эффективности работы всей вычислительной системы.
Обмен данными между устройствами осуществляется с помощью магистрали.
Магистраль (шина) — устройство для обмена данными между устройствами компьютера.
Магистраль включает в себя шину адреса, шину данных и шину управления.
Шина адреса используется для указания физического адреса устройства;
Шина данных используется для передачи данных между узлами компьютера;
Шина управления организует сам процесс обмена (сигналы чтение/запись, данные готовы/не готовы, обращение к внутренней/внешней памяти и др.)
В современных компьютерах применяется магистрально-модульная архитектура, главное достоинство которой лежит в гибкости конфигурации, т. е. возможности изменить конфигурацию компьютера путём подключения к шине новых внешних устройств, а также замене старых внешних устройств.
Если спецификация на шину опубликована производителем, т. е. является открытой, то говорят о принципе открытой архитектуры. В этом случае пользователь самостоятельно может выбрать дополнительные устройства для формирования компьютерной системы, учитывающей именно его предпочтения.
Мир современных компьютеров широк и многообразен. Персональные компьютеры давно стали многоядерными. Это относится в том числе к смартфонам и планшетным компьютерам.
Однако, существуют не только персональные компьютеры, но и значительно более нагруженные вычислительные системы. Мы начали урок с путешествия в один из дата-центров Яндекса и вы видели огромное количество серверов, которые позволяет обеспечивать пользователей качественными сервисами в режиме 24х7 с высокой скоростью доступа.
Существуют сегодня и суперкомпьютеры, способные решать научные задачи, производить вычисления, связанные с космическими телами, исследованиями микромира и др.
Технические характеристики электронной техники находятся вблизи предельных значений, а это означает необходимость новых технологических решений. Сегодня ведутся исследования в области нанотехнологий, квантовых и биологических компьютеров. Одна из задач вашего поколения — найти новые технологические решения для увеличения мощности компьютеров будущего.
Основные принципы организации электронных вычислительных машин были заложены Дж. Фон Нейманом:
1. Принцип двойного кодирования. Электронные машины должны работать не в десятичной, а в двоичной системе счисления.
2. Принцип программного управления. Электронная машина выполняет вычисления по программе. Программа состоит из набора команд, которые выполняются автоматически друг за другом в определенной последовательности.
3. Принцип хранимой программы. В процессе решения задачи программа должна размещаться в запоминающем устройстве машины, обладающем высокой скоростью выборки и записи.
4. Принцип однотипности представления чисел и команд. Программа, так же как и числа, с которыми оперирует машина, записывается в двоичном коде. Таким образом, по форме представления команды и числа однотипны.
5. Принцип иерархичности памяти. Сложность реализации единого емкого быстродействующего запоминающего устройства требует иерархического построения памяти. По меньшей мере, должно быть два уровня иерархии: основная память и внешняя.
6. Принцип адресности основной памяти. Основная память должна состоять из пронумерованных ячеек, каждая из которых доступна программе в любой момент времени по ее двоичному адресу.
Процессор и основная память являются центральными устройствамикомпьютера, поскольку именно на их основе реализуется принцип программного управления. Все остальные устройства компьютера считаются внешними, или периферийными.
Внешние устройствакомпьютера - устройства, обеспечивающие ввод и вывод данных из основных устройств компьютера (устройства ввода-вывода) и долговременное хранение информации, не обрабатываемой процессором в данный момент времени (внешние запоминающие устройства).
В одном компьютере может использоваться до нескольких сотен внешних устройств разного типа. Состав устройств ввода-вывода может изменяться в зависимости от классов задач, решаемых на компьютере.
Производительность и эффективность использования компьютера определяются не только составом и характеристиками ее устройств, но и способом организации их совместной работы. Связь между устройствами компьютера осуществляется с помощью сопряжений, которые называются интерфейсами.
Интерфейспредставляет собой совокупность стандартизованных аппаратных и программных средств, обеспечивающих обмен информацией (сигналами) между устройствами. Наличие стандартных интерфейсов позволяет унифицировать передачу информации в виде сигналов между устройствами независимо от их особенностей.
Основной, центральной частью компьютера является процессор, объединяющий арифметико-логическое устройство и устройство управления в единое целое. У современных компьютеров значительно расширились номенклатура и число подключаемых устройств ввода-вывода; запоминающее устройство приняло иерархический вид за счет сверхоперативной кэш-памяти и разнообразных внешних накопителей.
Появился термин "аппаратная платформа" для классов и типов ЭВМ. Под этим термином стали понимать совокупность технических средств, определяющих среду функционирования конкретных программ обработки данных. В основу аппаратной платформы были положены совокупность интерфейсной системы передачи данных и тип используемого процессора.
Термин "архитектура ЭВМ" приобрел новое звучание применительно к современным компьютерам.
Архитектура компьютера - это совокупность основных устройств, узлов и блоков, а также структура основных информационных и управляющих связей между ними, обеспечивающая выполнение заданных функций; структура базового программного обеспечения, а также сочетание аппаратного и базового программного обеспечения, поддерживающее объединение компьютеров в сети.
Принципом построения и функционирования современных компьютеров различных классов является программное управление, в основе которого находится представление алгоритма решения любой задачи в виде программы вычислений.
В общем случае алгоритм определяется как порядок выполнения операций над данными с целью получения конечного результата либо как конечный набор предписаний, определяющий решение задачи посредством конечного количества операций. Одна и та же задача может быть реализована по различным алгоритмам, в то же время для реализации одного и того же алгоритма могут использоваться различные программы, учитывающие особенности архитектуры компьютера.
При решении задачи вся информация должна быть доступна процессору и располагаться в оперативной памяти. Для современных ЭВМ принята байтовая структура памяти, т.е. все ее пространство условно разбивается на ячейки по 1 байту. Байты виртуально нумеруются, и к ним по адресам памяти обращается центральный процессор. Передача данных между внутренней памятью и центральным процессором осуществляется словами.
Исходя из предложенного Дж. Фон Нейманом иерархического принципа памяти, в современных компьютерах память по назначению, методам использования и параметрам подразделяется на оперативную, постоянную, внешнюю сменяемую, внешнюю несменяемую, процессорную.
Для четкого понимания принципа программного управления работой отметим, что это управление "внутри машины" реализуется благодаря взаимодействию двух блоков: центрального процессора и внутренней памяти. Внутренняя память предназначается для кратковременного хранения программ и обрабатываемых данных. Она содержит данные (числа и символы), подлежащие обработке, промежуточные и окончательные результаты. Часть оперативной памяти может выступать как буфер для хранения отдельных параметров внешних устройств машины.
Устройство управления, являющееся составной частью центрального процессора, обеспечивает автоматическое выполнение программы путем принудительной координации работы всех остальных устройств ЭВМ. Устройство управления, считывая очередную команду, расшифровывает ее, определяет перечень необходимых компонентов для ее выполнения, загружает их из памяти и реализует. При этом каждая команда под воздействием сигналов устройства управления выполняется в цикле, рис. 3.5.
Программное управление осуществляется в несколько этапов:
1. Формирование адреса очередной команды. Адрес первой
команды программы находится вне цикла специальным способом.
2. Нахождение и выборка из оперативной памяти команды,
расшифровка ее содержания.
В 1946 году Д. фон Нейман, Г. Голдстайн и А. Беркс в своей совместной статье изложили новые принципы построения и функционирования ЭВМ. В последствие на основе этих принципов производились первые два поколения компьютеров. В более поздних поколениях происходили некоторые изменения, хотя принципы Неймана актуальны и сегодня.
По сути, Нейману удалось обобщить научные разработки и открытия многих других ученых и сформулировать на их основе принципиально новое.
Принципы фон Неймана
- Использование двоичной системы счисления в вычислительных машинах. Преимущество перед десятичной системой счисления заключается в том, что устройства можно делать достаточно простыми, арифметические и логические операции в двоичной системе счисления также выполняются достаточно просто.
- Программное управление ЭВМ. Работа ЭВМ контролируется программой, состоящей из набора команд. Команды выполняются последовательно друг за другом. Созданием машины с хранимой в памяти программой было положено начало тому, что мы сегодня называем программированием.
- Память компьютера используется не только для хранения данных, но и программ. При этом и команды программы и данные кодируются в двоичной системе счисления, т.е. их способ записи одинаков. Поэтому в определенных ситуациях над командами можно выполнять те же действия, что и над данными.
- Ячейки памяти ЭВМ имеют адреса, которые последовательно пронумерованы. В любой момент можно обратиться к любой ячейке памяти по ее адресу. Этот принцип открыл возможность использовать переменные в программировании.
- Возможность условного перехода в процессе выполнения программы. Не смотря на то, что команды выполняются последовательно, в программах можно реализовать возможность перехода к любому участку кода.
Самым главным следствием этих принципов можно назвать то, что теперь программа уже не была постоянной частью машины (как например, у калькулятора). Программу стало возможно легко изменить. А вот аппаратура, конечно же, остается неизменной, и очень простой.
Для сравнения, программа компьютера ENIAC (где не было хранимой в памяти программы) определялась специальными перемычками на панели. Чтобы перепрограммировать машину (установить перемычки по-другому) мог потребоваться далеко не один день. И хотя программы для современных компьютеров могут писаться годы, однако они работают на миллионах компьютеров после несколько минутной установки на жесткий диск.
Как работает машина фон Неймана
Машина фон Неймана состоит из запоминающего устройства (памяти) - ЗУ, арифметико-логического устройства - АЛУ, устройства управления – УУ, а также устройств ввода и вывода.
Программы и данные вводятся в память из устройства ввода через арифметико-логическое устройство. Все команды программы записываются в соседние ячейки памяти, а данные для обработки могут содержаться в произвольных ячейках. У любой программы последняя команда должна быть командой завершения работы.
Команда состоит из указания, какую операцию следует выполнить (из возможных операций на данном «железе») и адресов ячеек памяти, где хранятся данные, над которыми следует выполнить указанную операцию, а также адреса ячейки, куда следует записать результат (если его требуется сохранить в ЗУ).
Арифметико-логическое устройство выполняет указанные командами операции над указанными данными.
Из арифметико-логического устройства результаты выводятся в память или устройство вывода. Принципиальное различие между ЗУ и устройством вывода заключается в том, что в ЗУ данные хранятся в виде, удобном для обработки компьютером, а на устройства вывода (принтер, монитор и др.) поступают так, как удобно человеку.
УУ управляет всеми частями компьютера. От управляющего устройства на другие устройства поступают сигналы «что делать», а от других устройств УУ получает информацию об их состоянии.
Управляющее устройство содержит специальный регистр (ячейку), который называется «счетчик команд». После загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы. УУ считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство — «Регистр команд». УУ определяет операцию команды, «отмечает» в памяти данные, адреса которых указаны в команде, и контролирует выполнение команды. Операцию выполняет АЛУ или аппаратные средства компьютера.
В результате выполнения любой команды счетчик команд изменяется на единицу и, следовательно, указывает на следующую команду программы. Когда требуется выполнить команду, не следующую по порядку за текущей, а отстоящую от данной на какое-то количество адресов, то специальная команда перехода содержит адрес ячейки, куда требуется передать управление.
Вторая мировая война дала мощный толчок развитию техники и науки. Военно-промышленный комплекс всегда собирал огромные человеческие, денежные и другие ресурсы. И нацисты в своей одержимости к мировому господству, особенно рьяно трудились над изобретениями и научно-техническими инновациями. Тем ни менее история создания первого программирующего компьютера началась еще до войны, с обычного желания одного немецкого архитектора упростить себе жизнь.
Конрад Цузе (1910-1995 г.г.)
Немецкий инженер и изобретатель первого в мире работающего программируемого компьютера Конрад Цузе попал в мир информационных технологий практически случайно. Будущий изобретатель был наделен неплохими способностями к изобразительному искусству, а также любил строительство и конструирование. Поэтому он поступил в Берлинский Технический Университет на факультет архитектуры и гражданского строительства (1930-1935), где увлекся математикой и физикой. Во время обучения, изучая строительство зданий и дорог, Цузе столкнулся с серьезной проблемой. Этот тип конструкций требовал решения огромных систем линейных уравнений, которые было очень трудно просчитать с помощью логарифмической линейки или даже механического калькулятора того времени.
Как вспоминал Цузе: «Я был студентом в гражданской инженерии в Берлине. Берлин — это красивый город, открывающий перед молодым человеком множество возможностей приятно провести время, например, с хорошенькой девушкой. Но вместо этого мы вынуждены были выполнять громадные и ужасные расчеты».
Для подобных просчетов инженеры использовали особые таблицы, куда записывали формулы выполнения основных операций в двоичной системе счисления. Именно тогда у Цузе возникла идея автоматизировать этот процесс применив несложное вычислительное устройство. Говоря иными словами — изобрести первую программируемую двоичную вычислительную машину.
(фото двоичной программируемой вычислительной машины Z1)
Через тернии к звездам
В 1936 году Цузе завершил логический план для своего первого компьютера V1 (от немецкого Versuchsmodell-1, то есть «опытная модель»). На самом деле названия всех машины должны были начинаться с V (от V1 до V4), но после Второй мировой войны он изменил имена на Z1-Z4 (начальная буква фамилии изобретателя), чтобы избежать неприятных ассоциаций с V1-V4 военных ракет.
(набросок плана)
Цузе не имел опыта в области электроники, не обладал достаточными знаниями в области механики и конечно же, не мог знать принципы работы других вычислительных устройств. Но эти обстоятельства его не смущали. Молодой изобретатель незамедлительно начал реализацию своей идеи. С помощью знакомых он собрали небольшую сумму денег для исследования и вместе с несколькими друзьями приступил к работе. Процесс разработки и сборки происходил в берлинской квартире его родителей — домашняя гостиная превратилась в настоящую мастерскую. Никаких специально оборудованных лабораторий, никакой помощи от правительства, министерств или университетов. Конрад делал все сам, создавая свой компьютер практически из ничего. С другой стороны, возможно именно это обстоятельство дало ему преимущество, так как он смог иначе посмотреть на вопросы машинной арифметики и найти новый подход к решению определенных задач. Позже изобретатель писал, что в силу неосведомленности он не был ограничен в поисках системы, наилучшей для автоматических вычислений. Попробовав десятичную систему, Цузе остановился на двоичной.
(Цузе в процессе работы)
Существовавшие на то время вычислительные механизмы были построены с использованием вращающихся элементов и оперировали значениями в десятичной системе счисления. Особенностью Z1 было то, что она занималась обработкой чисел в двоичной системе и для переключения использовались не реле, а металлические пластины. Надо заметить, что эти пластины вырезались Цузе и его друзьями вручную, обычным лобзиком (2000 штук!). Пластины перемещались в строго определенном направлении. Смещенные пластины, указывающие значения вычисляемых величин и математические операции, перемещали ряд других пластин, изменяющих регистр двоичных чисел и сохраняющих промежуточный результат. Полученные данные позволяли производить другие преобразования. Собственно задаваемый оператором несложный последовательный алгоритм вычислений и был прототипом современной компьютерной программы. Примечательной особенностью первого компьютера была клавиатура для ввода данных с мигающими лампочками для указания результатов.
Работа над изобретением заняла более двух лет. В 1938 году машина Z1 увидела свет. Она была огромной, состояла из 20 000 частей. Электрический двигатель мощностью 1 кВт. обеспечивал тактовую частоту одного Герца (один цикл в секунду).
Основные характеристики Z1
Реализация: тонкие металлические пластины
Частота: 1 Гц
Вычислительный блок: обработка чисел с плавающей запятой
Средняя скорость расчета: умножение — 10 секунд, сложение — 5 секунд
Ввод данных: клавиатура, устройство считывания с перфоленты
Вывод данных: ламповая панель (десятичное представление)
Память: 64 слова по 22 бита
Вес: около 1000 кг
Первое устройство Цузе не имело способности «сохранять программу». Также отсутствовала команда условного перехода. Но стоит ли желать большего от машины, построенной из металлических пластин и имеющей 64 слова памяти? К тому же Цузе сам разрабатывал теоретические основы для своих компьютеров. Он был знаком с двоичной цифровой системой Лейбница. Но не имел понятия о алгебре Джорджа Буля. Он должен был изучать математическую логику многих выдающихся ученых, чтобы разработать свою собственную систему, назвав обозначения «Условные комбинаторные» (Bedingungskombinatorik).
(рабочая гостиная)
Механическое устройство Цуза имело великую научную ценность, доказывая возможность создания программных вычислительных машин, работающих с двоичным кодом. А вот надежность машины оставляла желать лучшего. Устройство постоянно ломалось из-за плохого качества комплектации. При работе процессора с памятью возникала проблема в синхронизации, требуемой для предотвращения чрезмерной механической нагрузки на подвижные части. Но архитектура изобретения казалась вполне удачной и побудила Цузе рассмотреть другие виды технологий.
На дальнейшую работу над машиной сильно повлиял друг Цузе, инженер-электронщик Гельмут Шреер. Он по достоинству оценил разработку и предложил ее усовершенствовать, заменив пластины на электровакуумные лампы. И при создании новой модели сохранить в ней логические принципы предыдущей, позволяющие операторам производить математические операции с десятичными числами.
В 1938 году Цузе и Шреер выступили с демонстрацией электронных схем в Берлинском Университете, подробно рассказывая про построение электронного компьютера. Но стоило им упомянуть, что такое устройство потребует около 2000 радиоламп и несколько тысяч ламп накаливания, как их едва не высмеяли. Университетские ученые классифицировали затею, как фантазию двух мечтателей. Дело в том, что крупнейшие электронные устройства того времени состояли всего лишь из нескольких сотен электронных ламп.
Но критика профессоров не повлияла на решение друзей выполнить задуманное и собрать новую модель.
(друзья-ученые Цузе и Шреер)
Пытаясь найти финансирование Цузе попытался заключить контракт с бывшим производителем механических калькуляторов Куртом Паннке. На что получил вежливый отказ. Паннке выразил уверенность в том, что в области вычислительных машин уже изобрели все возможное. Тем не менее, бывший производитель калькуляторов согласился посетить мастерскую Цузе и был так впечатлен его работой, что решил дать изобретателю семь тысяч рейхсмарок.
Стремление к совершенству
Начало второй мировой войны положило конец совместным исследованиям, Цузе призвали в нацистскую армию. Там он провел менее полугода. Благодаря ходатайству влиятельных инженеров и ученых в 1940 году Цузе демобилизовался в Берлин, где стал членом гитлеровской научной элиты.
Работа над созданием релейной электронной вычислительной машины возобновилась. Шреер снова предложил свои услуги. Ученые обратились за финансовой поддержкой к военному руководству, предлагая разработать современное устройство для военно-воздушных сил Германии. Такая машина могла быстро обрабатывать сложные расчеты, повышая тем самым эффективность тактической авиации. По предварительной оценке ученых на изобретение подобного аппарата потребовалось бы около двух лет. Но военные ответили отказом. Руководство вермахта было убеждено, что за такой срок нацистская Германия уже достигнет мирового господства.
Не теряя надежды, ученые обратились к директорам берлинского авиационного завода «Henschel», производившего тактические бомбардировщики. И наконец-то получили одобрение, руководство завода ухватилось за возможность использовать в процессе создания военной техники компьютерные технологии. Цузе был предоставлен специальный отдел с лучшими инженерами-электрониками компании. И уже в конце 1940 года Z2 была введена в эксплуатацию. Новый компьютер был оснащен цифровым процессором на основе реле и электровакуумных ламп. Он автоматически высчитывал ряд параметров геометрии стабилизаторов авиационных бомб, преобразовывал их аналоговое значение в двоичную систему счисления, вычисляя необходимые данные по заранее введенным оператором формулам и выдавал готовый результат в виде десятичных чисел. Результаты отправлялись сразу в производственный цех.
В том же году Цузе начал разработку Z3 — машины полностью построенной на реле, но с логической структурой от Z1 и Z2. Она была готова к эксплуатации в 1941 г., за 4 года до разработки американских ученых — электронного цифрового компьютера ENIAC.
Программируемая вычислительная машина Z3 и была создана на базе электронных реле (600 для арифметического устройства, 1400 для памяти и 400 для блока управления). Во всех других аспектах она напоминала Z1 и Z2: двоичная система исчисления, числа с плавающей запятой, арифметическое устройство с двумя 22-разрядными регистрами, управление через 8 канальные ленты (т.е. команда состоит из 8 битов). Каждое из слов могло быть помещено в память компьютера за один тактовый цикл. Общий общем памяти достигал 64 слов по 22 бита. Именно этой машиной был впервые применен современный принцип адресного распределения памяти, когда каждое 22-разрядное слово можно поместить в память или извлечь из нее командами PRz и PSz (z — соответствующий регистр оперативного запоминающего устройства с адресами от 1 до 64). Арифметический модуль компьютера составляли параллельные сумматоры, которые применялись для обработки логарифмических выражений и чисел с плавающей запятой.
Цузе разработал свой набор инструкций, который включал около десяти основных и нескольких десятков дополнительных команд. Это был самый настоящий язык программирования использовавшийся для задания сложных алгоритмов вычислений. Так что Цузе приписывают еще и создание первого языка программирования высокого уровня — Планкалкюль (на немецком Plankalkül — «исчисление планов»). Его характерными особенностями были: свободная переносимость (независимость от архитектуры и набора команд машины), операторы условия (кроме ELSE), циклы, подпрограммы, отсутствие рекурсии, работа с массивами и подмассивами, а также сложный синтаксис
В декабре 1941 года Z3 был введен в эксплуатацию и тут же взят на вооружение производителями военных самолетов. Именно с помощью Z3 обсчитывались аэродинамические и баллистические характеристики первых немецких крылатых ракет.
После успешного внедрения в военную промышленность Z3, Цузе заключил контракт с Научно-исследовательским управлением ВВС Германии (DIV) на проектирование электрической вычислительной машины нового поколения.
(Цузе на фоне Z3)
Долгожданный Z4
Новая модель была очень похожа на Z3, включая в себя все усовершенствованные разработки Цузе. Этот компьютер включал элементы: 2500 реле, 21 ступенчатое реле. Он обладал уже 1024 регистрами памяти для хранения 22-битных слов. Благодаря более мощному процессору повысилась скорость выполнения преобразования двоичных чисел. Z4 имел устройство для подготовки программы. Также он умел избегать исчисления неверных результатов. Потребляемая мощность машины составляла 4 кВт.
Создание нового компьютера заняло три года и к декабрю 1944 проект подходил к завершению. Работая над Z4, изобретатель ставил главной целью построить прототип машины, которая в дальнейшем сможет производится тысячами. Но отсутствие нужных материалов и сложная ситуация в стране (разгар военных действий), сделали эту задачу практически невыполнимой. Во время одного из налетов авиации на Берлин первый экземпляр Z3 был полностью разрушен, а когда в мае 1945 года в столицу Германии вошла советская армия, Цузе был вынужден бежать вместе с семьей в Баварию. С собой он конечно же прихватил уже собранный компьютер Z4. В Баварских Альпах он спрятал машину до более спокойных времен.
Основные характеристики Z4
Реализация: Реле, память — металлические пластины
Частота: 30 Гц
Вычислительный блок: обработка чисел с плавающей запятой, длина машинного слова — 32 бита
Средняя скорость расчета: 0,4 секунды для сложения, 0,3 секунды для умножения
Средняя скорость вычислений: 11 операций умножения в секунду
Ввод данных: десятичная клавиатура, устройство считывания с перфоленты
Вывод данных: печатная машинка марки «Mercedes»
Память: 64 слова по 22 бита
Вес: около 1000 кг
(компьютер Z4)
В 1948 году Цузе связался с профессором Эдуардом Штифелем, который признал Z4 пригодным для научных расчетов. Несмотря на немного старомодный технологии машины, Штифель был впечатлен простотой программирования и мощностью арифметического устройства с его способностью обработки исключений.
Ободренный успехом, Цузе создал собственную фирму Zuse KG. По сути, это была первая в мире коммерческая компания, занимающаяся исключительно развитием и производством компьютерных технологий для авиации и оптической промышленности, университетских лабораторий. Компания наладила выпуск коммерческих компьютеров, популярных в Германии 50-х годов (Z5, Z11, Z22 и Z23). Фирма Цузе создала первый компьютер с памятью на магнитных носителях Z22.
(компьютер с памятью на магнитных носителях Z22)
Несмотря на инженерный талант и усердие, Цузе отставал от своих американских конкурентов. Послевоенная Германия была не самым подходящим местом для инноваций в электронное будущее. Все средства правительства шли на восстановление страны. Да и у Цузе не было инфраструктуры, необходимой для дальнейших разработок. Он не мог вовремя узнавать о новых приборах и программах.
И уже в 60-х годах рынок Европы активно заполнили американские электронно-вычислительные машины, которые постепенно вытеснили компьютеры Цузе. В 1962 году фирма была продана компании «Brown Boveri and Co», а в последствии вошла в состав корпорации «Siemens».
Конрад Цузе называл себя аполитичным человеком. Делом всей своей жизни он считал развитие компьютерных технологий в Германии и сожалел, что так и не осуществил свою мечту — создать переносной персональный компьютер для деловых людей. В этом его опередили американские разработчики. После продажи компании он занялся своим давним увлечением — живописью. И даже написал несколько портретов известных людей в мире компьютерных технологий. Одним из них был Билл Гейтс, с которым Вузе познакомился на выставке.
(Цузе за вторым своим любимым занятием)
Конрад Цузе умер в 1995 году в городе в Хюхнфельд (Германия), дожив до восьмидесяти пяти лет.
Оригиналы Z1, Z2 и Z3 не сохранились до наших дней, они были разрушены во время бомбардировок Берлина в 1945 году. Зато Цузе удалось спасти компьютер Z4, который находится на родине изобретателя в Техническом музее Берлина.
Калифорнийский Музей истории компьютеров в Маунтин-Вью посмертно включил в свой состав Конрада Цузе, как выдающегося изобретателя первого полностью автоматизированного компьютера с программным управлением.
В основу построения подавляющего большинства ЭВМ положены следующие общие принципы, сформулированные в 1945 году американским ученым венгерского происхождения ДЖОНОМ фон НЕЙМАНОМ.
Принцип двоичного кодирования
Согласно этому принципу, вся информация, поступающая в ЭВМ, кодируется с помощью двоичных сигналов.
Принцип программного управления
Из него следует, что программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности.
Принцип однородности памяти
Программы и данные хранятся в одной и той же памяти. Поэтому ЭВМ не различает, что хранитсяв данной ячейке памяти - чисчло, текст или команда. Над командами можно выполнять такие жедействия, как и над данными.
Структурно основная память состоит из пронумерованных ячеек; процессору в произвольный момент времени доступна любая ячейка.
Отсюда следует возможность давать имена областям памяти, так, чтобы к запомненным в них значениям можно было бы впоследствии обращаться или менять их в процессе выполнения прграммы с использованием присвоенных имен.
Согласно фон Нейману, ЭВМ состоит из следующих основных блоков:
* Устройства ввода/вывода информации
* Память компьютера
* Процессор, состоящий из устройства управления (УУ) и арифметико-логического устройства (АЛУ)
Машины, построенные на этих принципах, называются ФОН-НЕЙМАНОВСКИМИ.
Можно и по-другому сформулировать Принципы Джон фон Неймана:
1) принцип программного управления (программа состоит из набора команд, которые выполняются процессором друг за другом в определенной последовательности) ;
2) принцип однородности памяти (программы и данные хранятся в одной и той же памяти) ;
3) принцип адресности (ОП состоит из пронумерованных ячеек и процессору в любой момент времени доступна любая ячейка) Архитектура ЭВМ, построенной на принципах фон Неймана. Сплошные линии со стрелками указывают направление потоков информации, пунктирные – управляющих сигналов от процессора к остальными узлам ЭВМ
Разработанные фон Нейманом основы архитектуры вычислительных устройств оказались настолько фундаментальными, что получили в литературе название “фон-неймановской архитектуры”. Подавляющее большинство вычислительных машин на сегодняшний день – фон-неймановские машины. Исключение составляют лишь отдельные разновидности систем для параллельных вычислений, в которых отсутствует счетчик команд, не реализована классическая концепция переменной и имеются другие существенные принципиальные отличия от классической модели (примерами могут служить потоковая и редукционная вычислительные машины) .
По-видимому, значительное отклонение от фон-неймановской архитектуры произойдет в результате развития идеи машин пятого поколения, в основе обработки информации в которых лежат не вычисления, а логические выводы.
запись числа в оперативную память минимальный объём который 1 байт (ячейкой назыв). Где использовался дополнительный код для ещё одной функциональной идеей (из математики) как двоичная система. А так же использование экспоненциальной формы для записи числа с плавающей точкой.
файловая система чем не функциональная идея
протоколы сетевого взаимодействия чем не функциональная идея
разъёмы чем не функциональная идея, например новый способы для usb версии 3.0 которые позволяют снять недостатки с 2.0 не позволяющие ей достигать её полноценной скорости.
Читайте также: