Преобразование исходного кода

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

Текст программы, написанный на языке программирования высокого уровня, до того как быть преобразованным в машинные коды, называется исходным кодом (source code). Компилятор (compiler) преобразует исходный код в машинные коды, называемые объектным кодом (object code), то есть программой на выходном языке транслятора. Перед выполнением протекает процесс редактирования связей (linkage editing), когда модули выходной программы объединяются с другими модулями объектного кода, содержащими, например, данные. Результирующий загрузочный модуль – это команды, непосредственно выполняемые компьютером. На Рис. 2.3 показан процесс трансляции кода программы.

Рис. 2.3 Процесс трансляции кода программы. Исходный код программы, состоящий из команд языка программирования высокого уровня, транслируется компилятором в объектный код, "понятный" компьютеру. Затем модуль объектного кода посредством редактора объединяется с другими модулями, после чего создается загрузочный модуль. Загрузочный модуль содержит команды в машинных кодах, которые и выполняет
Преобразование исходного кода - student2.ru

Языки программирования, для которых существуют программы-компиляторы, называют компилируемыми языками. К ним относятся Паскаль, С++, Delphi, Fortran и другие.

Интегрированная система Турбо Паскаль состоит из языка программирования и среды программирования. В эту систему входят необходимые части Turbo Pascal:

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

· компилятор

· компоновщик

· загрузчик

Интегрированная среда Турбо Паскаль запускается программой TURBO.EXE (Bp.exe)

Контрольные вопросы

1. Понятие языка программирования

2. Классификация языков программирования

3. Понятие виртуальной машины и системы программирования

4. Перечислите основные элементы языка программирования

5. Идентификаторы, их назначение в программе?

6. Операции, типы операций

7. Данные и константы, примеры

8. Переменные, их назначение, приведите примеры

9. Выражения, типы выражений, приведите примеры

10. Понятия оператора,

11. Понятие функции

12. Понятие программы, подпрограммы, программирования

13. Схема преобразования исходного кода, поясните схему

14. Что включает в себя интегрированная среда Турбо Паскаль, поясните каждый пункт и его назначение.

Самостоятельная работа

1. Создайте презентацию на тему:

Эволюция языков программирования.

Раздел 2 . Основы программирования на Турбо Паскаль.

Тема 2.1.1. Элементы языка Pascal. Структура языка.

Структурная схема программы на алгоритмическом языке. Алфавит языка.

После изучения темы студент должен

знать:

- Структурную схему программы;

- Способы описания меток, переменных, типов, констант;

- Объекты алфавита языка;

Уметь

- описывать переменные, метки, константы;

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

I. Структурная схема программы на языке TurboPascal

Любая программа на языке TurboPascal(ТР) состоит из двух основных разделов: раздела описаний данных и раздела операторов, и заканчивается всегда символом «.».

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

Begin

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

End.

Раздел описаний может включать в себя подразделы описания меток, констант, типов, переменных, а также подпрограмм, реализуемых в виде процедур или функций. Если в программе используются стандартные или библиотечные модули (Unit), то первой должна стоять директива Uses, в которой перечисляются используемые модули. Рекомендуется всегда включать в программу директиву: Uses CRT;

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

Кроме двух основных разделов в программу можно и нужно включать комментарии: пояснения к программе, данные о разработчиках и т.п.

Раздел описаний может содержать следующие подразделы:

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

2.Объявление меток.

3.Объявление констант.

4.Объявление типов.

5.Объявление переменных.

6.Описание процедур и функций.

Не все подразделы обязательны.

Каждый из подразделов раздела описаний начинается своим ключевым словом.

Список имен модулей начинается с ключевого слова USES.

Раздел меток начинается с ключевого слова LABEL, раздел констант - CONST , раздел типов - TYPE , раздел переменных - VAR .

Раздел операторов следует за разделом описаний и всегда заключается в операторные скобки, определяемые ключевыми словами

Begin ... End.

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

Описание меток

Метка представляет собой правильный идентификатор или любое

целое без знака от 1 до 9999. Метки должны быть описаны в подразделе Label. Каждая метка описывается только один раз в каждой программной единице (основной программе или подпрограммах).

Label метка; или Label метка1, метка2, …, меткаN;

В программе метка ставится перед оператором, на который передается управление и отделяется от него символом ":".

Метка : выполняемый оператор;

Примеры описания меток:

Label m1, m2, met1, l1, lab, 125;

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

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

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

VAR имя переменной : тип;

Примеры:

Var x:real; i: byte;

S: char; b: boolean;

Days: 1..31;

Переменные одного типа записываются друг за другом через запятые:

Var a, b, c : real;

I,j,k:byte;

m, months:1..12;

Для переменных, описанных в каждой программной единице, отводится определенный объем памяти.

Переменные, описанные в основной (главной) программе, называют глобальными переменными. Общий объем памяти, отведенный под глобальные переменные, не должен превышать 64 Кбайта.

Переменные, описываемые в подпрограммах, называются локальными переменными.

Описание типов

В простейших случаях тип переменных указывается явно, при их описании в разделе Var:

Var Имя переменной: тип;

Можно сопоставить типу некоторое имя и описать его в разделе Type:

Type Имя типа = Тип;

Например:

Type Diapason = 1..1000;

T_days = 1..31;

T_symbol = 'a'..'z';

T_Month = (j,f,mr,ap,may,jn,jl,ag,s,o,n,d);

Это дает возможность программисту определять и использовать свои собственные типы, а не стандартные.

Далее можно имена типов, введенные в подразделе Type использовать в подразделе Var:

Var

i,i,n:Diapason;

Day:T_days;

Sim,ch:T_symbol;

Mes:T_Month;

Наши рекомендации