Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Урок_1рус.doc
Скачиваний:
5
Добавлен:
06.09.2019
Размер:
1.15 Mб
Скачать

6. Информационно-дидактический блок Краткая теория Транслятор, компилятор, интерпретатор

Программы, написанные на языке программирования, в компьютере должны обязательно проходить процесс преобразования или трансляции. Осуществляется это с помщью специальных программ (трансляторов).

Транслятор (англ. translator - переводчик) – это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд.

Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.

Компилятор (англ. compiler – составитель, собиратель) читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется (файл с расширением .ЕХЕ).

Интерпретатор (англ. interpreter – истолкователь, устный переводчик) переводит и выполняет программу строка за строкой.

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

Turbo Pascal ориентирован либо на компиляцию, либо на интерпретацию. Для разработки тестирования программы можно воспользоваться интерпретатором, а затем откомпилировать, а затем откомпилировать отлаженную программу, чтобы повысить скорость ее выполнения.

Исторические сведения о языке «Паскаль»

Язык программирования Паскаль получил свое название в честь великого французского математика и физика Блеза Паскаля, который в 1642 году изобрел машину для арифметических операций, так называемое «паскалево колесо». В конце 1968 г. профессор Никлаус Вирт и его сотрудники из швейцарского федерального института технологии в Цюрихе разработали первую версию языка Паскаль. Спустя два года – первый вариант компилятора. В 1971 г. Н.Вирт выпустил описание языка.

Создавая Паскаль Никлаус Вирт преследовал две цели:

  • во-первых, разработать язык пригодный для обучения программированию как систематической дисциплины;

  • во-вторых, реализация языка должна быть эффективной и надежной.

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

Запуск языка «Паскаль»

Запуск интегрированной среды версии компилятора Borland Pascal 7.0, которая работает в защищенной режиме DOS, осуществляется следующим образом:

а) если среда программирования инсталлирована в системе Windows:

ПускПрограммы→ Borland Pascal→ BP(Borland Pascal)

б) если среда программирования не инсталлирована в системе Windows или вы работаете в системе DOS:

Активировать каталог, где находится программа BP.exe. Выделить ее и нажать клавишу Enter.

Интерфейс программы

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

К нопка, закрывающая окно программы. Стрелка для увеличения размера окна

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

File

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

Edit

Позволяет выполнять все основные операции редактирования текста (копировать, восстанавливать, удалять фрагменты текста, а так же восстанавливать первоначальный вариант редактируемого текста)

Search

Позволяет осуществлять поиск фрагментов текста и при необходимости производить замену найденного фрагмента новым

Run

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

Compile

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

Debug

Содержит команды, облегчающие процесс поиска оши­бок в программе

Tools

Позволяет выполнять некоторые программы, не выходя из Среды Турбо Паскаля

Options

Позволяет установить необходимые для работы пара­метры компилятора и самой среды

Windows

Позволяет выполнять все основные операции с окнами (открывать, закрывать, перемещать, изменять размер)

Help

Позволяет получить имеющуюся в системе справочную информацию. Необходимое подчиненное меню активизируется (открывается)

Для перехода в верхнее меню нужно нажать клавишу F10.

Выйти из подчиненного меню можно, нажав клавишу [ESC].

Выход из Турбо-среды осуществляется нажатием Alt+X.

Удобным способом создания новых программ является модификация ранее созданных. Основной формой хранения текста программы являются файлы. Для этого необходимо научиться записывать программы в файлы, читать из файлов и т. д. Для этого необходимо пользоваться опциями подменю File:

New 

Новый файл

Очищает память редактора и переводит его в режим создания нового файла. Вновь создаваемому файлу присваивается имя NONAME.PAS, которое можно изменить при записи файла на диск

Open 

F3

Читать файл 

На экране появится окно со списком файлов. В нем можно выбрать необходимый файл, который загружается в память редактора Турбо-Паскаль и таким образом делает его доступным для возможных изменений, а также прогона или отладки программы

Save 

F2 Сохранить файл

Переписывает файл из памяти редактора на диск. Файл записывается под своим именем, однако, если к этому моменту имя файла было NONAME.PAS, среда запросит, хотите ли Вы его переименовать. Опцию можно вызвать из режима редактирования с помощью клавиши F2

Save as 

Сохранить с новым именем

 

Переименовывает редактируемый файл и записывает его на диск под новым именем

Save all 

Сохранить все в окнах

Записывает содержимое всех окон редактора в соответствующие дисковые файлы

Change dir 

Смена каталога

Позволяет изменить установленный по умолчанию диск и/или каталог

