русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Переваги Pascal.


Дата додавання: 2014-02-04; переглядів: 1579.


Мова дозволяє максимально дотримуватися принципів структурного програмування, завдяки:

1. Високій структурованості даних мови Pascal;

2. Структурним можливостям керуючих конструкцій мови:

ü Будь-яка програма може бути написана у вигляді строгої послідовності операторів, без використання безумовних переходів;

ü Засоби створення підпрограм і модулів дозволяють організувати програму як сукупність ієрархічних рівнів.

Компілятори й інтерпретатори.

Отже, як було зазначено вище, для перекладу тексту програми на мову, зрозумілу комп’ютеру, повинна існувати окрема програмна оболонка – транслятор.

Означення Трансляція – перетворення програми, представленої на якій-небудь мові програмування в еквівалентну форму на іншій мові.

Означення Програма, що виконує перетворення програми з однієї мови програмування на іншу, називається транслятором.

Транслятори бувають двох видів: компілятори й інтерпретатори.

Компілятор перетворює вихідний код програми в машинну мову, тобто мову нулів і одиниць. До отриманого коду підключаються стандартні процедури, використані програмістом. У результаті виходить працююча програма – її називають робочим кодом. Файли таких програм мають розширення .ехе або .com і представляють собою машинний код. Компілятор – тип транслятора, що виконує перетворення всієї програми цілком з якої-небудь мови програмування на мову машинних кодів (абсолютний модуль) або близький до нього (об’єктний модуль).

Інший різновид трансляторів, що використовуються в практиці програмування, – це інтерпретатори. Інтерпретатори обробляють текст не заздалегідь, а безпосередньо під час виконання програми. Інтерпретатори є програмами-посередниками, які читають команди з файлу і переводять їх на мову процесора під час виконання програми. Інтерпретатор – тип транслятора, що здійснює покомандний (порядковий) переклад і виконання програми, написаної на якій-небудь мові програмування.

Щоб краще зрозуміти відмінність між компілятором і інтерпретатором, приведемо порівняння. Робота програми компілятора схожа на роботу літературного перекладача, який спочатку прочитує текст, аналізує його, а потім виконує переклад. Роботу програми інтерпретатора можна порівняти з роботою синхронного перекладача, який виконує переклад відразу в міру озвучування тексту. Зрозуміло, що літературний переклад буде більш якісним, ніж переклад синхронний. Аналогічно код, отриманий при компіляції, буде більш компактний і ефективним, ніж код інтерпретатора. У результаті відкомпільовані програми працюють у 20-50 разів швидше, ніж виконувані під керуванням інтерпретатора. Крім того, компілятори під час своєї роботи займають меншу частину ресурсів комп’ютера.

Таким чином, компілятори – більш ефективні перекладачі програм. Тому всі прикладні і службові програми поставляються у відкомпільованому вигляді.

У випадках, коли час виконання програми не занадто критичний, наприклад, при навчанні, зручно використовувати мову, що інтерпретується. Найпростіша і найбільш розповсюджена з них – це мова програмування Basic. Іншими прикладами є такі мови, що інтерпритуються JavaScript і VBScript, що широко використовуються при створенні Web-сторінок, доступних через Інтернет.

В 1982 р. - Філіп Кан (засновник фірми Borland) – розробляє транслятор мови Pascal для ПК Apple. Починаючи з 1983 р. Фірма Borland International випустила більше 10 версій компілятора Turbo Pascal. Найпоширеніші - 3.0, 5.5, 6.0, 7.0. В 1992 фірма випустила новий продукт – компілятор Borland Pascal with Objects 7.0.

 

 

Модель компілятора

 

Програма Лексеми Об’єктний Абсолютний

 

Вхідний модуль модуль

модуль

 

