Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Команды SYMDEB
При помощи команд SYMDEB реализуется алгоритм отладки, а также обеспечивается выполнение основных функций SYMDEB. Команды SYMDEB вводятся в диалоговом режиме после приглашающего символа -. Группа команд может быть выполнена до начала отладки. Введенную команду SYMDEB можно отменить нажатием клавиш CTRL-C или задержать нажатием клавиш CTRL-S. Если отлаживаемая программа обратилась к вводу/выводу, этими клавишами можно отменить или задержать введенную команду G. Если программа не обратилась к вводу/выводу, остановить ее выполнение можно только соответствующими клавишами, если были заданы опции /K или /N. Некоторые команды имеют параметры, которыми могут быть числа, символы или выражения. Параметры, если их несколько, разделяются запятыми. Между именем команды и первым параметром пробела не требуется, исключая те случаи, где это оговорено особо. Ниже приведено описание способов кодирования различных типов параметров в командах SYMDEB. 1. Символы могут представлять регистр, абсолютное значение, адрес сегмента или смещение сегмента и состоят из одного или более символов, включая _,?, @ и $. Первым символом должна быть буква. Все символы должны быть определены в символьном файле. SYMDEB не чувствителен к смене регистра. При совпадении символов с именами регистров последние имеют больший приоритет. 2. Числа представляются в виде: u <число>Y — двоичное u <число>O — 8-ричное u <число>Q — 8-ричное u <число>T — десятичное u <число>H — 16-ричное Допустимо кодирование ключевых символов Y, O, Q, T и H на регистре строчных букв. При распознавании чисел максимальный приоритет имеют 16-ричные числа. 3. Адреса представляются в виде: <сегмент>:<смещение> <Сегмент> и <смещение> могут быть числами (представимыми как 16-разрядные), именами регистров или символами. Многие команды имеют умалчиваемые имена регистров (DS или CS). 4. В качестве смещения могут быть указаны границы: <начальный адрес> <конечный адрес> Если <конечный адрес> опущен, предполагается значение <начальный адрес>+128. 5. В качестве смещения может быть задан счетчик: <начальный адрес> L <число объектов> Размер объекта (байт, слово, инструкция) определяется использующей эту конструкцию командой. 6. Номер линии представляет собой комбинацию десятичных чисел, имен файлов и символов, определяющих уникальную линию исходного текста программы. Номер линии может быть задан в трех различных формах: .+<число> | - <число> .[<имя файла>:]<число> .<символ>[+<число> | -<число>] Первая форма определяет смещение (в линиях) относительно текущей линии исходного текста. Вторая форма отображает абсолютный номер линии в файле с указанным именем. Если имя файла опущено, предполагается текущий файл, определяемый текущими значениями регистров CS и IP. В третьей форме <символ> может быть инструкцией или меткой процедуры. Если задано <число>, оно является смещением (в линиях) искомой линии относительно линии, идентифицированной указанным символом. 7. Строки являются набором значений в коде ASCII и могут быть заданы в двух форматах: \&'<символы>' "<символы>" Если в строке присутствуют символы ' или ", их следует кодировать дважды. 8. Выражение представляет собой комбинацию параметров и операторов, которая преобразуется в 8-, 16- или 32-битовое значение. Могут использоваться скобки. Унарные адресные операторы подразумевают регистр DS как умалчиваемую адресную базу (сегмент). Ниже приведены унарные операторы (в порядке убывания приоритетов): u + u - u NOT — дополнение операнда до 1 u SEG — адрес сегмента операнда u OFF — смещение операнда u BY — младший байт из указанного адреса u WO — младшее слово из указанного адреса u DW — двойное слово из указанного адреса u POI — указатель из указанного адреса (как DW) u PORT — 1 байт из указанного порта u WPORT — слово из указанного порта Ниже приведены бинарные операторы (в порядке убывания приоритетов): u * u / — деление нацело u MOD — modulus u: — переключение сегмента u + u - u AND — побитовое И u XOR — побитовое исключающее ИЛИ u OR — побитовое И Date: 2015-05-22; view: 513; Нарушение авторских прав |