Print/Print setup...

Печать файла

Позволяет напечатать файл на принтере

DOS shell 

Выход в DOS

Позволяет временно выйти из Турбо-Паскаля без выгрузки его из памяти. После такого выхода вы получаете доступ ко всем командам операционной системы DOS. Для возврата в Турбо-Паскаль достаточно ввести команду EXIT, и экран тотчас же окажется в том состоянии, которое было перед вызовом этой опции

Exit 

Alt-X Выход

Осуществляет выход из Турбо-Паскаля и выгрузку его из памяти. Эту опцию можно вызвать непосредственно из режима редактирования с помощью комбинации ALT+X

Текстовый редактор

Ввод программы в компьютер представляет собой ввод текста в компьютер. При наборе текста программы полезно пользоваться следующими «горячими» клавишами:

Ins (Ctrl+V)

изменение режима «Вставка/Замена»

Del

удаление символа над курсором

BackSpase

удаление символа перед курсором

Home/ End

перенос курсора в начало/конец текущей строки

PgUp/PgDn (Ctrl+R/C)

перенос курсора на предыдущую/следующую страницу файла (программы)

Ctrl+PgUp/PgDn

перенос курсора в начало/конец файла

Ctrl+ Home/ End

перенос курсора в начало/конец экрана

Left/ Right

перенос курсора на один символ влево/вправо

Ctrl+ Left/ Right

перенос курсора на одно слово влево/вправо

Ctrl+W/Z

экран сдвигается вверх/вниз по тексту (при этом курсор неподвижен)

Shift+Left/ Right

выделение символов слева/справа от текущего символа

Shift +Up/Dn

выделение строк вниз/вверх от текущей строки

Ctrl+Y

удаление текущей строки

Alt+ BackSpase

восстановление удаленной информации

Ctrl+T

удаление слова справа от курсора

Ctrl+Q+Y

удаление части строки от курсора до конца строки

Ctrl+N

вставка строки

Ctrl+Ins

копирование выделенного блока в буфер обмена

Shift+Ins

вставка информации из буфера обмена

Shift+ Del

перенос выделенного блока в буфер обмена (удаление с сохранением в памяти)

Ctrl+ Del

полное удаление выделенного блока

F5/F6

перемещение по открытым окнам с программами

Alt+ F3

закрытие текущего окна

F5

развернуть окно на весь экран

Ctrl-F2

удаление голубой полосы

Ctrl+F8

удаление красной полосы

Выполнение программы

Турбо-Паскаль позволяет выводить на экран несколько окон с программами одновременно. Выполнять можно программу, которая находится в активном (текущем) окне. Признак активного окна — двой­ная рамка вокруг него.

Для выполнения программы надо выйти в меню и в пункте Run выполнить команду Run (или одновременно нажать клавиши Ctrl + F9. Система сначала запускает транслятор (интерпретатор), который переводит программу с Паскаля на язык машинных кодов и ищет синтаксические ошибки в программе. Если ошибки найдены, то программа не будет выполняться, произойдет возврат в редактор. Поверх текста программы появляется красная строка с сообщением об ошибке. После нажатия Esc окно исчезает, курсор устанавливается в строку с ошибкой. Для получения информации об ошибке надо нажать Ctrl+F1.

Когда все ошибки исправлены, программа начинает выполняться. Просмотреть результаты работы можно, нажав Alt+F5 (выводится окно пользователя). Возврат обратно в окно редактора – нажатие любой клавиши.

Прерывание работы «зацикленной» программы - Ctrl +Break.

Основные понятия:

алфавит Turbo Pascal:

  • латинские буквы от A до Z

  • арабские цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

  • знаки препинания . , : ; ..

  • знаки арифметических операций + – * /

  • знаки логических операций > < = >= <= <>

  • специальные символы ( ) { } [ ] ' := (* *)

Основные элементы Паскаля:

Идентификатор – последовательность латинских букв, арабских цифр, знаков подчёркивания. Начинается с латинской буквы. Длина до 127 символов. Используется в качестве имён переменных, меток, программ и подпрограмм. Нельзя в качестве идентификаторов использовать зарезервированные слова.

Зарезервированные слова – слова, используемые в операторах, названиях операций, функций и т. п. Всего их около 80. Например, begin, sin, while.

Константы – это величины, которые не могут менять своего значения в процессе выполнения программы.

В качестве констант могут использоваться числа, логические константы, символы и строки символов.

Целые числа записываются со знаком или без него по обычным правилам и могут иметь значение от –2147483648 до +2147483647.

Вещественные числа записываются со знаком или без него с использованием десятичной точки и/или экспоненциальной части. Экспоненциальная часть начинается символом е или Е, за которым могут следовать знаки «+» или «-» и десятичный порядок. Символ е (Е) означает десятичный порядок и смысл «умножить на 10 в степени». Например, запись 3.14Е5 означает 3,14 × 105 ,а запись -17е-2 – это -17× 10-2.

Логическая константа – это либо слово FALSE (ложь) либо слово TRUE (истина). 

Символьная константа – это любой символ, заключенный в апострофы:

'z' – символ z;

'ф' – символ ф.

Строковая константа – последовательность символов, заключенная в апострофы. Если в строке нужно указать сам символ апострофа, он удваивается, например:

' Это - строка символов ';

' That''s string'.

Описание констант начинается со служебного слова const. Далее пишется имя, которое мы дали данной величине и после знака равенства пишется конкретное значение данной величины.

Const

<Имя константы>=<значение константы>;

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

Выражение – последовательность переменных и числовых констант, объединённых знаками арифметических (арифметическое выражение, например, Pi*r+1/2.5, Х/5 + 2.5 0) или арифметических и логических операций (логические выражения, например, Х + 2.5 = 0, x+1>=12). Выражения всегда записываются в строчку, указывая все арифметические операции, включая знак умножения (например, математическое выражение записывается – (X+Y)/2.5-3*Sqrt(X*X-Y*Y)). Математическое уравнение y=–3x3+0,475x–45,5 записывается – y:=–3*x*x*x+0.475*x–45.5);

