Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


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

Тип Реферат
Предмет Информатика и программирование
Просмотров
414
Размер файла
31 б
Поделиться

Ознакомительный фрагмент работы:

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

Тема:

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

План

1. Призначення модулів та їх структура. 3

2. Компіляція програм, які використовують модулі 7

2.1 Стандартні модулі 9

Модуль Crt. 10

Модуль Dos. 11

Модуль Graph. 12

Використана література. 13

1. Призначення модулів та їх структура

Коли говорять про файли, які містять програми на Turbo Pascal, мова йде про три типи файлів.

а) текстові файли з текстами програм на Turbo Pascal (зазвичай ці файли мають розширення 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 в програмі може зустрітися лише один раз, тому для підключення декількох модулів їх імена перераховують через кому (uses module1,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.

Код помилкиПояснення
0Нормальне завершення
2Файл не знайдений
3Шлях не знайдений
4Дуже багато відкритих файлів
5Доступ до файлу закритий
6Порушена інформація в полях файлу або системних областях
8Недостатньо пам’яті
10Несумісність параметрів оточення
11Нерозпізнаний формат диску
18Немає більше файлів

Рекомендується здійснювати контроль коректності виконання процедур модуля Dos, зверненням до змінної DosError відразу ж після виклику процедур.

Модуль Graph

Перші дисплеї (монітори) були монохромні. Їх представниками є монітори MDA (Mono Digitals Adapter) та Hercules, які зустрічаються зараз досить рідко. Із кольорових моніторів нещодавно були розповсюджені монітори GGA (Color Graphics Adapter) та EGA (Enhanced Graphics Adapter), зараз - VGA (Video Graphics Adapter) та SVGA (Super-VGA). Кольорове зображення отримуємо за рахунок підсвічення люмінофорних крапок трьох кольорів (красний, зелений, синій). При цьому кожна точка зображення (піксель) утворюється трьома поряд розташованими люмінофорними точками.

Монітори EGA i VGA фактично стали стандартом для тих додатків, які забезпечуються графічними можливостями мови Turbo Pascal. Особливістю моніторів VGA в тому, що в них велика роздільна здатність, і відстань між сусідніми пік селями по вертикалі і горизонталі співпадають.

В системному модулі Turbo Pascal не передбачені можливості по роботі в графічному режимі. Це передбачено в модулі Graph.

Використана література

1. Безменов Н.И. Turbo Pascal 7.0. Руководство программиста. - М.: Изд-во Эксмо, 2006. - 160с.

2. Злобін Г.Г., Рикалюк Р. Є. Архітектура та апаратне забезпечення ПЕОМ: Навч. посіб. - К.: Каравела, 2006


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
149841
рейтинг
icon
3153
работ сдано
icon
1365
отзывов
avatar
Математика
Физика
История
icon
144858
рейтинг
icon
5924
работ сдано
icon
2672
отзывов
avatar
Химия
Экономика
Биология
icon
100599
рейтинг
icon
2060
работ сдано
icon
1284
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
57 706 оценок star star star star star
среднее 4.9 из 5
МГИМО
Спасибо Юлии, заказываю второй раз. Работа выполнена раньше срока, качественно!
star star star star star
РУДН
Работа выполнена на высшем уровне. Все примечания соблюдены. Исполнитель активный и общите...
star star star star star
Удгу
Все отлично, очень быстро и качественно, работа принята без замечаний. Спасибо.
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Дать характеристику предприятию, решить 9 задач

Решение задач, Экономика предприятия и организация производства

Срок сдачи к 19 янв.

только что

Сестринский уход за детьми при пневмонии

Курсовая, медицина

Срок сдачи к 16 янв.

только что

Последние цифры зачетки 24

Контрольная, Метрология, стандартизация и сертификация

Срок сдачи к 16 янв.

4 минуты назад

Есть введение одобренное руководителем курсовой

Курсовая, Возрастная психология, психология развития

Срок сдачи к 28 февр.

4 минуты назад

Задача 3 вариант62

Решение задач, Электротехника

Срок сдачи к 20 янв.

5 минут назад

Составить бланк

Решение задач, Документационное обеспечение управления

Срок сдачи к 18 янв.

5 минут назад

8 вариант

Контрольная, Метрология, стандартизация и сертификация

Срок сдачи к 15 янв.

7 минут назад

27 вариант

Решение задач, Математика

Срок сдачи к 15 янв.

7 минут назад

Исследование электромагнитного поля в диэлектрическом волноводе для...

Курсовая, Оптические направления и среды

Срок сдачи к 15 янв.

8 минут назад

вариант 9

Решение задач, Статистика

Срок сдачи к 15 янв.

8 минут назад

Интегралы

Решение задач, Математика

Срок сдачи к 15 янв.

9 минут назад

комбинированные разработки месторождение

Реферат, комбинированные разработки месторождение

Срок сдачи к 20 янв.

9 минут назад

Решить второй вариант по методичке

Контрольная, Теория государства и права

Срок сдачи к 17 янв.

11 минут назад

Выполнить указанные действия.

Контрольная, Философия

Срок сдачи к 20 янв.

11 минут назад

Тестирование по Управление, организация и планирование производства

Тест дистанционно, Управление, организация и планирование производства

Срок сдачи к 15 янв.

11 минут назад

Предиканты

Контрольная, Математика

Срок сдачи к 15 янв.

11 минут назад

Выполнить контрольную работу в виде реферата

Контрольная, Историческая геология

Срок сдачи к 16 янв.

11 минут назад

тмм 23-8

Курсовая, тмм

Срок сдачи к 19 янв.

11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

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

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно