90.62K
Category: programmingprogramming

Языки программирования. Создание программ

1.

ЯЗЫКИ
ПРОГРАММИРОВАНИЯ
Курс лекций

2.

Создание программ
1.
2.
3.
4.
5.
6.
Понятие «Программа», «Программирование»
Свойства программ
Языки программирования
Транслятор, интерпретатор, компилятор
Процесс создания программ
Системы программирования

3.

Программа
Программа - это описание алгоритма и данных на
некотором языке программирования, предназначенное
для последующего автоматического выполнения.
«программа для ЭВМ - объективная форма
представления совокупности данных и команд,
предназначенных для функционирования ЭВМ и других
компьютерных устройств с целью получения
определенного результата»
/ Закон РФ от 23 сентября 1992 г. «О правовой
охране программ для электронных вычислительных
машин и баз данных» /

4.

Программирование
1.
2.
раздел информатики, изучающий методы и
приемы составления программ для
компьютеров;
теоретическая и практическая деятельность,
связанная с созданием программ.

5.

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

6.

Язык программирования
система обозначений, служащая для точного
описания программ или алгоритмов для ЭВМ.
Они относятся к искусственным языкам, и
отличаются от естественных ограниченным
числом «слов», а также очень строгими
правилами записи команд (операторов). В них
не допускается свободное толкование слов и
выражений, характерное для обычного языка.

7.

Основные требования, предъявляемые к
языкам программирования:
наглядность - использование в языке по возможности уже существующих
символов, хорошо известных и понятных как программистам, так и
пользователям ЭВМ
единство — использование одних и тех же символов для обозначения одних
и тех же или родственных понятий в разных частях алгоритма. Количество
этих символов должно быть по возможности минимальным
гибкость — возможность относительно удобного, несложного описания
распространенных приемов математических вычислений с помощью
имеющегося в языке ограниченного набора изобразительных средств
модульность — возможность описания сложных алгоритмов в виде
совокупности простых модулей, которые могут быть составлены отдельно и
использованы в различных алгоритмах
однозначность - недвусмысленность записи любого алгоритма (ее
отсутствие может привести к неправильным ответам при решении задач)

8.

Компоненты языка программирования
Алфавит — это фиксированный для данного языка набор
основных символов («букв алфавита»), из которых должен
состоять любой текст, написанный на нем (никакие другие
символы в тексте не допускаются).
Синтаксис — система правил, определяющих допустимые
конструкции языка программирования из букв алфавита.
Семантика определяет смысловое значение предложений
языка. Являясь системой правил истолкования отдельных
языковых конструкций, семантика устанавливает, какие
последовательности действий описываются теми или иными
фразами языка и, в конечном итоге, какой алгоритм определен
данным текстом на алгоритмическом языке.

9.

Языки программирования
машинные (самого низкого уровня)
машинно-ориентированные (ассемблеры)
машинно-независимые (высокого уровня)

10.

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

11.

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

12.

Компиляторы
Полностью обрабатывают весь текст программы, прежде чем
запускать ее на исполнение.
Просматривают текст программы в поисках синтаксических ошибок
(иногда несколько раз), выполняют определенный смысловой анализ
и затем автоматически генерируют машинный код.
При этом обычно выполняется оптимизация программы с помощью
набора методов, позволяющих повысить ее быстродействие.
Сгенерированный объектный код обрабатывается специальной
программой — сборщиком или редактором связей, который
производит связывание объектного и машинного кодов. Текст
программы преобразуется в готовый к исполнению ЕХЕфайл (исполнимый код), его можно сохранить в памяти компьютера
или на диске.

13.

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

14.

Системы программирования
Текстовый редактор (необходимый для создания и редактирования
исходного кода программы на языке программирования)
Компилятор
Редактор связей
Отладчик (позволяет анализировать работу программы во время ее
выполнения, выполнять программу по шагам)
Библиотеки функций (готовые подпрограммы, реализующие
стандартные функции - математические, логические и т.п.)
Справочная система.
English     Русский Rules