+ -
当前位置:首页 → 问答吧 → bochs怎样汇编一段内存

bochs怎样汇编一段内存

时间:2011-12-09

来源:互联网

在网上查找都是这样说“u|disas|disassemble [/num] [start] [end],反汇编物理地址start到end 之间的代码,如果不指定参数则反汇编当前EIP指向的代码。”我根本看不懂u|disas|disassemble [/num] [start] [end]是什么意思,有没有举个例子,在bochs上试过五十几次都说命令错。请问怎样汇编一段内存,举个例子

作者: a82225269   发布时间: 2011-12-09

比如反汇编 0x100 开始的代码,可以使用
u 0x100
disas 0x100
u /20 0x100
等命令

作者: wang0635   发布时间: 2011-12-10

引用楼主 a82225269 的回复:
在网上查找都是这样说“u|disas|disassemble [/num] [start] [end],反汇编物理地址start到end 之间的代码,如果不指定参数则反汇编当前EIP指向的代码。”我根本看不懂u|disas|disassemble [/num] [start] [end]是什么意思,有没有举个例子,在bochs上试过五十几次都说命令错。请问怎样汇编一段内存,举个例子

这个首先各个不同版本是有细微的差别的,先给你解释一下那个命令吧 前面三个表示任意选择一个都可以,中括号在计算机中的书籍中,特别是数据库中表示可以省略,表示后面的三个可以不写,[/num]表示你反汇编的函数,[start]表示开始的地址 [end]表示结束的地址,假如你要反汇编0x7c00后面的16行,你可以写成 u /16 0x7c00,如果你要反汇编一段如0x7c00-0x7cff的代码你可以写成,u 0x7c00 0x7cff
关于你要返回便eip的代码,可以这样写 u /16 cs:eip 反汇编16行,其实直接写成u /16 就可以啦。

作者: yh_no_code   发布时间: 2011-12-10