2009-01-15 110 views
4

任何汇编口译员在那里?口译汇编代码

我在找什么:

  • 我有一些组件的固件代码我想运行,而不是实际硬件。
  • 我想运行代码,看看它在做什么。

那么,有没有某种自由和易于使用的组装模拟器呢?

你能想到的任何其他指针?

+0

我们需要更多的信息,硬件指标等? – Kev 2009-01-15 21:47:25

+0

它实际上是对PIC单片机,但现在,我只想运行汇编代码(这是很普通的) – cbrulak 2009-01-15 22:10:09

回答

4

你应该看看一些处理器模拟器只有这样你可以“解释”组装,例如:QemuBochs

2

简答:是的。

较长的答案:取决于您装配的CPU以及与之连接的外围设备类型。世界上有几千个不同的CPU容器。

2

对于x86汇编,您可以使用Bochs这样的x86 PC模拟器。

1

可能,但请注意,这是一两件事,模仿的核心指令集,又是另一回事处理外设。

如果您只是在模拟一种对数据进行操作的算法,那么您可能只需模拟CPU内核即可脱身。

如果您需要模拟模数转换器或UART或PWM驱动器,那是一个完全不同的球赛。 CPU内核指令集(通常)已被很好地指定,以便您可以很好地模拟其行为。外设指定只展示自己的功能需求,而不是保证他们的行为恰恰足以让一个模拟器,而不必知道他们是如何实现外设的问题。

4

为了运行,其被设计用于特定设备汇编代码,则需要与特异性模拟该设备的仿真器上运行。像Qemu这样的x86仿真器将完全无法运行为ARM CPU内核编写的汇编代码。这不是“几乎可行”的情况,但它甚至不能运行第一条指令。

由于mentioned by Jason S,模拟外设或任何CPU核心之外是非常具体的,你已经得到了设备。 PCB版本之间的细节甚至可能不同。

如果你只是好奇什么样的汇编代码是干什么的,你可能会更好坐下来与CPU的参考手册,并检查依次在每个指令。如果你要使用这种设备进行认真的工作,那么最终你必须具备这些知识。