Языки программирования. Классификация языков программирования
Язык программирования — искусственный язык со строго определенными синтаксисом и семантикой, служащий для описания алгоритма решения задачи на компьютере. Синтаксис языка — совокупность правил, определяющих допустимые конструкции (слова, предложения) языка. Семантика языка — совокупность правил, определяющих значения (смысл) конструкций языка, составленных в соответствии с синтаксическими правилами этого языка. Языки программирования в общем случае подразделяются: ■ на машинные, воспринимаемые аппаратной частью компьютера (машинные коды); ■ машинно-ориентированные, структура операторов которых определяется форматами команд конкретной ЭВМ (мнемокоды, автокоды, язык ассемблера); ■ процедурно-ориентированные, имеющие возможность описания программы как совокупности процедур (подпрограмм) (Фортран, Бейсик, Паскаль и др.); ■ объектно-ориентированные, базирующиеся на объектной декомпозиции предметной области программы (Delphi, Visual Си++, Visual Basic и др.); ■ проблемно-ориентированные, предназначенные для решения задач определенного класса, например задач искусственного интеллекта (Пролог, Лисп и др.). В представленной классификации машинные и машинно-ориентированные языки относятся к языкам программирования низкого уровня, остальные считаются языками программирования высокого уровня. 33. Языки программирования. Трансляторы программ. Компиляция и интерпретация программ. Язык программирования — искусственный язык со строго определенными синтаксисом и семантикой, служащий для описания алгоритма решения задачи на компьютере. Использование языков программирования высокого уровня позволяет значительно упростить написание программ, ускорить их отладку. При этом любая программа, подготовленная на языке программирования высокого уровня, должна быть преобразована в машинную программу, воспринимаемую аппаратной частью компьютера (состоящую из машинных команд). Для этих целей служат специальные программы-трансляторы (англ. translator — переводчик). Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются. Компилятор (англ. compiler — составитель) формирует полный текст программы в машинных кодах, лишь после этого она может быть выполнена. Интерпретатор (англ. interpreter — истолкователь) последовательно преобразует каждый отдельный оператор входной программы в машинный код и сразу его выполняет. После того как программа откомпилирована, ни сама исходная программа, ни компилятор более не нужны. В то же время программа, обрабатываемая интерпретатором, должна заново переводиться на машинный язык при каждом очередном запуске программы. Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять.
|