Instruções de montagem e desmontagem
O mecanismo de depurador dá suporte ao uso do idioma do assembly para exibir e alterar o código no destino. Para obter uma visão geral do uso da linguagem assembly no depurador, consulte Depuração no Modo de Assembly.
Nota Não há suporte para a linguagem assembly para todas as arquiteturas. E em algumas arquiteturas nem todas as instruções têm suporte.
Para montar uma única instrução de linguagem de assembly e colocar a instrução de processador resultante na memória do destino, use Assemble.
Para desmontar uma única instrução usando uma instrução de processador do destino e produzindo uma cadeia de caracteres que representa a instrução de assembly, use Disassemble.
O método GetDisassembleEffectiveOffset retorna o primeiro endereço efetivo da última instrução a ser desmontada. Por exemplo, se a última instrução a ser desmontada for move ax, [ebp+4]
, o endereço efetivo será o valor de ebp+4
. Isso corresponde ao pseudo-registro $ea .
Para enviar instruções desmontadas para os retornos de chamada de saída, use os métodos OutputDisassembly e OutputDisassemblyLines.
O mecanismo de depurador tem algumas opções que controlam o assembly e a desmontagem. Essas opções são retornadas por GetAssemblyOptions. Eles podem ser definidos usando SetAssemblyOptions e algumas opções podem ser ativadas com AddAssemblyOptions ou desativadas com RemoveAssemblyOptions.