Мегаобучалка Главная | О нас | Обратная связь


Счет и отладка программы



2020-02-03 212 Обсуждений (0)
Счет и отладка программы 0.00 из 5.00 0 оценок




После подготовки текста программы необходимо откомпилировать программу, при необходимости связать ее с библиотекой стандартных процедур и функций, загрузить ее в оперативную память и передать ей управление. Вся эта последовательность действий реализуется одновременным нажатием клавиш Ctrl-F9.

Если в программе нет ошибок, то все действия выполняются последовательно одно за другим, при этом на экране сообщается о количестве строк откомпилированной программы и объеме доступной оперативной памяти.

Перед передачей управления загруженной программе среда очищает экран и на него выводятся результаты выполнения программы, а после завершения работы программы вновь восстанавливается окно редактора.

Если на каком-нибудь этапе среда обнаружила ошибку, она прекращает дальнейшее действие, восстанавливает окно редактора и помещает курсор на ту строку программы, на которой обнаружена ошибка. При этом в верхней строке редактора появляется диагностическое сообщение о причине ошибки. Необходимо найти причину ошибки и отредактировать текст. В более сложных ситуациях прибегают к пошаговому исполнению программы, например, последовательным нажатием F7. В случае необходимости можно просмотреть значения проверяемых переменных. Для этого поместите курсор в строку, содержащую переменную, и нажмите Ctrl-F4. В появившемся диалоговом окне в верхнем поле будет имя переменной, нажав на ENTER, в среднем поле получим ее значение. В верхнее поле можно с клавиатуры вводить имена переменных или выражение.

Справочная система

В затруднительной ситуации нажмите на клавишу F1 или CTRL-F1 (для объяснения конкретной ситуации) и на экране высветится необходимая справка. Во многих случаях справка содержит пример небольшой программы, которую можно скопировать в окно редактирования, запустить на выполнение и посмотреть результат.


ПРИЛОЖЕНИЕ 7

Обозначения основных символов, используемых при составлении

Блок-схем алгоритмов (ГОСТ 19.003-80)

 

 


ПРИЛОЖЕНИЕ 8

Директивы компилятора

 

В Турбо-Паскале можно использовать директивы компилятора , которые в виде особым образом оформленных комментариев вставляются в текст программы и изменяют те или иные возможности компилятора в процессе компиляции. Директивы обрамляются в фигурные скобки. За открывающейся скобкой должен следовать знак доллара $. Знак плюс означает установку опции в активное состояние, а знак минус - в пассивное. В одной директиве можно указать несколько опций через запятую: {$N+,E+}

Список основных директив компилятора

· {$A-} разрешает для переменных и типизованных констант выравнивание на границу слова. Для процессоров 80х86 это приводит к более быстрому доступу к памяти. По умолчанию эта опция установлена {$A+}.

· {$B-} устанавливает вычисление булевских выражений по короткой схеме. В зависимости от установленного режима вычисления булевских выражений можно получить код, который выполняется быстрее.

· {$E-} устанавливает режим эмуляции сопроцессора при работе с вещественными данными типа SINGLE, DOUBLE, EXTENDED. По умолчанию директива имеет значение {$E+}.

· {$I-} выключает стандартную проверку ошибок ввода/вывода. Вызвав встроенную функцию IOResult, программист может сам обрабатывать ошибки ввода/вывода.

· {$N-} устанавливает режим подключения сопроцессора при работе с вещественными данными типа SINGLE, DOUBLE, EXTENDED. Система проверяет наличие сопроцессора и при его отсутствии команды сопроцессора эмулируются. Поэтому при работе с указанными вещественными данными необходимо включить две директивы {$N+,E+}.

· {$R-} выключает проверку диапазона. При генерации кода не осуществляется проверка ошибок в индексировании массивов и в присвоении значений.

· {$S-} выключает проверку стека. При генерации кода не осуществляется проверка наличия достаточного пространства в стеке для каждого вызова процедуры или функции.

· {$V-} отменяет проверку параметров var для строк. Это позволяет передавать в качестве фактических параметров строки, длина которых отлична от длины, установленной для  формального параметра var в заголовке процедуры.


ПРИЛОЖЕНИЕ 9

Модуль CRT

Модуль CRT содержит подпрограммы управления текстовым выводом на экран дисплея, звуковым генератором и чтения с клавиатуры.

В режиме текстового вывода координаты экрана следующие: верхний левый угол <1,1>, нижний правый <WindMax>, причем горизонтальная координата возрастает слева направо, а вертикальная - сверху вниз. Если на экране активизировано окно, то все координаты определяются относительно границ окна, за исключением процедуры Window (здесь координаты всегда задаются относительно границ экрана).

Для чтения с клавиатуры используются две функции: KeyPressed и ReadKey. Функция KeyPressed определяет факт нажатия на любую клавишу и не приостанавливает дальнейшее исполнение программы. Функция ReadKey читает расширенный код нажатой клавиши и ожидает действий пользователя.

Управление звуковым генератором строится по схеме Sound - Delay - NoSound. Первая процедура включает генератор и генерирует звук нужного тона. Вторая - приостанавливает работу программы на заданное число миллисекунд реального времени. Третья - отключает звуковой генератор.

КОНСТАНТЫ

CRT - режимы:

BW40     = 0;       { 40x25, черно-белый }

CO40     = 1;        { 40x25, цветной }

BW80     = 2;       { 80x25, черно-белый }

CO80     = 3;       { 80x25, цветной }

Mono     = 7;        { 80x25, монохромный }

Font8x8  = 256;  { добавка для EGA (80x43) или VGA (80x50) }

Константы CRT- режимов для совместимости с версией 3.0:

C40      = CO40;

C80      = CO80;

Константы цвета фона и символов:

Black          = 0;       {черный}

Blue            = 1;       {голубой}

Green         = 2;       {зеленый}

Cyan           = 3;       {бирюзовый}

Red             = 4;       {красный}

Magenta    = 5;       {малиновый}

Brown       = 6;       {коричневый}

LightGray = 7;       {светло-серый}

Константы цвета символов:

DarkGray     = 8;       {темно-серый}

LightBlue     = 9;       {светло-голубой}

LightGreen  = 10;     {светло-зеленый}

LightCyan    = 11;     {светло-бирюзовый}

LightRed      = 12;     {светло-красный}

LightMagenta = 13;     {светло-малиновый}

Yellow           = 14;     {желтый}

White            = 15;     {белый}

Blink            = 128;    {бит мерцания}

ПЕРЕМЕННЫЕ

CheckBreak: Boolean; { Реакция на Ctrl-Break }

  CheckEOF: Boolean; { Реакция на Ctrl-Z - end of file}

DirectVideo: Boolean; { Разрешение/запрещение прямой работы с видеопамятью }

  CheckSnow: Boolean;   { Реакция на "снег" монитора }

LastMode: Word;      { Хранение последнего текстового режима}

TextAttr: Byte;          { Текущий текстовый атрибут}

WindMin: Word;         { Координаты <X,Y> верхнего левого угла текущего окна }

WindMax: Word;      { Координаты <X,Y> нижнего правого угла текущего окна }

ПРОЦЕДУРЫ И ФУНКЦИИ

· procedure AssignCrt(var F: Text);

связывает с файловой переменной устройство ввода/вывода CRT.

· function KeyPressed: Boolean;

возвращает значение True, если на клавиатуре была нажата любая клавиша.

· function ReadKey: Char;

читает символ с клавиатуры без эхо повтора и приостанавливает исполнение программы до нажатия на любую клавишу, кроме Shift, Ctrl, Alt, CapsLock, NumLock, ScrollLock.

· procedure TextMode(Mode: Integer);

устанавливает нужный текстовый режим.

· procedure Window(X1,Y1,X2,Y2: Byte);

открывает текстовое окно на экране с абсолютными координатами <X1,Y2>, <X2,Y2>.

· procedure GotoXY(X,Y: Byte);

перемещает курсор в нужное место <X,Y> активного окна.

· function WhereX: Byte;

возвращает горизонтальную координату X текущего положения курсора в активном окне.

· function WhereY: Byte;

то же для вертикальной координаты Y.

· procedure ClrScr;

очищает окно и помещает курсор в левый верхний угол <1,1>.

· procedure ClrEol;

удаляет все символы от текущей позиции курсора до конца строки без перемещения курсора.

· procedure InsLine;

вставляет пустую строку в позицию курсора.

· procedure DelLine;

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

· procedure TextColor(Color: Byte);

устанавливает цвет символов.

· procedure TextBackground(Color: Byte);

устанавливает цвет фона.

· procedure LowVideo;

устанавливает низкую яркость символов.

· procedure HighVideo;

устанавливает высокую яркость символов.

· procedure NormVideo;

устанавливает нормальную яркость символов.

· procedure Delay(MS: Word);

приостанавливает работу программы на указанное число миллисекунд MS.

· procedure Sound(Hz: Word);

включает звуковой генератор с указанной звуковой частотой Hz.

· procedure NoSound;

выключает звуковой генератор.

 



2020-02-03 212 Обсуждений (0)
Счет и отладка программы 0.00 из 5.00 0 оценок









Обсуждение в статье: Счет и отладка программы

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (212)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.024 сек.)