Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
ІНТЕГРОВАНЕ СЕРЕДОВИЩЕ Турбо Паскаль 7.0
Організація роботи в середовищі Турбо Паскаль

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

turbo <ім'я файла>.pas [Enter].

Після запуску з'являється вікно редактора, загальний вид якого показаний на рисунку. Вихід з системи відбувається при натисненні клавіш [Alt+Х], або через головне меню.

При роботі в Windows запуск системи Турбо Паскаль проводиться за допомогою подвійного клацання лівої кнопки миші по іконці програми Турбо Паскаль.

Якщо набрана команда TURBO без імені файлу, то робота вестиметься з непой-менованим файлом NONAME00.PAS , який в процесі роботи необхідно буде перей-менувати в <ім'я файла>.pas. (рисунок)
Верхній рядок екрану містить всі команди головного меню. У останньому рядку приведені основні доступні в кожен момент функціональні клавіші з вказівкою їх призначення. Вхід в головне меню здійснюється натисненням клавіші [F10], а вихід – клавішею [Esc].

Процес підготовки, відладки, редагування і виконання програми починається з того, що користувач набирає текст програми у вікні редактора, користуючись клавішами переміщення курсора, клавішами алфавіту, цифровими і ін.
Щоб не втратити набраний вами текст програми (це може, наприклад, відбутися при випадковому відключенні живлення комп'ютера), необхідно зберігати текст програми на диску, натискаючи клавішу [F2]. Текст буде збережений у файлі <ім'я файла>.pas.

Проаналізувавши візуально текст набраної програми і переконавшись, що немає очевидних помилок, виконують компіляцію і виконання програми. Для цього слу-жить команда головного меню Run або еквівалентне їй поєднання клавіш [Ctrl+F9]. Ця команда працює таким чином: транслює (компілює) програму, що знаходиться на екрані редактора, тобто переводить текст програми на машинну мову і, якщо в ній не знайдено синтаксичних помилок, запускає програму на ви-конання; якщо програма вже раніше відкомпілювалася (наприклад, командою Compile головного меню), то команда Run ([Ctrl+F9]) відразу посилає програму на виконання, не проходячи етап компіляції.

Як правило, відразу набрати складну програму без помилок не вдається. При цьому всі помилки діляться на три типи: синтаксичні помилки, що виявляються при компіляції; помилки на етапі виконання програми; алгоритмічні помилки;

Синтаксичні помилки, пов'язані з порушенням правил мови Паскаль, виявляються компілятором. Місце цієї помилки указуватиме курсор, що поміщається компіля-тором на помилковий оператор (як правило). При цьому з'являється виділене кольором підвищеної яскравості повідомлення про помилку (діагностика). У ньому приводяться номер помилки і пояснюючий текст на англійській мові.

Другий тип помилок – це помилки, що приводять до аварійного завершення про-грами на етапі виконання. Часто це може відбуватися при спробі виконати неко-ректну арифметичну операцію, наприклад, добути корінь квадратний з від'ємного числа або поділити на нуль.

Нарешті, алгоритмічні помилки, які програміст повинен самостійно “відловлю-вати” і усувати, вирішуючи серію допоміжних тестових задач.

Примусово перервати виконання програми можна, натиснувши клавіші [Ctrl+С] або [Ctrl+Break]. На етапі виконання результати розрахунку виводяться у вікно Output. Щоб їх проглянути, з активного вікна редактора слід натиснути клаві-ші [Alt+F5]. Для подальшого повернення у вікно редагування достатньо натисну-ти будь-яку клавішу.

У разі виникнення проблем, у системі Турбо Паскаль можна натисненням клавіш [Ctrl+F1] викликати контекстно-залежну допомогу (дуже ефективну і корисну для програміста). Вихід з підказки проводиться клавішею [Esc].
1 | Автор: admin | 2014-09-07, 21:43   |  Репутация: [ + 22 ]
Головне меню

Управління роботою і налаштування у системі Турбо Паскаль здійснюються за до-помогою команд, що містяться в головному меню.

Поле головного меню містить наступні команди: File- (файл), Edit-(редагування), Search- (пошук), Run- (виконання), Compile- (компіляція), Debug- (відладка), Tools- (інструментарій), Options- (опції), Window-(робота з вікнами), Help-(допомога).

Наведемо опис основних команд головного меню. Щоб здійснити їх виклик, необ-хідно, ввійшовши в меню, виділити курсорною рамкою або покажчиком миші (кур-сором) потрібний пункт меню і потім натиснути [Enter].

Команда File

Команда File містить функції, що управляють роботою з файлами. Активізація цієї команди приводить до появи на екрані підменю з наступними опціями.

New - видалення поточної програми з оперативної пам'яті, очищення екрану і створення нового файлу з ім'ям NONAMEXX.PAS.

Open - завантаження файлу з диска в нове вікно редактора. При цьому в діалоговому вікні на вибір пропонуються імена файлів з маскою *.pas . Якщо ввес-ти ім'я, якого немає в поточному каталозі, то буде створений новий файл. Синонім команди Open - натиснення клавіші [F3].

Save - збереження на диску поточного редагованого файлу. Якщо ім'я файлу бу-ло NONAMEXX.PAs, то середовище запитає нове ім'я. Синонім команди Save - на-тиснення [F2].
Save as - записує вміст вікна на диск під іншим ім'ям. У полі введення діа-логового вікна необхідно написати нове ім'я, якому автоматично буде дане розширення .pas.
Save all - зберігає вміст всіх вікон редактора у вигляді файлів на диску.
Change dir - змінює поточний каталог користувача.
Print - друкує вміст поточного вікна на принтері.
Printer setup - дозволяє здійснити налаштування принтера і параметрів дру-ку.
Dos shell - тимчасовий вихід в DOS. Для повернення в Турбо-середовище необ-хідно набрати команду Exit і натиснути [Enter].
Exit - завершує роботу з Турбо Паскалем. Синонім команди – поєднання клавіш [Alt+X].

Команда Edit

Undo - відміна попередньої дії в редакторі. Синонім – [Alt+BackSpace].
Redo - відміняє дію команди Undo.
Cut (“вирізати”) - видаляє виділений блок тексту з вікна редактора і перено-сить його в буфер обміну Clipboard . Синонім – [Shift+Del].
Copy - копіює виділений блок з вікна редактора в буфер обміну Clipboard .
Синонім –[Ctrl+Ins].

Paste (“вставити”) - зворотне копіювання вмісту буфера обміну Clipboard у вік-но редактора, в те місце, де в даний момент знаходиться курсор. Синонім – [Shift+Ins].
Clear - видаляє з вікна редактора виділений блок без переміщення його в буфер обміну. Синонім [Ctrl+Del].
Show clipboard - відображає вміст буфера обміну.

Команда Search

Find - здійснює пошук потрібного фрагмента тексту. У діалоговому вікні при цьому необхідно ввести ключовий рядок для пошуку.
Replase - відшукавши заданий фрагмент тексту, Турбо-середовище замінює йо-го на новий фрагмент, який заздалегідь вводиться у відповідне діалогове вік-но. При включеній опції Change all будуть автоматично проведені заміни всіх входжень фрагмента без запитів на підтвердження.
Search again - повторення пошуку.
Go to line number - перехід на рядок редактора з вказаним номером.

Команда Run

Run ([Ctrl+F9]) - запускає компіляцію (трансляцію), компоновку (збірку, лін-ковку) і виконання програми без проміжної участі програміста.

Go to cursor ([F4]) - на режимі відладки здійснює прогін від виділеного го-лубим кольором рядка до рядка, в якому знаходиться курсор.

Trace Into ([F7]) - запускає режим покрокового (рядкового) виконання програ-ми (трасування). Багато разів натискаючи клавішу [F7], рядок за рядком, можна виконати всю програму. Черговий рядок при цьому підсвічується голубим кольором.

Step over ([F8]) - виконує ті ж дії, що і [F7], але без трасування процедур і функцій.

Program reset ([Ctrl+F2]) - переривання режиму відладки (трасування). При цьому гасне підсвічування поточного рядка.

Команда Compile

Крім команди Run компіляцію програм можна здійснювати в режимі Compile, діс-таючи при цьому додаткові можливості роботи з об'єктними файлами.

Compile ([Alt+F9]) – компілює ту програму, яка знаходиться у вікні редактора (або ту, що міститься у файлі, ім'я якого вказано в підкоманді Primary file команди Compile).

Make ([F9]) – компілює програму разом зі всіма модулями користувача, що викли-каються, в які були внесені зміни.

Build - на відміну від команди Make перекомпілює всі модулі, незалежно від того, чи вносилися в них зміни.

Команда Debug

Команда Debug надає можливість проводити ефективну відладку програми, ви-значати і змінювати значення змінних в ході трасування, проглядати вміст стека звернень до процедур і т.д.

Команда Options

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

Команда Window

Tile (“черепиця”) - розташовує вікна так, щоб кожне вікно було видне на екрані і всі вони мали б рівні розміри.
Cascade - вікна розташовуються каскадом, з перекриттям.
Zoom ([F5]) – відкриває вікно на весь екран або повертає йому колишній вигляд.
Next ([F6]) – перемикання від одного активного вікна до іншого.
Close ([Alt+F3]) – закриває активне вікно.

Команда Help

Команда Help – видача довідкової інформації. Особливо ефективна і корисна її підкоманда Topic Search ([Ctrl+F1]), що дає повні пояснення до оператора або службового слова, під яким в даний момент знаходиться курсор. При цьому пропонується Example – текст програми, в якому правильним чином використаний даний оператор.
2 | Автор: admin | 2014-09-07, 21:56   |  Репутация: [ + 22 ]
2 | Автор: admin | 2014-09-07, 21:56   |  Репутация: [ + 22 ]
Робота з вікнами

Не дивлячись на те, що Турбо Паскаль як інтегроване середовище програмування виник набагато раніше, ніж операційне середовище Windows (в перекладі Вікна), в ньому реалізовані риси перспективного принципу підтримки багатовіконного режиму роботи.

Для обміну інформацією між програмістом і середовищем в Турбо Паскалі існує декілька основних видів вікон. У вікні редактора програміст набирає і корек-тує тексти програм, причому одночасно може бути завантажено декілька текстів. Вікно програми служить для показу результатів виконання(“прогону”) програми (“гарячі” клавіші - [Alt+F5], а вихід з цього вікна в редактор – натиснення будь-якої клавіші). В процесі відладки, використовуючи вікно спостереження (команда DEBUG/WATCH), можна у реальному часі відстежувати зміни значень змінних. Є і довідкове вікно (поєднання клавіш [Ctrl+F1]), в якому з'являють-ся різні корисні відомості. Прямо з нього можна скопіювати і перенести в свою програму фрагмент тексту діючого прикладу. Одночасно на екрані, накладаючись частково одне на одне, може бути присутнім відразу декілька вікон, проте тільки одне з них активне в кожен момент. Активне вікно обкреслюється подвій-ною рамкою, неактивне - одинарною. Для зміни активного вікна використовуєть-ся клавіша [F6] або клацання миші. Клавіша [F5] відкриває вікно на весь екран або повертає вікну звичний розмір. Команда [Alt+F3] закриває вікно і видаляє його з екрану.

Положення і розміри активного вікна можна змінити. Для цього командою [Ctrl+F5] викликаємо режим модифікації. Рамка вікна стає зеленою (зазвичай). Тепер клавішами управління курсором вікно переміщаємо по екрану, а в поєднан-ні з клавішею [Shift] міняємо розміри вікна. Фіксуємо всі зміни клавішею [Enter]. При роботі з мишею ці ж дії можна виконати, захоплюючи покажчиком миші заголовок вікна або правий нижній його кут. Клацаючи покажчиком миші по позиції [] у заголовку, ми закриваємо і видаляємо вікно з екрану. Позиції [] або [] служать для відкриття вікна або повернення його до звичних розмірів.

Окрім розглянутих типів вікон, у міру потреби на екрані розвертаються діало-гові вікна. Усередині них може бути декілька полів. За допомогою поля введення, в якому є мерехтливий курсор, програміст може ввести з клавіатури числа або текстовий рядок. У полі вибору середовище пропонує можливі варіанти опцій, що служать для установки необхідних настройок середовища. Для переходу від одних полів до інших служить клавіша [Tab]. Усередині полів переміщення проводиться клавішами управління курсором або мишею. Закрити діалогове вікно можна клавішею [Enter]. В цьому випадку реалізуються всі зміни, проведені у вікні. Щоб закрити вікно без збереження результатів наших маніпуляцій, необхідно натиснути кнопку [Cancel].
3 | Автор: admin | 2014-09-07, 21:57   |  Репутация: [ + 22 ]
Текстовий редактор

Вище була описана команда Edit головного меню, за допомогою якої можна прово-дити обробку тексту програми. На додаток до цього система Турбо Паскаль надає достатньо ефективні можливості прямого редагування тексту.
Редагування тексту може здійснюватися в режимі вставки і заміни. У режимі вставки символ, що вводиться, розсовує текст, зміщуючи залишок рядка управо. У режимі заміни новий символ замінює той символ, на який указує курсор, при цьому залишок рядка не зміщується. Зміна режимів здійснюється клавішею [Ins]. При включеному режимі заміни курсор є великим мерехтливим прямокутником, що затуляє символ цілком.
Для видалення рядка, в якому знаходиться курсор, використовується команда [Ctrl+Y]. Відновлення видаленого рядка здійснюється командою [Alt+BackSpace].

Ефективним прийомом редагування тексту є робота з блоками. Блок– це частина (фрагмент) тексту. Командою [Ctrl+K,В] позначається початок блоку з по-зиції, в якій коштує курсора. Слід зазначити, що всі букви в командах наби-раються в латинському алфавіті. Кінець блоку позначається командою [Ctrl+K,K] у позиції нового місцеположення курсора. Після цього блок виділяється іншим кольором, відмінним від кольору решти. Після виділення блоку з ним можна про-вести наступні маніпуляції, використовуючи приведені нижче поєднання клавіш:

[Ctrl+K,Y] – видалити блок;
[Ctrl+K,C] – скопіювати блок;
[Ctrl+K,V] – перемістити блок;
[Ctrl+K,W] – записати блок у файл. При цьому в діалоговому вікні необхідно задати ім'я файлу;
[Ctrl+K,R] – прочитати блок з файлу. У діалоговому вікні необхідно задати ім'я файлу;
[Ctrl+K,P] – друкувати блок на принтері;
[Ctrl+К,H] – зняти виділення блоку.

Звичайно редактор працює в режимі автовідступу, коли кожен новий рядок почи-нається на екрані з тієї ж позиції, що і попередня. Відмовитися від режиму можна командою [Ctrl+О,I]. Повторне натиснення відновить режим автовідступу.
4 | Автор: admin | 2014-09-07, 21:59   |  Репутация: [ + 22 ]
Інтегрований відладчик

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

Процес відладки полягає в пошуку помилок, які були допущені при програмуван-ні. Основний принцип відладки полягає в можливості трасування - покрокового виконання тіла програми, одержуючи на кроках інформацію про те, як виконався той або інший оператор.

Припустимо, що нам необхідно відлагодити деяку програму, що містить блок операторів:
……
а := 1;
b := 2;
С := 1;
d := b * b – 4 * а * с;
e := (а + b + с) / d;
writeln(‘e = ’, e:8:3);
……
Відладку починаємо, натискаючи клавішу [F7], або вибираємо команду Trace into пункту Run головного меню (складні команди записуватимемо у вигляді: Run/Trace into).

Якщо блок віддалений від початку програми, то потрібно встановити на нього курсор (оператор a:=1;) і натиснути [F4] (команда Run/Go to cursor). При первинному зверненні до відладки вказані дії викликають компіляцію і прогін програми до блоку, що цікавить нас, після чого комп'ютер переходить в режим очікування. Подальші натиснення [F7] або [F8] (команда Run/Step over), якщо нас не цікавить трасування процедур, приведуть до рядкового виконання програ-ми. Виконуваний в даний момент рядок підсвічується голубим кольором. Для по-легшення виконання відладки рекомендується на цьому етапі роботи в кожному рядку розміщувати тільки один оператор. У випадку, що розглядається, побачимо, що при обробці п'ятого рядка блоку виникне аварійний останов програми у зв'язку з діленням на нуль.

Відмова від процесу відладки проводиться клавішами [Ctrl+F2] (команда Run/Program reset).
Ефективність відладки багато разів підвищується завдяки можливості бачити, як міняються значення змінних після виконання кожного оператора. Для цього вклю-чаємо вікно спостереження командою Debug/Watch. Перед цим за допомогою натиснення клавіш [Ctrl+F7] (команда Debug/Add watch) викликається діалогове вікно для вказівки значень змінних або арифметичних і логічних виразів, які необхідно спостерігати.

При відладці дуже зручно працювати з багатовіконним екраном. Для цього необ-хідне по черзі вікно редактора, вікно спостереження і вікно програми транс-формувати і перемістити у відповідне місце.

Повертаючись до відладки блоку операторів, відзначимо, що увівши у вікно спо-стереження змінні d і e, вже після виконання перших чотирьох рядків блоку (4 натиснення клавіші [F7]) ми одержимо d = 0. Таким чином, хоча програма ще не зробила аварійну зупинку, ми вже одержимо інформацію про те, що наближається “поділення на нуль” на наступному кроці трасування.

Проте можливості відладки на цьому ще не вичерпані. Викликавши клавішами [Ctrl+F4] (команда Debug/Evaluate/Modify), можна “замовити” нове модифіковане значення для змінної, через яку можливо відбувається аварійна зупинка. У ряд-ку Expression слід ввести ім'я змінної (у прикладі - це d). При цьому в полі Rezult з'явиться її поточне значення. Потім в рядку New value ввести нове значення цієї змінної (наприклад, d = 1). Після натиснення [Enter] відладка успішно продовжується далі, перейшовши тепер в зону програми, розташованої нижче за вказаний блок. Відзначимо, що “гарячі клавіші” [Ctrl+F4] можна використовувати як вбудований в Турбо Паскаль мікрокалькулятор.

Відладка великих і складних програм викликає необхідність контролювати зна-чення змінних відразу в декількох різних фрагментах програми. Решту ділянок при цьому бажано проганяти швидко, без трасування. Для цього за допомогою клавіш [Ctrl+F8] (команда Debug/Add breakpoint) можна встановити декілька так званих контрольних точок (відповідний рядок буде виділений червоним кольо-ром). Щоб зняти контрольні крапки, використовуються клавіші [Ctrl+F2] (команда Run/Program reset).
5 | Автор: admin | 2014-09-07, 22:01   |  Репутация: [ + 22 ]
Ошибки компиляции

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

1. Out of memory (Выход за границы памяти)
2. Identifier expected (Не указан идентификатор)
3. Unknown identifier (Неизвестный идентификатор)
4. Duplicate identifier (Двойной идентификатор)
5. Syntax error (Синтаксическая ошибка)
6. Error in integer constant (Ошибка в целой константе)
7. String constant exceeds fine (Строковая константа превышает допустимые размеры)
8. Error in real constant (Ошибка в вещественной константе)
9. Unexpected end of file (Не найден конец файла)
10. Line too tons (Слишком длинная строка)
11. Type identifier expected (Здесь нужен идентификатор типа)
12. Too many open files (Слишком много открытых файлов)
13. File not found (Файл не найден)
14. Invalid file name (Неверное имя файла)
15. Disk full (Диск заполнен)
16. Undefiner typein pointer definition (Неопределенный тип в объявлении указателя)
17. Variable identifier expected (Отсутствует идентификатор переменной)
18. Error in type (Ошибка в объявлении типа)
19. Structure too large (Слишком большая структура)
20. Set-base type of range (Базовый тип множества нарушает границы)
21. File components may not be files (Компонентами файла не могут быть файлы)
22. Invalid string length (Неверная длина строки)
23. Type mismatch (Несоответствие типов)
24. Invalid subrange base type (Неправильный базовый тип для типа диапазона)
25. Lower bound greater than upper bound (Нижняя граница больше верхней)
26. Ordinal type expected (Нужен порядковый тип)
27. Integer constant expected (Нужна целая константа)
28. Consant expected (Нужна константа)
29. Integer or real constant expected (Нужна целая или вещественная константа)
30. Pointer type identifier expected (Нужен идентификатор типа)
31. Invalid function result type (Неправильный тип результата функции)
32. Label identifier expected (Нужен идентификатор метки)
33. BEGIN expected (Нужен BEGIN)
34. END expected (Нужен END)
35. Integer expression expected (Нужно выражение типа INTEGER)
36. Ordinal expresiion expected (Нужно выражение перечисляемого типа)
37. Boolean expression expected (Нужно выражение типа BOOLEAN)
38. Operand types do not match operator (Типы операндов не соответствуют операции)
39. Error in expression (Ошибка в выражении)
40. Illegal assigment (Неверное присваивание)
41. Field identifier expected (Нужен идентификатор поля)
42. Code segment too large (Сегмент кода слишком большой)
43. Data segment too large (Сегмент данных слишком велик)
44. DO expected (Нужен оператор DO)
45. OF expected (Требуется OF)
46. INTERFACE expected (Требуется интерфейсная секция)
47. Invalid relocatable refence (Неправильная перемещаемая ссылка)
48. THEN expected (Требуется THEN)
49. TO or DOWNTO expected (Требуется TO или DOWNTO)
50. Undefiner forward (Неопределенное опережающее описание)
51. Invalid typecast (Неверное преобразование типа)
52. Division by zero (Деление на нуль)
53. Invalid file type (Неверный файловый тип)
54. Cannot Read or Write variables of this type (Нет возможности считать или записать переменые данного типа)
55. Pointer variable expected (Нужно использовать переменную-указатель)
56. String variable expected (Нужна строковая переменная)
57. String expression expected (Нужно выражение строкового типа)
58. Circular unit refence (Перекрестная ссылка модулей)
59. Unit name mismatch (Несоответствие имен программных модулей)
60. Unit version masmatch (Несоответствие версий модулей)
61. Internal stack overflow (Переполнение внутреннего стока)
62. Unit file format error (Ошибка формата файла модуля)
63. Implementation expected (Отсутствует исполняемая часть модуля)
64. Constant and case types do not match (Типы констант и тип выражений оператора CASE не соответствуют друг другу)
65. Record or object variable expected (Нужна переменная типа запись или объект)
66. Constant out of range (Константа нарушает границы)
67. File variable expected (Нужна файловая переменная)
68. Pointer expression expected (Нужно выражение типа указатель)
69. Integer or real expression expected (Нужно выражение вещественного или целого типа)
70. Label not within current block (Метка не находится внутри текущего блока)
71. Label already defined (Метка уже определена)
72. Undefined label in processing statement part (Неопределенная метка в предшествующем разделе операторов)
73. Invalid @ argement (Неправильный аргумент операции @)
74. Unit expected (Нужно кодовое слово Unit)
75. <;> expected (Нужно указать <;>)
76. <:> expected (Нужно указать <:>)
77. <,> expected (Нужно указать <,>)
78. <(> expected (Нужно указать <(>)
79. <)> expected (Нужно указать <)>)
80. <-> expected (Нужно указать <->)
81. <:=> expected (Нужно указать <:=>)
82. <[> or <(.>expected (Нужно указать <[> или <(.>)
83. <]> or <.)> expected (Нужно указать <]> или <.)>)
84. <.> expected (Нужно указать <.>)
85. <..> expected (Нужно указать <..>)
86. Too many variables (Слишком много переменных)
87. Invalid FOR control variable (Неправильный параметр цикла оператора FOR)
88. Integer variable expected (Нужна переменная целого типа)
89. Files types are not allowed here (Здесь не могут использоваться файлы)
90. String length mismatch (Несоответствие длины строки)
91. Invalid orering of fields (Неверный порядок полей)
92. String constant expected (Нужна константа строкового типа)
93. Integer or real variable expected (Нужна переменная типа INTEGER или REAL)
94. Ordinal vairale expected (Нужна переменная порядкового типа)
95. Character expression expected (Предшествующее выражение должно символьный тип)
96. Overflow in arithmetic operation (Переполнение в арифметической операции)
97. No enclosing For, While or Repeat statement (Операторы For, While или Repeat без окончания)
98. Case constant out of range (Константа Case нарушает допустимые границы)
99. Error in statement (Ошибка в операторе)
100. Must be in 8087 mode to compile this (Для компиляции необходим режим 8087)
101. Target address not found (Указанный адрес не найден)
102. Include files are not allowed here (Здесь не допускаются включаемые файлы)
103. Invalid qualifier (Неверный квалификатор)
104. Invalid variable refence (Недействительная ссылка на переменную)
105. Too many symbols (Слишком много обозначений)
106. Statement part too large (Слишком большой раздел операторов)
107. Files must be var parameters (Файлы должны передаваться по имени)
108. Header does not match previous definition (Заголовок не соответствует предыдущему определению)
109. Cannot evaluate this expression (Некорректное вычисление выражения)
110. Invalid format specifier (Неверный спецификатор формата)
111. Invalid indirect refence (Недопустимая косвенная ссылка)
112. Structured variable are not allowed here (Здесь нельзя использовать переменную структурного типа)
113. Cannot evaluate without System unit (Нельзя вычислить выражение без модуля SYSTEM)
114. Cannot access this symbol (Нет доступа к данному символу)
115. Invalid floating-point operation (Недопустимая операция с плавающей запятой)
116. Procedure or function variable expected (Должна использоваться переменная процедурного типа)
117. Invalid procedure or function refence (Недопустимая ссылка на процедуру или функцию)
118. File access denied (Отказ в доступе к файлу)
119. Object type expected (Здесь должен быть тип OBJECT)
120. Local object types are not allowed (Нельзя объявлять локальные объекты)
121. VIRTUAL expected (Пропущено слово VIRTUAL)
122. Method identifier expected (Пропущен идентификатор инкапсулированного правила)
123. Virtual constructor are not allowed (Конструктор не может быть виртуальным)
124. Destructor identifier expected (Пропущен идентификатор деструктора)
125. Fail only allowed within constructor (Неизвестный модуль)
126. Invalid combination of opcode and operends (Недопустимая комбинация кода команды и операндов)
124. Memory refence expected (Нужна ссылка на память)
125. Invalid symbol refence (Неверное обозначение ссылки)
126. Code generation error (Ошибка при генерации программы)
127. Duplicate dynamic method index (Повторяется индекс динамического правила)
128. Procedure or function identifier expected (Нужен идентификатор процедуры или функции)
6 | Автор: admin | 2014-09-07, 22:30   |  Репутация: [ + 22 ]
Ошибки, возникающие во время выполнения программы

Некоторые ошибки, обнаруженные во время выполнения программы, приводят к
появлению на экране сообщения вида:
Runtime error nnn at xxxx:yyyy
(ошибка периода исполнения nnn по адресу xxxx:yyyy), где nnn- номер ошибки,
xxxx:yyyy- адрес (сегмент и смещение). После этого сообщения программа завершает
свою работу.

Ошибки периода исполнения делятся на четыре категории:

1) Ошибки, обнаруживаемые ДОС (коды ошибок 1-99);
2) Ошибки ввода\вывода (100-149);
3) Критические ошибки (150-199);
4) Фатальные ошибки (200-255);