Комментарии – это пояснения, вставляемые в текст программы. Комментарий - любой текст, заключённый в { } или (* *). Комментарии не выполняются программой.

Оператор – это инструкция, которую должен выполнить Turbo Pascal. Программа состоит из последовательности операторов.

Операторы. Исполняемые операторы должны заканчиваться – ; Существует несколько типов операторов:

Оператор присваивания – это последовательность из переменной, знака присваивания (:=) и арифметического выражения. Например, x:=x+1;

Структурный оператор – это оператор, состоящий из нескольких зарезервированных слов и логических проверок. К ним относятся операторы циклов и условные операторы.

Нестандартные операторы – это подпрограммы, оформленные стандартным образом и записанные в библиотеки (модули). Вызываются при указании имени и параметров.

Составной оператор – это группа операторов, заключённая между begin … end;

Begin

Оператор 1; Оператор 2; … Оператор n;

End;

Пустой оператор – оператор Begin End;, не выполняющий никакого действия.

Встроенные стандартные математические функции, используемые в Turbo Pascal.

Используются в арифметических выражениях.

Функция

Назначение

Тип

аргумента

Тип функции

Abs(x)

Вычисление абсолютного значения x

вещественный

целый

вещественный

целый

sqr(x)

Вычисление квадрата x

вещественный

целый

вещественный

целый

sqrt(x)

Вычисление квадратного корня из x

вещественный

целый

вещественный

вещественный

sin(x)

Вычисление синуса x

вещественный

целый

вещественный

вещественный

cos(x)

Вычисление косинуса x

вещественный

целый

вещественный

вещественный

arctan(x)

Вычисление арктангенса x

вещественный

целый

вещественный

вещественный

exp(x)

Вычисление экспоненты (числа e=2,71828…) в степени x

вещественный

целый

вещественный

вещественный

ln(x)

Вычисление натурального логарифма x

вещественный

целый

вещественный

вещественный

log(x)

Вычисление десятичного логарифма x

вещественный

целый

вещественный

вещественный

Pi

Число 

нет

вещественный

Структура программы:

Заголовок программы (необязателен)

Program <имя>;

Раздел описаний

Список используемых модулей

Uses ...;

Метки

Label ...;

Константы

Const ...;

Типы

Type ...;

Переменные

Var ...;

Процедуры

Procedure ...;

Функции

Function ...;

Раздел операторов

Begin

<Операторы программы>

End.

Раздел меток (label)

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

label l1, l2, l3…;

здесь l1, l2, l3… - метки.

Раздел типов (type)

Если в программе вводится тип, отличный от стандартного, то этот тип описывается в разделе type:

type t1=<вид типа>;

t2=<вид типа>;

. . . . . . .

где t1 и t2 – идентификаторы вводимых типов.

 

Пример.

Type color=(red, yellow, green, blue);

 

Здесь описан тип color, задаваемый перечислением значений.

Переменные. Описание переменных

Все переменные должны быть описаны с указанием типа:

Var a, b : integer ;

f, d, c : real ;