Лексичний аналізатор – програма мовою високого рівня являє собою послідовність символів. (Примітка: кожний символ має свій код. Таблиця кодів для IBM-сумісних ПК називається ASCII (American Standard code International Interchange). До набору символів Turbo і Borland Pascal відноситься майже вся таблиця ASCII (крім кирилиці). Серед символів програми на мові високого рівня лексичний аналізатор розрізняє символи – роздільники (наприклад, пробіл), і з їхньою допомогою виділяє лексеми.

Лексема– мінімально значима одиниці тексту програми.

Приклад For i=1 to n do writeln(i). Питання: Скільки тут лексем?

Синтаксичний аналізатор – на основі правил граматики мови перевіряє коректність запису лексем і речень програми й переводить послідовність лексем у послідовність внутрішніх кодів компілятора (об’єктний модуль).

Генератор коду (редактор зв’язків) –здійснює переклад внутрішнього коду компілятора в машинний код комп’ютера.

У таблицях міститься як постійна для трансляції програм інформація (наприклад, таблиця зарезервованих слів), так і індивідуальна інформація для якої-небудь програми (наприклад, таблиця ідентифікаторів).

Інтегроване середовище програмування

Сучасні мови програмування – це не тільки мова програмування з компілятором. Мови програмування як програмний продукт поставляються на ринок ПЗ разом з повним комплектом інструментів для створення програм. Такий комплект називається інтегрованим середовищем програмування. Він призначений не тільки для полегшення процесу складання програм, але і для професійної розробки програмних додатків.

Означення Середовище програмування – це програма, що має засоби автомати­зації процесів підготовки та виконання програм користувача.

До складу інтегрованого середовища програмування входять, як правило, наступні інструменти:

Ø текстовий редактор для набору і редагування програми;

Ø мова програмування з компілятором чи інтерпретатором;

Ø компонувальник;

Ø система усунення синтаксичних помилок, покроковий налагоджувач;

Ø бібліотека готових до використання програмних модулів (процедур та функцій);

Ø довідкова система з питань розробки програм у даному середовищі.

Прикладами інтегрованих середовищ програмування є Turbo Pascal 7.0, Delphi і Visual Basic для Windows. Використання цих середовищ при розробці додатків дозволяє користувачам прикладати набагато менше зусиль, ніж при написанні програм за допомогою мов більш низького рівня.

Створення програми починається зі складання алгоритму, орієнтованого на визначене інтегроване середовище програмування. Алгоритм перекладається на мову програми і вводиться з клавіатури у вікні текстового редактора. Після того, як ви набрали з клавіатури текст і виправили в ньому помилки, потрібно відправити програму на автоматичну перевірку. При цьому автоматично буде запущений ще один засіб зі складу середовища програмування – це налагоджувач (по-англійському – debugger). Налагоджувач перевірить текст із погляду синтаксису, запропонує вам виправити знайдені помилки. Програміст за допомогою налагоджувача може також переглянути і змінити вміст комірок пам’яті комп’ютера.

Налагоджену програму можна запускати на виконання. Перекладом тексту програми на машинну мову займеться відомий уже вам засіб – транслятор. Йому буде допомагати компонувальник (linker), задачею якого є пошук і компонування розрізнених модулів і бібліотек, що необхідні для виконання програми.

Інтегроване середовище програмування забезпечує діалогову взаємодію з користувачем на всіх етапах складання і виконання програми. Середовище програмування сконструйоване таким чином, щоб користувачу були доступні всі можливі інструменти програмування, і він почував себе комфортно.

Алфавіт мови програмування.

У природних мовах тексти будують так:

Алфавіт мови => Слова => Речення => Текст

В алгоритмічних мовах простежується повна аналогія:

Алфавіт => Слова => Команди => Програма

Розглянемо алфавіт мови Паскаль. Алфавіт мови програмування містить майже всі (за деякими винятками) символи, що є на клавіатурі:

ü латинські символи (великі та малі);

ü символи кирилиці (великі та малі);

ü цифри від 0 до 9;

ü математичні символи (+ –плюс, - – мінус, * – множення, / – ділення, = – дорівнює, < – менше, > – більше);

ü розділові знаки (пропуск, , – кома, . – крапка, : – двокрапка, ; – крапка з комою, ‘ – апостроф, [] – квадратні дужки, () – круглі дужки, {} – фігурні дужки, # – номер, $ – знак грошової одиниці, @ – комерційне а, ^ – тильда,) та ін.;

ü комбінації математичних та розділових знаків утворюють складені символи (:= – присвоєння, < > – не дорівнює, <= – менше або дорівнює, >= – більше або дорівнює, . . – діапазон значень).

Лексеми: класифікація


<== попередня лекція | наступна лекція ==>
Інтегроване середовище програмування. | Лексеми


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн