
- •Лабораторная работа № 8. Пользовательский интерфейс командной строки в Windows Цель работы
- •Краткие теоретические сведения
- •1. Интерфейс командной строки Windows. Состав команд управления.
- •2. Команды управления файловой системой Windows.
- •3. Основы разработки командных (пакетных) файлов.
- •4. Использование программы Debug
- •Задания для самостоятельного выполнения
- •Контрольные вопросы
4. Использование программы Debug
В составе любой операционной системы, а также в любой среде разработки программных комплексов имеются так называемые программы-отладчики. У операционной системы MS DOS таким отладчиком была программа debug, в последних версиях OS Windows такой программой является ntsd.exe. Первая из этих программ используется для однопрограммных однопользовательских режимов работы и 16-разрядных приложений. Вторая программа предназначена для работы в многопрограммном многопользовательском режиме работы вычислительной системы с 32-разрядными приложениями.
Вызов программы debug осуществляется путем набора в командной строке ее имени и нажатием клавиши <Enter>. Компьютер переходит в режим эмуляции MS DOS. В следующей строке появляется мигающий минус «-» -приглашение к вводу нужной команды. Выход из программы debug осуществляется набором буквы q (Quit - завершение работы).
Список всех команд, выполняемых программой debug можно получить, если в строке приглашения набрать -?.
Программа Debug позволяет анализировать и оценивать состояние аппаратных и программных средств компьютера в различных стадиях вычислительного процесса. Динамика изменения состояний ресурсов может отслеживаться в пошаговом (покомандном) режиме.
Команда r (register) предоставляет пользователю информацию о текущем состоянии всех программно доступных регистров компьютера.
Функциональное назначение отображаемых регистров следующее. Регистры данных или пользовательские регистры;
AX - регистр аккумулятора;
ВХ - базовый регистр;
СХ - счетчик;
DX - регистр данных. Указатели:
SP - указатель стека;
ВР - указатель базы;
SI - источник данных (индекс);
DI - приемник данных (индекс);
IP - указатель команд (инструкций). Сегментные регистры:
CS - сегмент команд:
DS - сегмент данных;
SS - сегмент стека;
ES - регистр дополнительного сегмента данных.
Правую часть второй строки занимают мнемонические значения разрядов регистра флагов FLAGS (NU UP El...), значения которых используются для ветвления вычислительного процесса.
Третья строка содержит указания об очередной подготовленной для выполнения команде: адрес размещения команды в памяти, шестнадцатеричный код представления команды и мнемонический код команды.
Некоторые полезные возможности программы debug.
Проверка «серийного номера и даты копирайта». Эта информация находится в ПЗУ, начиная с адреса FE000h. Здесь находятся: семизначный номер компьютера, дата копирайта, фирма изготовитель. Данная информация является символьной. Получаем по команде: -d FE00:0 <Enter>.
Проверка даты «прошивки» ROM BIOS. Информация находится по адресу: FFFF5h. Формат даты - американский, т.е. mm/dd/yy. Вводим адрес и выполняем команду _d FFFF:5 <Enter>. По этой команде должна быть выдана информация о дате «прошивки» ПЗУ (ROM BIOS). В верхней строке в символьном представлении читаем интересующую нас дату.
Операция поиска. Если требуется определить местоположение в памяти какой-либо информации (например, какого-либо слова), то можно набрать и выполнить команду S (Search - поиск), задав адресные границы поиска и «ключевое слово». Например: -s F000:0 L FFFF “IBM”, в которой F000:0 - начальный адрес памяти ПЗУ, FFFF - конечный адрес, а “IВМ” - ключевое слово. Ниже выполненной команды следует перечень адресов, в которых содержится искомое ключевое слово.