Assembly 68k寄存器地址

Assembly 68k寄存器地址,assembly,machine-code,instruction-set,68000,Assembly,Machine Code,Instruction Set,68000,这个问题需要一堆“你为什么这么做?”的回答 我无法在中找到此信息,但这可能是因为我不确定要搜索什么样的措辞 以下是68k的ADDopcode的指令格式 位0-2和9-11表示寄存器。68k寄存器的二进制表示形式是什么?它们是“地址”吗 是的,我知道我可以编写一个68k汇编程序,并对其进行调试以找到这些信息。我在找推荐人。谢谢 见第。2.1,“说明格式”: 指令指定使用操作码执行的函数,并定义每个操作数的位置。指令通过寄存器规范指定操作数位置,指令的寄存器字段保存寄存器的编号;根据有效地址,指令

这个问题需要一堆“你为什么这么做?”的回答

我无法在中找到此信息,但这可能是因为我不确定要搜索什么样的措辞

以下是68k的
ADD
opcode的指令格式

位0-2和9-11表示寄存器。68k寄存器的二进制表示形式是什么?它们是“地址”吗

是的,我知道我可以编写一个68k汇编程序,并对其进行调试以找到这些信息。我在找推荐人。谢谢

见第。2.1,“说明格式”:

指令指定使用操作码执行的函数,并定义每个操作数的位置。指令通过寄存器规范指定操作数位置,指令的寄存器字段保存寄存器的编号;根据有效地址,指令的有效地址字段包含寻址方式信息;或者通过隐式引用,指令的定义暗示使用特定寄存器。(增加重点)


这些可能是指您链接的手册第1-2页图1-1中列出的An和Dn寄存器。

3位指定地址寄存器编号,从0(位:0-0-0)到7(位:1-1-1)。但一般来说,你可以让汇编程序担心这些东西。 我希望这有帮助,
Dave

寄存器没有地址。如果你不理解这一点,你就不理解机器架构。这些位只是表示要使用CPU中的哪个寄存器。它们是由微码引擎解码的。我知道它们不是内存地址。这是显而易见的。他们可能仍然有人给他们打电话。另外,我并没有声称理解机器架构。我在努力学习;请原谅我提个问题。@mwcz我们可以叫他们“zoinks”,但这并不意味着他们是zoinks。术语很重要,对于编写和理解机器代码程序来说,非常重要。这正是我问“它们是‘地址’吗?”这个问题的原因。据我所知,它们可能有‘注册地址’。不要因为有人要求澄清术语而责骂他们,然后告诉他们知道术语很重要。让我站在你们两人之间:在RISC架构(68000可以被视为其先驱)中有“注册文件”的概念在这方面,三个寄存器位可以看作寄存器文件的索引。然而,“文件”驻留在CPU内部,因此在我看来,这只会使“文件”一词的含义复杂化,使汇编编程术语变得不必要的含糊不清。谢谢,这很有帮助。我刚刚弄明白了,很明显,它没有列在文档中也就不足为奇了。:)@mwcz对于我们这些凡人来说,下面这个问题是寄存器号,是八个D0-D7或A0-D7寄存器的三位二进制表示吗?@Caltor是的,是的。当我发布这个问题时,我对一个3位字段如何引用所有16个寄存器(A和D寄存器)感到困惑。现在觉得这是一个愚蠢的问题,因为很明显(回想起来)数字(0-7)包含在寄存器字段中,寻址模式决定该数字是指a寄存器还是D寄存器。@mwcz-Ah寻址模式决定它是a寄存器还是D寄存器;我错过了那部分。我不认为有什么愚蠢的问题。无论如何,我发现它对我理解68k很有用。谢谢,谢谢。当时我正在编写一个模拟器,所以依赖汇编程序不是一个选择。