По теоретическому материалу 2 семестра

Вид материалаКонтрольные вопросы

Содержание


17.Языки программирования.
На начальном этапе
Транслятор превращает программу в исполняемый файл.
Трансляторы бывают двух типов
Назначение языков программирования.
Запись текста программы на языке программирования называют кодированием, а отладку программы - тестированием.
Языки программирования
Язык Бейсик
Подобный материал:
1   ...   6   7   8   9   10   11   12   13   14

17.Языки программирования.


Язык программирования - это формализованный язык описания алгоритмов, используемых для решения различных задач на компьютере.

На начальном этапе развития вычислительной техники программирование осуществлялось только в машинных командах. При программировании в машинных командах программист находится как бы на одном уровне с ПЭВМ: между его программой и реализующими ее техническими средствами ПЭВМ нет никаких посредников и программа выполняемся практически в том виде, в каком ее записал программист. Недостатки такого уровня программирования очевидны. Во-первых, программист должен не только в совершенстве знать систему команд ПЭВМ, уметь мыслить в " терминах" машинных функции, но и постоянно помнить, какие ячейки памяти и чем заняты. Во-вторых, такое программирование связано с большими трудозатратами.



Первой попыткой человека "подняться" над уровнем ПЭВМ в процессе программирования и избавить себя от необходимости работать с кодами команд и действительными адресами ячеек памяти стали языки ассемблера.

Основное отличие языка ассемблера от машинного языка заключается в использовании вместо двоичных кодов операций и адресов их символических обозначений.

Далее появились языки высокого уровня. Команды языка высокого уровня - слова естественного языка, что упрощает работу программиста.

Однако выполнить написанную программу на ПЭВМ в таком виде, как она написана, нельзя. Необходимо преобразовать ее на язык машинных кодов.

Чтобы вычислительная машина могла выполнить программу, написанную на каком-либо языке программирования, в её программном обеспечении должна быть программа - транслятор для этого языка.

Транслятор превращает программу в исполняемый файл.



Транслятор (англ. translator – переводчик) – это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд.

Трансляторы бывают двух типов:
  • интерпретаторы
  • компиляторы

Интерпретатор - переводит каждую команду программы с одновременным её выполнением и, если обнаруживает ошибку, сообщает о ней и прекращает выполнение программы.

Компилятор - переводит всю программу целиком и в конце работы выдаёт список ошибок, если они обнаружены.



Для ввода текстов в компьютер и их изменения используется программа, называемая редактором.

Редактору в принципе язык программирования незнаком, он воспринимает исходную программу как текст, который можно дополнять или изменять(то есть редактировать).

После создания текста программы она еще не может выполняться машиной.

Компилятор представляет собой большую программу, которая переводит исходный текст с языка высокого уровня на машинный язык, доступный компьютеру. Этот процесс называется компиляцией.

При компиляции проверяется правильность написания программы. Если ошибок нет, то программа может быть выполнена; в противном случае снова может быть выбран редактор.

Кроме ошибок выявляемых компилятором могут быть ошибки, выполняемые исполнительной системой. Тогда после запуска программы мы снова можем попасть в редактор. При этом как правило, имеется возможность использования специальных средств, помогающих выявить ошибки. Такая возможность обеспечивается программой, называемой отладчиком. Весь этот сервис, облегчающий получение программы на машинном языке, понятном компьютеру, носит название системы программирования.

Назначение языков программирования.

Программирование появилось задолго до появления не только первых персональных ЭВМ, но вообще ЭВМ. (Программы леди Ады Августы Лавлейс для разностной вычислительной машины Бэббиджа).

Языком программирования ЭВМ первого поколения был язык машинных кодов (язык низкого уровня). Во втором поколении появились языки высокого уровня. Команды языка высокого уровня - слова естественного языка, что упрощает работу программиста.

Запись текста программы на языке программирования называют кодированием, а отладку программы - тестированием.

