ЯЗЫКИ ПРОГРАММИРОВАНИЯ. ОБЩАЯ ХАРАКТЕРИСТИКА.

Языки программирования являются искусственными языками, специально созданными для общения человека с ЭВМ. Языки программирования представляют собой системы обозначений, предназначенные для точного описания программ или алгоритмов для ЭВМ. Языки программирования, также как и естественные языки (русский, английский и т.д.), имеют алфавит, синтаксис и семантику. Алфавит - фиксированный для данного языка упорядоченный набор знаков, принятый для составления текста программы на этом языке. Синтаксис – система правил, определяющих допустимые конструкции языка программирования из знаков алфавита. Семантика – система правил, определяющих однозначный смысл языковых конструкций. Синтаксис и семантика языков программирования строго определены. Поэтому они при правильном применении не допускают свободного толкования, характерного для естественных языков.

Языки программирования можно разделить на машинно-ориентированные языки низкого уровня (ассемблеры) и машинно-независимые языки высокого уровня (Фортран, Паскаль, Си и др.).

Ассемблеры представляют собой системы обозначений, предназначенные для точного описания программ или алгоритмов для ЭВМ, написанных в машинном коде (т.е. написанных символами 0, 1). При этом комбинации единиц и нулей, выражающие машинные команды, заменяются обозначениями, представляющими собой аббревиатуры английских слов. Например: ADD – сложить, SUB – вычесть, MUL – умножить, DIV – разделить и т. п. Предположим, что машинная команда, написанная на двоичном машинном коде 1011 1010 1001 , приводит к тому, что содержимое ячейки памяти A складывается с содержимым ячейки памяти B и результат заносится в ячейку памяти A. На языке ассемблера этот машинный код можно заменить строкой обозначений: ADD A D . Такая запись для программиста удобней, чем запись на машинном коде, но ее не поймет центральный процессор, который понимает только двоичный машинный код. Поэтому программы, написанные на ассемблере, надо переводить (транслировать) обратно в двоичный машинный код. Это делает специальная программа, которая также называется ассемблер. Таким образом, термин ассемблер может означать язык программирования и программу транслятор. Ассемблеры позволяют организовать обмен содержимым между ячейками памяти, элементарные арифметические и логические операции.

Языки высокого уровня рассмотрим на примере языка Си, широко применяемому в настоящее время для создания системного и прикладного программного обеспечения, в том числе программного обеспечения робототехнических и мехатронных систем.