Отладка приложений


Модификаторы позиционных точек прерывания - часть 4


Такой прием позволяет выполнить прерывание, когда n-ое значение выражения станет равно true (где п — исходное значение счетчика пропусков).

Таблица 5.1. Выражения и псевдорегистры окна Watch

Псевдорегистр

Описание

©ERR

Значение последней ошибки; то же значение возвращается API-функцией GetLastError

©TIB

Информационный блок текущего потока; необходим, потому что отладчик не обрабатывает формат FS:0

©CLK

Недокументированный регистр часов; используется только в окне Watch

@ЕАХ, @ЕВХ, ©ЁСХ, @EDX, ©ESI, ©EDI, ©EIP, ©ESP, ©EBP, ©EFL

Регистры Intel CPU

@CS, @DS, @ES, @SS, @FS, ©GS

Сегментные регистры Intel CPU

©STO, ©ST1, @ST2, ©ST3, ©ST4, ©ST5, ©ST6, ©ST7

Регистры чисел с плавающей точкой Intel CPU

Изменения переменных

Последний модификатор позиционных ТП связан с изменением значения переменной. Позиционная ТП с этим типом модификатора останавливает отладчик, когда изменяется значение указанной в ней переменной. Следует помнить, что переменная проверяется только тогда, когда позиционная точка прерывания срабатывает (т. е. когда отладчик останавливает выполнение приложения). Этот модификатор применяется, например, если известно, что в функции более высокого уровня происходит перезапись памяти, и необходимо свести к минимуму ущерб, который может при этом принести вызов функции более низкого уровня. В такой ситуации установите позиционные точки прерывания после каждого вызова функции и выполните в них проверку изменения значения переменной. Преимуществом данной методики является возможность просмотра отладчиком целого буфера, если это необходимо.

Добавление этого модификатора происходит точно так же, как добавление других модификаторов позиционных точек прерывания — с использованием диалогового окна Breakpoint Condition для установки необходимых условных параметров. Единственное недоразумение может возникнуть из-за того, что редактируемое поле (Enter the expression to be evaluated), в которое вводится наблюдаемая переменная, является одновременно и полем для ввода условного выражения.


Начало  Назад  Вперед



Книжный магазин