I have been working on a fictional retro virtual machine for xbox since January (I am not at all copying 0x10c, infact my project is older. just putting this out there incase some notch fanboys read this) and it has 6 general purpose registers. These are 8 bit but all can be combined to make 3 16 bit registers, memory addresses though are 16 bit and so is the program counter. I know this is a stupid question, but I couldn't figure this out, is it 16 or 8 bit???? The z80 uses 16 bit addresses and is 8 bit
问问题
349 次
3 回答
1
据我所知,通用寄存器的处理器位宽决定了它,因为所有的计算都依赖于时钟速度,它只能处理通用寄存器的数量。
例如,在 32 位处理器中,它可以通过寄存器连接进行 64 位计算,但不能将其称为 64 位处理器。当然,在 32 位处理器中有一些 64 位扩展指令,但它们消耗双时钟,两步。
我认为您的处理器的设计者只是想扩展内存地址空间以支持更大的内存。
所以,我的结论是8位处理器。
于 2012-12-05T02:16:24.777 回答
0
您的处理器可以一次处理 16 位数据,还是在后台使用两个单独的 8 位操作?如果是前者,则为 16 位。如果是后者,则为 8 位。
根据您的描述,它听起来像 16 位,因为它使用 16 位进行数据寻址。
于 2012-12-05T01:47:35.307 回答
-1
构成 16 位处理器的最常见定义是处理器可以使用本机指令处理的最长整数类型的大小。如果您的虚拟机具有在 16 位寄存器上运行并提供 16 位输入的算术指令,则它可以称为 16 位机器。
另一个常见的定义是地址空间的大小。由于您的虚拟机具有 16 位地址,因此它也符合 16 位的条件。
于 2012-12-05T01:51:08.637 回答