Ошибки, обнаруживаемые ДОС

1. Invalid function number (Неверный номер функции)
2. File not found (Не найден файл)
3. Path not found (Путь не найден)
4. Too many open files (Слишком много открытых файлов)
5. File access defined (Отказано в доступе к файлу)
6. Invalid file handle (Недопустимый файловый канал)
7. Invalid file access code (Недействительный код доступа к файлам)
8. Invalid drive number (Недопустимый номер дисковода)
9. Cannot remove current directory (Нельзя удалить текущий каталог)
10. Cannot rename across drives (Нельзя при переименовании указывать разные дисководы)

Ошибки ввода\вывода

1. Disk read error (Ошибка чтения с диска)
2. Disk write error (Ошибка записи на диск)
3. File not assigned (Файлу не присвоено имя)
4. File not open (Файл не открыт)
5. File not open\or output (Файл не открыт для вывода)
6. Invalid numeric format (Неверный числовой формат)

Критические ошибки

1. Disk is write protected (Диск защищен от записи)
2. Unknown unit (Неизвестный модуль)
3. Drive not ready (Дисковод находится в состоянии "Не готов ")
4. Unknown command (Неопознанная команда)
5. CRC error in data (Ошибка в исходных данных)
6. Bad drive request strukture length (При обращении к диску указана неверная длина структуры)
7. Disk seek error (Ошибка при операции установки головок на диск)
8. Unknown media type (Неизвестный тип носителя)
9. Sector not found (Сектор не найден)
10. Printer out of paper (Кончилась бумага на принтере)
11. Device write\emit (Ошибка при записи на устройство)
12. Device read fault (Ошибка при чтении с устройства)
13. Hardware failure (Сбой аппаратуры)

Фатальные ошибки

Эти ошибки всегда приводят к немедленной остановке программы.
1. Division by zero (Деление на нуль)
2. Range check error (Ошибка при проверке границ)
3. Stack overflow error (Переполнение стека)
4. Hearp overflow error (Переполнение кучи)
5. Invalid pointer operation (Недействительная операция с указателем)
6. Floating point overflow (Переполнение при операции с плавающей запятой)
7. Invalid floating point operation (Недопустимая операция с плавающей запятой)
8. Floating point underflow (Исчезновение порядка при операции с плавающей запятой)
9. Object not initialized (Не инициирован объект)
10. Call to abstract method (Вызов абстрактного правила)
7 | Автор: admin | 2014-09-07, 22:33   |  Репутация: [ + 22 ]
  • Страница 1 из 1
  • 1
Поиск: