Отчет 2 (Готовая лаба №2)
Описание файла
Файл "Отчет 2" внутри архива находится в папке "Готовая лаба №2". Документ из архива "Готовая лаба №2", который расположен в категории "". Всё это находится в предмете "системное программирование" из 4 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "системное программирование" в общих файлах.
Онлайн просмотр документа "Отчет 2"
Текст из документа "Отчет 2"
7
Защищено: Большаков С.А./ Гапанюк Ю.Е. "__"_____________2014 г. | Демонстрация: Большаков С.А./ Гапанюк Ю.Е. "__"_____________2014 г. |
Лабораторная работа №2 по курсу
Системное программирование
"Разработка управляющих файлов для режима командной строки ОС"
5
(количество листов)
Вариант № 9
ИСПОЛНИТЕЛЬ: | |
студент группы ИУ5-42 | ________________ |
Зайков С.А. | "__"_____________2014 г. |
Москва - 2014
-
Цель лабораторной работы
Целью выполнения лабораторной работы является изучение изучения языка командных файлов, разработка и отладка простой программы на этом языке. Студенты осваивают способы программирования и отладки на этом языке программ, изучают конкретные команды ДОС и утилиты BE/CHOICE, учатся создавать инструкции работы с командным файлом на БНФ (Бекуса Нормальная Форма – типовой язык описания инструкций). Они получают навыки запуска программ в режиме командной строки и использования команд ОС, а также применения режима командной строки при выполнении различных системных работ.
-
Требования к выполнению лабораторной работы
При разработке собственной программы на языке командных файлов и их отладки в режиме командной строки, студент должен выполнить следующие требования при разработке и отладке программы на языке командных файлов:
-
В командном файле должно быть выведено текстовое меню (на базе команды ECHO и утилиты BE, или команды CHOICE –раздел 6 пособия по ЛР), содержащее не менее 5 пунктов меню ("1. ???", "2. ???" и т.д.). Если в используемой версии ОС команда CHOICE отсутствует, то можно написать либо собственную программу на СИ или Ассемблере выполняющую такие же действия, либо скачать ее с сайта по дисциплине СП, либо найти другой способ решения проблемы (решите эту задачу самостоятельно).
-
Должен быть предусмотрен пункт меню для выдачи справки о программе. В этом пункте на консоль выводится информация (с помощью команды ECHO) о: группе студента, ФИО и номере варианта. Справка с выводом этих параметров должна производиться из другого (отдельного) командного файла (help.bat), для чего используется специальная команда вызова (CALL). Из второго командного файла выполняется возврат в основной файл (EXIT). Смотрите подраздел вложенные командные файлы в обем пособии по ЛР.
-
При построении программы командного файла нужно обязательно использовать, или продемонстрировать использование следующие команды ОС: GOTO, SHIFT, REM, IF, SET, CALL и одну из утилит BE/CHOICE (как минимум для выдачи звукового сигнала). Инструкцию по работе с этой утилитой можно получить, вызвав ее так: ">BE ? ". Саму утилиту можно перекачать с сайта или получить у преподавателя.
-
В командном файле, при его вызове, должно быть задано не менее чем двух параметраов командной строки (%1,%2 и т.д.). Назначение параметров определяется вариантами по группам (см. ниже).
-
В основном файле должна быть использована команда PAUSE с текстом запроса для одного из режимов работы.
-
В программе должен выдаваться звуковой сигнал через динамик (BE BEEP) с количеством повторений, задаваемым параметром из командной строки, число повторений которых определяется вариантом.
-
Экран должен быть предварительно очищен (команда ОС - CLS) в начале работы программы и очищен после завершения работы командного файла. После завершения работы программы на экране должна оставаться только справка о работе программы (см. варианты с возможностью отключения справки). На экране не должны отображаться выполняемые команды для всего командного файла (ECHO OFF).
-
В командном файле должны быть предусмотрены комментарии (REM). Комментарии должны пояснять, как минимум, следующие фрагменты программы командного файла: часть разбора параметров, часть вывода меню, часть опроса и переключателя, части выполняемые по каждому пункту меню, завершающую часть программы командного файла.
-
После отладки программы командного файла нужно написать краткую инструкцию для работы с ним, используя формат описания БНФ (Бекуса Нормальная Форма – типовой язык описания инструкций – см. раздел 4 пособия) и дать краткое текстовое описание его работы. Инструкция должна быть ориентирована на пользователя и должна содержать всю необходимую информацию для его работы с Вашей программой (в нашем случае пользователем является преподаватель, принимающий защиту).
-
Срок выполнения и защиты 2-й лабораторной работы 2-я неделя семестра.
-
Для выполнения ЛР нужно изучить разделы 1, 7 (для отладки в режиме командной строки), 6 (использование утилит BE и CHOICE) и 5 (язык командных файлов) пособия - “ Методического пособия для выполнения лабораторных работ по дисциплине СП ”, представленного на сайте.
-
Основная Часть
Help.BAT:
echo Studen Zaykov Sergey Alexeevich group IU5-42 BMSTU
pause
exit
Lab2-1.BAT:
:menu
REM Очищаем экран
cls
REM Выводим меню
echo 1. Ping Information
echo 2. Ping 10 packs with timeout 83ms
echo 3. Ping BMSTU site
echo 4. Ping BMSTU site with files of 100kb
echo 5. Student Information
echo 6. Exit
REM Просим выбрать один из пунктов меню
be ask "Chose 1-6" '123456' default=2 timeout=50
if ERRORLEVEL 6 goto 6
if ERRORLEVEL 5 goto 5
if ERRORLEVEL 4 goto 4
if ERRORLEVEL 3 goto 3
if ERRORLEVEL 2 goto 2
if ERRORLEVEL 1 goto 1
goto fin
:1
REM Выводим информациюо команде Ping
echo Using Ping Information
ping /?
pause
goto menu
:2
REM Пингуем сайт МГТУ 10ю пакетами с таймаутом 83 мс
echo Using Ping 10 packs with timeout 83ms
ping -n 10 -w 83 bmstu.ru
pause
goto menu
:3
REM Пингуем сайт МГТУ в стандартном режиме
echo Using Ping BMSTU site
ping bmstu.ru
pause
goto menu
:4
REM Пингуем сайт МГТУ пакетами по 100байт
echo Using Ping BMSTU site with files of 100b
ping -l 100 -n 7 bmstu.ru
pause
goto menu
:5
REM Выводим информацию о студенте
call help.bat
goto menu
:6
REM Выходим из командного файла
echo Exit
goto fin
:fin
REM В цикле от второго параметра до 1 с шагом -1 проходим и Бипаем
for /l %%i in (%2,-1,1) do BE BEEP
REM Если первый параметр равен 0 - сразу выходим, иначе делаем паузу
IF %1 == 0 goto ex
pause
:ex
echo Exit the Programm
exit
Lab2-main.bat:
@echo off
REM Выбираем одини из пунктов меню
echo 1. Get pause before exit with 3 beeps
echo 2. Don't get pause before exit with 2 beeps
be ask "Chose 1-2: " '12'
REM Если выбран 1й пункт - идет к 1й метке
REM Если выбран 2й пункт - идем ко 2й метке
if ERRORLEVEL 2 goto 2
if ERRORLEVEL 1 goto 1
goto fin
:1
REM Открываем командный файл с параметрами 1, 3
Lab2-1.bat 1 , 3
:2
REM Открываем командный файл с параметрами 0, 2
Lab2-1.bat 0 , 2
exit
-
Результаты работы