Развитие компьютерное техники и програмирования

Автор работы: Пользователь скрыл имя, 15 Ноября 2012 в 18:12, доклад

Описание работы

Однако широкое распространение вычислительные аппараты получили только в 1820 году, когда француз Чарльз Калмар изобрел машину, которая могла производить четыре основных арифметических действия. в России, Вильгодт Однер в 1880 году создал арифмометр, в котором использовалось переменное число зубцов.
Начало эры компьютеров в том виде, в котором они существуют сейчас, связано с именем английского математика Чарльза Бэббиджа, который в 30-х годах XIX века предложил идею вычислительной машины, осуществленную лишь в середине XX века. Бэббидж обратил внимание на то, что машина может без ошибок выполнять вычисление больших математических таблиц посредством простого повторения шагов. Работая над этой проблемой, в 1822 году Бэббидж предложил проект машины для решения дифференциальных уравнений.

Файлы: 1 файл

Презентация Microsoft PowerPoint (2).pptx

— 2.61 Мб (Скачать файл)

  
Без всякого преувеличения можно говорить о том, что исследования в области полупроводниковых технологий уже давно находятся на стыке предельных ограничений базовых наук – физики, химии, оптики и, конечно, электроники. Начиная с 2002 года инженеры Intel вели исследования в области так называемых 3D-транзисторов. Идея была проста – увеличить размер полупроводника, контактирующего с затвором, путем увеличения его высоты. Исследования показали, что у так называемых 3D-транзисторов практически отсутствуют токи утечки, благодаря чему улучшаются многие свойства как отдельных элементов, так и построенных на их базе процессоров.   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

А что представляют сейчас сами пк?

Сейчас существуют различные  интересные модели ПК от обычных систем до очень небычных. 
Человеческая мысль не стоит на месте и появляются  новые гениальные идеи, о которых  раньше и не мечтали лет 30-40 назад это назвали бы чудом. 
 
 
Например сейчас существует вот такая интересная модель 
большой сюрприз поджидает неподготовленного пользователя при открытии крышки: у неё напрочь отсутствует клавиатура, вместо нее расположен второй интерактивный сенсорный экран .  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Естественно вместе с компьютерными  системами развиваются и системы  программирования если раньше программировали  перфокартами то сегодня

  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Современные языки программирования старше Интернета, Windows и персонального компьютера минимум на десятилетие. При этом новые языки не переставали регулярно появляться, однако ни один из них не задержался в практике программирования, хотя приносимые ими новые идеи дополняли уже известные языки (как это произошло с объектно-ориентированным программированием). 
 
Наконец, появление персонального компьютера и ОС с графическим интерфейсом (прежде всего MacOS и Windows) переместило внимание разработчиков программного обеспечения из сферы языков программирования в другие области средств разработки ПО, такие, как визуальное или объектно-ориентированное программирование, сетевые протоколы или модели баз данных. Программист сегодня использует в качестве инструмента не столько язык, сколько конкретную систему программирования (например, Delphi), а какой язык является для нее базовым, не так уж важно. 
Итак, интерес к языкам программирования снизился, а круг используемых языков стабилизировался. В некотором смысле можно считать, что в области языков программирования “все сказано”, и развитие средств разработки ПО пойдет дальше другими путями. Наступил удачный момент для анализа современных языков программирования и выяснения достигнутых практических результатов.  
 Компиляторы с общей семантической базой 
