Реферат на тему Программирование и достижения компьютерной техники
Работа добавлена на сайт bukvasha.net: 2014-08-06Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
от 25%
договор
Оглавление
Программирование------------------------------------------------------------------3
История развития программирования-------------------------------------------4
Что могут ЭВМ---------------------------------------------------------------------11
История развитие ЭВМ-----------------------------------------------------------12
Достижения компьютерной техники------------------------------------------15
Программирование
Программирование можно рассматривать как искусство, науку, ремесло. Программирование — это искусство получения ответов от машины. Для этого в узком смысле нужно составить специальный код для технического устройства, а в широком — разработать программы на языках программирования, т. е. не просто составить код, а выполнить интеллектуальную работу по составлению высокоразумных программ для решения различных задач во всех сферах человеческой деятельности.
Программирование — процесс описания последовательности действий решения задачи средствами конкретного языка программирования и оформление результатов описания в виде программы. Эта работа требует точности, аккуратности и терпения. Команды машине должны формулироваться абсолютно четко и полно, не должны содержать никакой двусмысленности.
На начальном этапе составлением программ для ЭВМ занимались сами изготовители вычислительных машин. Постепенно, с развитием техники, этот процесс из рутинной работы превратился в интеллектуальную деятельность, сравнимую с искусством, т. к. трудоемкое, ручное составление программ было подобно решению сложных комбинационных задач, которое требовало научных знаний и мастерства. Возникла потребность в людях со специальной подготовкой и особым складом ума, которых называют программистами. Овладев необходимыми знаниями, научившись грамотно и творчески применять их в повседневной работе, программист может стать незаменимым специалистом в своей области деятельности. Отмечается, что «программист должен обладать способностью первоклассного математика к абстрактному и логическому мышлению в сочетании с эдисоновским талантом сооружать все что угодно из О и 1. Он должен сочетать аккуратность бухгалтера с проницательностью разведчика, фантазию автора детективов с трезвой практичностью экономиста».
Программист — одна из самых востребованных специальностей в современном обществе.
С 1970—1980-х гг. программирование как новая научная дисциплина занимается методами разработки программных продуктов. Оно включает комплекс вопросов, связанных с написанием спецификаций, проектированием, кодированием, тестированием и функционированием программ для ЭВМ. Для разработки программного обеспечения применяются следующие методы: математические, инженерных расчетов и управления.
Уровень программирования определяется четырьмя взаимосвязанными факторами развития: возможностями компьютеров, теорией и языками, искусством и технологией программирования.
Профессиональное программирование — вполне прагматичная деятельность, направленная на получение реального программного продукта, которое требует высокой теоретической подготовленности не только в области знания языков программирования и принципов создания программ, но и в области математики, системного анализа, исследования операций, системотехники и др. Программист должен хорошо ориентироваться в уже имеющемся программном обеспечении вычислительной техники и автоматизированных систем, программной защите информации, стандартизации и лицензировании программных продуктов.
Системным программированием, т. е. разработкой средств системного программного обеспечения (ПО) и системы программирования, занимаются системные программисты. Прикладным программированием, т. е. разработкой прикладных программ, занимаются прикладные программисты. Умение хорошо программировать — основное условие успешной профессиональной деятельности программиста. Научиться этому можно, лишь многократно программируя разные задачи, проходя путь от ее постановки до работающей программы.
Для непосредственного решения задач программист должен:
• осознать задачу;
• составить план общего решения;
• выполнить план, т. е. преобразовать его в определенную последовательность действий;
• проверить результат решения, убедиться в его правильности. Чтобы все это выполнить, специалист должен многое знать и
уметь.
История развития программирования
С глубокой древности известны попытки создать устройства, ускоряющие и облегчающие процесс вычислений. Еще древние греки и римляне применяли приспособление, подобное счетам, — абак. Такие устройства были известны и в странах Древнего Востока. В XVM в. немецкие ученые В. Шиккард (1623), Г.Лейбниц (1673) и французский ученый Б. Паскаль (1642) создали механические вычислительные устройства — предшественники всем известного арифмометра. Вычислительные машины совершенствовались в течение нескольких веков. Но при этом не применялось понятие «программа и программирование».
Только в начале XIX в. (1830) английский ученый, профессор математики Кэмбриджского университета Чарльз Бэббидж, анализируя результаты обработки переписи населения во Франции, теоретически исследовал процесс выполнения вычислений и обосновал основы архитектуры вычислительной машины. Работая над проектом аналитической машины — «Машины для исчисления разностей», Ч. Бэббидж предсказал многие идеи и принципы организации и работы современных ЭВМ, в частности принцип программного управления и запоминаемой программы. Общая увлеченность наукой дала ученому и Аде Лавлейс (1815—1852) долгие годы плодотворного сотрудничества. В 1843 г. она перевела статью Менабреа по лекциям Ч. Бэббиджа, где в виде подробных комментариев (по объему они превосходили основной текст) сформулировала главные принципы программирования аналитической машины. Она разработала первую программу (1843) для машины Бэббиджа, убедила его в необходимости использования в изобретении двоичной системы счисления вместо десятичной, разработала принципы программирования, предусматривающие повторение одной и той же последовательности команд при определенных условиях. Именно она предложила термины «рабочая ячейка» и «цикл». А. Лавлейс составила первые программы для решения системы двух уравнений и вычисления чисел Бернулли по довольно сложному алгоритму и предположила, что со временем аналитическая машина будет сочинять музыкальные произведения, рисовать картины и использоваться в практической и научной деятельности. Время подтвердило ее правоту и точность прогнозов. Своими работами А. Лавлейс заложила теоретические основы программирования и по праву считается первым в мире программистом и основоположником научного программирования.
В 1854 г. английский математик Джордж Буль опубликовал книгу «Законы мышления», в которой развил алгебру высказываний —Булеву алгебру. На ее основе в начале 80-х гг. XIX в. построена теория релейно-контактных схем и конструирования сложных дискретных автоматов. Алгебра логики оказала многогранное влияние на развитие вычислительной техники, являясь инструментом разработки и анализа сложных схем, инструментом оптимизации большого числа логических элементов, из многих тысяч которых состоит современная ЭВМ.
Идеи Ч. Бэббиджа реализовал американский ученый Г. Холлерит, который с помощью построенной счетно-аналитической машины и перфокарт за три года обработал результаты переписи населения в США по состоянию на 1890 г. В машине впервые было использовано электричество. В 1896 г. Холлеритом была основана фирма по выпуску вычислительных перфорационных машин и перфокарт.
В 1936 г. английский математик А. Тьюринг ввел понятие машины Тьюринга, как формального уточнения интуитивного понятия алгоритма. Ученый показал, что любой алгоритм в некотором смысле может быть реализован на машине Тьюринга, а следовательно, доказывал возможность построения универсальной ЭВМ. И та, и другая машины аналогично могут быть снабжены исходными данными решаемой задачи и программой ее решения. Машину Тьюринга можно считать как бы идеализированной моделью универсальной ЭВМ.
В 40-х гг. XX в. механическая элементная база вычислительных машин стала заменяться электрическими и электронными устройствами. Первые электромеханические машины были созданы в Германии К. Цузе (Ц-3, 1941 г.) и в США под руководством профессора Гарвардского университета Г. Айкена (МАРК-1, 1944 г.). Первая электронная машина создана в США группой инженеров под руководством доктора Пенсильванского университета Дж. Мочли и аспиранта Дж. Экксрта (ЭНИАК — электронный числовой интегратор и калькулятор, 1946 г.). В 1949 г. в Англии была построена EDSAC — первая машина, обладающая автоматическим программным управлением, внутренним запоминающим устройством и другими необходимыми компонентами современных ЭВМ.
Логические схемы вычислительных машин были разработаны в конце 1940-х гг. Дж. фон Нейманом, Г. Гольдстайном и А. В. Берксом. Особый вклад в эту работу внес американский математик Джон фон Нейман, принимавший участие в создании ЭНИАК. Он предложил идею хранения команд управления и данных в машинной памяти и сформулировал основные принципы построения современных ЭВМ. ЭВМ с хранимой программой оказались более быстродействующими и гибкими, чем ранее созданные.
В 1951 г. в США было налажено первое серийное производство электронных машин УНИВАК (универсальная автоматическая вычислительная машина). В это же время фирма IBM начала серийный выпуск машины IBM/701.
В СССР первыми авторами ЭВМ, изобретенной в декабре 1948 г., являются И. С. Брук и Б. И. Рамеев. А первая советская ЭВМ с сохраняющейся программой создана в 1951 г. под руководством С. А Лебедева (МЭСМ — малая электронная счетная машина). В 1953 г. в Советском Союзе начался серийный выпуск машин, первыми их которых были БЭСМ-1, «Стрела».
С появлением цифровых программно-управляемых машин родилась новая область прикладной математики — программирование. Как область науки и профессия она возникла в 1950-х гг. Первоначально программы составлялись вручную на машинных языках (в машинных кодах). Программы были громоздки, их отладка — очень трудоемка. Для упрощения приемов и методов составления и отладки программ были созданы мнемокоды, по структуре близкие к машинному языку и использующие символьную адресацию. Ассемблеры переводили программу, записанную в мнемокоде, на машинный язык и, расширенные макрокомандами, используются и в настоящее время. Далее были созданы автокоды, которые можно применять на различных машинах, и позволившие обмениваться программами. Автокод — набор псевдокоманд для решения специализированных задач, например научных или инженерных. Для таких задач имеется развитая библиотека стандартных программ.
До конца 1950-х гг. ЭВМ основным элементом конструкции были электронные лампы (1-е поколение). В этот период развитие идеологии и техники программирования шло за счет достижений американских ученых Дж. фон Неймана, сформулировавшего основные принципы построения ЭВМ, и Дж. Бэкуса, под руководством которого в 1954 г. был создан Fortran (Formula Translation) — первый язык программирования высокого уровня, используемый до настоящего времени в разных модификациях. Так, в 1965 г. в Дартмутском колледже Д. Кэмэни и Т. Куртцем была разработана упрощенная версия Фортрана — Basic. В 1966 г. комиссия при Американской ассоциации стандартов (ASA) разработала два стандарта языка: Фортран и Базисный Фортран. Используются также дальнейшие модификации языка (например 1970, 1990 гг.).
Достижения в области электроники и микроэлектроники по зволили заменить элементную базу ЭВМ на более совершенную. В конце 1950-х гг. громоздкие электронные лампы заменяют полупроводниками (миниатюрными транзисторами). Появляются ЭВМ II поколения; затем примерно через 10 лет — ЭВМ III поколения на интегральных схемах; еще через 10 лет — ЭВМ IV поколения на больших интегральных схемах (БИС). В Японии в 1990-х гг. реализованы проекты ЭВМ V поколения, в которых использованы достижения в области искусственного интеллекта и биоэлектроники. Если объем оперативного запоминающего устройства (ОЗУ) одной из лучших отечественных машин 1960-х гг. М-20, созданной под руководством С.А.Лебедева в 1958 г., имел 4096 слов (8 Кбайт) и быстродействие 20 тыс. операций в секунду, то современные персональные компьютеры характеризуются ОЗУ в десятки Мбайт и быстродействием в сотни миллионов операций в секунду, что позволяет решать сложнейшие задачи.
В 1953 г. А.А.Ляпуновым был предложен операторный метод программирования, который заключался в автоматизации программирования, а алгоритм решения задачи представлялся в виде совокупности операторов, образующих логическую схему задачи. Схемы позволяли расчленить громоздкий процесс составления программы, части которой составлялись по формальным правилам, а затем объединялись в целое. Для проверки идей операторного метода в СССР в 1954 г. была разработана первая программирующая программа ПП-1, а в 1955 г. более совершенная — ПП-2. В 1956 г. разработана ПП БЭСМ, в 1957 г. - ППСВ, в 1958 г. — для машины «Стрела».
В США в 1954 г. стал применяться алгебраический подход, совпадающий, по существу, с операторным методом. В 1956 г. корпорацией IBM разработана универсальная ПП Фортран для автоматического программирования на ЭВМ IBM/704.
В этот период по мере накопления опыта и теоретического осмысления совершенствовались языки программирования. В 1958—1960 гг. в Европе был создан ALGOL, который породил целую серию алголоподобных языков: Algol W, (1967), Algol 68, Pascal (Н. Вирт, 1970 г.), С (Д. Ритчи и Б. Керниган, 1972 г.), Ada (под руководством Ж. Ишбиа, 1979 г.), C++ (1983). В 1961-1962 гг. Дж. Маккарти в Массачусетс ком технологическом институте был создан язык функционального программирования Lisp, открывший в программировании одно из альтернативных направлений, предложенных Дж. фон Нейманом.
На начало 1970-х гг. существовало более 700 языков высокого уровня и около 300 трансляторов для автоматизации программирования.
Усложнение структуры ЭВМ привело (в 1953 г. для машин И-го поколения) к созданию операционных систем (ОС) — специальных управляющих программ для организации и решения задач на ЭВМ. Например, мониторная система МТИ, созданная в Массачусетском технологическом институте, обеспечивала пакетную обработку, т. е. непрерывное, последовательное прохождение через ЭВМ многих групп (пакетов) заданий и пользование библиотекой служебных программ, хранимой в машине. Это позволило совместить операции по запуску с выполнением программ.
Для ПЭВМ к настоящему времени разработаны ОС: MS DOS, Windows, ОС/2, МасОС, Unix, Linux и др. Широкое распространение получили ОС MS DOS и Windows, имеющие развитый интерфейс и широкий набор приложений, позволяющих последовательное выполнение заданий из пакета, обработку различной информации во многих сферах человеческой деятельности.
В 1965 г. итальянцы Бом и Джакопини предложили использовать в качестве базовых алгоритмических элементов следование, ветвление и цикл. Почти в то же время к аналогичным выводам пришел голландский ученый Э. Дийкстра, заложивший основы структурного программирования. В 1970-х гг. эта методология оформилась, и корпорация IBM сообщила о применении в разработке программного обеспечения «Усовершенствованных методов программирования», одним из компонентов которых являлась технология нисходящего структурного программирования (структурного программирования), основу которого составляет следующее:
• сложная задача разбивается на простые, функционально управляемые задачи, каждая задача имеет один вход и один выход; управляющий поток программы состоит из совокупности элементарных функциональных подзадач;
• управляющие структуры просты, т. е. логическая задача должна состоять из минимальной, функционально полной совокупности достаточно простых управляющих структур;
• программа разрабатывается поэтапно, на каждом этапе решается ограниченное число точно поставленных задач.
Четко сформулированные основы нисходящей разработки, структурного кодирования и сквозного контроля позволяли перейти к промышленным методам разработки программного обеспечения.
Развитие получило модульное программирование, основа которого заключается в следующем:
• функциональная декомпозиция (разбиение) задачи на самостоятельные подзадачи — модули, связанные только входными и выходными данными;
• модуль представляет собой «черный ящик», позволяющий разрабатывать части программ одного проекта на разных языках программирования, а затем с помощью компоновочных средств объединять их в единый загрузочный модуль;
• должно быть ясное понимание назначения всех модулей задачи и их оптимального сочетания;
• с помощью комментариев должно описываться назначение всех переменных модуля. Программирование------------------------------------------------------------------3
История развития программирования-------------------------------------------4
Что могут ЭВМ---------------------------------------------------------------------11
История развитие ЭВМ-----------------------------------------------------------12
Достижения компьютерной техники------------------------------------------15
Программирование
Программирование можно рассматривать как искусство, науку, ремесло. Программирование — это искусство получения ответов от машины. Для этого в узком смысле нужно составить специальный код для технического устройства, а в широком — разработать программы на языках программирования, т. е. не просто составить код, а выполнить интеллектуальную работу по составлению высокоразумных программ для решения различных задач во всех сферах человеческой деятельности.
Программирование — процесс описания последовательности действий решения задачи средствами конкретного языка программирования и оформление результатов описания в виде программы. Эта работа требует точности, аккуратности и терпения. Команды машине должны формулироваться абсолютно четко и полно, не должны содержать никакой двусмысленности.
На начальном этапе составлением программ для ЭВМ занимались сами изготовители вычислительных машин. Постепенно, с развитием техники, этот процесс из рутинной работы превратился в интеллектуальную деятельность, сравнимую с искусством, т. к. трудоемкое, ручное составление программ было подобно решению сложных комбинационных задач, которое требовало научных знаний и мастерства. Возникла потребность в людях со специальной подготовкой и особым складом ума, которых называют программистами. Овладев необходимыми знаниями, научившись грамотно и творчески применять их в повседневной работе, программист может стать незаменимым специалистом в своей области деятельности. Отмечается, что «программист должен обладать способностью первоклассного математика к абстрактному и логическому мышлению в сочетании с эдисоновским талантом сооружать все что угодно из О и 1. Он должен сочетать аккуратность бухгалтера с проницательностью разведчика, фантазию автора детективов с трезвой практичностью экономиста».
Программист — одна из самых востребованных специальностей в современном обществе.
С 1970—1980-х гг. программирование как новая научная дисциплина занимается методами разработки программных продуктов. Оно включает комплекс вопросов, связанных с написанием спецификаций, проектированием, кодированием, тестированием и функционированием программ для ЭВМ. Для разработки программного обеспечения применяются следующие методы: математические, инженерных расчетов и управления.
Уровень программирования определяется четырьмя взаимосвязанными факторами развития: возможностями компьютеров, теорией и языками, искусством и технологией программирования.
Профессиональное программирование — вполне прагматичная деятельность, направленная на получение реального программного продукта, которое требует высокой теоретической подготовленности не только в области знания языков программирования и принципов создания программ, но и в области математики, системного анализа, исследования операций, системотехники и др. Программист должен хорошо ориентироваться в уже имеющемся программном обеспечении вычислительной техники и автоматизированных систем, программной защите информации, стандартизации и лицензировании программных продуктов.
Системным программированием, т. е. разработкой средств системного программного обеспечения (ПО) и системы программирования, занимаются системные программисты. Прикладным программированием, т. е. разработкой прикладных программ, занимаются прикладные программисты. Умение хорошо программировать — основное условие успешной профессиональной деятельности программиста. Научиться этому можно, лишь многократно программируя разные задачи, проходя путь от ее постановки до работающей программы.
Для непосредственного решения задач программист должен:
• осознать задачу;
• составить план общего решения;
• выполнить план, т. е. преобразовать его в определенную последовательность действий;
• проверить результат решения, убедиться в его правильности. Чтобы все это выполнить, специалист должен многое знать и
уметь.
История развития программирования
С глубокой древности известны попытки создать устройства, ускоряющие и облегчающие процесс вычислений. Еще древние греки и римляне применяли приспособление, подобное счетам, — абак. Такие устройства были известны и в странах Древнего Востока. В XVM в. немецкие ученые В. Шиккард (1623), Г.Лейбниц (1673) и французский ученый Б. Паскаль (1642) создали механические вычислительные устройства — предшественники всем известного арифмометра. Вычислительные машины совершенствовались в течение нескольких веков. Но при этом не применялось понятие «программа и программирование».
Только в начале XIX в. (1830) английский ученый, профессор математики Кэмбриджского университета Чарльз Бэббидж, анализируя результаты обработки переписи населения во Франции, теоретически исследовал процесс выполнения вычислений и обосновал основы архитектуры вычислительной машины. Работая над проектом аналитической машины — «Машины для исчисления разностей», Ч. Бэббидж предсказал многие идеи и принципы организации и работы современных ЭВМ, в частности принцип программного управления и запоминаемой программы. Общая увлеченность наукой дала ученому и Аде Лавлейс (1815—1852) долгие годы плодотворного сотрудничества. В 1843 г. она перевела статью Менабреа по лекциям Ч. Бэббиджа, где в виде подробных комментариев (по объему они превосходили основной текст) сформулировала главные принципы программирования аналитической машины. Она разработала первую программу (1843) для машины Бэббиджа, убедила его в необходимости использования в изобретении двоичной системы счисления вместо десятичной, разработала принципы программирования, предусматривающие повторение одной и той же последовательности команд при определенных условиях. Именно она предложила термины «рабочая ячейка» и «цикл». А. Лавлейс составила первые программы для решения системы двух уравнений и вычисления чисел Бернулли по довольно сложному алгоритму и предположила, что со временем аналитическая машина будет сочинять музыкальные произведения, рисовать картины и использоваться в практической и научной деятельности. Время подтвердило ее правоту и точность прогнозов. Своими работами А. Лавлейс заложила теоретические основы программирования и по праву считается первым в мире программистом и основоположником научного программирования.
В 1854 г. английский математик Джордж Буль опубликовал книгу «Законы мышления», в которой развил алгебру высказываний —Булеву алгебру. На ее основе в начале 80-х гг. XIX в. построена теория релейно-контактных схем и конструирования сложных дискретных автоматов. Алгебра логики оказала многогранное влияние на развитие вычислительной техники, являясь инструментом разработки и анализа сложных схем, инструментом оптимизации большого числа логических элементов, из многих тысяч которых состоит современная ЭВМ.
Идеи Ч. Бэббиджа реализовал американский ученый Г. Холлерит, который с помощью построенной счетно-аналитической машины и перфокарт за три года обработал результаты переписи населения в США по состоянию на 1890 г. В машине впервые было использовано электричество. В 1896 г. Холлеритом была основана фирма по выпуску вычислительных перфорационных машин и перфокарт.
В 1936 г. английский математик А. Тьюринг ввел понятие машины Тьюринга, как формального уточнения интуитивного понятия алгоритма. Ученый показал, что любой алгоритм в некотором смысле может быть реализован на машине Тьюринга, а следовательно, доказывал возможность построения универсальной ЭВМ. И та, и другая машины аналогично могут быть снабжены исходными данными решаемой задачи и программой ее решения. Машину Тьюринга можно считать как бы идеализированной моделью универсальной ЭВМ.
В 40-х гг. XX в. механическая элементная база вычислительных машин стала заменяться электрическими и электронными устройствами. Первые электромеханические машины были созданы в Германии К. Цузе (Ц-3, 1941 г.) и в США под руководством профессора Гарвардского университета Г. Айкена (МАРК-1, 1944 г.). Первая электронная машина создана в США группой инженеров под руководством доктора Пенсильванского университета Дж. Мочли и аспиранта Дж. Экксрта (ЭНИАК — электронный числовой интегратор и калькулятор, 1946 г.). В 1949 г. в Англии была построена EDSAC — первая машина, обладающая автоматическим программным управлением, внутренним запоминающим устройством и другими необходимыми компонентами современных ЭВМ.
Логические схемы вычислительных машин были разработаны в конце 1940-х гг. Дж. фон Нейманом, Г. Гольдстайном и А. В. Берксом. Особый вклад в эту работу внес американский математик Джон фон Нейман, принимавший участие в создании ЭНИАК. Он предложил идею хранения команд управления и данных в машинной памяти и сформулировал основные принципы построения современных ЭВМ. ЭВМ с хранимой программой оказались более быстродействующими и гибкими, чем ранее созданные.
В 1951 г. в США было налажено первое серийное производство электронных машин УНИВАК (универсальная автоматическая вычислительная машина). В это же время фирма IBM начала серийный выпуск машины IBM/701.
В СССР первыми авторами ЭВМ, изобретенной в декабре 1948 г., являются И. С. Брук и Б. И. Рамеев. А первая советская ЭВМ с сохраняющейся программой создана в 1951 г. под руководством С. А Лебедева (МЭСМ — малая электронная счетная машина). В 1953 г. в Советском Союзе начался серийный выпуск машин, первыми их которых были БЭСМ-1, «Стрела».
С появлением цифровых программно-управляемых машин родилась новая область прикладной математики — программирование. Как область науки и профессия она возникла в 1950-х гг. Первоначально программы составлялись вручную на машинных языках (в машинных кодах). Программы были громоздки, их отладка — очень трудоемка. Для упрощения приемов и методов составления и отладки программ были созданы мнемокоды, по структуре близкие к машинному языку и использующие символьную адресацию. Ассемблеры переводили программу, записанную в мнемокоде, на машинный язык и, расширенные макрокомандами, используются и в настоящее время. Далее были созданы автокоды, которые можно применять на различных машинах, и позволившие обмениваться программами. Автокод — набор псевдокоманд для решения специализированных задач, например научных или инженерных. Для таких задач имеется развитая библиотека стандартных программ.
До конца 1950-х гг. ЭВМ основным элементом конструкции были электронные лампы (1-е поколение). В этот период развитие идеологии и техники программирования шло за счет достижений американских ученых Дж. фон Неймана, сформулировавшего основные принципы построения ЭВМ, и Дж. Бэкуса, под руководством которого в 1954 г. был создан Fortran (Formula Translation) — первый язык программирования высокого уровня, используемый до настоящего времени в разных модификациях. Так, в 1965 г. в Дартмутском колледже Д. Кэмэни и Т. Куртцем была разработана упрощенная версия Фортрана — Basic. В 1966 г. комиссия при Американской ассоциации стандартов (ASA) разработала два стандарта языка: Фортран и Базисный Фортран. Используются также дальнейшие модификации языка (например 1970, 1990 гг.).
Достижения в области электроники и микроэлектроники по зволили заменить элементную базу ЭВМ на более совершенную. В конце 1950-х гг. громоздкие электронные лампы заменяют полупроводниками (миниатюрными транзисторами). Появляются ЭВМ II поколения; затем примерно через 10 лет — ЭВМ III поколения на интегральных схемах; еще через 10 лет — ЭВМ IV поколения на больших интегральных схемах (БИС). В Японии в 1990-х гг. реализованы проекты ЭВМ V поколения, в которых использованы достижения в области искусственного интеллекта и биоэлектроники. Если объем оперативного запоминающего устройства (ОЗУ) одной из лучших отечественных машин 1960-х гг. М-20, созданной под руководством С.А.Лебедева в 1958 г., имел 4096 слов (8 Кбайт) и быстродействие 20 тыс. операций в секунду, то современные персональные компьютеры характеризуются ОЗУ в десятки Мбайт и быстродействием в сотни миллионов операций в секунду, что позволяет решать сложнейшие задачи.
В 1953 г. А.А.Ляпуновым был предложен операторный метод программирования, который заключался в автоматизации программирования, а алгоритм решения задачи представлялся в виде совокупности операторов, образующих логическую схему задачи. Схемы позволяли расчленить громоздкий процесс составления программы, части которой составлялись по формальным правилам, а затем объединялись в целое. Для проверки идей операторного метода в СССР в 1954 г. была разработана первая программирующая программа ПП-1, а в 1955 г. более совершенная — ПП-2. В 1956 г. разработана ПП БЭСМ, в 1957 г. - ППСВ, в 1958 г. — для машины «Стрела».
В США в 1954 г. стал применяться алгебраический подход, совпадающий, по существу, с операторным методом. В 1956 г. корпорацией IBM разработана универсальная ПП Фортран для автоматического программирования на ЭВМ IBM/704.
В этот период по мере накопления опыта и теоретического осмысления совершенствовались языки программирования. В 1958—1960 гг. в Европе был создан ALGOL, который породил целую серию алголоподобных языков: Algol W, (1967), Algol 68, Pascal (Н. Вирт, 1970 г.), С (Д. Ритчи и Б. Керниган, 1972 г.), Ada (под руководством Ж. Ишбиа, 1979 г.), C++ (1983). В 1961-1962 гг. Дж. Маккарти в Массачусетс ком технологическом институте был создан язык функционального программирования Lisp, открывший в программировании одно из альтернативных направлений, предложенных Дж. фон Нейманом.
На начало 1970-х гг. существовало более 700 языков высокого уровня и около 300 трансляторов для автоматизации программирования.
Усложнение структуры ЭВМ привело (в 1953 г. для машин И-го поколения) к созданию операционных систем (ОС) — специальных управляющих программ для организации и решения задач на ЭВМ. Например, мониторная система МТИ, созданная в Массачусетском технологическом институте, обеспечивала пакетную обработку, т. е. непрерывное, последовательное прохождение через ЭВМ многих групп (пакетов) заданий и пользование библиотекой служебных программ, хранимой в машине. Это позволило совместить операции по запуску с выполнением программ.
Для ПЭВМ к настоящему времени разработаны ОС: MS DOS, Windows, ОС/2, МасОС, Unix, Linux и др. Широкое распространение получили ОС MS DOS и Windows, имеющие развитый интерфейс и широкий набор приложений, позволяющих последовательное выполнение заданий из пакета, обработку различной информации во многих сферах человеческой деятельности.
В 1965 г. итальянцы Бом и Джакопини предложили использовать в качестве базовых алгоритмических элементов следование, ветвление и цикл. Почти в то же время к аналогичным выводам пришел голландский ученый Э. Дийкстра, заложивший основы структурного программирования. В 1970-х гг. эта методология оформилась, и корпорация IBM сообщила о применении в разработке программного обеспечения «Усовершенствованных методов программирования», одним из компонентов которых являлась технология нисходящего структурного программирования (структурного программирования), основу которого составляет следующее:
• сложная задача разбивается на простые, функционально управляемые задачи, каждая задача имеет один вход и один выход; управляющий поток программы состоит из совокупности элементарных функциональных подзадач;
• управляющие структуры просты, т. е. логическая задача должна состоять из минимальной, функционально полной совокупности достаточно простых управляющих структур;
• программа разрабатывается поэтапно, на каждом этапе решается ограниченное число точно поставленных задач.
Четко сформулированные основы нисходящей разработки, структурного кодирования и сквозного контроля позволяли перейти к промышленным методам разработки программного обеспечения.
Развитие получило модульное программирование, основа которого заключается в следующем:
• функциональная декомпозиция (разбиение) задачи на самостоятельные подзадачи — модули, связанные только входными и выходными данными;
• модуль представляет собой «черный ящик», позволяющий разрабатывать части программ одного проекта на разных языках программирования, а затем с помощью компоновочных средств объединять их в единый загрузочный модуль;
• должно быть ясное понимание назначения всех модулей задачи и их оптимального сочетания;
В период 1970—1980-х гг. развитие теоретических исследований оформило программирование как самостоятельную научную дисциплину, занимающуюся методами разработки программного обеспечения (ПО).
В истории развития промышленного программирования большую роль сыграл программист и бизнесмен Билл Гейтс (Gates William Henry, p. в 1955 г.). Его история очень поучительна для начинающих программистов. В 1972 г. Билл Гейтс и его школьный товарищ Пол Аллен основали компанию по анализу уличного движения «Трэф-О-Дейта» и использовали для обработки данных компьютеры с микропроцессором 8008 — первым из знаменитого ряда микропроцессоров компании «Intel». Будучи студентом Гарвардского университета, в 1975 г. он совместно с Алленом написал для компьютера Altair (фирмы M1TS) интерпретатор — программу-переводчик с языка программирования на язык машинных кодов. Они заключили с владельцем фирмы соглашение, по которому их программы распространялись вместе с компьютерами. Товарищи основали компанию «Microsoft», в которой Б. Гейтсу принадлежало 60 % акций, П. Аллену — 40 %. В 1976 г. Гейтс ввел в практику продажу лицензий на свои программные продукты непосредственно производителям компьютеров, что позволило «встраивать» их (ОС и трансляторы с языков программирования) в компьютеры. Это было большое достижение в области маркетинга, принесшее фирме огромные доходы. Фирма привлекала таких новых заказчиков, как фирмы «Apple», «Commodor», «Tendi». В 1980 г. фирма IBM предложила «Microsoft», в которой тогда работало около двух десятков человек, создать языки программирования для ее нового персонального компьютера, в дальнейшем известным как IBM PC. В 1981 г. «Microsoft» приобрела у разработчика Т. Патерсона дисковую ОС (DOS), и в августе этого года IBM PC поставлялась вместе с ОС MS DOS. Успех был настолько велик, что, кроме значительных доходов, привел к тому, что и архитектура Intel, и компьютеры IBM, и программы «Microsoft» фактически стали отраслевыми стандартами. В 1988 г. «Microsoft» создала свою ОС Windows с мощным графическим интерфейсом. К 1995 г. ОС, выпускаемые фирмой, использовали 85 % персональных компьютеров. ОС Windows совершенствуется год от года, обладая уже средствами доступа в глобальную сеть Internet. Вместе с фирмой NBC был создан круглосуточный кабельный информационный канал новостей. Совместно с фирмой «Эн-карта» создана мультимедиа-энциклопедия на CD-ROM «Книжная полка», содержащая электронные версии семи больших справочников, электронную энциклопедию кино — «Синемания». В 1995 г. в фирме «Microsoft» работало 18 тыс. человек, годовой выпуск достиг 200 программных продуктов, а доходы составили миллиарды долларов. В 1998 г. Б. Гейтс стал самым богатым человеком в мире, а в конце 1999 г. — объявил о своем решении уйти с поста главы компании и заняться программированием. Сегодня Билл Гейтс — одна из самых популярных фигур компьютерного мира. Журнал «People» писал: «Гейтс в сфере программирования значит столько же, сколько Эдисон в отношении к электрической лампочке: отчасти инноватор, отчасти предприниматель, отчасти торговец, но неизменно гений».
Профессиональное программирование вышло на уровень технологии. Методы разработки ПО синтезируют:
• методы инженерных расчетов для оценки затрат и выбора решений;
• математические методы для составления алгоритмов;
• методы управления для определения требований к системе, учета ситуаций, организации работ и прогнозирования.
На смену структурному программированию в начале 1990-х гг. пришло объектно-ориентированное программирование — ООП. Его можно рассматривать как модульное программирование нового уровня, когда вместо во многом случайного, механического объединения процедур и данных главным становится их смысловая связь. Объект рассматривается как логическая единица, которая содержит данные и правила (методы) их обработки. Объектно-ориентированный язык создает «программное окружение» в виде множества независимых объектов, каждый из которых отличается своими свойствами и способами взаимодействия с другими объектами. Программист задает совокупность операций, описывая структуру обмена сообщениями между объектами. Как правило, он «не заглядывает» внутрь объектов, но при необходимости может изменять элементы внутри объектов или формировать новые.
ООП основано на трех важнейших принципах (инкапсуляция, наследование, полиморфизм), придающих объектам новые свойства. Инкапсуляция — объединение в единое целое данных и алгоритмов их обработки. Данные здесь — поля объекта, а алгоритмы — объектные методы. Наследование — свойство объектов порождать своих потомков. Объект-потомок автоматически наследует все поля и методы, может дополнять объекты новыми полями, заменять и дополнять методы. Полиморфизм — свойство родственных объектов решать схожие по смыслу проблемы разными способами.
Идея использования программных объектов исследовалась в течение ряда лет разными учеными. Одним из первых языков этого типа считают Simula-67. А в 1972 г. появился язык Smoltalk, разработанный Аланом Кеем, утвердивший статус ООП.
На современном этапе развиваются инструментальные среды и системы визуального программирования для создания программ на языках высокого уровня: (Turbo Pascal, Delphi, Visual Basic, C++Builder и др.).
Развитие основных принципов объектно-ориентированного программирования получило с появлением компонентного программирования (КП). КП — динамический процесс без жестких правил, выполняющийся в основном для распределенной разработки (программирования) распределенных систем. Суть КП в том, что независимые проектировщики, программисты разрабатывают независимые компоненты (отдельные части) единой системы, распределенные по множеству узлов большой сети. Эти части могут принадлежать разным собственникам и управляться организационно независимыми администраторами.
В КП компонент рассматривается как хранилище (в виде DLL-или ЕХЕ файлов) для одного или нескольких классов. Классы распространяются в бинарном виде, а не в виде исходного кода. Предоставление доступа к методам класса осуществляется через строго определенные интерфейсы по протоколу. Это снимает проблему несовместимости компиляторов, обеспечивая без перекомпиляции смену версий классов в разных приложениях. Интерфейсы задают содержание сервиса и являются посредником между клиентом и сервером.
Фирма Microsoft создала технологии для распределенной разработки распределенных систем, такие как COM (Component Object Model), COM+, .NET. Разработаны и другие технологии: CORBA (консорциума OMG), JAVA (компании Sun Microsystem) и др.
Идея переложить на ЭВМ функции составителей алгоритмов и программистов дала новые возможности развитию сферы искусственного интеллекта, которая должна была создавать методы автоматического решения интеллектуальных задач. Формализация знаний, которые есть у профессионалов в разных областях, накопление их в базах знаний, реализованных на ЭВМ, стали основанием для создания экспертных систем. На основе баз знаний работают и ЭВМ V поколения, и интеллектуальные роботы, и экспертные системы. Эти системы могут не только найти решение той или иной задачи, но и объяснить, как оно получено. Появилась возможность манипулировать знаниями, иметь знания о знаниях — метазнания. Знания, хра-няшиеся в системе, стали объектом ее собственных исследований.
Независимость языков высокого уровня от ЭВМ вовлекла в сферу алгоритмизации задач специалистов различных отраслей знаний, позволила использовать многочисленные стандартные типовые программы, а программистам — устранять дублирование в написании программ для различных типов ЭВМ и значительно повысить производительность труда.
В конце 1980-х гг. в Японии и США появились проекты ЭВМ V поколения, реализованные в конце 1990-х гг. Прогресс в программировании связан с прогрессом в архитектуре вычислительных систем, отходом от фон-неймановской концепции, с достижениями в области искусственного интеллекта. Революционные изменения в элементной базе ЭВМ связываются с исследованиями по биоэлектронике.
На современном этапе программирование включает комплекс вопросов, связанных с написанием спецификаций (условий задач), проектированием, кодированием, тестированием и функционированием программ для ЭВМ. Современное ПО для ЭВМ имеет сложную структуру и включает, как правило, ОС, трансляторы с различных языков, текстовые программы контроля и диагностики, набор обслуживающих программ. Например, японские ученые для проектирования систем ПО разрабатывают идею «кольцевой структуры» шести уровней: 1-й (внутренний) — программы для аппаратуры; 2-й — ядро ОС; 3-й — программы сопряжения; 4-й — часть ОС, ориентированная на пользователя; 5-й — системы программирования; 6-й (внешний) — программы пользователя.
Согласно этим проектам научных исследований планируется упростить процесс создания программных средств путем автоматизации синтеза по спецификациям исходных требований на естественных языках. В последнее время в Японии удалось создать робота-переводчика, переводящего английскую речь на японский язык и наоборот, осуществляя это голосом человека. Во всех развитых странах работают над комплексами программ для создания роботов. Для многих сфер человеческой деятельности.
Широкое применение структурных и объектно-ориентированных методов программирования с использованием графических моделей объединялось отсутствием инструментальных средств. Это породило потребность в программно-технологических средствах специального класса — CASE (Computer Aided Software Engineering), реализующих технологию создания и сопровождения ПО различных систем. Предпосылки для появления CASE-технологий возникли к концу 1980-х гг. Первоначально термин «CASE» применялся только к вопросам автоматизации разработки ПО, теперь программная инженерия имеет более широкое значение для разработки систем в целом. В CASE-технологии входит разработка и внедрение языков высокого уровня, методов структурного и модульного программирования, языков проектирования и средств их поддержки, формальных и неформальных языков описания системных требований.
В начале XXв. с созданием пишущей механической машинки появилась возможность общедоступного создания печатного текста, хотя внесение изменений в такой текст (исправление ошибок) было достаточно трудоемкой работой. Затем появились электрические пишущие машинки. С появлением персональных компьютеров подготовка печатного текста стала гораздо совершеннее. В последние два десятилетия прошлого века уже разрабатывается множество комплексов программ для обработки текстов, которые сначала получили название текстовых редакторов, а по мере расширения их функциональных возможностей — текстовых процессоров.
В начале этого столетия текстовые процессоры стали более совершенными. Наряду с более простыми (например Professional Write и др.) появились такие мощные, как MS WinWord (см. рис. 21), WordPerfect WordStar 2000 и др. Из отечественных широкое распространение получил текстовый процессор Лексикон.
С начала 1980-х гг. для подготовки и обработки числовой информации стали использоваться табличные процессоры. В 1979 г. Д. Брикклин предложил первую программу для работы с электронными таблицами VisiCalc. В 1981 г. была разработана система SuperCalc фирмы «Computer Associates», в 1982 г. — Multiplan фирмы «Microsoft», далее — пакет для IBM PC Lotusl-2-3 фирмы «Lotus Development», русифицированные пакеты АБАК, ДРАКОН и др. В 1985 г. появился табличный процессор Excel фирмы «Microsoft» первоначально для персонального компьютера Macintosh, а затем для совместимых с IBM PC. Этот процессор разрабатывался паралг лельно с ОС Windows, его версии вобрали в себя все черты графического интерфейса, вплоть до версий Excel 5.0 как приложения Windows 3.1, Excel 7.0 как приложения Windows 95 и т. д. В последние годы создано достаточно много систем подготовки табличных документов, т. е. электронных таблиц, табличных процессоров (например, Corel Quattro 6.0 фирмы «Corel Co», Lotus 5.0 фирмы «Lotus Development Co», Office Proftessional for Windows фирмы «Microsoft» и ДР-)- Но наиболее широко используют электронные таблицы Excel.
Разработано большое количество стандартных реляционных систем управления базами данных — СУБД (например, MS Access, paradox и др.), на основе которых строят реляционные базы данных в различных предметных областях.
Для многих организаций (особенно управленческих) разработаны так называемые офисные пакеты, в которых на основе единой ОС функционируют приложения, включающие в себя системы для работы с различными видами информации. Например, созданы пакеты приложений к ОС Windows (MS Office, WordPerfect Office фирмы «Corel», StarOffice фирмы «SunMicrosystems» и др.), которые включают программные средства для выполнения функций обработки всех видов инфрмации. Например, MS Office включает совершенствующиеся год от года (в зависимости от последней версии ОС Windows) средства обработки текста (MS Word), графики (Photo Draw) и презентаций (PowerPoint), таблиц (Excel), баз данных (Access), электронной почты (Outlook), работы во Всемирной паутине (FrontPage), создания звуковых клипов (MS Sound Recorder).
Мощным толчком в развитии новых направлений в программировании послужило объединение компьютерных и телекоммуникационных технологий.
За рубежом в 1960-х гг. появились первые вычислительные сети, с которых началась техническая и технологическая революция, т. к. была предпринята попытка объединить технологию сбора, хранения, передачи и обработки информации на ЭВМ с техникой связи. В Европе в те годы были созданы международные сети EIN и Евро-нет, затем появились национальные сети. В 1972 г. в Вене была создана сеть МИПСА, к которой присоединились в 1979 г. 17 стран Европы, СССР, США, Канада и Япония. В 1980-х гг. в нашей стране была создана система телеобработки статистической информации, обслуживающая государственные и республиканские органы статистики. С 1980-х гг. развивается программирование для локальных вычислительных сетей (ЛВС).
ЛВС — это коммуникационная система, которая поддерживает в пределах одного здания или некоторой ограниченной территории один или несколько высокоскоростных каналов передачи информации, предоставляемых абонентским системам для кратковременного пользования. К 1990 г. эксплуатировалось свыше 0,5 млн серверов и 5 млн рабочих станций, работающих под управлением сетевых ОС (например NetWare компании «Novell»).
Глобальные вычислительные сети — это сети, использующие информационные ресурсы ЛВС, расположенных на большом расстоянии друг от друга (передача осуществляется с помощью телефонной сети через модемы или по выделенным каналам). Наиболее популярной является сеть Интернет, представляющая собой общемировую совкупность сетей, связывающая между собой миллионы компьютеров.
Сети позволили эффективно использовать аппаратные средства, программные средства и такие многопользовательские системы, как электронная почта, информационные системы на основе баз данных, телеконференции и др. Особой популярностью пользуется система WWW (World Wide Web) — Всемирная паутина, т. е. всемирная распределенная база гипертекстовых документов. Пользователи, используя для программирования язык гипертекстовой разметки HTML, создают свои сайты любой тематики и легко могут получать многообразную информацию, общаться с миллионами пользователей компьютеров. В будущем планируется массовое использование так называемых информационных роботов (Knowbot) — новых систем поиска и обработки информации в сети, в основе которых имеются уже элементы экспертных систем, позволяющих анализировать искомую информацию и готовить ее для выдачи в форме презентаций.
С Интернетом тесно связаны понятия «киберпространство» и «виртуальная реальность». Киберпростраиством называют совокупность всех систем компьютерных коммуникаций и потоков информации, циркулирующих в мировых сетях. Виртуальная реальность — фантастический мир, создаваемый на экране компьютера, образы реального мира и процессов, в нем происходящих. С этими объектами и процессами можно работать как с реальными, проводить различные исследования, имитировать всевозможные ситуации, создавать прекрасные тренажеры для применения полученных навыков в реальности. Поле деятельности для программистов огромное, поэтому общество заинтересовано в высококвалифицированных специалистах этого профиля.
Что могут ЭВМ
Главная способность ЭВМ — способность к имитации объектов, явлений, механизмов, даже таких, которые не существуют в природе. Эта способность в сочетании с быстродействием — до миллиардов операций в секунду — основа эффективности ЭВМ.
Жизненные задачи обычно не являются четко сформулированными. Поэтому, прежде чем обратиться к ЭВМ для решения задачи, задачу нужно четко сформулировать. Четкая формулировка задачи всегда основана на некоторых упрощающих предположениях, которые позволяют построить модель задачи, т. е. определить, что будет служить исходными данными, а что — результатом, и какова связь между исходными данными и результатом.
Для одной и той же задачи могут быть созданы разные модели, в зависимости от того, какие средства используются для ее создания, и какие предположения положены в ее основу.
Выбор исходных данных, описание результатов и соотношений в модели задачи зависят также от возможностей того, кто будет ее решать. Если задачу будет решать ЭВМ, «умеющая», например, только вычислять, то исходные данные и результаты должны быть представлены числами, а связи между ними — математическими соотношениями. Иначе говоря, нужно построить математическую модель задачи. Это означает — выделить предположения, на которых будет основана математическая модель; определить, что считать исходными данными и результатами; записать математические соотношения (формулы, уравнения, неравенства и так далее), связывающие результаты с исходными данными.
Если задача заменена ее моделью, то и ответ относится к модели и лишь опосредованно — к исходной задаче.
Созданием математической модели завершается первый этап решения задачи с помощью компьютера. Второй этап — составление алгоритма (четкой инструкции, строго указывающей необходимую последовательность действий).
ЭВМ могут выполнять алгоритмы без участия человека, автоматически. Но для этого нужно составить программу, т. е. записать алгоритм на одном из языков программирования.
Модель всегда основана на тех или иных упрощениях. Поэтому, проведя вычисления на ЭВМ, необходимо сопоставить результаты с экспериментальными фактами, теоретическими воззрениями и Другой информацией об изучаемом объекте. При этом может возникнуть необходимость уточнить математическую модель, полнее учитывая особенности изучаемого объекта. Уточнив модель, снова составляют алгоритм, проводят расчеты на ЭВМ и анализируют результаты, и так до тех пор, пока анализ результатов не покажет их приемлемое соответствие знаниям об изучаемом объекте. Проведение расчетов на ЭВМ и анализ результатов называется вычислительным экспериментом. Таким образом, в третий этап решения задачи с помощью компьютера помимо написания программы, входит вычислительный эксперимент.
Перевод задач на язык математики позволяет подключить для их решения мощные математические методы. Так, очень часто возникает задача изучения некоторой функции. Один из методов изучения функции с помощью ЭВМ — разбиение ее области определения на маленькие промежутки. При этом предполагают, что на каждом из отрезков функция постоянна и меняется «мгновенно» в конце каждого промежутка. Как правило, при измельчении отрезков разбиения нужная информация о функции может быть получена с любой точностью. Достоинство этого метода — в том, что вместо функции рассматривается конечное множество чисел.
История развитие ЭВМ
В развитии вычислительной техники можно выделить предысторию и четыре поколения электронных вычислительных машин. Впереди создание ЭВМ пятого поколения. Развитие ЭВМ, по-видимому, ярче всего отражает динамику научно-технического прогресса второй половины XX в.
Предыстория развития вычислительной техники начинается с глубокой древности. Одним из первых средств счета были китайские счеты (суан-пан), римские счеты (абак) и русские счеты, которые до сих пор пытаются конкурировать с современной вычислительной техникой.
Прошло много лет, прежде чем появилась первая счетная машина, которую в 1642 г. изобрел французский математик Влез Паскаль. Эта машина была построена на основе зубчатых колес и могла суммировать десятичные числа. Впечатление о «способностях» этой машины высказал сам Паскаль, который сказал, что «арифметическая машина производит действие, приближающееся к мысли больше, чем все, что делают животные».
Первую арифметическую машину, выполняющую все четыре арифметических действия, создал в 1673 г. немецкий математик Лейбниц. Эта арифметическая машина послужила прототипом арифмометров, которые начали производиться серийно с 1820 г. и использовались вплоть до 60-х годов XX в.
Одновременно с широким распространением арифмометров появилась идея создания универсальной программируемой счетной машины, выдвинутая в 1823 г. английским математиком Чарльзом Беббиджем. Задуманный им проект машины содержал все основные устройства вычислительных машин: память, арифметическое устройство и устройство управления, устройство ввода и устройство печати. Проект этой машины реализовывался 70 лет, но его воплощение так и не было - завершено. Однако вычислительные программы для этой машины были созданы! Их составила дочь Джона Байрона герцогиня Ада Лавлейс, которая по праву считается первой женщиной-программистом. В ее честь назван язык программирования Ада.
Из-за сложности и механического износа деталей проект Беббиджа, опережавший технические возможности своего времени, так и остался нереализованным. И только через 100 лет, в 40-х годах XX в., удалось создать программируемую счетную машину на основе электромеханических реле. Реле — это элемент, имеющий два рабочих состояния: «включено» и «выключено». Важно отметить, что при проектировании этих электромеханических счетных машин использовался аппарат математической логики.
Именно в 40-е годы начался бурный прогресс научных и технических новшеств в промышленности и вычислительной технике. Не успели начать серийно выпускать электромеханические счетные машины, как появились первые ЭВМ, в которых логические элементы были реализованы на основе радиоламп.
Первая электронная вычислительная машина «ЭНИАК» была создана в США после второй мировой войны, в 1946 г. В группу создателей действующей ЭВМ входил один из самых выдающихся ученых XX в.— Джон фон Нейман, который и предложил основные принципы построения и функционирования универсальных программируемых вычислительных машин. Именно в соответствии с его идеями современные ЭВМ состоят из процессора, арифметического устройства, устройств ввода-вывода и памяти для хранения данных и программ.
Одновременно над проектами электронных вычислительных машин работали в Англии, где первая универсальная ЭВМ появилась в 1949 г., и в СССР, где первая электронно-вычислительная машина, получившая название МЭСМ (малая электронно-счетная машина), была разработана в 1950 г., а первая советская большая ЭВМ -- БЭСМ появилась в 1952 г.
ЭВМ первого поколения изготовлялись на основе вакуумных электронных ламп. Эти ЭВМ размещались в нескольких больших металлических шкафах, занимавших целые залы и требовавших сложнейшей системы охлаждения. Работа на ЭВМ производилась за пультом, где можно было видеть состояние каждой ячейки памяти и любого регистра. Программы для ЭВМ первого поколения составлялись в машинных кодах — в виде длинных последовательностей двоичных чисел. Занимались этим исключительно математики, выполнявшие на ЭВМ сложнейшие расчеты.
Следующее, второе поколение ЭВМ появилось через 10 лет— -в 60-х годах. В этих ЭВМ логические элементы реализовывались уже не на радиолампах, а на базе полупроводниковых приборов-транзисторов. Это позволило значительно увеличить надежность машин, сократить их размеры и потребление электроэнергии. Тем самым открылся путь для серийного производства ЭВМ.
В составе ЭВМ второго поколения появились печатающие устройства для вывода, телетайпы для ввода и магнитные накопители для хранения информации. Диалог человека с ЭВМ стал более естественным благодаря появлению языков программирования высокого уровня, таких, как Фортран, Алгол, Бейсик и др. Начали создаваться первые автоматизированные системы, а базе ЭВМ.
Для появления третьего поколения ЭВМ вновь понадобилось всего лишь около 10 лет. Их основу составляли интегральные микросхемы, содержавшие на одной полупроводниковой пластинке сотни или тысячи транзисторов. Благодаря этому уменьшились размеры ЭВМ, потребление ими электроэнергии и стоимость компьютеров.
В состав ЭВМ третьего поколения были включены удобные устройства ввода-вывода и накопления, информации (дисплеи) на основе электронно-лучевых трубок, накопители на магнитных лентах и дисках, графопостроители и т. п. Количество компьютеров к этому времени достигло уже десятков и сотен тысяч. К работе с этими ЭВМ стал подключаться широкий круг специалистов: инженеры, техники. Вычислительные машины появились в университетах и институтах. Начали создаваться операционные системы, базы данных, языки структурного программирования, первые системы «искусственного интеллекта», стали внедряться системы автоматизированного проектирования и управления и т. п.
Для появления ЭВМ четвертого поколения вновь потребовалось 10 лет. Они были созданы и выпущены в массовое производство на рубеже 80-х годов. Элементной базой этих ЭВМ стали большие интегральные схемы (БИС), в которых на одном кристалле кремния размещаются уже десятки и сотни тысяч логических элементов. Такие интегральные схемы позволяют создавать на одном-единственном кристалле программируемые блоки управления различными устройствами. Малые габариты и слабые токи, необходимые для их работы, позволяют устанавливать эти процессоры в любое техническое изделие: в телевизоры, стиральные машины, автомобили и т. д. Тем самым открывается возможность создания принципиально новых, программно управляемых технических устройств.
Наиболее яркими представителями ЭВМ четвертого поколения служат персональные ЭВМ, габариты которых позволяют устанавливать их на любом рабочем месте. В состав этих ЭВМ включаются удобные средства накопления, ввода и предоставления информации: накопители на гибких магнитных дисках, цветные графические дисплеи, графические планшеты, компактные печатающие устройства.
Массовое распространение персональных ЭВМ изменило требования к программам. Главными из этих требований стали: простота . правил работы, эстетичность, надежность программ, универсальность их функций, простота обучения работе на ЭВМ. Десятки миллионов персональных ЭВМ, устанавливаемых в службах сервиса и управления, на производстве и в образовании, требуют овладения компьютерной грамотностью от всего взрослого населения, а также подготовки специалистов по созданию, развитию и применению ЭВМ.
Следующее, пятое поколение ЭВМ должно прийти на смену ЭВМ четвертого поколения еще до конца этого столетия. Элементной базой этих ЭВМ булут служить сверхбольшие интегральные схемы (СБИС), которые будут отличаться колоссальной плотностью размещения логических элементов на кристалле. Работа этих схем будет основана на принципах логического вывода, подобных принципам работы программ на языке Пролог. Главным же будет существенное увеличение электронной памяти в этих схемах, которая послужит базой для их «интеллекта». Предполагается, что широко распространится ввод информации в ЭВМ с голоса, общение с машиной на естественном языке, машинное зрение, машинное осязание, создание «интеллектуальных» роботов и робототехнических устройств.
Одной из главных проблем развития ЭВМ (как четвертого, так и перспективного пятого поколения) является проблема разработки программного обеспечения. Массовое использование ЭВМ по-новому ставит вопрос о разработке и эксплуатации программных средств. При сложившемся ныне кустарном производстве программ и предстоящем насыщении компьютерами общественного производства и жизни общества едва ли не все население Земли должно стать программистами, для того, чтобы обеспечить себя необходимыми программами.
Выходом из этого положения явится создание мощной индустрии информатики, которая возьмет на себя не только создание средств разработки программ, но и разработку пакетов прикладных программ. Эти разработки должны обеспечивать высокое качество и вестись примерно так же, как и выпуск промышленной продукции.
Достижения компьютерной техники
1. Универсальные настольные ПК
Что такое настольный компьютер, объяснять никому не надо — это любимое молодежью устройство, чтобы красиво набирать тексты рефератов, а также любые другие тексты, бланки и договоры; вести бухгалтерский учет; управлять финансами организации и работать с клиентской базой данных, а также делать различные расчеты, рисовать, слушать музыку и смотреть cyпep DVD- фильмы, обмениваться посланиями по электронной почте или прогуливаться по всемирной сети Интернет.
Обычный настольный персональный компьютер, или, как его называют на американско - компьютерном сленге, десктоп, состоит из системного блока, монитора, клавиатуры и мыши.
Самая важная часть компьютера — системный блок, содержащий процессор и оперативную память (memory), — сердце и мозг ПК, жесткий диск, или винчестер (HDD — hard disk drive), дисковод (FDD — floppy disk drive), CD-ROM и несколько так называемых портов (COM, LTP, USB — port) — плат, снабженных разъемами для присоединения к компьютеру дополнительных устройств: для печати — принтера, для связи с другими компьютерами — модема, для ввода изображений в компьютер — сканера и некоторых других устройств.
Оговоримся, что в целом мы будем говорить об IBM-совместимых компьютерах, которые в мировом масштабе используют большинство людей в практической деятельности. Их производят не только в США, но и в Европе, Азии фирмы-производители ПК, принявшие стандарт фирмы IBM. Именно для этих компьютеров используется операционная система Windows знаменитой фирмы Microsoft.
Однако существует и другой стандарт «Эппл» (Apple) — яблоко, на базе которого выпускаются компьютеры серии «Макинтош» (Macintosh). Для компьютеров этой группы существует свое «яблочное» программное обеспечение, в частности своя операционная система Mac OS X.
В чем принципиальная разница между IBM и Apple? Первая из них выбрала тактику открытой архитектуры (с продажей патентов). Любая фирма, приобретя патент, может наладить производство компьютеров по технологии IBM. Именно это и обеспечило широкое распространение компьютеров IBM.
Фирма Apple не продает свои патенты, поэтому компьютеры этой фирмы дороже и менее распространены, хотя наиболее известные компьютеры серии Macintosh гораздо удобнее, мощнее и надежнее, чем их аналоги IBM.
Наше учебное пособие посвящено в большей степени IBM PC, т.е. везде, где встретится слово «компьютер», мы будем подразумевать IBM-совместимый ПК, работающий с операционной системой Windows.
В практической деятельности важным моментом работы с компьютером является сохранение информации. Для этого помимо традиционных дискет и CD-дисков применяют не так давно появившиеся записываемые диски CD-R и CD-RW. Такие устройства сохраняют намного больше информации, чем дискеты. Однажды записанный диск CD-R перезаписать уже нельзя. Снять это ограничение призваны диски и накопители стандарта CD-RW (перезаписываемые диски) — устройство не очень дешевое, но полезное. Эти устройства для тех, кто собирается работать с большими объемами данных, такими, как графика и музыка.
Если же сохраняемая информация исчисляется в гигабайтах (трехмерная графика, видео), то 700 Мбайт CD-диска будет недостаточно. Недавно появился новый стандарт DVD, позволяющий записать полнометражный фильм. Такие устройства вмещают от 3 до 18 Гбайт ( с двусторонней записью). Существуют пишущие DVD-дисководы (DVD-R) и перезаписывающие — DVD-RW. Пока эти устройства достаточно дороги, но общая тенденция снижения цен на компьютерные новинки позволяет надеяться, что скоро они станут по карману и обычному пользователю.
Особенностью компьютеров последних моделей является наличие особых инфракрасных портов (IR — infra red), позволяющих подключать различные устройства без проводов. Такой порт общается с устройством, как телевизор со своим пультом дистанционного управления. Порт на основе радиопередатчика — другая разновидность такого дистанционного подключения.
Наличие ИК - порта привело к появлению беспроводных устройств: клавиатур, мышей. Распространены два типа таких устройств: «инфракрасный» и «радиоустройство». Недостатком первого можно считать необходимость постоянно видеть ИК - порт. Если случайно закрыть порт учебником, то инфракрасная мышка «умирает» — перестает шевелиться. Этого недостатка лишена радио мышь, общающаяся с компьютером посредством маленького радиопередатчика.
2. Блокнотные компьютеры
Все, кому нужен умный и мобильный помощник на каждый день на работе и дома, несомненно, выберут блокнотный (планшетный) ПК (notebook). Ноутбук — это полноценный переносной компьютер небольших габаритных размеров и малой массы (рис. 1.2).
Дисплеи с активной матрицей были до недавнего времени довольно дорогими — в среднем на тысячу долларов дороже, чем модели с двойным сканированием.
Ноутбуки последних моделей оснащаются SVGA- или XGA-мониторами на тонкопленочных транзисторах (TFT). Согласно спецификации корпорации Intel-Mobile Powеr Guidelines -99 стандартом становится 13,3-дюймовый экран с глубиной цвета 24 бит и разрешением 1024 Х 768 пикселов.
Последние модели ноутбуков укомплектованы процессорами Intel Pentium, Celeron, Athlon -Palomino; размер оперативной памяти колеблется в интервале 32...512 Мбайт; жесткий диск имеет емкость от 4 Гбайт; установлены накопители флоппи: CD-ROM, CD-RW, DVD; примерные габаритные размеры 300x250x40 мм; масса 2,5...4 кг; размер экрана — 15дюймов.
В зависимости от мультимедийных возможностей можно выделить мультимедийные и офисные ноутбуки. В блокнотных компьютерах возможна установка таких же операционных систем, как и в настольных ПК, — Windows-98, -2000, -Me, -XP.
Большинство ноутбуков используют ионно-литиевые (Li-Ion) или никель – металл – гидридные (NiMH) батареи. Время непрерывной работы батарей у этих компьютеров обычно два-три часа, но постоянное использование CD-ROM значительно сокращает этот срок.
Ничто так сильно не влияет на впечатление от ноутбука, как тип его указателя. Это может быть указательный рычажок («указка» или «ластик»), расположенный между клавишами G и Н. Другие компьютеры снабжены сенсорной панелью. Манипуляторов типа «ластик» становится все больше, так как его разработчик фирма IBM сейчас более свободно продает лицензию на эту технологию. Трекболы (мышка, перевернутая шариком под палец) — это уже динозавры среди подобных устройств.
Многие считают, что «ластик» намного проще в использовании, чем сенсорная панель, особенно для динамических игр. А те, кто не полностью доволен и «ластиком», обычно носят с собой стандартную мышь и пользуются ею, когда могут найти достаточно свободного места. То же самое происходит и с полноразмерной клавиатурой: по возможности многие используют ее вместо встроенной. Популярны следующие модели ноутбуков: Hewlett-Packard (модель Omnibook), IBM-TransNote (модель ThinkPad), K-Systems (модель SkyBook) и др.
3. Карманные ПК
Попытка сжать настольный компьютер до размеров плитки шоколада дала рождение новому классу компьютеров — карманным персональным компьютерам (КПК)
КПК имеет размеры электронной записной книжки и массу около 300г, операционную систему, подходящую для работы полноценного программного обеспечения — текстового редактора, табличного процессора, игр, баз данных, деловой графики. Компьютеры снабжены монохромным или цветным жидкокристаллическим экраном.
Имеется возможность подключения разнообразных внешних устройств, как традиционных (модем, принтер), так и специальных (сканер штрих-кода, сотовый телефон).
Через стандартный разъем или инфракрасный порт можно подключить КПК к настольному компьютеру для обмена данными в обоих направлениях. Данные из карманного компьютера можно перенести на настольный персональный компьютер в привычных форматах (Excel и Word).
Карманный компьютер способен работать от внутренних источников питания от 20 до 60 ч, его в любой момент можно извлечь из кармана, привести в готовность нажатием клавиши и сделать запись, отправить факс, принять E-mail.
Основными производителями КПК являются такие известные фирмы, как HP, Sony, Philips, Casio, LG, Compaq.
В поставку программного обеспечения к КПК входят программы:
• синхронизации, обеспечивающие перенос данных с настольного ПК на карманный и обратно через USB-порт, последовательный или ИК - порт, а также через карты расширения памяти;
• офисные, конвертирующие документы MS Word, реже Excel, в формат, пригодный для просмотра на КПК;
• почтовые, позволяющие просматривать почту, полученную непосредственно на карманный компьютер или перенесенную с настольного (обычно совместимы с MS Outlook);
• личные для обмена со стационарным персональным компьютером задачами, списком контактов и расписанием.
Основных операционных систем (ОС) для карманных компьютеров три — Palm OS, Microsoft Windows - CE и EPOC. Они имеют гораздо больше различий в требованиях к системным ресурсам, чем Windows, Linux и Mac OS, так что нельзя напрямую сравнивать объем памяти разных ручных компьютеров: иногда 8 Мбайт одной ОС позволяют запустить больше приложений, чем 16 Мбайт другой. Процессоры КПК имеют различную архитектуру, поэтому тактовая частота не полностью отображает соотношение их производительности.
По той же причине (различие архитектур) невозможно приравнять производительность КПК и настольных систем, однако применение голосового ввода в карманных компьютерах говорит о том, что их центральные процессоры достигли производительности как минимум процессора Pentium.
ОС Palm OS. Самые распространенные карманные компьютеры на сегодняшний день семейства Palm. Компания Palm сама делает операционную систему Palm OS жестко привязанной к процессору. Такой подход позволяет оптимизировать операционную систему и сократить требования к системным ресурсам.
Palm OS считается более устойчивой операционной системой, чем Windows СЕ, благодаря изначальной нацеленности на решение узкого круга задач по организации дня (календарь, заметки, будильник) и более тщательной отладке кода. Лицензии на использование своей ОС Palm продает сторонним компаниям, таким как Sony и TRG.
Создатели карманных компьютеров этих фирм одни из первых отказались от клавиатуры, заменив ее на перьевой ввод. Научиться быстро писать специальным пером на экране не так просто, но при должной сноровке это избавляет работу с карманным компьютером от главного недостатка — тыканья в крошечные кнопочки.
Отсутствие клавиатуры может испугать человека, никогда не вводившего информацию клинописью. Ввод данных на КПК без клавиатуры осуществляется с помощью стило (пера), которое обычно имеет форму цилиндра с резиновым наконечником. На сенсорном экране вводятся знаки Graffiti — стилизованные, сильно упрощенные буквы.
Для сравнения отметим, что у КПК под управлением Windows СЕ возможен ввод пером символов, гораздо больше похожих по форме на привычные нам печатные буквы, однако в результате скорость ввода ниже и чаще возникают ошибки в распознавании.
В секторе недорогих КПК Palm занимают одно из первых мест.
ОС Microsoft Windows СЕ. Компания Microsoft не стала создавать собственные устройства, как Palm, но предложила сторонним производителям КПК лицензировать у нее ОС, специально разработанную с учетом особенностей архитектуры и требований КПК. Тем не менее, операционная система получилась не такой «скромной», как Palm OS или EPOC 32, поэтому карманные компьютеры под ее управлением отличаются мощными процессорами и большими объемами внутренней памяти, а также немалыми габаритными размерами и массой.
Microsoft поддерживает две разновидности ОС: для машин с клавиатурным и с рукописным вводом. У первых разрешение экрана 640 Х 240 точек, у вторых — 240 Х 320.
В качестве достоинства КПК под управлением Windows СЕ можно назвать знакомый интерфейс, однако в версиях ОС для бесклавиатурных компьютеров это верно лишь отчасти.
Windows СЕ обладает большими мультимедийными возможностями. Кроме производительного процессора этому способствует возможность работы в многозадачном режиме: можно одновременно редактировать текст и слушать музыку.
ОС EPOC. Ранее под управлением EPOC компания Psion выпускала карманные компьютеры. Теперь она перешла на специализированные офисные решения, а операционная система стала называться Symbian. Карманные компьютеры Psion 5mx и более старшие модели Revo и Revo Plus отличаются нацеленностью на офисные приложения.
Операционная система Symbian получает распространение в КПК, сотовых телефонах и их гибридах — коммуникаторах.
По данным независимой европейской аналитической компании Canalys фирма Palm удерживает свое лидерство по продаже КПК (34%), несмотря на жестокую конкуренцию со стороны Compaq (14%). Активно наращивают свою долю рынка фирмы Nokia и Hewlett-Packard (по 9 %).
Что касается операционных систем для КПК, то Palm OS держит в Западной Европе 43 % рынка, Windows СЕ — 28 %, a Symbian — 14 %. Сейчас КПК все больше становятся не просто «умными» электронными записными книжками, но и устройствами для связи с внешним миром, в первую очередь через Интернет.
Модификации КПК с модемом позволяют подключиться к Интернету из любого места, где есть телефон. Выходить в Интернет с КПК через сотовый телефон можно почти на любых моделях всех производителей, и обычно для этого используется ИК - порт.
В 2000г., например, было продано 10 млн. карманных компьютеров, причем половина приходится на Америку. Хотя в России их распространение идет не такими масштабами, они уже достаточно популярны.
4. Компьютеры-телефоны
2001г. ознаменован появлением устройства, совмещающего в себе функции телефона и КПК. Первым комбинированным устройством был PdQ Smartphone компании Qualcomm (ныне Куосега), но это был слишком громоздкий и дорогой аппарат. Новый Smartphone компании Куосега выглядит как массивный сотовый телефон, вывернутый наизнанку. Этот телефон вполне полноценное Palm-устройство, работающее на ОС семейства Palm OS, с пером и стыковочным модулем HotSync.
Smartphone открыл новую эру устройств, призванных освободить пользователей от необходимости носить с собой сразу два аппарата: сотовый телефон и КПК. Некоторые из них будут сделаны по схеме «два в одном», другие превратятся из обычных КПК в комбинированные устройства с помощью дополнительного модуля.
Эти устройства достаточно удобны. Можно звонить по телефонам, занесенным в записную книжку, а также использовать все возможности карманных компьютеров. Если позволяет тарифный план, то можно работать с Интернетом. Телефон поддерживает протокол CDMA.
Владельцы карманных компьютеров Palm могут воспользоваться дополнительными модулями, чтобы получить функции телефона.
Компания Microsoft продемонстрировала прототипы мобильных телефонов (кодовое название Stinger) под управлением одного из вариантов ОС Windows СЕ. Они не будут оснащаться столь же мощными процессорами, как карманные компьютеры под управлением Windows СЕ, но экран будут иметь достаточно большой. Компания Samsung готовит аппараты для двух протоколов — CDMAhGSM.
CDMA-аппараты Neo Point-2000 и Neo Point - 2600 представляют собой телефоны с функциями КПК. Они имеют достаточно просторный 11-строчный экран и, несмотря на свою миниатюрность, обеспечивают работу с электронной почтой.
В середине 2001г. появились первые экземпляры Nokia-9210, сочетающего в себе функции КПК и сотового телефона. Устройство функционирует под управлением операционной системы Symbian. Открыв аппарат, можно обнаружить джойстик и клавиатуру с 60 клавишами. Несмотря на маленькие размеры, клавиатура достаточно удобна. Полного заряда литий - ионного аккумулятора хватает на 10 ч работы с КПК или такое же время разговора.
Жизненные задачи обычно не являются четко сформулированными. Поэтому, прежде чем обратиться к ЭВМ для решения задачи, задачу нужно четко сформулировать. Четкая формулировка задачи всегда основана на некоторых упрощающих предположениях, которые позволяют построить модель задачи, т. е. определить, что будет служить исходными данными, а что — результатом, и какова связь между исходными данными и результатом.
Для одной и той же задачи могут быть созданы разные модели, в зависимости от того, какие средства используются для ее создания, и какие предположения положены в ее основу.
Выбор исходных данных, описание результатов и соотношений в модели задачи зависят также от возможностей того, кто будет ее решать. Если задачу будет решать ЭВМ, «умеющая», например, только вычислять, то исходные данные и результаты должны быть представлены числами, а связи между ними — математическими соотношениями. Иначе говоря, нужно построить математическую модель задачи. Это означает — выделить предположения, на которых будет основана математическая модель; определить, что считать исходными данными и результатами; записать математические соотношения (формулы, уравнения, неравенства и так далее), связывающие результаты с исходными данными.
Если задача заменена ее моделью, то и ответ относится к модели и лишь опосредованно — к исходной задаче.
Созданием математической модели завершается первый этап решения задачи с помощью компьютера. Второй этап — составление алгоритма (четкой инструкции, строго указывающей необходимую последовательность действий).
ЭВМ могут выполнять алгоритмы без участия человека, автоматически. Но для этого нужно составить программу, т. е. записать алгоритм на одном из языков программирования.
Модель всегда основана на тех или иных упрощениях. Поэтому, проведя вычисления на ЭВМ, необходимо сопоставить результаты с экспериментальными фактами, теоретическими воззрениями и Другой информацией об изучаемом объекте. При этом может возникнуть необходимость уточнить математическую модель, полнее учитывая особенности изучаемого объекта. Уточнив модель, снова составляют алгоритм, проводят расчеты на ЭВМ и анализируют результаты, и так до тех пор, пока анализ результатов не покажет их приемлемое соответствие знаниям об изучаемом объекте. Проведение расчетов на ЭВМ и анализ результатов называется вычислительным экспериментом. Таким образом, в третий этап решения задачи с помощью компьютера помимо написания программы, входит вычислительный эксперимент.
Перевод задач на язык математики позволяет подключить для их решения мощные математические методы. Так, очень часто возникает задача изучения некоторой функции. Один из методов изучения функции с помощью ЭВМ — разбиение ее области определения на маленькие промежутки. При этом предполагают, что на каждом из отрезков функция постоянна и меняется «мгновенно» в конце каждого промежутка. Как правило, при измельчении отрезков разбиения нужная информация о функции может быть получена с любой точностью. Достоинство этого метода — в том, что вместо функции рассматривается конечное множество чисел.
История развитие ЭВМ
В развитии вычислительной техники можно выделить предысторию и четыре поколения электронных вычислительных машин. Впереди создание ЭВМ пятого поколения. Развитие ЭВМ, по-видимому, ярче всего отражает динамику научно-технического прогресса второй половины XX в.
Предыстория развития вычислительной техники начинается с глубокой древности. Одним из первых средств счета были китайские счеты (суан-пан), римские счеты (абак) и русские счеты, которые до сих пор пытаются конкурировать с современной вычислительной техникой.
Прошло много лет, прежде чем появилась первая счетная машина, которую в 1642 г. изобрел французский математик Влез Паскаль. Эта машина была построена на основе зубчатых колес и могла суммировать десятичные числа. Впечатление о «способностях» этой машины высказал сам Паскаль, который сказал, что «арифметическая машина производит действие, приближающееся к мысли больше, чем все, что делают животные».
Первую арифметическую машину, выполняющую все четыре арифметических действия, создал в 1673 г. немецкий математик Лейбниц. Эта арифметическая машина послужила прототипом арифмометров, которые начали производиться серийно с 1820 г. и использовались вплоть до 60-х годов XX в.
Одновременно с широким распространением арифмометров появилась идея создания универсальной программируемой счетной машины, выдвинутая в 1823 г. английским математиком Чарльзом Беббиджем. Задуманный им проект машины содержал все основные устройства вычислительных машин: память, арифметическое устройство и устройство управления, устройство ввода и устройство печати. Проект этой машины реализовывался 70 лет, но его воплощение так и не было - завершено. Однако вычислительные программы для этой машины были созданы! Их составила дочь Джона Байрона герцогиня Ада Лавлейс, которая по праву считается первой женщиной-программистом. В ее честь назван язык программирования Ада.
Из-за сложности и механического износа деталей проект Беббиджа, опережавший технические возможности своего времени, так и остался нереализованным. И только через 100 лет, в 40-х годах XX в., удалось создать программируемую счетную машину на основе электромеханических реле. Реле — это элемент, имеющий два рабочих состояния: «включено» и «выключено». Важно отметить, что при проектировании этих электромеханических счетных машин использовался аппарат математической логики.
Именно в 40-е годы начался бурный прогресс научных и технических новшеств в промышленности и вычислительной технике. Не успели начать серийно выпускать электромеханические счетные машины, как появились первые ЭВМ, в которых логические элементы были реализованы на основе радиоламп.
Первая электронная вычислительная машина «ЭНИАК» была создана в США после второй мировой войны, в 1946 г. В группу создателей действующей ЭВМ входил один из самых выдающихся ученых XX в.— Джон фон Нейман, который и предложил основные принципы построения и функционирования универсальных программируемых вычислительных машин. Именно в соответствии с его идеями современные ЭВМ состоят из процессора, арифметического устройства, устройств ввода-вывода и памяти для хранения данных и программ.
Одновременно над проектами электронных вычислительных машин работали в Англии, где первая универсальная ЭВМ появилась в 1949 г., и в СССР, где первая электронно-вычислительная машина, получившая название МЭСМ (малая электронно-счетная машина), была разработана в 1950 г., а первая советская большая ЭВМ -- БЭСМ появилась в 1952 г.
ЭВМ первого поколения изготовлялись на основе вакуумных электронных ламп. Эти ЭВМ размещались в нескольких больших металлических шкафах, занимавших целые залы и требовавших сложнейшей системы охлаждения. Работа на ЭВМ производилась за пультом, где можно было видеть состояние каждой ячейки памяти и любого регистра. Программы для ЭВМ первого поколения составлялись в машинных кодах — в виде длинных последовательностей двоичных чисел. Занимались этим исключительно математики, выполнявшие на ЭВМ сложнейшие расчеты.
Следующее, второе поколение ЭВМ появилось через 10 лет— -в 60-х годах. В этих ЭВМ логические элементы реализовывались уже не на радиолампах, а на базе полупроводниковых приборов-транзисторов. Это позволило значительно увеличить надежность машин, сократить их размеры и потребление электроэнергии. Тем самым открылся путь для серийного производства ЭВМ.
В составе ЭВМ второго поколения появились печатающие устройства для вывода, телетайпы для ввода и магнитные накопители для хранения информации. Диалог человека с ЭВМ стал более естественным благодаря появлению языков программирования высокого уровня, таких, как Фортран, Алгол, Бейсик и др. Начали создаваться первые автоматизированные системы, а базе ЭВМ.
Для появления третьего поколения ЭВМ вновь понадобилось всего лишь около 10 лет. Их основу составляли интегральные микросхемы, содержавшие на одной полупроводниковой пластинке сотни или тысячи транзисторов. Благодаря этому уменьшились размеры ЭВМ, потребление ими электроэнергии и стоимость компьютеров.
В состав ЭВМ третьего поколения были включены удобные устройства ввода-вывода и накопления, информации (дисплеи) на основе электронно-лучевых трубок, накопители на магнитных лентах и дисках, графопостроители и т. п. Количество компьютеров к этому времени достигло уже десятков и сотен тысяч. К работе с этими ЭВМ стал подключаться широкий круг специалистов: инженеры, техники. Вычислительные машины появились в университетах и институтах. Начали создаваться операционные системы, базы данных, языки структурного программирования, первые системы «искусственного интеллекта», стали внедряться системы автоматизированного проектирования и управления и т. п.
Для появления ЭВМ четвертого поколения вновь потребовалось 10 лет. Они были созданы и выпущены в массовое производство на рубеже 80-х годов. Элементной базой этих ЭВМ стали большие интегральные схемы (БИС), в которых на одном кристалле кремния размещаются уже десятки и сотни тысяч логических элементов. Такие интегральные схемы позволяют создавать на одном-единственном кристалле программируемые блоки управления различными устройствами. Малые габариты и слабые токи, необходимые для их работы, позволяют устанавливать эти процессоры в любое техническое изделие: в телевизоры, стиральные машины, автомобили и т. д. Тем самым открывается возможность создания принципиально новых, программно управляемых технических устройств.
Наиболее яркими представителями ЭВМ четвертого поколения служат персональные ЭВМ, габариты которых позволяют устанавливать их на любом рабочем месте. В состав этих ЭВМ включаются удобные средства накопления, ввода и предоставления информации: накопители на гибких магнитных дисках, цветные графические дисплеи, графические планшеты, компактные печатающие устройства.
Массовое распространение персональных ЭВМ изменило требования к программам. Главными из этих требований стали: простота . правил работы, эстетичность, надежность программ, универсальность их функций, простота обучения работе на ЭВМ. Десятки миллионов персональных ЭВМ, устанавливаемых в службах сервиса и управления, на производстве и в образовании, требуют овладения компьютерной грамотностью от всего взрослого населения, а также подготовки специалистов по созданию, развитию и применению ЭВМ.
Следующее, пятое поколение ЭВМ должно прийти на смену ЭВМ четвертого поколения еще до конца этого столетия. Элементной базой этих ЭВМ булут служить сверхбольшие интегральные схемы (СБИС), которые будут отличаться колоссальной плотностью размещения логических элементов на кристалле. Работа этих схем будет основана на принципах логического вывода, подобных принципам работы программ на языке Пролог. Главным же будет существенное увеличение электронной памяти в этих схемах, которая послужит базой для их «интеллекта». Предполагается, что широко распространится ввод информации в ЭВМ с голоса, общение с машиной на естественном языке, машинное зрение, машинное осязание, создание «интеллектуальных» роботов и робототехнических устройств.
Одной из главных проблем развития ЭВМ (как четвертого, так и перспективного пятого поколения) является проблема разработки программного обеспечения. Массовое использование ЭВМ по-новому ставит вопрос о разработке и эксплуатации программных средств. При сложившемся ныне кустарном производстве программ и предстоящем насыщении компьютерами общественного производства и жизни общества едва ли не все население Земли должно стать программистами, для того, чтобы обеспечить себя необходимыми программами.
Выходом из этого положения явится создание мощной индустрии информатики, которая возьмет на себя не только создание средств разработки программ, но и разработку пакетов прикладных программ. Эти разработки должны обеспечивать высокое качество и вестись примерно так же, как и выпуск промышленной продукции.
Достижения компьютерной техники
1. Универсальные настольные ПК
Что такое настольный компьютер, объяснять никому не надо — это любимое молодежью устройство, чтобы красиво набирать тексты рефератов, а также любые другие тексты, бланки и договоры; вести бухгалтерский учет; управлять финансами организации и работать с клиентской базой данных, а также делать различные расчеты, рисовать, слушать музыку и смотреть cyпep DVD- фильмы, обмениваться посланиями по электронной почте или прогуливаться по всемирной сети Интернет.
Обычный настольный персональный компьютер, или, как его называют на американско - компьютерном сленге, десктоп, состоит из системного блока, монитора, клавиатуры и мыши.
Самая важная часть компьютера — системный блок, содержащий процессор и оперативную память (memory), — сердце и мозг ПК, жесткий диск, или винчестер (HDD — hard disk drive), дисковод (FDD — floppy disk drive), CD-ROM и несколько так называемых портов (COM, LTP, USB — port) — плат, снабженных разъемами для присоединения к компьютеру дополнительных устройств: для печати — принтера, для связи с другими компьютерами — модема, для ввода изображений в компьютер — сканера и некоторых других устройств.
Оговоримся, что в целом мы будем говорить об IBM-совместимых компьютерах, которые в мировом масштабе используют большинство людей в практической деятельности. Их производят не только в США, но и в Европе, Азии фирмы-производители ПК, принявшие стандарт фирмы IBM. Именно для этих компьютеров используется операционная система Windows знаменитой фирмы Microsoft.
Однако существует и другой стандарт «Эппл» (Apple) — яблоко, на базе которого выпускаются компьютеры серии «Макинтош» (Macintosh). Для компьютеров этой группы существует свое «яблочное» программное обеспечение, в частности своя операционная система Mac OS X.
В чем принципиальная разница между IBM и Apple? Первая из них выбрала тактику открытой архитектуры (с продажей патентов). Любая фирма, приобретя патент, может наладить производство компьютеров по технологии IBM. Именно это и обеспечило широкое распространение компьютеров IBM.
Фирма Apple не продает свои патенты, поэтому компьютеры этой фирмы дороже и менее распространены, хотя наиболее известные компьютеры серии Macintosh гораздо удобнее, мощнее и надежнее, чем их аналоги IBM.
Наше учебное пособие посвящено в большей степени IBM PC, т.е. везде, где встретится слово «компьютер», мы будем подразумевать IBM-совместимый ПК, работающий с операционной системой Windows.
В практической деятельности важным моментом работы с компьютером является сохранение информации. Для этого помимо традиционных дискет и CD-дисков применяют не так давно появившиеся записываемые диски CD-R и CD-RW. Такие устройства сохраняют намного больше информации, чем дискеты. Однажды записанный диск CD-R перезаписать уже нельзя. Снять это ограничение призваны диски и накопители стандарта CD-RW (перезаписываемые диски) — устройство не очень дешевое, но полезное. Эти устройства для тех, кто собирается работать с большими объемами данных, такими, как графика и музыка.
Если же сохраняемая информация исчисляется в гигабайтах (трехмерная графика, видео), то 700 Мбайт CD-диска будет недостаточно. Недавно появился новый стандарт DVD, позволяющий записать полнометражный фильм. Такие устройства вмещают от 3 до 18 Гбайт ( с двусторонней записью). Существуют пишущие DVD-дисководы (DVD-R) и перезаписывающие — DVD-RW. Пока эти устройства достаточно дороги, но общая тенденция снижения цен на компьютерные новинки позволяет надеяться, что скоро они станут по карману и обычному пользователю.
Особенностью компьютеров последних моделей является наличие особых инфракрасных портов (IR — infra red), позволяющих подключать различные устройства без проводов. Такой порт общается с устройством, как телевизор со своим пультом дистанционного управления. Порт на основе радиопередатчика — другая разновидность такого дистанционного подключения.
Наличие ИК - порта привело к появлению беспроводных устройств: клавиатур, мышей. Распространены два типа таких устройств: «инфракрасный» и «радиоустройство». Недостатком первого можно считать необходимость постоянно видеть ИК - порт. Если случайно закрыть порт учебником, то инфракрасная мышка «умирает» — перестает шевелиться. Этого недостатка лишена радио мышь, общающаяся с компьютером посредством маленького радиопередатчика.
2. Блокнотные компьютеры
Все, кому нужен умный и мобильный помощник на каждый день на работе и дома, несомненно, выберут блокнотный (планшетный) ПК (notebook). Ноутбук — это полноценный переносной компьютер небольших габаритных размеров и малой массы (рис. 1.2).
Дисплеи с активной матрицей были до недавнего времени довольно дорогими — в среднем на тысячу долларов дороже, чем модели с двойным сканированием.
Ноутбуки последних моделей оснащаются SVGA- или XGA-мониторами на тонкопленочных транзисторах (TFT). Согласно спецификации корпорации Intel-Mobile Powеr Guidelines -99 стандартом становится 13,3-дюймовый экран с глубиной цвета 24 бит и разрешением 1024 Х 768 пикселов.
Последние модели ноутбуков укомплектованы процессорами Intel Pentium, Celeron, Athlon -Palomino; размер оперативной памяти колеблется в интервале 32...512 Мбайт; жесткий диск имеет емкость от 4 Гбайт; установлены накопители флоппи: CD-ROM, CD-RW, DVD; примерные габаритные размеры 300x250x40 мм; масса 2,5...4 кг; размер экрана — 15дюймов.
В зависимости от мультимедийных возможностей можно выделить мультимедийные и офисные ноутбуки. В блокнотных компьютерах возможна установка таких же операционных систем, как и в настольных ПК, — Windows-98, -2000, -Me, -XP.
Большинство ноутбуков используют ионно-литиевые (Li-Ion) или никель – металл – гидридные (NiMH) батареи. Время непрерывной работы батарей у этих компьютеров обычно два-три часа, но постоянное использование CD-ROM значительно сокращает этот срок.
Ничто так сильно не влияет на впечатление от ноутбука, как тип его указателя. Это может быть указательный рычажок («указка» или «ластик»), расположенный между клавишами G и Н. Другие компьютеры снабжены сенсорной панелью. Манипуляторов типа «ластик» становится все больше, так как его разработчик фирма IBM сейчас более свободно продает лицензию на эту технологию. Трекболы (мышка, перевернутая шариком под палец) — это уже динозавры среди подобных устройств.
Многие считают, что «ластик» намного проще в использовании, чем сенсорная панель, особенно для динамических игр. А те, кто не полностью доволен и «ластиком», обычно носят с собой стандартную мышь и пользуются ею, когда могут найти достаточно свободного места. То же самое происходит и с полноразмерной клавиатурой: по возможности многие используют ее вместо встроенной. Популярны следующие модели ноутбуков: Hewlett-Packard (модель Omnibook), IBM-TransNote (модель ThinkPad), K-Systems (модель SkyBook) и др.
3. Карманные ПК
Попытка сжать настольный компьютер до размеров плитки шоколада дала рождение новому классу компьютеров — карманным персональным компьютерам (КПК)
КПК имеет размеры электронной записной книжки и массу около 300г, операционную систему, подходящую для работы полноценного программного обеспечения — текстового редактора, табличного процессора, игр, баз данных, деловой графики. Компьютеры снабжены монохромным или цветным жидкокристаллическим экраном.
Имеется возможность подключения разнообразных внешних устройств, как традиционных (модем, принтер), так и специальных (сканер штрих-кода, сотовый телефон).
Через стандартный разъем или инфракрасный порт можно подключить КПК к настольному компьютеру для обмена данными в обоих направлениях. Данные из карманного компьютера можно перенести на настольный персональный компьютер в привычных форматах (Excel и Word).
Карманный компьютер способен работать от внутренних источников питания от 20 до 60 ч, его в любой момент можно извлечь из кармана, привести в готовность нажатием клавиши и сделать запись, отправить факс, принять E-mail.
Основными производителями КПК являются такие известные фирмы, как HP, Sony, Philips, Casio, LG, Compaq.
В поставку программного обеспечения к КПК входят программы:
• синхронизации, обеспечивающие перенос данных с настольного ПК на карманный и обратно через USB-порт, последовательный или ИК - порт, а также через карты расширения памяти;
• офисные, конвертирующие документы MS Word, реже Excel, в формат, пригодный для просмотра на КПК;
• почтовые, позволяющие просматривать почту, полученную непосредственно на карманный компьютер или перенесенную с настольного (обычно совместимы с MS Outlook);
• личные для обмена со стационарным персональным компьютером задачами, списком контактов и расписанием.
Основных операционных систем (ОС) для карманных компьютеров три — Palm OS, Microsoft Windows - CE и EPOC. Они имеют гораздо больше различий в требованиях к системным ресурсам, чем Windows, Linux и Mac OS, так что нельзя напрямую сравнивать объем памяти разных ручных компьютеров: иногда 8 Мбайт одной ОС позволяют запустить больше приложений, чем 16 Мбайт другой. Процессоры КПК имеют различную архитектуру, поэтому тактовая частота не полностью отображает соотношение их производительности.
По той же причине (различие архитектур) невозможно приравнять производительность КПК и настольных систем, однако применение голосового ввода в карманных компьютерах говорит о том, что их центральные процессоры достигли производительности как минимум процессора Pentium.
ОС Palm OS. Самые распространенные карманные компьютеры на сегодняшний день семейства Palm. Компания Palm сама делает операционную систему Palm OS жестко привязанной к процессору. Такой подход позволяет оптимизировать операционную систему и сократить требования к системным ресурсам.
Palm OS считается более устойчивой операционной системой, чем Windows СЕ, благодаря изначальной нацеленности на решение узкого круга задач по организации дня (календарь, заметки, будильник) и более тщательной отладке кода. Лицензии на использование своей ОС Palm продает сторонним компаниям, таким как Sony и TRG.
Создатели карманных компьютеров этих фирм одни из первых отказались от клавиатуры, заменив ее на перьевой ввод. Научиться быстро писать специальным пером на экране не так просто, но при должной сноровке это избавляет работу с карманным компьютером от главного недостатка — тыканья в крошечные кнопочки.
Отсутствие клавиатуры может испугать человека, никогда не вводившего информацию клинописью. Ввод данных на КПК без клавиатуры осуществляется с помощью стило (пера), которое обычно имеет форму цилиндра с резиновым наконечником. На сенсорном экране вводятся знаки Graffiti — стилизованные, сильно упрощенные буквы.
Для сравнения отметим, что у КПК под управлением Windows СЕ возможен ввод пером символов, гораздо больше похожих по форме на привычные нам печатные буквы, однако в результате скорость ввода ниже и чаще возникают ошибки в распознавании.
В секторе недорогих КПК Palm занимают одно из первых мест.
ОС Microsoft Windows СЕ. Компания Microsoft не стала создавать собственные устройства, как Palm, но предложила сторонним производителям КПК лицензировать у нее ОС, специально разработанную с учетом особенностей архитектуры и требований КПК. Тем не менее, операционная система получилась не такой «скромной», как Palm OS или EPOC 32, поэтому карманные компьютеры под ее управлением отличаются мощными процессорами и большими объемами внутренней памяти, а также немалыми габаритными размерами и массой.
Microsoft поддерживает две разновидности ОС: для машин с клавиатурным и с рукописным вводом. У первых разрешение экрана 640 Х 240 точек, у вторых — 240 Х 320.
В качестве достоинства КПК под управлением Windows СЕ можно назвать знакомый интерфейс, однако в версиях ОС для бесклавиатурных компьютеров это верно лишь отчасти.
Windows СЕ обладает большими мультимедийными возможностями. Кроме производительного процессора этому способствует возможность работы в многозадачном режиме: можно одновременно редактировать текст и слушать музыку.
ОС EPOC. Ранее под управлением EPOC компания Psion выпускала карманные компьютеры. Теперь она перешла на специализированные офисные решения, а операционная система стала называться Symbian. Карманные компьютеры Psion 5mx и более старшие модели Revo и Revo Plus отличаются нацеленностью на офисные приложения.
Операционная система Symbian получает распространение в КПК, сотовых телефонах и их гибридах — коммуникаторах.
По данным независимой европейской аналитической компании Canalys фирма Palm удерживает свое лидерство по продаже КПК (34%), несмотря на жестокую конкуренцию со стороны Compaq (14%). Активно наращивают свою долю рынка фирмы Nokia и Hewlett-Packard (по 9 %).
Что касается операционных систем для КПК, то Palm OS держит в Западной Европе 43 % рынка, Windows СЕ — 28 %, a Symbian — 14 %. Сейчас КПК все больше становятся не просто «умными» электронными записными книжками, но и устройствами для связи с внешним миром, в первую очередь через Интернет.
Модификации КПК с модемом позволяют подключиться к Интернету из любого места, где есть телефон. Выходить в Интернет с КПК через сотовый телефон можно почти на любых моделях всех производителей, и обычно для этого используется ИК - порт.
В 2000г., например, было продано 10 млн. карманных компьютеров, причем половина приходится на Америку. Хотя в России их распространение идет не такими масштабами, они уже достаточно популярны.
4. Компьютеры-телефоны
2001г. ознаменован появлением устройства, совмещающего в себе функции телефона и КПК. Первым комбинированным устройством был PdQ Smartphone компании Qualcomm (ныне Куосега), но это был слишком громоздкий и дорогой аппарат. Новый Smartphone компании Куосега выглядит как массивный сотовый телефон, вывернутый наизнанку. Этот телефон вполне полноценное Palm-устройство, работающее на ОС семейства Palm OS, с пером и стыковочным модулем HotSync.
Smartphone открыл новую эру устройств, призванных освободить пользователей от необходимости носить с собой сразу два аппарата: сотовый телефон и КПК. Некоторые из них будут сделаны по схеме «два в одном», другие превратятся из обычных КПК в комбинированные устройства с помощью дополнительного модуля.
Эти устройства достаточно удобны. Можно звонить по телефонам, занесенным в записную книжку, а также использовать все возможности карманных компьютеров. Если позволяет тарифный план, то можно работать с Интернетом. Телефон поддерживает протокол CDMA.
Владельцы карманных компьютеров Palm могут воспользоваться дополнительными модулями, чтобы получить функции телефона.
Компания Microsoft продемонстрировала прототипы мобильных телефонов (кодовое название Stinger) под управлением одного из вариантов ОС Windows СЕ. Они не будут оснащаться столь же мощными процессорами, как карманные компьютеры под управлением Windows СЕ, но экран будут иметь достаточно большой. Компания Samsung готовит аппараты для двух протоколов — CDMAhGSM.
CDMA-аппараты Neo Point-2000 и Neo Point - 2600 представляют собой телефоны с функциями КПК. Они имеют достаточно просторный 11-строчный экран и, несмотря на свою миниатюрность, обеспечивают работу с электронной почтой.
В середине 2001г. появились первые экземпляры Nokia-9210, сочетающего в себе функции КПК и сотового телефона. Устройство функционирует под управлением операционной системы Symbian. Открыв аппарат, можно обнаружить джойстик и клавиатуру с 60 клавишами. Несмотря на маленькие размеры, клавиатура достаточно удобна. Полного заряда литий - ионного аккумулятора хватает на 10 ч работы с КПК или такое же время разговора.