Реклама:

Команды трассера перечислены в табл. В.7. Наиболее важными из них считаются команда однократного возврата (первая строка таблицы), которая выполняет одну команду процессора, и команда выхода q (нижняя строка таблицы). Число в качестве имени команды обозначает количество команд процессора, подготовленных к выполнению. Так, число k эквивалентно ^-кратному повторению команды возврата. Аналогичный эффект достигается в том случае, если после числа ставится знак восклицания (!) или символ X. После каждой команды должен вводиться символ возврата каретки (нажатием клавиши Enter). Пустая ячейка указывает на то, что дополнительных действий, помимо возврата каретки, не требуется. Команды без значения в столбце "Адрес" не имеют адреса. Символ # обозначает целочисленное смещение.

Команды трассера

Команда g позволяет перейти к определенной строке исходного файла. Эта команда существует в трех вариантах. Если перед ней указывается номер строки, трассер продолжает работу до достижения этой строки. При наличии метки /Т (с или без символов +# в адресе) номер строки, на которой трассер должен остановиться, вычисляется на основе метки команды Т. Если перед командой g нет никаких дополнительных элементов, трассер продолжает выполнять команды до повторного достижения строки с текущим номером.

Существует два варианта команды /label: для меток команд и меток данных. В первом случае строка в нижнем окне заполняется или заменяется набором данных, начинающемся с данной метки. Во втором случае команда /label: эквивалентна команде д. После метки может быть установлен знак "плюс" и число (в табл. В.7 числа обозначены символом #), позволяющее выполнить смещение от метки.

Командой b можно установить контрольную точку. Перед командой b можно поставить метку команды со смещением или без него. Если во время выполнения встречается строка с контрольной точкой, трассер останавливается. Чтобы возобновить выполнение с контрольной точки, нужна команда возврата или запуска. Если метка и число опускаются, контрольная точка устанавливается в текущей строке. Снять контрольную точку позволяет специальная команда с, которая, подобно команде Ь, может предваряться метками и числами. Существует также команда запуска г, которую трассер выполняет вплоть до контрольной точки, вызова команды завершения или конца команд.

Кроме того, трассер отслеживает уровень подпрограмм, на котором работает программа. Этот уровень указывается под секцией процессора; его можно также определить по цифрам в секции стека. На уровнях подпрограмм основываются три команды. Команда - заставляет программу трассировки работать до того момента, пока текущий уровень подпрограмм не сменится более низким (точнее говоря, следующим в порядке понижения). Фактически, эта команда продолжает выполнять команды процессора до завершения текущей подпрограммы. Противоположную функцию выполняет команда +, заставляющая программу трассировки работать до перехода на более высокий (следующий в порядке повышения) уровень подпрограмм. Команда = продолжает работу трассера до уровня, аналогичного текущему, и может применяться для выполнения подпрограмм в рамках команды CALL. При использовании команды = подробные сведения о подпрограмме в окне трассера не указываются. Существует схожая команда п, которая продолжает выполнение до следующей строки программы. Она особенно полезна в случае вызова в качестве команды LOOP; выполнение прекращается одновременно с завершением цикла.

Трассер || Оглавление || Подготовительные действия