adfun.ru
| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
наборе исходных операторов Ассемблера. Можно также получить дос-
туп к соответствующим данным любой структуры данных, выводя и из-
меняя их в различных форматах.
Й[*]НCPU 80286НННННННННННННННННННННННННННННННН3ННН[ ][ ]»
єTPDEMO.120: Inc(NumLines); ^ ax 0004 іc=0є
є cs:04C4:4F36063000 inc word ptr [TPDEMOІ bx 3EEE іz=0є
єTPDEMO.121 i := 1; ± cx 0000 іs=0є
є cs:04C8 C:43FE0100 word ptr [bp+02].000± dx 5920 іo=0є
єTPDEMO.122: while i <= Length(S) do ± si 3CEC іp=0є
є cs:04C0 C47ED4 les di,[bp+04] ± bp 3EF4 іa=0є
є cs:0400 288A05 mov al,es:[di] ± sp 3EF4 іi=1є
є cs:0403 3D84 xor ah,ah ± ds 5920 іd=0є
є cs:0405 3B48FE cmp ax,[bp+02] ± es 5920 і є
є cs:0408 7D03 jnl TPDEMO.125 (04DD) ± ss 595A і є
є cs:040A 898A00 jmp TPDEMO.148 ± cs 548A і є
єTPDEMO.125 while (i <= Length(S)) and notv ip 04C8 і є
є<І±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±>іДДДДДДДДДДДДДє
є ds:0000 00 00 00 00 00 00 00 00 і є
є ds:0008 5A 5D 5A 5D 5A 5D 00 00 і ss:3EF2 548Aє
є ds:0010 00 00 00 00 00 00 5A 5D і ss:3EF0>04C1є
є ds:0018 00 00 5A 5D 00 00 00 90 і ss:3EEE 0246є
ИНННННННННННННННННННННННННННННННННННННННННННННННННННННННЅ
Рис. 11.1 Окно CPU
Окно CPU (ЦП) можно создать, выбрав команду основного меню
ViewіCPU (ОбзоріЦентральный процессор). В зависимости от того,
что вы просматриваете в текущем окне, окно CPU будет позициониро-
вано на соответствующие код, данные или стек. Это предоставляет
удобный способ просматривать код, данные или стек (соответствую-
щие текущему положению курсора) "на нижнем уровне". В следующей
таблице показано, где будет позиционирован курсор при выборе ко-
манды CPU:
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Текущее окно Область окна CPU Позиционируется на...
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Окно Stack (Стек) Stack (Стек) Текущие SS:SP
Окно Module (Модуль) Code (Код) Текущие SS:SP
Окно Variable (Переменная) Данные/Код Адрес элемента
Окно Watches (Просмотр) Данные/Код Адрес элемента
Окно Inspector (Проверка) Данные/кодж Адрес элемента
Точка останова (не Код Адроес точки
глобальная) останова
TDeb 3.0 #2-3 = 44 =
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Если TDW вновь получает управление от вашей прикладной прог-
раммы, а текущим выполняемым кодом является код Windows или DLL,
то TDW автомачески переводит вас в окно CPU.
Строка в верхней части окна CPU (ЦП) показывает тип процес-
сора (8086, 80186, 80286 или 80386). Окно CPU имеет пять облас-
тей (или 6 в TDW). Чтобы переходить из одной области в другую,
можно использовать клавиши Tab или Shift-Tab. В верхней левой об-
ласти (области кода) выводится дисассемблированный код программы,
чередующийся со строками исходного текста. Во второй области (об-
ласти регистров) показано содержимое регистров ЦП. Правая область
представляет собой область флагов, где выводится состояние восьми
флагов ЦП. В нижней левой области (области данных) в непосредс-
твенном шестнадцатиричном виде выводится любая выбранная вами об-
ласть памяти. В нижней правой области (области стека) показано
содержимое стека.
Если вы работаете с TDW, то в окне CPU имеется дополнитель-
ная область - область селекторов. Эта область, которая расположе-
на слева от области кода и области данных, показывает все селек-
торы Windows и показывает содержимое каждого из них.
Как и во всех других окнах, нажатие клавиш Alt-F10 приводит
к выводу локального меню области кода. Если разрешено использова-
ние сокращений с клавишей Ctrl, то нажатие клавиши Ctrl с первой
буквой нужной команды может использоваться для непосредственного
доступа к команде.
В области кода, данных и стека для смещения начального адре-
са вывода на 1 байт вверх или вниз можно использовать клавишу
Ctrl со стрелками. Если вы хотите просто слегка сместить изобра-
жение, это легче, чем использовать команду Goto (Переход).
TDeb 3.0 #2-3 = 45 =
Область кода
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В этой области по выбранному вами адресу выводятся дисас-
семблированные инструкции.
Примечание: Стрелка (>) в области кода показывает теку-
щий адрес программы (CS:IP). В области стека стрелка показы-
вает текущий указатель стека (SS:SP).
В левой части каждой дисассемблированной строки выводится
адрес инструкции. Адрес выводится либо в виде шестнадцатиричного
значения сегмента и смещения, либо со значением сегмента, заме-
ненным именем регистра CS (если значение сегмента совпадает с те-
кущим значение регистра CS). Эта область имеет ширину (которая
может переключаться или настраиваться), достаточную для вывода
всех образующих инструкцию байт. Дисассемблированная инструкция
выводится справа.
Если в подсвеченной инструкции области кода имеется ссылка
на память, то адрес памяти и его текущее содержимое выводятся в
верхней строке окна CPU. Это позволяет вам увидеть как операнд
инструкции, который указывает на память, так и значение, которое
будет записано или считано.
Дисассемблер
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В области кода автоматически дисассемблируются и выводятся
на экран инструкции вашей программы. Если адрес соответствует
глобальному, статическому идентификатору или номеру строки, то
(если режим вывода Mixed установлен в значение Yes) перед дисас-
семблированной инструкцией выводится строка. Кроме того, если
имеется строка исходного кода, соответствующая адресу идентифика-
тора, то она выводится после идентификатора.
Глобальные идентификаторы выводятся просто в виде имени
идентификатора. Статические идентификаторы выводятся в виде имени
модуля, за которым следует символ # или точка (.) и имя статичес-
кого идентификатора. Номера строк выводятся в виде имени модуля,
за которым следует разделяющий символ # или точка (.) и десятич-
ный номер строки.
При выводе непосредственного операнда вы можете определить
его размер по числу цифр. Непосредственное байтовое значение сос-
тоит из 2 цифр, а непосредственное значение размером в слово - из
4 цифр.
Турбо отладчик может распознавать наличие числового сопро-
цессора 8087/80287/80387 и дисассемблировать соответствующие инс-
трукции с плавающей точкой.
Мнемоника инструкции RETF показывает, что это инструкция
TDeb 3.0 #2-3 = 46 =
возврата дальнего типа. Обычная мнемоника RET свидетельствует о
ближнем возврате.
Там, где это возможно, инструкции JMP и CALL выводятся в
символическом виде. Если CS:IP указывают на инструкцию JMP или
инструкцию условного перехода, то стрелка (стрелка вверх или
вниз), показывающая направление перехода, будет выводиться только
в том случае, если выполнение инструкции приведет к переходу.
Кроме того, адреса памяти, использующиеся в инструкциях MOV, ADD
и др., выводятся в виде символических адресов.
TDeb 3.0 #2-3 = 47 =
Локальное меню области кода
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Если вы не перешли в область кода, используйте для этого
клавиши Tab или Shift-Tab. Затем для вывода локального меню наж-
мите клавиши Alt-F10.
ЪДДДДДДДДДДДДДДї
і Goto... і Переход
і Origin і Начало
і Follow і Следующая
і Caller і Вызывающая
і Previous і Предыдущая
і Search... і Поиск
і View source і Просмотр исходного кода
і Mixed Yes і Смешанный
ГДДДДДДДДДДДДДДґ
і New cs:ip і Новый CS:IP
і Assemble... і Ассемблер
і IіO > і Ввод-вывод
АДДДДДДДДДДДДДДЩ
Команда Goto...
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
После выбора команды Goto (Переход) вам выводится подсказка
для ввода нового адреса, на который вы хотите перейти. Вы можете
ввести адрес, выходящий за пределы программы, что позволяет про-
верить базовую систему ввода-вывода (BIOS), внутренние области
DOS и резидентные утилиты. Полное описание ввода адресов содер-
жится в Главе 9.
Команда Previous (Предыдущий) восстанавливает область кода в
то состояние (позицию), которое она имела до выполнения команды
Goto.
Команда Origin
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Команда Origin (Начало) позиционирует вас на текущий адрес
программы в соответствии со значениями регистров CS:IP.
|
adfun.ru
|
|
|
|