gpt4 book ai didi

c - 我正在尝试为 ARM Cortex M3 编写模拟器。如何读取二进制文件然后对其进行解码?

转载 作者:太空宇宙 更新时间:2023-11-04 04:22:21 24 4
gpt4 key购买 nike

我正在尝试为 ARM Cortex M3 编写模拟器。如何读取二进制文件然后对其进行解码?我想使用二进制文件作为我的模拟器的资源。我用 Atmel Studio 创建了一个项目并编译了它。现在,我有一个 .hex 文件。我还可以使用 hex2bin 将此文件转换为二进制文件。之后,如何使用该二进制文件来获取和解码指令?我正在使用 C/C++ 开发 Visual Studio。

最佳答案

首先需要说明的是,为处理器编写仿真器并不是一件容易的事,其他人已经花了大量时间在这上面,你可以看看QEmu例如。目前有一个项目使用 Qemu 来模拟基于 Cortex M3 的开发板,ZephyrProject .

一个中间步骤,可能是使用已经理解/解码十六进制或二进制文件的工具,并且Radare是其中一种工具。有了它,您将能够反汇编许多 elf 文件并从中获取指令(然后您必须模拟 ;))。

也就是说,如果你真的想/需要做仿真,并开始阅读和理解十六进制或二进制文件,首先要做的是研究 Intel Hex 文件格式(是的,即使 ARM 也在使用这种英特尔格式 ;) )。你可以找到the official specification here或在 technical support website of ARM .

玩得开心;)

关于c - 我正在尝试为 ARM Cortex M3 编写模拟器。如何读取二进制文件然后对其进行解码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45455482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com