Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Eclipse中调试期间查看、修改程序集代码_Eclipse_Debugging_Memory_Assembly - Fatal编程技术网

在Eclipse中调试期间查看、修改程序集代码

在Eclipse中调试期间查看、修改程序集代码,eclipse,debugging,memory,assembly,Eclipse,Debugging,Memory,Assembly,在Eclipse调试模式下,我希望看到程序集级代码,修改部分代码并重新运行程序。汇编级代码应该是加载到内存中执行的程序代码。我想添加断点,然后在这些断点处修改汇编代码并重新加载程序 请让我知道这是否可行。如果是,我怎么做?提前谢谢 查看汇编代码很容易:只需在Eclipse中打开“反汇编”视图。您需要安装CDT工具集 在x86上修改汇编代码并不是那么容易:您可以用另一段X字节长的代码替换一段X字节长的代码 某些调试器(例如MS DOS调试器)具有内置汇编程序;使用其他调试器,您必须修改内存中的字节

在Eclipse调试模式下,我希望看到程序集级代码,修改部分代码并重新运行程序。汇编级代码应该是加载到内存中执行的程序代码。我想添加断点,然后在这些断点处修改汇编代码并重新加载程序


请让我知道这是否可行。如果是,我怎么做?提前谢谢

查看汇编代码很容易:只需在Eclipse中打开“反汇编”视图。您需要安装CDT工具集

在x86上修改汇编代码并不是那么容易:您可以用另一段X字节长的代码替换一段X字节长的代码

某些调试器(例如MS DOS调试器)具有内置汇编程序;使用其他调试器,您必须修改内存中的字节


不幸的是,x86上的指令大小不同。所以“mov eax,1”有5个字节,“mov ebx,1”有6个字节。因此很难简单地替换汇编代码。

查看汇编代码很容易:只需在Eclipse中打开“反汇编”视图。您需要安装CDT工具集

在x86上修改汇编代码并不是那么容易:您可以用另一段X字节长的代码替换一段X字节长的代码

某些调试器(例如MS DOS调试器)具有内置汇编程序;使用其他调试器,您必须修改内存中的字节


不幸的是,x86上的指令大小不同。所以“mov eax,1”有5个字节,“mov ebx,1”有6个字节。因此,很难简单地替换汇编代码。

谢谢您的回复。我检查了CDT工具。它说它适用于C/C++。Java有类似的功能吗?修改Java程序不可能那么简单!您没有机器代码,只有字节代码,可以由虚拟机解释或根据优化转换为机器代码。有时虚拟机首先解释字节码,然后将其转换为机器码。感谢您的回复。我检查了CDT工具。它说它适用于C/C++。Java有类似的功能吗?修改Java程序不可能那么简单!您没有机器代码,只有字节代码,可以由虚拟机解释或根据优化转换为机器代码。有时,虚拟机首先解释字节码,然后将其转换为机器码。