Реферат по предмету "Информатика, программирование"


Модульне програмування. Turbo Pascal

Тема:
Модульне програмування. Turbo Pascal
План
1. Призначення модулів та їх структура. 3
2. Компіляція програм, які використовують модулі 7
2.1 Стандартні модулі 9
Модуль Crt. 10
Модуль Dos. 11
Модуль Graph. 12
Використана література. 13
1. Призначення модулів та їхструктура
Коли говорять про файли, які містять програмина Turbo Pascal, мова йде про три типи файлів.
а) текстові файли з текстами програм на TurboPascal (зазвичай ці файли мають розширення pas, хоча й це не обов’язково);
б) tpu — файли;
в) готових до виконання файлів, отриманих врезультаті програм (exe — файли).
Що ж таке tpu — файли?
З розвитком обчислювальної техніки з’явиласяможливість в масовому порядку вирішувати складні задачі, які вимагали написаннявеликих за обсягом програм з залученням для цього колективу розробників. Так з’явилосьпоняття модульного програмування. Під цим терміном розуміють і розбиттяпрограми на окремі фрагменти, і створення бібліотек фрагментів, з яких можливосформувати програму (в Turbo Pascal вставки в текст програми здійснюються зарахунок директиви компіляції {SI имя_включаемого_файла}, і написанняпідпрограм, в тому числі й зовнішніх (ця можливість також є в Turbo Pascal). Можнатакож створювати незалежно зберігаючі і компільовані програмні одиниці, якімають інтерфейс, який дозволяє вик5ористовувати різні засоби цих програмниходиниць в розроблювальних програмах. Такі програмні одиниці в Turbo Pascalназивають модулями. В результаті їх компілювання створюються файли зрозширенням. tpu (tpu — файли). Використання модулів дозволяє створювати великіпрограми (ехе — файли), хоча розмір окремого tpu — файла не може перевищувати64 Кбайт.
В Turbo Pascal модуль (unit) вважаєтьсяокремою програмою і створюється спочатку як звичайний pas — файл, оформлений запевними правилами.

unit імя_модуля; {Заголовок модуля}
interface {Заголовок інтерфейсної частини}
uses список_використовуваних_модулів
type …
const …
var …
procedure.
function …
implementation {Заголовок розділу реалізації}
{Опис локальних модулів, типів, констант,змінних, процедур і функцій, а також процедур і функцій, заголовки якихоголошені в розділі interface}
вegin
{Розділ ініціалізації}
end.
Як і програма, текст модуля розпочинається з заголовкуі закінчується службовим словом еnd з крапкою. Але заголовок модулярозпочинається не зі слова program, а зі службового слова unit і є обов’язковим.Після слова unit вказується ім’я модуля, яке повинно співпадати з ім’ям файлу,який містить модуль (наприклад, для заголовка unit module; текст модуля повинензберігатися в файлі module. pas, в результаті компілювання створюється файлmodule. tpu). Завершується заголовок крапкою з комою. Наведене в заголовку ім’ямодуля вказують при його підключенню до програми або іншого модуля. Щобпідключити модуль до програми, необхідно відразу ж за заголовком програми (якщовін є) після службового слова uses вказати ім’я підключає мого модуля (uses module;).Службове слово uses в програмі може зустрітися лише один раз, тому дляпідключення декількох модулів їх імена перераховують через кому (usesmodule1,module2;).
За заголовком модуля йде його інтерфейсначастина, яка розпочинається зі службового слова interface. В нійперераховуються програмні ресурси (константи, типи, змінні, заголовки процедурі функції), які призначені для використання іншими модулями і програмами. Описанітут елементи називаються видимими (зовнішніми). Вимоги до написання тут такісамі, як і в Turbo Pascal, але для процедур і функцій вказують лише заголовки,причому директиви externa1, forward і assembler не ставляться.
Відмітимо також, що в розділі usesперераховуються імена модулів, які використовуються в даному випадку. Але вонине доступні програмам, які використовують даний модуль. Тому щоб отримати впрограмі доступ до ресурсів модуля, його необхідно оголосити явно, а не черезінший модуль.
Після інтерфейсної частини йде розділреалізації, який розпочинається зі службового слова implementation. Тутоголошуються невідомі поза модулем внутрішні елементи (їх ще називаютьневидимими або схованими) — локальні змінні, константи, типи, процедури іфункції, а також модулі, ресурси яких використовуються в середині даного модуля.Крім того, тут здійснюється реалізація тих процедур і функцій, заголовки якихописані в інтерфейс ній частині і які відомі поза модулем. Такий метод описупроцедур і функцій здійснюється за наступною причиною: користувачу длязвернення до підпрограми достатньо знати її ім’я і список параметрів. Знанняспособу її реалізації зовсім не потрібно. Якщо здійснюється модифікаціяпідпрограми, яка розміщена в модулі, то достатньо змінити тільки її тіло врозділі реалізації, не змінюючи заголовка інтерфейсної частини. В зв’язку з цимпрограми, які використовують таку підпрограму, не змінюються. Якщо підпрограмаоголошена в інтерфейс ній частині, то в розділі реалізації її заголовокзазвичай надається тільки у вигляді імені без вказування переліку і типівпараметрів, а також типу повернення значення для функції.
Розділи іnterface та implementationобов’язкові, навіть якщо вони пусті, заголовки вказати необхідно.
Після розділу реалізації в модулірозташовується розділ ініціалізації, який розпочинається зі слова begin, заяким йдуть оператори, які будуть виконуватися до операторів з тіла програми(наприклад, встановлення початкових значень для деяких змінних, оголошених вмодулі). Розділ ініціалізації не є обов’язковим, тому. Якщо при підключенімодуля не потрібно робити ніяких початкових встановлень, він може невикористовуватися (разом зі службовим словом begin).
2. Компіляція програм, яківикористовують модулі
До програми можна підключити декілька модулів.В свою чергу модуль може використовувати ресурси інших модулів. В цьому випадкув програмі в операторі uses вказують тільки імена тих модулів, якібезпосередньо використовуються в програмі. Характерною особливістю модулів єте, що вони не повністю включаються в exe — файл: до програми додається лишете, що використовується. Заборонено звернення модуля до самого себе, хоча, якщомодуль оголошується в розділі реалізації, це обмеження розповсюджується лише напряме звернення.
Можлива й така ситуація, коли в програмі іінтерфейс них частинах декількох модулів, підключених до неї, оголошені задопомогою одного і того самого імені різні об’єкти (наприклад, в програмі єрозділ uses module1,module2; і як в програмі, так і в інтерфейс них частинахобох модулів існують описи з іменем name). В цьому випадку програма оперуєпередусім, елементами, які оголошені в ній самій. (тобто тим елементом name,який оголошений в програмі). Для звернення до об’єкту, ім’я якого перекрито,необхідно зліва до імені об’єкту дописати ім’я модуля, в якому він оголошений, об’єднавїх крапкою (наприклад, module1. name або System. Real).
В Turbo Pascal немає зв’язку між іменемпрограми і іменем файлу, в якому вона зберігається. Але для підключення модулядо програми його необхідно знайти на диску. Тому ім’я модуля і ім’я файлу, якиймістить модуль, повинні співпадати. Вихідний текст модуля зберігається в файліз розширенням pas, а отриманий в результаті компіляції код модуля — в файлі зрозширенням tpu (від Turbo Pascal Unit). Якщо ім’я модуля module, товідповідними файлами будуть module. pas і module. tpu.
При компіляції програми за допомогою командиCompile — > Compile компілятор послідовно відшуковує tpu — файли, якімістять коди модулів які використовуються, для їх підключення. Пошуквідбувається наступним чином:
1. Перегляд системного бібліотечного файлумодулів turbo. tp1 (від Turbo Pascal Library), який повинен зберігатися в томусамому каталозі, що й файл turbo. exe.
Якщо модуля немає в файлі turbo. tp1, то пошукпродовжується в поточному каталозі.
Якщо і тут модуль не знайдений, то йдеперегляд каталогів, перерахованих в розділі Unit Directories діалогового вікна,яке викликається командою меню Options — > Directories (перерахуваннякаталогів відбувається через крапку з комою). Якщо модуль не виявлено, будестворене повідомлення про помилку і компіляція програми буде завершена.
При обрані команди компіляції Compile — >Makeздійснюється пошук pas — файлу, який містить вихідний текст модуля. Виявившийого, в тому ж самому каталозі необхідно знайти відповідний tpu — файл. Якщоtpu — файл створений пізніше pas — файлу, то йде підключення модуля з tpu — файлу. Якщо ж tpu — файл не виявлений або pas — файл коректувався післястворення tpu — файлу, то обов’язково компілюється нова версія tpu — файлу.
При компіляції за допомогою команди Compile — >Buildобов’язково йде компіляція всіх pas — файлів, що містять тексти модулів, яківикористовуються. Якщо якогось з pas — файлів немає, але є відповідний tpu — файл, відбувається підключення останнього.
Модулі завжди компілюються перед компіляцієюпрограми.
Системний бібліотечний файл модулів turbo. tp1(в Turbo Pascal він єдиний) володіє спеціальною структурою, орієнтованої нашвидкий пошук модулів, які в ньому містяться. Включення і виключення модуліввиконується за допомогою спеціальної програми tpumover. exe. Пошук модулів вфайлі turbo. tp1 відбувається завжди, тому не стоїть робити його дуже великим. Модулі,які часто використовуються, необхідно поміщати в файл turbo. tp1. 2.1 Стандартні модулі
В Turbo Pascal є вісім стандартних модулів(System, Dos, Crt, Printer, Overlay, Graph, Turbo3, Graph3). Модуль Systemпідключається автоматично, і його не потрібно згадувати у розділі uses. Всіостанні модулі необхідно оголошувати в програмі для забезпечення доступу до їхресурсів.
В модулі System зберігаються типи, константи,змінні і підпрограми авторської версії мови, стандартної мови, а також ряддодаткових підпрограм. Відсутність цього модуля призводить до неможливостікомпіляції програми.
Модуль Crt використовується при роботі зекраном у текстовому режимі, під час читання з клавіатури, а також забезпечуєдеякі інші функції.
Модуль Dos забезпечує звернення до засобівопераційної системи MS DOS.
Модуль Printer дозволяє здійснювати вивід напринтер за допомогою процедур Write і WriteLn. Для цього оголошена файловазмінна Lst типу Text, яка зв’язана з логічним пристроєм prn.
Модуль Graph забезпечує роботу з екраном уграфічному режимі.
Модуль Overlay використовують для ефективноїроботи великих програм. Модулі Turbo3 і Graph3 застосовують дуже рідко, їхвикористовують для забезпечення сумісності пізніших версій мови з програмами, якінаписані на мові Turbo Pascal 3.0.
Перші п’ять згадані модулі часто включають вфайл turbo. tp1.
Є також цілий ряд інших модулів, які сталипрактично стандартні. Це модулі, які входять в бібліотеку Turbo Vision(Objects, Views, Dialogs, App і ін) і призначені для побудови інтерфейс нихчастин розроблювальних програм.
Для роботи з довгими (більше 255 символів) строкамирозроблений модуль Strings.
Модуль Crt
Одним з найбільш часто використовуванихстандартних модулів є модуль Crt. В ньому є багато процедур і функцій дляроботи з текстом. Серед них: засоби вводу, виведення і форматування тексту,створення і робота з вікнами та багато іншого.
Основним засобом відображення інформації, якавводиться і виводиться під час роботи прикладних і системних програм є екран. ВTurbo Pascal є можливість працювати з екраном у текстовому і графічному режимах.
Текстовий режим призначений для відображеннясимволів кодової таблиці і характеризується максимальним числом символів врядку і кількістю рядків на екрані. Крім того, монохромні дисплеїхарактеризуються кількістю степенем яскравості, а кольорові — можливоюкількістю використовуваних кольорів. Мінімальною одиницею керування в текстовихрежимах є символ. Він складається з декількох пікселів, перетворення якихвідбувається на апаратному рівні. Для зберігання символу, який виводиться наекран в текстовому режимі необхідно 2 байта. Перший байт містить безпосередньосимвол кодової таблиці, а другий визначає, як символ має бути виведений на екран(його колір, колір фону, мерехтіння).
Засоби, які працюють з екраном в текстовомурежимі зібрані в модулі Crt, який підключається звичайним способом:
uses Crt;
Встановлення текстового режиму відбувається задопомогою процедури TextMode, виконання якої призводить до очищення екрану іактивації вказаного режиму. В таблиці запропоновані константи, які визначені вмодулі Crt для встановлення текстових режимів.
Для встановлення того чи іншого текстовогорежиму необхідно звернутися до процедури TextMode:

TextMode (режим);
Константи, визначені для текстових режимівекрана Константа Текстовий режим BW40 Розмір 40 стовпців на 25 рядків (40х25) для кольорового монітора (BW40=0) BW80 Чорно-біле зображення з розміром екрана 80х25 (BW80=2) CO40 Кольоровий текстовий режим 40х25 (СО40=1) CO80 Кольоровий текстовий режим з розміром екрану 80х25 (СО80=3) Mono Монохромний режим 80х25 C40 i C80 Константи СО40 і СО80 відповідно. Введені для сумісності з Turbo Pascal 3.0
Тут в якості параметразадається одна з перерахованих в таблиці констант. Наприклад, для встановленнякольорового режиму з розміром екрану 40х25 можна використати один з наступнихваріантів:
TextMode(СО40); TextMode(С40);TextMode(3);
Процедура TextMode можебути використана без параметрів. В такому випадку активується режим, якийзустрічався останнім до поточного режиму. За замовчуванням прийняті режими BW80і С80.
В модулі Crt є константаFont8x8 зі значенням 256. Якщо додати її до основної константи, то кількістьрядків буде збільшено до 43 для адаптерів EGA і 50 для адаптерів VGA. Наприклад:
TextMode(СО80+Font8x8); Модуль Dos
Існує цілий клас задач, рішення яких потребуєзастосування засобів операційної системи. Без цього не можливе написанняпрактично майже ні однієї професійної програми.
В модулі Dos зосереджені функції і процедури,які забезпечують доступ до засобів MS DOS. При звернені до засобів операційноїсистеми, зокрема при використані деяких процедур модуля Dos, можлива появапомилок. Для їх виявлення введена змінна DosError, в яку заноситься код помилки.Можливі значення цієї змінної перераховані в таблиці.
Коди помилок змінної DosError. Код помилки Пояснення Нормальне завершення 2 Файл не знайдений 3 Шлях не знайдений 4 Дуже багато відкритих файлів 5 Доступ до файлу закритий 6 Порушена інформація в полях файлу або системних областях 8 Недостатньо пам’яті 10 Несумісність параметрів оточення 11 Нерозпізнаний формат диску 18 Немає більше файлів
Рекомендується здійснюватиконтроль коректності виконання процедур модуля Dos, зверненням до змінноїDosError відразу ж після виклику процедур. Модуль Graph
Перші дисплеї (монітори) були монохромні. Їхпредставниками є монітори MDA (Mono Digitals Adapter) та Hercules, якізустрічаються зараз досить рідко. Із кольорових моніторів нещодавно булирозповсюджені монітори GGA (Color Graphics Adapter) та EGA (Enhanced GraphicsAdapter), зараз — VGA (Video Graphics Adapter) та SVGA (Super-VGA). Кольоровезображення отримуємо за рахунок підсвічення люмінофорних крапок трьох кольорів(красний, зелений, синій). При цьому кожна точка зображення (піксель) утворюєтьсятрьома поряд розташованими люмінофорними точками.
Монітори EGA i VGA фактично стали стандартомдля тих додатків, які забезпечуються графічними можливостями мови Turbo Pascal.Особливістю моніторів VGA в тому, що в них велика роздільна здатність, івідстань між сусідніми пік селями по вертикалі і горизонталі співпадають.
В системному модулі Turbo Pascal не передбаченіможливості по роботі в графічному режимі. Це передбачено в модулі Graph.
Використана література
1. Безменов Н.И. TurboPascal 7.0. Руководство программиста. — М.: Изд-во Эксмо, 2006. — 160с.
2. Злобін Г.Г., РикалюкР. Є. Архітектура та апаратне забезпечення ПЕОМ: Навч. посіб. — К.: Каравела,2006


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Гегель о происхождении государства и стадиях развития права
Реферат Http://chitaemknigi narod ru/iydei
Реферат Методика и практика работы пресс-службы в некоммерчесих организациях
Реферат Проникновенное ощущение отчизны по творчеству Александра Блока
Реферат The History Of Drug Use In The
Реферат Філософські погляди Григорія Сковороди 4
Реферат Радиостанция ротной сети. Правила ведения радиопереговоров и порядок передачи сигналов и команд
Реферат Дыхательная система. Кожа и ее производные
Реферат Государственные преобразования по планам М.М. Сперанского
Реферат Полезные ископаемые Северной Америки
Реферат Загадка древних русов, или что означает слово "русский"?
Реферат Образование приказной системы управления в Русском государстве
Реферат Исторический очерк возникновения РПЦ за рубежом
Реферат Розкладання в ряд Фур'є несинусоїдальної періодичної функції напруги та дослідження її впливу на лінійне коло
Реферат Жуков – полководец Великой Отечественной войны