Язык программирования в машинах первого поколения
Ранняя история программирования
Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует. (Bjarne Stroustrup)
Разделы страницы о ранней истории программирования:
- Предыстория компьютерных языков
- Языки программирования низкого уровня (машинные языки, языки 1-го поколения — 1GL)
- Языки программирования среднего уровня (полумашинные языки, языки 2-го поколения — 2GL)
Предыстория компьютерных языков
Первые языки программирования возникали еще до появления современных электронных вычислительных машин (ЭВМ): уже в XIX веке были изобретены устройства, которые с долей условности можно назвать программируемыми — например, механические пианино и ткацкие станки. Для управления ими использовались наборы инструкций, которые в рамках современной классификации можно считать прототипами предметно-ориентированных языков программирования.
Значимым считают «язык», на котором леди Ада Августа графиня Лавлейс написала программу для вычисления чисел Бернулли для паровой Аналитической машины Чарльза Бэббиджа, которая могла бы стать первым компьютером в мире.
В 1930—1940 годах А. Чёрч, А. Тьюринг, А. Марков в СССР разработали математические абстракции (лямбда-исчисление, машину Тьюринга, нормальные алгорифмы) для формализации алгоритмов. [Т.о., информатика является дочерью математики.] Чуть позже, в 1940-е годы, появились электрические цифровые компьютеры и даже был разработан язык, который можно считать первым высокоуровневым языком программирования для ЭВМ — Plankalkül [минуя стадию ассемблера?!], созданный немецким инженером К. Цузе во время войны (с 1943 по 1945 годы).
Языки программирования низкого уровня (машинные языки, языки 1-го поколения — 1GL)
Программисты начала 1950-х годов, в особенности таких ЭВМ, как UNIVAC и IBM 701, при создании программ пользовались непосредственно машинным кодом, запись программы на котором состояла из единиц и нулей и который принято считать языком программирования первого поколения (1GL). При этом разные машины разных производителей использовали различные коды, что требовало переписывать программу при переходе на другую ЭВМ.
Языки программирования среднего уровня (полумашинные языки, языки 2-го поколения — 2GL)
На смену машинным [бинарным] языкам пришло применение языков второго поколения (2GL), также ограниченных спецификациями конкретных машин, но более простых для использования человеком за счет использования мнемоник (символьных обозначений машинных команд) и возможности сопоставления имен адресам в машинной памяти. Они традиционно известны под наименованием языков ассемблера и автокодов. Однако, при использовании ассемблера становился необходимым процесс перевода программы на язык машинных кодов перед ее выполнением, для чего были разработаны специальные программы, также получившие название ассемблеров. Сохранялись и проблемы с переносимостью программы с ЭВМ одной архитектуры на другую, и необходимость для программиста при решении задачи мыслить терминами «низкого уровня» — ячейка, адрес, команда.
Макроассемблеры (MASS)
Позднее языки второго поколения были усовершенствованы: в них появилась поддержка макрокоманд — так появились макроассемблеры.
Поколение языков программирования. обзор языков программирования высокого уровня.
Машинный код процессора. Понятие программы. Уровни языков программирования.
Машинный код – последовательность чисел, в которых закодирована программа для исполнения процессором.
Машинный код (платформенно-ориентированный код), машинный язык — система команд (набор кодов операций) конкретной вычислительной машины, которая интерпретируется непосредственно процессором или микропрограммами этой вычислительной машины.
Машинный код можно рассматривать как примитивный язык программирования или как самый низкий уровень представления скомпилированных или ассемблированных компьютерных программ. Большинство программ пишется на языках более высокого уровня и транслируется в машинный код компиляторами. Машинный код иногда называют нативным кодом (также собственным или родным кодом — от англ. native code), когда говорят о платформенно-зависимых частях языка или библиотек.
Программа – это последовательность инструкций (команд), описывающая алгоритм решения с помощью компьютера соответствующей задачи, для реализации которой эта программа была разработана.
Программа — это логически упорядоченная последовательность команд, необходимых для управления компьютером (выполнения им конкретных операций), поэтому программирование сводится к созданию последовательности команд, необходимой для решения определенной задачи.
Для разработки программ используются специальные языки.
Язык программирования – это формальная знаковая система, которая предназначена для написания программ, понятных для исполнителя (в нашем рассмотрении – это компьютер).
Уровни языков программирования: Если язык программирования ориентирован на конкретный тип процессора и учитывает его особенности, то он называется языком программирования низкого уровня (операторы языка близки к машинному коду и ориентированы на конкретные команды процессора (язык ассемблера)). Языки программирования высокого уровня значительно ближе и понятнее человеку, нежели компьютеру.
Поколение языков программирования. Обзор языков программирования высокого уровня.
Иногда различают пять поколений языков программирования, правда данное разделение является спорным:
I поколение: Начало 1950-х годов — язык первых компьютеров. Первый язык ассемблера, созданный по принципу «одна инструкция — одна строка». Основная отличительная особенность: ориентирование на конкретный компьютер.
II поколение: Конец 1950-х — начало 1960-х гг. В язык Assembler введено понятие переменной, то есть стало возможным создание программ без принадлежности к отдельным адресам памяти.
III поколение: 1960-е гг. — Языки программирования высокого уровня. Их характеристики: относительная простота; независимость от конкретного компьютера; возможность использования мощных синтаксических конструкций. Простота языка позволяет писать небольшие программы и людям, которые не являются профессиональными программистами. Основная отличительная особенность языка третьего поколения: ориентирование на алгоритм (алгоритмические языки). Примеры: Си, Паскаль, Джава, Бейсик, и многие другие. Всего в мире существует около 200 популярных языков программирования третьего уровня.
IV поколение: Начало 1970-х гг. до сегодняшнего времени. Непроцедурные, объектно-ориентированные, языки запросов, параллельные. Часто относят: SQL, SGML (HTML, XML), Prolog, и многие другие узкоспециализированных декларативных языков. Основная отличительная особенность языка четвертого поколения: приближение к человеческой речи (декларативные языки). Некоторые языки имеют черты одновременно и третьего и четвертого поколений.
V поколение: Языки искусственного интеллекта, экспертных систем и баз знаний, естественные языки. Ориентированы на повышение интеллектуального уровня ЭВМ и интерфейса с языками.
Fortran (Фортран). Это первый компилируемый язык, созданный Джимом Бэкусом в 50-е годы. Основным критерием при разработке компиляторов Фортрана являлась эффективность исполняемого кода. Хотя в Фортране впервые был реализован ряд важнейших понятий программирования, удобство создания программ было принесено в жертву возможности получения эффективного машинного кода. Однако для этого языка было создано огромное количество библиотек, начиная от статистических комплексов и кончая пакетами управления спутниками, поэтому Фортран продолжает активно использоваться во многих организациях, а сейчас ведутся работы над очередным стандартом Фортрана F2k, который появился в 2000 году. Имеется стандартная версия Фортрана HPF (High Performance Fortran) для параллельных суперкомпьютеров с множеством процессоров.
Cobol (Кобол). Это компилируемый язык для применения в экономической области и решения бизнес задач, разработанный в начале 60-х годов. Он отличается большой «многословностью» — его операторы иногда выглядят как обычные английские фразы. В Коболе были реализованы очень мощные средства работы с большими объемами данных, хранящимися на различных внешних носителях. На этом языке создано очень много приложений, которые активно эксплуатируются и сегодня. Достаточно сказать, что наибольшую зарплату в СИГА получают программисты на Коболе.
Algol (Алгол). Компилируемый язык, созданный в 1960 году. Он был призван заменить Фортран, но из-за более сложной структуры не получил широкого распространения. В 1968 году была создана версия Алгол 68, по своим возможностям и сегодня опережающая многие языки программирования, однако из-за отсутствия достаточно эффективных компьютеров для нее не удалось своевременно создать хорошие компиляторы.
Pascal (Паскаль). Язык Паскаль, созданный в конце 70-х годов основоположником множества идей современного программирования Никлаусом Виртом, во многом напоминает Алгол, но в нем ужесточен ряд требований к структуре программы и имеются возможности, позволяющие успешно применять его при создании крупных проектов.
Basic (Бейсик). Для этого языка имеются и компиляторы, и интерпретаторы, а по популярности он занимает первое место в мире. Он создавался в 60-х годах в качестве учебного языка и очень прост в изучении.
С (Си). Данный язык был создан в лаборатории Bell и первоначально не рассматривался как массовый. Он планировался для замены ассемблера, чтобы иметь возможность создавать столь же эффективные и компактные программы, и в то же время не зависеть от конкретного типа процессора.
Си во многом похож на Паскаль и имеет дополнительные средства для прямой работы с памятью (указатели). На этом языке в 70-е годы написано множество прикладных и системных программ и ряд известных операционных систем (Unix).
C++ (Си++). Си++ — это объектно-ориентированное расширение языка Си, созданное Бьярном Страуструпом в 1980 году. Множество новых мощных возможностей, позволивших резко повысить производительность программистов, наложилось на унаследованную от языка Си определенную низкоуровневость, в результате чего создание сложных и надежных программ потребовало от разработчиков высокого уровня профессиональной подготовки.
Java (Джава, Ява). Этот язык был создан компанией Sun в начале 90-х годов на основе Си++. Он призван упростить разработку приложений на основе Си++ путем исключения из него всех низкоуровневых возможностей. Но главная особенность этого языка — компиляция не в машинный код, а в платформно — независимый байт-код (каждая команда занимает один байт). Этот байт-код может выполняться с помощью интерпретатора — виртуальной Java-машины/УМ (Java Virtual Machine), версии которой созданы сегодня для любых платформ. Благодаря наличию множества Java-машин программы на Java можно переносить не только на уровне исходных текстов, но и на уровне двоичного байт-кода, поэтому по популярности язык Ява сегодня занимает второе место в мире после Бейсика.
Особое внимание в развитии этого языка уделяется двум направлениям: поддержке всевозможных мобильных устройств и микрокомпьютеров, встраиваемых в бытовую технику (технология Jini) и созданию платформно — независимых программных модулей, способных работать на серверах в глобальных и локальных сетях с различными операционными системами (технология Java Beans). Пока основной недостаток этого языка — невысокое быстродействие, так как язык Ява интерпретируемый.
3. Понятия: алгоритм, семантика, синтаксис, отладка и тестирование программы.
Алгоритм – это точное предписание, которое создает процесс, который начинается с некоторых исходных данных и направлен на получение результата, полностью определенного этими исходными данными.
Синтаксис –совокупность правил и требований записи команд (операторов).
Семантика –смысл каждой команды и других конструкций языка.
Отладка –процесс устранения ошибок.
Тестирование –процесс поиска ошибок в программе.
Статьи к прочтению:
Классификация языков программирования
Похожие статьи:
Классификация языков программирования не закреплена каким-либо стандартом. Однако, в учебных целях, существующие языки программирования можно…
Рассматривают пять поколений языков программирования (ЯП). Первые три поколения ЖЕ характеризовались более сложным набором зарезервированных слов и…
Поколения языков программирования;
Языки программирования принято делить на пять поколений. В первое поколение входят языки, созданные в начале 50-х годов. Это был первый язык ассемблера, созданный по принципу «одна инструкция — одна строка».
Расцвет второго поколения языков программирования пришелся на конец 50-х — начало 60-х годов. Тогда был разработан символический ассемблер, в котором появилось понятие переменной. Он стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ.
Появление третьего поколения языков программирования принято относить к 60-м годам. В это время родились универсальные языки высокого уровня, с их помощью удается решать задачи из любых областей. Такие качества новых языков, как относительная простота, независимость от конкретного компьютера и возможность использования мощных синтаксических конструкций, позволили резко повысить производительность труда программистов.
С начала 70-х годов по настоящее время продолжается период языков четвертого поколения. Эти языки предназначены для реализации крупных проектов, повышения их надежности и скорости создания. Они обычно ориентированы на специализированные области применения, где хороших результатов можно добиться, используя не универсальные, а проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области.
Рождение языков пятого поколения произошло в середине 90-х годов. К ним относятся также системы автоматического создания прикладных программ с помощью визуальных средств разработки, без знания программирования. Главная идея, которая закладывается в эти языки, — возможность автоматического формирования результирующего текста на универсальных языках программирования (который потом требуется откомпилировать). Инструкции же вводятся в компьютер в максимально наглядном виде с помощью методов, наиболее удобных для человека, не знакомого с программированием.
Языки программирования высокого уровня
Fortran (Фортран). Это первый компилируемый язык, созданный Джимом Бэкусом в 50-е годы. Основным критерием при разработке компиляторов Фортрана являлась эффективность исполняемого кода. Хотя в Фортране впервые был реализован ряд важнейших понятий программирования, удобство создания программ было принесено в жертву возможности получения эффективного машинного кода. Однако для этого языка было создано огромное количество библиотек, начиная от статистических комплексов и кончая пакетами управления спутниками, поэтому Фортран продолжает активно использоваться во многих организациях.
Pascal (Паскаль). Язык Паскаль, созданный в конце 70-х годов основоположником множества идей современного программирования Виртом, во многом напоминает Алгол, но в нем ужесточен ряд требований к структуре программы и имеются возможности, позволяющие успешно применять его при создании крупных проектов.
Basic (Бейсик). Для этого языка имеются и компиляторы, и интерпретаторы, а по популярности он занимает первое место в мире. Он создавался в 60-х годах в качестве учебного языка и очень прост в изучении.
С (Си). Данный язык был создан в лаборатории Bell и первоначально не рассматривался как массовый. Он планировался для замены ассемблера, чтобы иметь возможность создавать столь же эффективные и компактные программы, и в то же время не зависеть от конкретного типа процессора.
Java (Джава, Ява). Этот язык был создан компанией Sun в начале 90-х годов на основе Си++. Он призван упростить разработку приложений на основе Си++ путем исключения из него всех низкоуровневых возможностей. Благодаря наличию множества Java-машин программы на Java можно переносить не только на уровне исходных текстов, но и на уровне двоичного байт-кода, поэтому по популярности язык Ява сегодня занимает второе место в мире после Бейсика. Особое внимание в развитии этого языка уделяется двум направлениям: поддержке всевозможных мобильных устройств и микрокомпьютеров, встраиваемых в бытовую технику, и созданию платформенно — независимых программных модулей, способных работать на серверах в глобальных и локальных сетях с различными операционными системами (технология Java Beans). Пока основной недостаток этого языка — невысокое быстродействие, так как язык Ява интерпретируемый.
Языки программирования и автомобили
Итак, мы уже представляли языки программирования в роли героев популярного телесериала и в образе стран. Третья часть сравнений будет посвящена автомобилям и автокомпаниям.
Basic: Жигули
Современные молодые люди наверняка считают, что Жигули были созданы для того, чтобы обучиться езде на автомобиле. С одной стороны, это тоже машина, просто в ней всё предельно просто, нет никаких электронных систем. С другой, стоит ли такой автомобиль такой головной боли?
Visual Basic: Лада
Когда Жигули должны были уйти в прошлое, на смену пришла Лада. Да, завод всё же оказался проклятым, но поддержка государства и возможность простому россиянину за короткий срок заработать на такой автомобиль, сделали марку настоящим хитом.
C/C++/C#: Ford Mustang
Эру автомобиля Mustang можно разделить сразу на несколько этапов. Первые модели, те что сошли с конвейера в 60-е годы, были изумительны со всех точек зрения. Даже сегодня, когда так далеко шагнула эволюция, Мустанги крайне популярны. Экземпляры, произведённые в 80-х потеряли большую часть своей магии: они носили громкое имя, имели спрос, но выглядели обыденно, теряясь на фоне куда более быстрых и элегантных машин. Но в 2000-х Mustang взревел с новой мощью, объединив агрессию из 60-х и современных подход к автомобилестроению. Да, это не лучший автомобиль в мире, но крайне привлекательный.
Java: Volvo
Вряд ли тут может быть много мнений: Volvo действительно классный автомобиль. Он может быть семейным, он может быть быстрым, он может быть романтичным – всё зависит только от вас. Правда, дороговат, да и говорят сейчас в Китае создают идеальные копии. Но в целом, покупая Volvo, вы не рискуете прогадать.
Python: Subaru
По одной модели из серии Subaru теперь прочно ассоциируется со скоростью. Да, есть такая черта, но также накиньте на знамя марки качество исполнения, удобство управления и, почти всегда, прекрасные дизайнерские решения.
Ruby: Honda
Вечный спор автомобилистов: что лучше, Honda или Subaru? Качество, скорость, породистые представители – всё это свойственно и Honda. Да и страна производитель – Япония. Говорят, только подвеска у них немного жесткая и обслуживание дорогое, а в остальном – мечта.
PHP: Citroen
Сегодня модно ругать старый-добрый французский концерн. А ведь было время, когда Citroen восседал на самой вершине технологической мысли. Но потом требовательным покупателям понадобились не только хорошая подвеска и приятный внешний вид, но ещё идеальное качество сборки. И тут посыпалось…
1С: КАМАЗ
Одна из немногих объективных причин гордиться отечественным автопромом. Да, за границей не очень жалуют КАМАЗы, но мы то знаем насколько хороша эта рабочая лошадка, да и в ралли побеждаем.
Go: Bugatti
Вчера в новостях писали, что самая быстрая серийная машина в мире – Bugatti Veyron. Сегодня, поговаривают, что Bugatti Chiron. "Bugatti" и "скорость" так часто встречаются в одном предложении, что закрадывается мысль: а может это просто пиар?
Perl: Saab
Saab никогда не был автомобилем из высшего общества. Но несмотря на это, его внешний вид, езда на нём могла доставить непередаваемое удовольствие. Если бы не миллион ненужных кнопок, проблемы с электроникой и необходимость постоянного ремонта.
JavaScript: Renault
Дурная слава не позволяет относиться к Renault серьёзно: неважное качество исполнения, слишком много откровенно плохих автомобилей, сомнительные стратегия развития. Тем не менее, Renault пользуется сумасшедшей популярностью, так что пока без их машин представить дороги очень трудно.
Язык Ассемблера: драгстер
Иногда простого серийного автомобиля бывает мало, особенно когда скорость – единственный важный аргумент. В этом случае не найти ничего лучше старого-доброго драгстера: колёса, двигатель, очень лёгкая рама и одна поездка, безопасность которой весьма сомнительна.
Итак, мы уже представляли языки программирования в роли героев популярного телесериала и в образе стран. Третья часть сравнений будет посвящена автомобилям и автокомпаниям.
Basic: Жигули
Современные молодые люди наверняка считают, что Жигули были созданы для того, чтобы обучиться езде на автомобиле. С одной стороны, это тоже машина, просто в ней всё предельно просто, нет никаких электронных систем. С другой, стоит ли такой автомобиль такой головной боли?
Visual Basic: Лада
Когда Жигули должны были уйти в прошлое, на смену пришла Лада. Да, завод всё же оказался проклятым, но поддержка государства и возможность простому россиянину за короткий срок заработать на такой автомобиль, сделали марку настоящим хитом.
C/C++/C#: Ford Mustang
Эру автомобиля Mustang можно разделить сразу на несколько этапов. Первые модели, те что сошли с конвейера в 60-е годы, были изумительны со всех точек зрения. Даже сегодня, когда так далеко шагнула эволюция, Мустанги крайне популярны. Экземпляры, произведённые в 80-х потеряли большую часть своей магии: они носили громкое имя, имели спрос, но выглядели обыденно, теряясь на фоне куда более быстрых и элегантных машин. Но в 2000-х Mustang взревел с новой мощью, объединив агрессию из 60-х и современных подход к автомобилестроению. Да, это не лучший автомобиль в мире, но крайне привлекательный.
Java: Volvo
Вряд ли тут может быть много мнений: Volvo действительно классный автомобиль. Он может быть семейным, он может быть быстрым, он может быть романтичным – всё зависит только от вас. Правда, дороговат, да и говорят сейчас в Китае создают идеальные копии. Но в целом, покупая Volvo, вы не рискуете прогадать.
Python: Subaru
По одной модели из серии Subaru теперь прочно ассоциируется со скоростью. Да, есть такая черта, но также накиньте на знамя марки качество исполнения, удобство управления и, почти всегда, прекрасные дизайнерские решения.
Ruby: Honda
Вечный спор автомобилистов: что лучше, Honda или Subaru? Качество, скорость, породистые представители – всё это свойственно и Honda. Да и страна производитель – Япония. Говорят, только подвеска у них немного жесткая и обслуживание дорогое, а в остальном – мечта.
PHP: Citroen
Сегодня модно ругать старый-добрый французский концерн. А ведь было время, когда Citroen восседал на самой вершине технологической мысли. Но потом требовательным покупателям понадобились не только хорошая подвеска и приятный внешний вид, но ещё идеальное качество сборки. И тут посыпалось…
1С: КАМАЗ
Одна из немногих объективных причин гордиться отечественным автопромом. Да, за границей не очень жалуют КАМАЗы, но мы то знаем насколько хороша эта рабочая лошадка, да и в ралли побеждаем.
Go: Bugatti
Вчера в новостях писали, что самая быстрая серийная машина в мире – Bugatti Veyron. Сегодня, поговаривают, что Bugatti Chiron. «Bugatti» и «скорость» так часто встречаются в одном предложении, что закрадывается мысль: а может это просто пиар?
Perl: Saab
Saab никогда не был автомобилем из высшего общества. Но несмотря на это, его внешний вид, езда на нём могла доставить непередаваемое удовольствие. Если бы не миллион ненужных кнопок, проблемы с электроникой и необходимость постоянного ремонта.
JavaScript: Renault
Дурная слава не позволяет относиться к Renault серьёзно: неважное качество исполнения, слишком много откровенно плохих автомобилей, сомнительные стратегия развития. Тем не менее, Renault пользуется сумасшедшей популярностью, так что пока без их машин представить дороги очень трудно.
Язык Ассемблера: драгстер
Иногда простого серийного автомобиля бывает мало, особенно когда скорость – единственный важный аргумент. В этом случае не найти ничего лучше старого-доброго драгстера: колёса, двигатель, очень лёгкая рама и одна поездка, безопасность которой весьма сомнительна.
Компьютерная грамотность с Надеждой
Заполняем пробелы – расширяем горизонты!
Пять поколений ЭВМ
Компьютерная грамотность предполагает наличие представления о пяти поколениях ЭВМ, которое Вы получите после ознакомления с данной статьей.
Когда говорят о поколениях, то в первую очередь говорят об историческом портрете электронно-вычислительных машин (ЭВМ).
Фотографии в фотоальбоме по истечении определенного срока показывают, как изменился во времени один и тот же человек. Точно так же поколения ЭВМ представляют серию портретов вычислительной техники на разных этапах ее развития.
Всю историю развития электронно-вычислительной техники принято делить на поколения. Смены поколений чаще всего были связаны со сменой элементной базы ЭВМ, с прогрессом электронной техники. Это всегда приводило к росту быстродействия и увеличению объема памяти. Кроме этого, как правило, происходили изменения в архитектуре ЭВМ, расширялся круг задач, решаемых на ЭВМ, менялся способ взаимодействия между пользователем и компьютером.
ЭВМ первого поколения
Они были ламповыми машинами 50-х годов. Их элементной базой были электровакуумные лампы. Эти ЭВМ были весьма громоздкими сооружениями, содержавшими в себе тысячи ламп, занимавшими иногда сотни квадратных метров территории, потреблявшими электроэнергию в сотни киловатт.
Например, одна из первых ЭВМ – ENIAC представляла собой огромный по объему агрегат длиной более 30 метров, содержала 18 тысяч электровакуумных ламп и потребляла около 150 киловатт электроэнергии.
Для ввода программ и данных применялись перфоленты и перфокарты. Не было монитора, клавиатуры и мышки. Использовались эти машины, главным образом, для инженерных и научных расчетов, не связанных с переработкой больших объемов данных. В 1949 году в США был создан первый полупроводниковый прибор, заменяющий электронную лампу. Он получил название транзистор.
ЭВМ второго поколения
В 60-х годах транзисторы стали элементной базой для ЭВМ второго поколения. Машины стали компактнее, надежнее, менее энергоемкими. Возросло быстродействие и объем внутренней памяти. Большое развитие получили устройства внешней (магнитной) памяти: магнитные барабаны, накопители на магнитных лентах.
В этот период стали развиваться языки программирования высокого уровня: ФОРТРАН, АЛГОЛ, КОБОЛ. Составление программы перестало зависеть от конкретной модели машины, сделалось проще, понятнее, доступнее.
В 1959 г. был изобретен метод, позволивший создавать на одной пластине и транзисторы, и все необходимые соединения между ними. Полученные таким образом схемы стали называться интегральными схемами или чипами. Изобретение интегральных схем послужило основой для дальнейшей миниатюризации компьютеров.
В дальнейшем количество транзисторов, которое удавалось разместить на единицу площади интегральной схемы, увеличивалось приблизительно вдвое каждый год.
ЭВМ третьего поколения
Это поколение ЭВМ создавалось на новой элементной базе – интегральных схемах (ИС).
ЭВМ третьего поколения начали производиться во второй половине 60-х годов, когда американская фирма IBM приступила к выпуску системы машин IBM-360. Немного позднее появились машины серии IBM-370.
В Советском Союзе в 70-х годах начался выпуск машин серии ЕС ЭВМ (Единая система ЭВМ) по образцу IBM 360/370. Скорость работы наиболее мощных моделей ЭВМ достигла уже нескольких миллионов операций в секунду. На машинах третьего поколения появился новый тип внешних запоминающих устройств – магнитные диски.
Успехи в развитии электроники привели к созданию больших интегральных схем (БИС), где в одном кристалле размещалось несколько десятков тысяч электрических элементов.
В 1971 году американская фирма Intel объявила о создании микропроцессора. Это событие стало революционным в электронике.
Микропроцессор – это миниатюрный мозг, работающий по программе, заложенной в его память.
Соединив микропроцессор с устройствами ввода-вывода и внешней памяти, получили новый тип компьютера: микро-ЭВМ.
ЭВМ четвертого поколения
Микро-ЭВМ относится к машинам четвертого поколения. Наибольшее распространение получили персональные компьютеры (ПК). Их появление связано с именами двух американских специалистов: Стива Джобса и Стива Возняка. В 1976 году на свет появился их первый серийный ПК Apple-1, а в 1977 году – Apple-2.
Однако с 1980 года «законодателем мод» на рынке ПК становится американская фирма IBM. Ее архитектура стала фактически международным стандартом на профессиональные ПК. Машины этой серии получили название IBM PC (Personal Computer). Появление и распространение ПК по своему значению для общественного развития сопоставимо с появлением книгопечатания.
С развитием этого типа машин появилось понятие «информационные технологии», без которых невозможно обойтись в большинстве областей деятельности человека. Появилась новая дисциплина – информатика.
ЭВМ пятого поколения
Они будут основаны на принципиально новой элементной базе. Основным их качеством должен быть высокий интеллектуальный уровень, в частности, распознавание речи, образов. Это требует перехода от традиционной фон-неймановской архитектуры компьютера к архитектурам, учитывающим требования задач создания искусственного интеллекта.
Таким образом, для компьютерной грамотности необходимо понимать, что на данный момент создано четыре поколения ЭВМ:
- 1-ое поколение: 1946 г. создание машины ЭНИАК на электронных лампах.
- 2-ое поколение: 60-е годы. ЭВМ построены на транзисторах.
- 3-ье поколение: 70-е годы. ЭВМ построены на интегральных микросхемах (ИС).
- 4-ое поколение: Начало создаваться с 1971 г. с изобретением микропроцессора (МП). Построены на основе больших интегральных схем (БИС) и сверх БИС (СБИС).
Пятое поколение ЭВМ строится по принципу человеческого мозга, управляется голосом. Соответственно, предполагается применение принципиально новых технологий. Огромные усилия были предприняты Японией в разработке компьютера 5-го поколения с искусственным интеллектом, но успеха они пока не добились.
Фирма IBM тоже не намерена сдавать свои позиции мирового лидера, например, Японии. Мировая гонка за создание компьютера пятого поколения началась еще в 1981 году. С тех пор еще никто не достиг финиша. Поживем – увидим.