Что такое ЭВМ?
Электронная вычислительная машина (сокращённо ЭВМ) — комплекс технических, аппаратных и программных средств, предназначенных для автоматической обработки информации, вычислений, автоматического управления. При этом основные функциональные элементы (логические, запоминающие, индикационные и др.) выполнены на электронных элементах. Термин машина означает устройство, выполняющее механические движения. Современные компьютеры не являются машинами, название сохранилось за ними от простых счетных машин. Согласно Большому энциклопедическому словарю (2000) ЭВМ — то же, что компьютер. Задолго до появления ЭВМ существовали другие виды вычислительных машин
Первая МЭСМ в СССР
МЭСМ (Малая электронная счётная машина) — одна из первых в СССР и континентальной Европе электронно-вычислительных машин. Разрабатывалась лабораторией С. А. Лебедева (на базе киевского Института электротехники АН УССР (укр.)рус., позднее — Института электродинамики АН УССР) с конца 1948 года. Первоначально МЭСМ задумывалась как макет или модель Большой электронной счётной машины (БЭСМ), первое время буква «М» в названии означала «модель». Работа над машиной носила исследовательский характер, в целях экспериментальной проверки принципов построения универсальных цифровых ЭВМ. После того, как машина доказала пригодность для решения реальных задач, она была переименована в «Малую электронную счётную машину». Элементы арифметического узла с логическими схемами, которые обеспечивали выполнение арифметических и логических операций были отработаны на макете, изготовленным в июне 1950 года, который показал работоспособность и надёжность к августу 1950 года. Первую программу для проверки работы циклических алгоритмов (вычисление факториала) машина успешно выполнила 4 августа 1950 года.
Первое поколение ЭВМ
ЭВМ первого поколения были ламповыми машинами 50-х годов. Их элементной базой были электровакуумные лампы. Эти ЭВМ были весьма громоздкими сооружениями, содержавшими в себе тысячи ламп, занимавшими иногда сотни квадратных метров территории, потреблявшими электроэнергию в сотни киловатт
Язык программирования первого поколения.
К первому поколению (1GL) относят машинные языки - языки программирования на уровне команд процессора конкретной машины. Для программирования не использовался транслятор, команды программы вводились непосредственно в машинном коде переключателями на передней панели машины. Такие языки были хороши для детального понимания функционирования конкретной машины, но сложны для изучения и решения прикладных задач.
Начало 1950-х годов - язык первых компьютеров. Первый язык ассемблера, созданный по принципу «одна инструкция - одна строка».
Основная отличительная особенность: ориентирование на конкретный компьютер
Например, одна из первых ЭВМ – ENIAC представляла собой огромный по объему агрегат длиной более 30 метров. Эта машина содержала 18 тысяч электровакуумных ламп и потребляла около 150 киловатт электроэнергии. Для ввода программ и данных применялись перфоленты и перфокарты. Не было монитора, клавиатуры и мышки. Использовались эти машины, главным образом, для инженерных и научных расчетов, не связанных с переработкой больших объемов данных. В 1949 году в США был создан первый полупроводниковый прибор, заменяющий электронную лампу. Он получил название транзистор.
Второе поколение ЭВМ
В 60-х годах транзисторы стали элементной базой для ЭВМ второго поколения. Машины стали компактнее, надежнее, менее энергоемкими. Возросло быстродействие и объем внутренней памяти. Большое развитие получили устройства внешней (магнитной) памяти: магнитные барабаны, накопители на магнитных лентах. В этот период стали развиваться языки программирования высокого уровня: ФОРТРАН, АЛГОЛ, КОБОЛ. Составление программы перестало зависеть от конкретной модели машины, сделалось проще, понятнее, доступнее. В 1959 г. был изобретен метод, позволивший создавать на одной пластине и транзисторы, и все необходимые соединения между ними. Полученные таким образом схемы стали называться интегральными схемами или чипами. Изобретение интегральных схем послужило основой для дальнейшей миниатюризации компьютеров. В дальнейшем количество транзисторов, которое удавалось разместить на единицу площади интегральной схемы, увеличивалось приблизительно вдвое каждый год.
Язык программирования второго поколения.
Языки второго поколения (2GL) создавались для того, чтобы облегчить тяжёлую работу по программированию, перейдя в выражениях языка от низкоуровневых машинных понятий ближе к тому как обычно мыслит программист. Эти языки появились в 1950-е годы, в частности, такие языки как Фортран и Алгол. Наиболее важной проблемой, с которыми столкнулись разработчики языков второго поколения, стала задача убедить клиентов что код созданный компилятором выполняется достаточно хорошо, чтобы оправдать отказ от программирования на ассемблере. Скептицизм по поводу возможности создания эффективных программ с помощью автоматических компиляторов был довольно распространён, поэтому разработчикам таких систем должны были продемонстрировать, что они действительно могут генерировать почти такой же эффективный код как и при ручном кодировании, причём практически для любой исходной задачи.
Основная отличительная особенность: ориентирование на абстрактный компьютер с такой же системой команд.
Третье поколение ЭВМ
Третье поколение ЭВМ создавалось на новой элементной базе – интегральных схемах (ИС). ЭВМ третьего поколения начали производиться во второй половине 60-х годов, когда американская фирма IBM приступила к выпуску системы машин IBM-360. Немного позднее появились машины серии IBM-370. В Советском Союзе в 70-х годах начался выпуск машин серии ЕС ЭВМ (Единая система ЭВМ) по образцу IBM 360/370. Скорость работы наиболее мощных моделей ЭВМ достигла уже нескольких миллионов операций в секунду. На машинах третьего поколения появился новый тип внешних запоминающих устройств – магнитные диски. Успехи в развитии электроники привели к созданию больших интегральных схем (БИС), где в одном кристалле размещалось несколько десятков тысяч электрических элементов
Язык программирования третьего поколения
Под третьим поколением (3GL) первоначально понимались все языки более высокого уровня, чем ассемблер. Главной отличительной чертой языков третьего поколения стала независимость от аппаратного обеспечения, то есть выражение алгоритма в форме, не зависящей от конкретных характеристик машины, на которой он будет исполняться. Код, написанный на языке третьего поколения, перед исполнением транслируется либо непосредственно в машинные команды, либо в код на ассемблере и затем уже ассемблируется. При компиляции, в отличие от предыдущих поколений, уже нет соответствия один-к-одному между инструкциями программы и генерируемым кодом.
Стала широко использоваться интерпретация программ - при этом инструкции программы не преобразуются в машинный код, а исполняются непосредственно одна за другой. Независимость от «железа» достигается за счёт использования интерпретатора, скомпилированного под конкретную аппаратную платформу. Одним из ранних интерпретируемых языков стал Лисп.
Основная отличительная особенность языка третьего поколения: ориентирование на алгоритм (алгоритмические языки).
Примеры: Си, Паскаль, Джава, Бейсик, и многие другие.
Всего в мире существует около 200 популярных языков программирования третьего уровня.
Четвёртое поколение ЭВМ
В 1971 году американская фирма Intel объявила о создании микропроцессора. Это событие стало революционным в электронике.
Микропроцессор – это миниатюрный мозг, работающий по программе, заложенной в его память. Соединив микропроцессор с устройствами ввода-вывода и внешней памяти, получили новый тип компьютера: микро-ЭВМ.
Микро-ЭВМ относится к машинам четвертого поколения. Наибольшее распространение получили персональные компьютеры (ПК). Их появление связано с именами двух американских специалистов: Стива Джобаса и Стива Возняка. В 1976 году на свет появился их первый серийный ПК Apple-1, а в 1977 году – Apple-2. Однако с 1980 года «законодателем мод» на рынке ПК становится американская фирма IBM. Ее архитектура стала фактически международным стандартом на профессиональные ПК. Машины этой серии получили название IBM PC (Personal Computer). Появление и распространение ПК по своему значению для общественного развития сопоставимо с появлением книгопечатания. С развитием этого типа машин появилось понятие «информационные технологии», без которых невозможно обойтись в большинстве областей деятельности человека. Появилась новая дисциплина – информатика.
Язык программирования четвёртого поколения
Термин языки программирования четвёртого поколения (4GL) лучше представлять как среды разработки четвёртого поколения. Они относятся к временному периоду с 1970-х по начало 1990-х.
Языки этого поколения предназначены для реализации крупных проектов, повышают их надежность и скорость создания, ориентированы на специализированные области применения, и используют не универсальные, а проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области. В эти языки встраиваются мощные операторы, позволяющие одной строкой описать такую функциональность, для реализации которой на языках младших поколений потребовались бы тысячи строк исходного кода.
Основная отличительная особенность языка четвертого поколения: приближение к человеческой речи (декларативные языки).
Часто относят: SQL, SGML ( HTML, XML ), Prolog, и многие другие узкоспециализированных декларативных языков. Правда ряд языков, которые относят к четвертому поколению, не являются языками программирования как таковыми. Например SQL является языком запросов к базам данных, HTML является языком разметки гипертекста, а не полноценными языками программирования, скорее они выступают своеобразными специализированными дополнениями к языкам программирования. Тоже самое касается XML.
Пятое поколение ЭВМ
ЭВМ пятого поколения это ЭВМ будущего. Программа разработки, так называемого, пятого поколения ЭВМ была принята в Японии в 1982 г. Предполагалось, что к 1991 г. будут созданы принципиально новые компьютеры, ориентированные на решение задач искусственного интеллекта. С помощью языка Пролог и новшеств в конструкции компьютеров планировалось вплотную подойти к решению одной из основных задач этой ветви компьютерной науки - задачи хранения и обработки знаний. Коротко говоря, для компьютеров пятого поколения не пришлось бы писать программ, а достаточно было бы объяснить на "почти естественном" языке, что от них требуется. Предполагается, что их элементной базой будут служить не СБИС, а созданные на их базе устройства с элементами искусственного интеллекта. Для увеличения памяти и быстродействия будут использоваться достижения оптоэлектроники и биопроцессоры.
На ЭВМ пятого поколения ставятся совершенно другие задачи, нежели при разработке всех прежних ЭВМ. Если перед разработчиками ЭВМ с I по IV поколений стояли такие задачи, как увеличение производительности в области числовых расчётов, достижение большой ёмкости памяти, то основной задачей разработчиков ЭВМ V поколения является создание искусственного интеллекта машины (возможность делать логические выводы из представленных фактов), развитие "интеллектуализации" компьютеров - устранения барьера между человеком и компьютером. К сожалению, японский проект ЭВМ пятого поколения повторил трагическую судьбу ранних исследований в области искусственного интеллекта. Более 50-ти миллиардов инвестиций были потрачены впустую, проект прекращен, а разработанные устройства по производительности оказались не выше массовых систем того времени. Однако, проведенные в ходе проекта исследования и накопленный опыт по методам представления знаний и параллельного логического вывода сильно помогли прогрессу в области систем искусственного интеллекта в целом. Уже сейчас компьютеры способны воспринимать информацию с рукописного или печатного текста, с бланков, с человеческого голоса, узнавать пользователя по голосу, осуществлять перевод с одного языка на другой. Это позволяет общаться с компьютерами всем пользователям, даже тем, кто не имеет специальных знаний в этой области. Многие успехи, которых достиг искусственный интеллект, используют в промышленности и деловом мире. Экспертные системы и нейронные сети эффективно используются для задач классификации (фильтрация СПАМА, категоризация текста и т.д.). Добросовестно служат человеку генетические алгоритмы (используются, например, для оптимизации портфелей в инвестиционной деятельности), робототехника (промышленность, производство, быт - везде она приложила свою кибернетическую руку), а также многоагентные системы. Не дремлют и другие направления искусственного интеллекта, например распределенное представление знаний и решение задач в интернете: благодаря им в ближайшие несколько лет можно ждать революции в целом ряде областей человеческой деятельности
Язык программирования пятого поколения.
Пятого поколения языков программирования пока не существует. Производители проприетарних программных продуктов часто пытаются приписать своим продуктам какие маркетинговые особенности, и порой указывают что их продукт - это «язык пятого поколения». В действительности, все эти продукты - это просто среды для ускоренного создания продуктов (Rapid Application Development - RAD), и используют языки третьего и четвертого поколений.
Речь пятого поколения вытеснит ли существенно потеснит языка третьего (напр. Java) и четвертого поколения (например SQL) за счет значительно увеличенной производительности труда программиста - в 10-1000 раз. По прогнозам, 5GL будет оперировать мета-мета-данными.
Сейчас существует единственный язык, который работает с мета-мета-данными, - это язык команд менеджеров пакетов или менеджеров зависимостей, таких как apt, yum, smart, maven, cpan и другие. Они оперируют над метаданными о метаданных о данных в пакетах. Использование apt-get, yum и smart действительно чрезвычайно повысило производительность системных администраторов - примерно в 1000-и дело. Использование менеджеров зависимостей, таких как maven, cpan, rakudo, pim, easy_install, действительно значительно повысило производительность программистов, примерно в 10-ть раз. К сожалению, эти языки являются языками командной строки и не являются языками программирования.
© ООО «Знанио»
С вами с 2009 года.