Поделиться через


Инструкции по сборке и дизассембле

Подсистема отладчика поддерживает использование языка ассемблера для отображения и изменения кода в целевом объекте. Общие сведения об использовании языка ассемблера в отладчике см. в разделе Отладка в режиме сборки.

Примечание Язык ассемблера поддерживается не для всех архитектур. И в некоторых архитектурах поддерживаются не все инструкции.

Чтобы собрать одну инструкцию на языке ассемблера и поместить полученную инструкцию процессора в память целевого объекта, используйте команду Assemblye.

Чтобы выполнить дизассемблирование одной инструкции, взяв инструкцию процессора из целевого объекта и создав строку, представляющую инструкцию сборки, используйте команду Disassemble.

Метод GetDisassembleEffectiveOffset возвращает первый эффективный адрес последней дизассембляемой инструкции. Например, если последней дизассембляемой инструкцией является move ax, [ebp+4], фактическим адресом является значение ebp+4. Это соответствует $ea псевдорегистра.

Чтобы отправить дизассемблированные инструкции в обратные вызовы вывода, используйте методы OutputDisassembly и OutputDisassemblyLines.

Подсистема отладчика имеет несколько параметров, которые управляют сборкой и дизассемблией. Эти параметры возвращаются командлетом GetAssemblyOptions. Их можно задать с помощью SetAssemblyOptions , а некоторые параметры можно включить с помощью AddAssemblyOptions или отключить с помощью RemoveAssemblyOptions.