Similar presentations:
Языки программирования. Создание программ
1.
ЯЗЫКИПРОГРАММИРОВАНИЯ
Курс лекций
2.
Создание программ1.
2.
3.
4.
5.
6.
Понятие «Программа», «Программирование»
Свойства программ
Языки программирования
Транслятор, интерпретатор, компилятор
Процесс создания программ
Системы программирования
3.
ПрограммаПрограмма - это описание алгоритма и данных на
некотором языке программирования, предназначенное
для последующего автоматического выполнения.
«программа для ЭВМ - объективная форма
представления совокупности данных и команд,
предназначенных для функционирования ЭВМ и других
компьютерных устройств с целью получения
определенного результата»
/ Закон РФ от 23 сентября 1992 г. «О правовой
охране программ для электронных вычислительных
машин и баз данных» /
4.
Программирование1.
2.
раздел информатики, изучающий методы и
приемы составления программ для
компьютеров;
теоретическая и практическая деятельность,
связанная с созданием программ.
5.
Свойства программВыполнимость - возможность выполнения
программы на данном типе компьютеров.
Мобильность - возможность переноса
программы на другой тип компьютеров.
Правильность программы - правильность
результатов, получаемых с помощью данной
программы.
Эффективность - минимум времени
выполнения, минимум машинной памяти и
других ресурсов компьютера.
6.
Язык программированиясистема обозначений, служащая для точного
описания программ или алгоритмов для ЭВМ.
Они относятся к искусственным языкам, и
отличаются от естественных ограниченным
числом «слов», а также очень строгими
правилами записи команд (операторов). В них
не допускается свободное толкование слов и
выражений, характерное для обычного языка.
7.
Основные требования, предъявляемые кязыкам программирования:
наглядность - использование в языке по возможности уже существующих
символов, хорошо известных и понятных как программистам, так и
пользователям ЭВМ
единство — использование одних и тех же символов для обозначения одних
и тех же или родственных понятий в разных частях алгоритма. Количество
этих символов должно быть по возможности минимальным
гибкость — возможность относительно удобного, несложного описания
распространенных приемов математических вычислений с помощью
имеющегося в языке ограниченного набора изобразительных средств
модульность — возможность описания сложных алгоритмов в виде
совокупности простых модулей, которые могут быть составлены отдельно и
использованы в различных алгоритмах
однозначность - недвусмысленность записи любого алгоритма (ее
отсутствие может привести к неправильным ответам при решении задач)
8.
Компоненты языка программированияАлфавит — это фиксированный для данного языка набор
основных символов («букв алфавита»), из которых должен
состоять любой текст, написанный на нем (никакие другие
символы в тексте не допускаются).
Синтаксис — система правил, определяющих допустимые
конструкции языка программирования из букв алфавита.
Семантика определяет смысловое значение предложений
языка. Являясь системой правил истолкования отдельных
языковых конструкций, семантика устанавливает, какие
последовательности действий описываются теми или иными
фразами языка и, в конечном итоге, какой алгоритм определен
данным текстом на алгоритмическом языке.
9.
Языки программированиямашинные (самого низкого уровня)
машинно-ориентированные (ассемблеры)
машинно-независимые (высокого уровня)
10.
ТрансляторПеревод программы с алгоритмического языка на машинный
осуществляется с помощью специальной программы —
транслятора.
В трансляторах заложены все правила алгоритмического языка
и способы преобразования его различных конструкций на
машинный язык.
В процессе трансляции текст программы одновременно
проверяется на ошибки.
Существуют два типа трансляторов: компиляторы и
интерпретаторы.
11.
ИнтерпретаторБерет очередной оператор языка из текста программы,
анализирует его структуру и затем сразу исполняет.
Только после того как текущий оператор успешно выполнен,
интерпретатор перейдет к следующему. При этом, если один и
тот же оператор должен выполняться в программе
многократно, интерпретатор всякий раз будет выполнять его
так, как будто встретил впервые.
Программы, в которых требуется осуществить большой объем
повторяющихся вычислений, могут работать довольно
медленно. Кроме того, для выполнения такой программы на
другом компьютере также должен быть установлен
интерпретатор — ведь без него текст программы является для
машины ничего не значащим набором символов.
12.
КомпиляторыПолностью обрабатывают весь текст программы, прежде чем
запускать ее на исполнение.
Просматривают текст программы в поисках синтаксических ошибок
(иногда несколько раз), выполняют определенный смысловой анализ
и затем автоматически генерируют машинный код.
При этом обычно выполняется оптимизация программы с помощью
набора методов, позволяющих повысить ее быстродействие.
Сгенерированный объектный код обрабатывается специальной
программой — сборщиком или редактором связей, который
производит связывание объектного и машинного кодов. Текст
программы преобразуется в готовый к исполнению ЕХЕфайл (исполнимый код), его можно сохранить в памяти компьютера
или на диске.
13.
Процесс создания программыоставление исходного кода программы на
языке программирования
этап трансляции, необходимый для создания
объектного кода программы
построение загрузочного модуля, готового к
исполнению.
14.
Системы программированияТекстовый редактор (необходимый для создания и редактирования
исходного кода программы на языке программирования)
Компилятор
Редактор связей
Отладчик (позволяет анализировать работу программы во время ее
выполнения, выполнять программу по шагам)
Библиотеки функций (готовые подпрограммы, реализующие
стандартные функции - математические, логические и т.п.)
Справочная система.