Развитие ЭВМ и программирования
Первая страница в истории создания вычислительных машин связана с именем французского философа, писателя, математика и физика Блеза Паскаля. В 1641 г. он сконструировал механический вычислитель, который позволял складывать и вычитать числа. В 1673 г. выдающийся немецкий ученый Лейбниц построил первую счетную машину, способную механически выполнять все четыре действия арифметики. Ряд важнейших ее механизмов применяли вплоть до середины XX в. в некоторых типах машин. К типу машины Лейбница могут быть отнесены все машины, в частности и первые ЭВМ, производившие умножение как многократное сложение, а деление - как многократное вычитание. Главным достоинством всех этих машин являлись более высокие, чем у человека, скорость и точность вычислений. Их создание продемонстрировало принципиальную возможность механизации интеллектуальной деятельности человека.
Появление ЭВМ или компьютеров – одна из существенных примет современной научно-технической революции. Широкое распространение компьютеров привело к тому, что все большее число людей стало знакомиться с основами вычислительной техники, а программирование постепенно превратилось в элемент культуры. Первые электронные компьютеры появились в первой половине XX века. Они могли делать значительно больше механических калькуляторов, которые лишь складывали, вычитали и умножали. Это были электронные машины, способные решать сложные задачи.
В вычислительной технике существует своеобразная периодизация развития электронных вычислительных машин. ЭВМ относят к тому или иному поколению в зависимости от типа основных используемых в ней элементов или от технологии их изготовления.
С каждым новым поколением увеличивалось быстродействие, уменьшались потребляемая мощность и масса ЭВМ, повышалась их надежность. При этом возрастали их "интеллектуальные" возможности - способность "понимать" человека и обеспечивать ему эффективные средства для обращения к ЭВМ. В настоящее время принято говорить о пяти поколениях ЭВМ:
1 – эл.вак.лампы, 50-е г. (ЭВМ на эл. лампах, быстродействие порядка 20000 операций в секунду, для каждой машины существует свой язык программирования. (“БЭСМ”, ”Стрела”)).
Элементная база первых вычислительных машин – электронные лампы – определяла их большие габариты, значительное энергопотребление, низкую надежность и, как следствие, небольшие объемы производства и узкий круг пользователей, главным образом, из мира науки. В таких машинах практически не было средств совмещения операций выполняемой программы и распараллеливания работы различных устройств; команды выполнялись одна за другой, АЛУ простаивало в процессе обмена данными с внешними устройствами, набор которых был очень ограниченным. Очень трудоемким и малоэффективным был процесс общения человека с машиной первого поколения. Как правило, сам разработчик, написавший программу в машинных кодах, вводил ее в память ЭВМ с помощью перфокарт и затем вручную управлял ее выполнением. Электронный монстр на определенное время отдавался в безраздельное пользование программисту, и от уровня его мастерства, способности быстро находить и исправлять ошибки и умения ориентироваться за пультом ЭВМ во многом зависела эффективность решения вычислительной задачи. Ориентация на ручное управление определяла отсутствие каких бы то ни было возможностей буферизации программ.
2 – транзисторы, 60-е г.Разработка эффективной вычислительной техники перерастает из проблемы инженерно-технологической в проблему математическую, которую можно решить только совместными усилиями инженеров и математиков.
3 – интегральные схемы (ИС), 70-е г.Машины этого поколения характеризуются расширенным набором всевозможного оборудования для ввода - вывода и хранения информации. Появление ИС означало подлинную революцию в вычислительной технике. Ведь она одна способна заменить тысячи транзисторов, каждый из которых в свою очередь уже заменил 40 электронных ламп. Ко всем достоинствам ЭВМ третьего поколения добавилось еще и то, что их производство оказалось дешевле, чем производство машин второго поколения. Благодаря этому, многие организации смогли приобрести и освоить такие машины. А это, в свою очередь, привело к росту спроса на универсальные ЭВМ, предназначенные для решения самых различных задач. Большинство созданных до этого ЭВМ являлись специализированными машинами, на которых можно было решать задачи какого-то одного типа.
4 – большие ИС (БИС) и сверхбольшие ИС, 80-е г.Высокая степень интеграции способствовала увеличению плотности компановки электронной аппаратуры, повышению ее надежности и быстродействия, снижению стоимости. Размеры машин и их стоимость настолько уменьшились, что появились мини ЭВМ и ПК – стационарные и переносные. Стал расширяться рынок сбыта – за счет вовлечения в него непрограммирующих пользователей. Это наложило отпечаток на архитектуру программного обеспечения – появилосьб стремление упростить общение с ЭВМ, сделать его более дружественным для пользователя.
5 – многопроцессорные системы с параллельной обработкой, 90-е г.Программа разработки 5-го поколения ЭВМ была принята в Японии в 1982 г. Предполагалось, что к 1991 г. Будут созданы принципиально новые компьютеры, ориентированные на решение задач искусственного интеллекта. Для них планировалось не писать программы, а давать задания на почти естественном языке. В настоящее время эта работа не завершена – трудности интеллектуализации ЭВМ оказались слишком большими, выяснилась недостаточная проработанность основных положений «искусственного интеллекта», органиченность наших знаний о природе и закономерностях мышления.
Переходя к оценке и рассмотрению различных поколений, необходимо прежде всего заметить, что поскольку процесс создания компьютеров происходил и происходит непрерывно (в нём участвуют многие разработчики из многих стран, имеющие дело с решением различных проблем), затруднительно, а в некоторых случаях и бесполезно, пытается точно установить, когда то или иное поколение начиналось или заканчивалось.
Повышение производительности компьютеров и перемены в составе используемого ПО делают роль языков описания сценариев в создании приложении будущего все более и более важной. Эти языки отличаются от языков программирования системного уровня тем, что их основное назначение – связывать различные компоненты и приложения друг с другом, выполняя роль своего рода клея. В них находят применение бестиповые подходы к описанию данных, что позволяет вывести программирование на более высокии уровень и ускорить процесс разработки по сравнению с языками системного уровня.
За прошедшие 15 лет в методологии написания программ для компьютеров произошла радикальная перемена. Она состоит в том, что разработчики перешли от языков программирования системного уровня, таких как С и С++, к языкам описания сценариев, примерами которых могут служить Perl Tcl.
Эти языки создавались для различных целей, что обусловило ряд фундаментальных различии между ним. Системные разрабатывались для построения структур данных и алгоритмов “ с нуля”, начиная от таких примитивных элементов, как слово памяти компьютера. В отличие от этого, языки описания сценариев создавались для связывания готовых программ. Их применение подразумевает наличие достаточного ассортимента мощных компонентов, которые требуется только объединить друг с другом. Языки системного уровня используют строгий контроль типов, что помогает разработчикам приложении справляться со сложными задачами; языки же описания сценариев не используют понятие типа, что упрощает установление связей между компонентами и ускоряет разработку прикладных систем.
Ряд современных тенденции, включая появление более быстрых машин и более совершенных языков описания сценариев, повышение значимости графического интерфейса пользователя и компонентных архитектур, а также рост популярности Internet, чрезвычайно расширили сферу применимости языков описания сценариев.
Дата добавления: 2016-03-15; просмотров: 1316;