Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмы и языки.doc
Скачиваний:
13
Добавлен:
26.08.2019
Размер:
321.54 Кб
Скачать

Классификация языков программирования

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

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

Все языки программирования делятся на машинно-зависимые и машинно-независимые.

Машинно-зависимые языки зависят от типа компьютера. Каждый компьютер имеет свой собственный язык программирования – машинный язык – и может исполнять программы, записанные только на этом языке. Машинный язык включает в себя набор команд, выполняемых процессором данной конкретной машины. Команды на машинном языке представляют собой набор двоичных знаков.

Программирование на машинном языке сложно и практически не используется. Для упрощения программирования используются машинно-ориентированные языки. Различают два уровня машинно-ориентированных языков:

  • языки символического кодирования (мнемокоды);

  • макроязыки.

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

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

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

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

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

При программировании на процедурно-ориентированных языках не требуется детального знания устройства компьютера. Наиболее широко используемыми процедурно-ориентированными языками высокого уровня являются БЭЙСИК, ПАСКАЛЬ, СИ.

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

13