Такая терминология более корректна, чем использование одного слова "программирование", в которое, в зависимости от контекста, включают либо проектирование, кодирование и тестирование вместе, либо кодирование и тестирование, либо просто кодирование.

Многообразие языков программирования отчасти объясняется многообразием задач, для решения которых создаются программы на этих языках.

В настоящее время в мире существует несколько сотен реально используемых языков программирования.

Можно выделить следующие уровни языков программирования:
  • машинные;
  • машинно-оpиентиpованные (ассемблеpы);
  • машинно-независимые (языки высокого уровня).

Языки высокого уровня делятся на:
  • процедурные (алгоритмические) (Basic, Pascal, C и др.), которые предназначены для однозначного описания алгоритмов; для решения задачи процедурные языки требуют в той или иной форме явно записать процедуру ее решения;
  • логические (Prolog, Lisp и др.), которые ориентированы не на разработку алгоритма решения задачи, а на систематическое и формализованное описание задачи с тем, чтобы решение следовало из составленного описания;
  • объектно-ориентированные (Object Pascal, C++, Java и др.), в основе которых лежит понятие объекта, сочетающего в себе данные и действия над нами.

Языки программирования

Язык C - это самый распространённый язык программирования. На нём написано больше программ, чем на любом другом. Подавляющее большинство профессиональных программистов владеют им. Исторически этот язык неотделим от операционной системы UNIX , которая в наши дни переживает своё второе рождение.60-е годы были эпохой становления операционных систем и языков программирования высокого уровня. Язык с самого начала создавался так, чтобы на нём можно было писать системные задачи. Разработчики языка - Кеннет Томсон и Деннис Ричи 1972 г.

Основные концепции языка Pascal были разработаны в 1967 г. профессором Николаусом Виртом, и он быстро превратился из средства для обучения студентов программированию в инструмент для создания новых программных проектов. Основные привлекательные черты Паскаля – логичность, поддержка концепций структурного и процедурного программирования, работа с динамической памятью, возможность создания своих типов данных. Строгая типизация данных позволяет резко снизить количество ошибок, появляющихся в программе вследствие невнимательности или опечаток.

Язык Бейсик (BASIC – Beginners All-purpose Symbolic Instruction Code – универсальный символьный код для начинающих) был создан в 1965 г. Дж. Кемени и Т. Курцем как язык, облегчающий написание простых программ.

Интерпретатор Basic был первым программным продуктом фирмы Microsoft, основанной Полом Аленом и Уильямом Гейтсом в 1975 году. В дальнейшем он не только поставлялся как программа, но и зашивался в ПЗУ компьютеров.

В середине 80 - годов фирма Microsoft разработала QuickBasic. Это был уже компилятор, а не интерпретатор. Вообще Basic’ов несколько сотен. После появления Windows и визуальных средств разработки программ был создан Visual Basic.

FORTRAN - старейший язык программирования. В начале 50-х годов он был разработан исследовательской группой под руководством Джона Бэкуса. Его название происходи от 2-х слов: FORMULA TRANSLATION. Первая версия системы FORTRAN для компьютера IBM была выпущена в начале 1957 г.

ALGOL – это также старейший язык программирования, универсальный язык программирования общего назначения. Его название происходи от 2-х слов: ALGORITMIC LANGUAGE. Он был разработан международной рабочей группой, состоящей из 30 человек в 1969 г. Язык очень стройный и изящный благодаря тому, что он основан на принципе ортогональности, согласно которому язык должен по возможности состоять из независимых элементов, свободно комбинирующихся друг с другом. Один из активных разработчиков ALGOL-68 - Чарльз Линдси.

ADA - язык программирования, который по сложности сравнивают с С++. Назван в честь леди Ады Августы Лавлейс, работавшей вместе с Чарльзом Беббиджем и разрабатывавшей программы для его «аналитической машины». Разработан язык группой под руководством в 1979 г. Жана Ишбиа в рамках конкурса, объявленного Министерством Обороны США. Мода на объектно-ориентированное программирование привела к созданию новой принципиально его версии ADA95.
ипиально его версии ADA95.