Создание (а точнее – описание) единой семантической базы современных языков программирования даст уникальную возможность создания “универсального” компилятора, который мог бы работать с любым существующим языком, имеющим общую с другими семантическую базу. 
Общая семантика позволит иметь единый семантический анализатор и единый генератор кода, общий для всех используемых языков. Синтаксический анализатор так же можно сделать универсальным, поскольку синтаксис любого языка можно формально описать с помощью формул БНФ. Лексика же всех современных языков практически идентична (например, правила записи числовых и строковых констант в таких разных языках, как Си и Паскаль, совпадают практически полностью). 
Наличие общей семантической базы сделает тривиальным перевод с одного языка программирования на другой, поскольку перевод будет касаться только внешнего вида программы, а не ее содержания. 
На базе универсального компилятора может быть создана многоязыковая интегрированная среда разработки программ, в которой, в качестве внутреннего представления программ, будет использоваться не текст (как сейчас), а семантические конструкции. В такой среде понятие языка разработки превратится в условность, поскольку переключение с одного языка на другой можно осуществить в любой момент выбором соответствующего пункта меню. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Язык будущего 
Выше было показано, что современные языки программирования похожи друг на друга: каждый из них содержит конструкции (операторы, типы данных и другие), имеющие аналоги в других языках программирования. В то же время идентичность языков далеко не полная. Каждый из них содержит конструкции, присущие только ему (даже похожих конструкций в других языках не наблюдается). 
существует общая для всех современных языков семантическая зона, в которую входят конструкции, принадлежащие всем (или большинству) языков программирования. Таким образом, семантику каждого языка программирования можно условно поделить на "область пересечения" (общие для всех языков конструкции) и "область объединения" (специфические для данного языка конструкции). Создание входного языка для многоязыкового компилятора можно произвести двумя различными способами: 
1.Использовать только общие конструкции (область пересечения), отбросив все "особенные" конструкции языков, как не необходимые. Это приведет к усечению всех участвующих в работе языков программирования. 
2.Использовать все имеющиеся в языках конструкции (область объединения). В этом случае каждый из языков должен быть дополнен конструкциями, имеющимися в других языках программирования. Этот подход чреват чрезмерным расширением семантической базы. 
Разумеется, в чистом виде ни один из этих подходов применяться не должен, но тем не менее более правильным представляется первый вариант, поскольку в "области пересечения" содержится исторически наработанный необходимый минимум семантических конструкций. 
Структурный редактор 
Стандартизация семантики языков программирования помимо возможности создания многоязычных компиляторов открывает и другие, не менее впечатляющие перспективы перед разработчиками компиляторов. В частности, можно (наконец !) уйти от текста при создании программ, заменив текстовый редактор структурным. Прежде всего, почему необходимо отказаться от представления программ в виде текстов? 
Язык программирования - не есть человеческий язык. 
При создании первых языков программирования считалось, что недалек тот день, когда понятие "язык программирования" исчезнет, и программист сможет писать программы на человеческом (например, английском) языке. Создатели некоторых языков программирования (например, Кобола), пытались предвосхитить это событие, сделав свой язык максимально похожим на человеческий. Так, в Коболе оператор присваивания, который в Си выглядит как a=2;выглядит (в русской транскрипции), как ПЕРЕМЕННОЙ a ПРИСВОИТЬ 2.  
Другой пример: область "искусственного интеллекта" - так называемые "экспертные системы", которые в качестве составной части включают в себя блок распознавания предложений человеческого языка. 
Тем не менее, сегодня уже можно считать, что попытки научить компьютер понимать человеческий язык окончились неудачей. Даже такая формальная процедура, как перевод с одного языка на другой, выполняется компьютером неудовлетворительно и требует постоянного вмешательства человека. 

  
 
 
Наконец, описание единой семантики современных языков программирования есть ни что иное, как описание “идеального” (или, если угодно, “универсального”) языка программирования, на создание которого потрачено столько сил, времени и средств в прошлом. Достаточно вспомнить проект IBM по созданию PL/1 или последний по времени проект Министерства Обороны США по созданию языка Ада. Амбициозные проекты потерпели неудачу, а искомый “универсальный” язык тем временем образовался сам по себе без каких-либо организационных усилий и финансовых вложений. 
Программа - не текст, а набор конструкций 
С точки зрения компьютера программа вовсе не является текстом. Программа - набор операторов, описаний типов, процедур и так далее. Каждая конструкция имеет свою точно определенную семантику. Все остальное в языке программирования - синтаксис, лексика - только способ показать компилятору, из каких семантических конструкций состоит программа. Ошибки периода компиляции - не что иное, как момент непонимания между компилятором и программистом. Компилятор как - бы просит программиста объяснить, что тот имел в виду. Именно поэтому текст - не самый оптимальный способ представления программ: он неоднозначен, и позволяет каждую конструкцию записывать многими разными способами. Как только семантика языка программирования будет четко определена, появляется возможность отказаться от текста в качестве инструмента ввода программ; текстовый редактор в этом случае уступит место структурному редактору, позволяющему вводить сразу готовые структуры (операторы, типы данных). Например, ввод цикла forможет выглядеть, как заполнение диалоговой формы, содержащей поля для счетчика цикла, начального значения, конечного значения, и списка операторов: 
Преимущества структурного редактора 
Переход на структурный редактор и отказ от текста даст много преимуществ по сравнению с традиционными системами. Полностью (или почти полностью) исчезнут ошибки периода компиляции; скорость компиляции возрастет в несколько раз. Более того, при таком подходе станет возможна online-компиляция программы (код оператора создается прямо в момент его ввода, а создание exe-файла будет просто компоновкой уже откомпилированых частей). 
Важной особенностью системы со структурным редактором станет нивеляция понятия "язык программирования". При наличии достаточно широкой семантической базы (включающей в себя, помимо "области пересечения" языков так же существенную часть "области объединения"), переход с одного языка программирования на другой будет происходить простым переключением соответствующего параметра в настройках - ведь внутреннее представление программы от этого не меняется, меняется только внешний вид. 

