我想学习如何在汇编器中编程。我之前(在我的A-Level计算课程中)做了一些汇编,但这绝对是一个简化的“伪汇编器”。我借用了我父亲的旧Z80汇编程序参考手册,这似乎很有趣,因此,如果可能的话,我想尝试一下Z80汇编程序。
但是,我没有Z80处理器,并且想在我的PC上进行操作(我有Windows或Linux,所以两者都不错)。我在互联网上找到了各种各样的汇编器,但是我对将其汇编成十六进制文件并不特别感兴趣,我只想将其汇编为PC上某种模拟器可以运行的文件。优选地,该模拟器将向我显示所有寄存器,存储器位置等的内容,并让我逐步执行指令。我发现一些软件暗示他们可能会这样做-但他们要么拒绝编译,要么似乎无法正常工作。有没有人有任何建议?如果有适用于另一种类型的汇编器的良好的模拟器/ IDE工具,那么我可以尝试使用它(假设有很好的在线参考手册)。
我发现一些软件暗示他们可能会这样做-但是他们要么拒绝编译,或者似乎无法正常工作。有人有任何建议吗?
写一个。最好选择一个不错的简单指令集(Z80应该是完美的)。我记得做这是大学一年级的练习-我认为我们用C ++编写了模拟器,并模拟了6800汇编,但是实际上任何语言/指令集都可以。
如今,“学习汇编语言”的想法是要获得计算机如何在最低级别工作的想法,只有少数人(编译器作者等)有任何真正的理由来实际编写汇编代码。现代处理器充斥着旨在供编译器使用的功能,以帮助优化代码的速度/并发执行/功耗等,而尝试为现代处理器手动编写汇编将是一场噩梦。
除非您愿意,否则不要担心让您的应用程序投入生产-到目前为止,您发现的软件很可能都是由像您一样的人编写的,他们想弄清楚汇编的工作原理并编写自己的模拟器,然后意识到要使它“投入生产”将涉及多少工作,因此公众可以使用它。
WinApe是Amstrad CPC的良好模拟器。 Amstrad CPC是80年代生产的家用计算机。它使用Z80作为其CPU。使用仿真器,您可以在编程时显示许多内部信息。它包括用于Z80代码的调试器和反汇编器。
这对您现在没有任何意义,而只是对那些路过的人。这是我遇到的最好的汇编代码模拟器。确实值得!
[查看Thomas Scherrer Z80 Emulators列出可以使用的潜在仿真器。
我为ZX Spectrum编写了z80 asm(仍然,我知道:)),并使用SJasmPlus链接到频谱模拟器文件。许多更好的Spectrum模拟器(例如Fuse和ZXSpin)都内置了编辑器,可以进行实时调试和修补。
[当我上大学时,我们使用PIC微处理器。它们由一家名为Microchip的公司生产。他们还有一个很棒的IDE,带有芯片仿真器/模拟器,可以让您无需实际使用芯片即可完成工作。
为什么使用模拟器?
有一个模拟器是Visual6502,用于教授微处理器基础知识。它具有编辑器,汇编器,I / O操作以及如何使微处理器工作的动画。我可以通过以下链接访问。
[您可能要检查开源8085模拟器“ GnuSim8085”,它专门用于教育目的,它实际上是由学生在准备考试时编写的。它可以在Linux和Windows上运行。
MipSim免费
MIPSim 2的主要特征
如果您在Windows上,则8085 Simulator是最佳选择。>
瞄准更高!尝试并使用模拟器来获得更强大的汇编语言。记住,Z80和808x是具有低端和笨拙指令集的低端处理器。
[您可能还考虑学习x86汇编语言,可以在Visual Studio中使用内联汇编程序来完成-尽管它比Z80指令集更大,但您将拥有能够使用比现有更好的工具的优势。对于Z80。
如果您碰巧已经知道.NET,则可能有用:
SimpSim绝对值得一看。仅Windows,但功能集相当不错: