【发布时间】:2017-05-12 06:05:40
【问题描述】:
您好,我正在为 Game Boy 编写模拟器。
我使用这个参考:Gameboy CPU (LR35902) instruction set
本文档声明操作码:
0xE2 LD (C),A
和
0xF2 LD A,(C)
长度为 2。
Game Boy CPU Manual 分别表示这些指令:
将地址 $FF00 + 寄存器 C 的值放入 A。
和
将 A 放入地址 $FF00 + 寄存器 C。
我认为它的长度为 1,因为操作码是自给自足的,它不需要解释另一个值。如果它的长度为2,那么第二个字节的用途是什么?
【问题讨论】:
-
你为什么这么认为?
-
图中说明指令是8位的。我看不出有任何不相信的理由。
-
我可能不太理解这个问题,但我从未见过 0xE2 和 0xF2 使用第二个字节。这是 GBC 中 0xE2 的示例:datacrystal.romhacking.net/wiki/…
-
鉴于@MégaLag 给出的示例以及pandocs 所说的内容,我将其视为1 字节指令。
标签: assembly emulation z80 gameboy