2012-07-25 140 views
2

最近我一直在摆弄汇编,而且我学到了很多东西。我正在使用6502asm.com6502asm.com是一个用于6502汇编的JavaScript汇编器和仿真器。以下是我喜欢的内容:输入和输出非常简单易懂。它为您提供32x32像素的屏幕,地址空间从$ 0200到$ 05ff。改变像素的颜色就像在一个屏幕的地址中存储一个颜色值(在$ 00和$ 0f之间)一样简单($ 0200是左上角,$ 05ff是右下角)。乱七八糟,但它是8位,而32x32屏幕没有太多空间。我想知道是否有类似6502asm.com的32/64位程序集而不是8位。 (它不必在浏览器中,只是任何类似的东西。)另外,我更喜欢它是否使用了nasm,但这不是必需的。提前致谢!x86汇编学习平台

+0

存在Javascript x86模拟器(例如http://bellard.org/jslinux/),但我不知道任何提供这么好的沙箱。 – harold 2012-07-25 22:21:51

+1

MS-DOS。屏幕通常为80x25文本或640x480图形。目前,您通常使用Windows XP中的DOS框,可能本身运行在虚拟机内部。你可以使用你选择的编辑器和汇编器(MASM,FASM,NASM,TASM等) – 2012-07-25 22:24:23

+0

谢谢,伙计们。忘了提及我在Linux上。 – RylandAlmanza 2012-07-25 22:26:44

回答

3

Jasmin帮助您了解X66的汇编,但它没有任何图形表示。但是当你执行x86代码时,你可以看到寄存器和内存的改变。

如果您觉得6502asm.com有32x32像素的限制,为什么不尝试“真实的东西”,这意味着您可以在模拟器上运行的IDE中的宏汇编器?

例如,下面的组合:

  • dasmKick Assembler,两个交叉平台65XX装配
  • WUDSN IDE,一个不错的IDE与代码完成,错误突出显示捆绑为一个的Eclipse插件
  • VICE,C64/128,VIC20的仿真器...

当然,您需要了解您选择的目标8位机器的复杂性,但IMO更加有趣。比如在C64上,你会得到320x200的图形,带有碰撞检测的精灵,40x25的文本显示。如果你亲自使用实际的硬件,你甚至可以考虑在其上运行你的程序。

+0

啊,非常丰富的答案!尽管这个问题已经发布了两年,但仍然有很多乐趣与此相关。 :) – RylandAlmanza 2014-08-20 21:11:31

0

经过多一点Google搜索,我发现了notch(Minecraft的创建者)新游戏0x10c。这是一款太空游戏,您可以在其中控制太空飞船,船内则是一款名为dcpu-16的可编程计算机,您可以通过它编程来控制您的飞船的各个方面。游戏还没有发布,但是已经有几款适用于dcpu-16的模拟器和汇编器。我编译了一个here,并组装并运行了一个测试程序(conways生命游戏),它的工作非常完美!