Методическое пособие для выполнения лабораторных работ и КР (1075934), страница 21
Текст из файла (страница 21)
На экран выводиться следующее сообщение:C:\work>tsrpos /HTest - sample TSR – 2010Parameters: /H or /h - help , /U or /u - unload TSRИнформация!C:\work>_При нажатии на клавишу F1 резидент выдает следующее сообщение в текущую позицию курсора дисплея (курсор расположен после последнего символа):C:\work>TSR: F1 - pushed!!!_При использовании комбинации Ctrl+F1 резидент будет выгружен с помощью своих процедур:C:\work> TSR was unloaded (Ctrl+F1 - TSR part)!_Повторная проверка с помощью MEM должна показать отсутствие резидента в памяти, а размер свободной памяти должен восстановиться к начальному состоянию.C:\work>mem…591664 максимальный размер исполняемой программы…Числовые значения для различных компьютеров могут отличаться от величин,приводимых здесь (это зависит от конкретной конфигурации ОС и установок конкретногокомпьютера), но значения, полученные до загрузки резидента и после его выгрузки должны совпадать в точности до единицы (У нас в примере 591664 = 591664).Выгрузку резидента можно выполнить в нашем случае и из командной строки:C:\work>tsrpos /UTSR was unloaded (Init part)!C:\work>_Контроль выгрузки с помощью MEM здесь выполняется аналогично.
При заданииошибочных параметров будет выдано сообщение:C:\work>tsrpos /LError - command line parameters!C:\work>_Программа данных проверок должна быть оформлена в специальном документе(“Программа и методика испытаний” – см. требования к документации КР на сайте),входящем в состав пакета документации на КР и должна обязательно содержать:− условия проведения испытаний и− последовательность проверок, оформленных в виде таблицы, с обязательными ссылками на пункты функциональных требований ТЗ.Проведение проверок при сдаче КР может быть выполнено выборочно, поэтомуотдельные строки таблицы проверок должны обеспечивать последовательность логическизавершенных действий, не зависящих от других пунктов проверок.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”9921.
Разработка блок-схем программВажнейшим этапом разработки программ и программных систем является формализация процесса выполнения операций (шагов, действий, вложенных процессов и т.д.).Этот этап также называют разработкой алгоритма программы. Для такой формализации(формализованного описания) должны быть использованы формализованные языки, несодержащие неоднозначностей. Существует много подобных графических языков, но, намой взгляд, самым удачным является формализованный язык блок-схем.Нужно иметь в виду, что этот язык подходит не для всех описаний используемыхпри разработке программного обеспечения, а в первую очередь используется для описания последовательности действий и команд. Например, для описания систем классовприменяется язык диаграмм классов, для описания структур баз данных графический языксущностей и связей.
Однако, если Вам необходимо разработать метод класса (процедуру,функцию и т.д.) даже средней сложности, то при разработке ее и ее отладки обойтись безблок-схемы. Я уже не говорю о документировании программного обеспечения, сохранения информации о проекте для последующего сопровождения и модернизации.Для лабораторных работ по дисциплине Системное программирование, при разработке командных файлов и программ на языке Ассемблер, целесообразно (и требуется)использование блок-схем как основного языка для описания алгоритмов. Поэтому, я вданное пособие включил этот раздел.Язык блок-схем является графическим языком описания алгоритмов. В общем случае, блок-схема это ориентированный граф из специальных элементов - блоков (вершины)и связей (стрелки и линии).21.1.
Назначение блок-схем программБлок-схемы (я буду использовать название с дефисом, хотя допустимо и другое)позволяют обеспечить следующее:− Создать формализованное описание алгоритма работы разрабатываемой программы.− На смысловом уровне и на логическом уровне проверить правильность описанногоалгоритма.− Вручную (по шагам) выполнить создаваемую программу и проверить корректностьвыполняемых действий и получаемого результата.− Служить основой для создания программы на конкретном языке программирования.
Обращаю Ваше внимание, что только в этот момент может быть принято решение о выборе языка программирования, причем именно характер блок-схемы,или ее вид, позволяет сделать такой выбор более точно.− Служить подсказкой при отладке программ с помощью универсальных отладчиков.− Не исключено, что по написанной программе может быть повторно построенаблок-схема, а ее можно сравнить с блок-схемой, построенной на этапе проектирования. Это сравнение может привести к следующим выводам: программа построена неверно, блок схема построена неверно или, что не учтены важные особенностиразработанного алгоритма.Думаю, что данный перечень может быть продолжен и далее, а здесь я отмечу, чтоблок-схема программы позволяет представить программу и алгоритм в целом, в виде единого образа, по которому можно дать ее оценку: плохая программа или хорошая. Например, если в блок-схеме много связей (в том числе и избыточных), то, возможно, следуетподумать о том, чтобы использовать процедуры и, тем самым, упростить понимание алго-2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”100ритма и написанной программы.
Считаю, что программист, который не умеет правильнооформлять блок-схемы и не использует их в своей работе, не может претендовать на звание профессионального программиста!В зависимости от этапа разработки алгоритмов программ, блок схемы могут иметьразную степень детальности. Более того, технология разработки блок-схем должна предусматривать последовательное раскрытие деталей алгоритма, постепенное уточнение действий и операций, выполняемых для решения задачи. Самый детальный способ описанияпрограммы – это описание на уровне команд или операций языка. Хотя этого не всегданужно, тем не менее, это возможный и самый низкий уровень описания, к которому нужно стремиться, в частности при документировании программ.Отмечу еще одну особенность блок-схем, которая иногда приводит к недоумению.21.2. Элементы блок-схем программБлок-схемы, как было уже отмечено, представляют собой ориентированный граф, ввершинах которого размещаются специфические элементы.
Каждый элемент имеет особенную структуру, свое назначение и обозначение. Самое существенное отличие элементов – число входящих и выходящих стрелок. Логика работы элемента блок-схемы в основном и определяется их числом. Основные элементы (их обозначения и назначение)представлены в таблицу расположенной ниже.№Обозначение элементаПроцесс1.0Условие12.3.0Условие1НазначениеЭлемент типа процесс описывает последовательностьдействий и операций.
Операции выполняются одназадругой без условий. Имеет одну входящую стрелкуи одну выходящую.Элемент ветвления, типаусловие. Если условие припроверке получает значениеистина (1, ДА, TRUE), тоделе выполняется переходпо стрелке помеченной 1.Если условие получает наконкретном шаге значениеложь (0, НЕТ, FALSE), товыполняется переход пострелке помеченной 0.Это вариант конструкцииусловие.
Описание аналогично. Возможны и другиеварианты стрелок. Самоеглавное: одна входит, а двевыходят.ПримечаниеИспользуетсякак элемент последовательнойдетализации.Можно использовать обозначения стрелок(1, ДА, Истина,FRUE) или (0,НЕТ,ЛОЖЬ,FALSE) соответственно.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”№Обозначение элементаНачало циклаКонеццикла4.ПараметрыциклаИз телациклаВ тело циклаНачало цикла5.Тело цикла101НазначениеДанный элемент, элементописания циклов, имеет двевходящие стрелки и две выходящие стрелки. Назначение стрелок показано на рисунке.
В поле данного блока записываются условияпродолжения цикла и изменяемые на каждом его шагепараметры.ПримечаниеДанныйэлемент рекомендуетсядляоформленияблок-схем лабораторных работ.Другой элемент для организации циклических фрагментов программ. Он соответствует ГОСТу.Этотэлемент состоит из двухчастей, в первой записываются начальные условияцикла, а во второй условияего продолжения.При организации вложенныхциклов не всегда является наглядным.
Элемент не являетобязательсяным для ЛР.Конец циклаП ечать6.7.Элемент для обозначения В ЛР лучше исвывода информации, в ча- пользовать простности на печать. Данный цесс.элемент похож на элементтипа процесс и во многихслучаях может быть им заменен.Ключевое условие12...NЭлемент типа переключа- Рекомендуетсятель.
Имеет один вход и для выполнениямножество выходов. По ЛР по курсу.ключевому условию определяется (вычисляется) номер выхода, по которомупроизводитсяпередачауправления.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”№Обозначение элемента1Условие 128.Условие 2102НазначениеПримечаниеЭто другая форма блока переключателя. Но есть и отличия, например, условия,могут быть разными и число выходов больше на единицу, так как предусмотренвариант, когда ни одно условие не сработало (поумолчанию - default).Применять разновидностиблоковпереключателя желательно на основе логики работы программы.Здесь представлена конструкция, которая не являетсяотдельным элементом блоксхемы, а состоит из трехважных блоков, которыедолжны присутствовать влюбом цикле: задание начальных условий цикла(НУ), тело цикла, проверкаусловиязавершения/продолжения цикла.Этупростейшую, но обобщенную блоксхему я включил для болеечеткого понимания циклов.Такуюконструкцию можноиспользовать соператором IF,if.Здесь также представленаконструкция, которая неявляется отдельным элементом блок-схемы, а состоит из трех важных блоков, аналогичных предыдущей конструкции.
Отличие заключается в том, чтотеоретическивозможенцикл без единого выполнения тела цикла (Сравниконструкции DO и WHILE).Этупростейшую, но обобщенную блоксхему я включил для болеечеткого понимания циклов.Такуюконструкцию можноиспользовать соператором IF,if.NУсловие NНУ цикла9.Тело циклаПродолжитьПроверказавершенияКонецНУ цикла10.ПроверказавершенияКонецПродолжитьТело цикла2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”№Обозначение элементаПроцедура11.Начало12.13.КонецА14.15.16.А103НазначениеТакой элемент используетсядля выделения в блоксхемах участков вызовапроцедур (функций, методов, подпрограмм и т.д.).Двойная стрелка показывает то, что выполняется возврат из процедуры.Данный элемент определяетначало алгоритма, началовыполненияпрограммы.Чаще всего в одной блоксхеме такой элемент один.Имеет одну выходящуюстрелку.Данный элемент определяетконец алгоритма, конец выполнения программы.