Псевдотекст  
Безусловно, переход на структурный редактор сулит много преимуществ как для программистов, так и для разработчиков компиляторов. Однако полностью отказаться от текста при разработке программ сразу невозможно как по психологическим причинам (программисты привыкли к тексту), так и по соображениям совместимости (в текстовом виде накоплен огромный банк программ). Поэтому создаваемые системы, включающие в себя структурный редактор, должны уметь работать с текстом как минимум в двух случаях: 
1.Они должны уметь осуществлять импорт и экспорт фрагментов программ в/из текст. 
2.Внешний вид программы на экране компьютера и в распечатках должен выглядеть, как привычный текст на каком-либо традиционном языке программирования. Разумеется, должны быть доступны и основные операции работы с текстом (главным образом, работа с блоками). 

Компьютеры будущего какие  они?

Как я уже выше говорил  компьютеры находятся на четвёртом  поколении. 
А каким будет пятое поколение компьютеров? 
Какими должны быть компьютеры V поколения  
Сейчас ведутся интенсивные разработки ЭВМ V поколения. Разработка последующих поколений компьютеров производится на основе больших интегральных схем повышенной степени интеграции, использования оптоэлектронных принципов (лазеры, голография). 
Ставятся совершенно другие задачи, нежели при разработки всех прежних ЭВМ. Если перед разработчиками ЭВМ с I по IV поколений стояли такие задачи, как увеличение производительности в области числовых расчётов, достижение большой ёмкости памяти, то основной задачей разработчиков ЭВМ V поколения является создание искусственного интеллекта машины (возможность делать логические выводы из представленных фактов), развитие "интеллектуализации" компьютеров - устранения барьера между человеком и компьютером. Компьютеры будут способны воспринимать информацию с рукописного или печатного текста, с бланков, с человеческого голоса, узнавать пользователя по голосу, осуществлять перевод с одного языка на другой. Это позволит общаться с ЭВМ всем пользователям, даже тем, кто не обладает специальных знаний в этой области. ЭВМ будет помощником человеку во всех областях. 

Так существует ли компьютер  пятого поколения?

Возможно это …

Я уверен что люди создадут компьютер 5 и 6 поколения ведь человеческая мысль не стоит на месте, ведь раньше не могли и мечтать  о том что есть сейчас лет через 20 всё воплотится в реальность.


Информация о работе Развитие компьютерное техники и програмирования