D3 Reference Manual

Index | Help

Поиск по страницам

Разделы / Системный отладчик / Спецификация формата окна

Спецификация формата окна

Задает количество байтов для вывода данного адреса. Один из трех элементов информации, используемых при обращении к памяти на диске в системном отладчике.

Спецификация окна задает количество байтов для вывода и имеет следующий общий формат:

;window 

Здесь указывается количество байтов для вывода. Максимальное значение ограничивается размером запрашиваемых данных.

Спецификация смещения (явная):

;offset,window -или- ;offset.window

В этом формате указываются смещение (offset) и окно (window), где смещение - это положительное или отрицательное число, обозначающее смещение от адреса, заданного в спецификации формата данных ("data.format.specification"), а окно - положительное число. Этот формат работает и для трассировки за исключением случая, когда адрес указывается в форме косвенной ссылки из регистра памяти, адрес которого задан в формате "!fidaddr.dataaddr".

Спецификации окна (неявная):

;coffset -или- ;coffset.window  -или- ;coffset,window

Функционально смещение (offset) и окно (window) здесь те же, что и выше, а "c" (code) обозначает тип поля. Если спецификация окна отсутствует, размер окна определяется в зависимости от типа используемого поля. В остальных случаях используется формат, заданный ранее.

Возможные значения параметра "с":

b   ширина поля = 1 бит.
c   ширина поля = 1 байт.
d   ширина поля = 4 байта.
f   ширина поля = 6 байтов.
h   ширина поля = 1 байт.
r   ширина поля = 8 байтов.
s   ширина поля = 6 байтов.
t   ширина поля = 2 байта. 

Или:

;c 

Здесь "с" тот же параметр, что и выше, но смещение 0 подразумевается; окно и формат данных также подразумеваются.

Для "битового вывода" (b) используется следующий общий формат:

;boffset.window -или- ;boffset,window

Эта форма означает "битовый вывод", который начинается с бита 0 (со смещения относительно адресной базы), а ширина окна равна "window" бит. Биты и битовые поля могут трассироваться любым видом трассировки. Смещение, заданное для символической переменной типа "бит", исчисляется в битах. Поэтому при прямом обращении к данным формат "fidaddr.dataaddr" будет интерпретировать "dataaddr" как счетчик "битов".