68000汇编代码内存映射

时间:2016-02-25 15:18:28

标签: assembly 68000

我在这件事上需要帮助。我必须画一张记忆图,我有

这是代码

ORG $6080;  
CAT EQU 5;  
DOG DC.L CAT;  
Hourse EQU 1;

我没有得到ORG线,任何人都可以告诉我如何绘制其内存映射

2 个答案:

答案 0 :(得分:3)

让我们分解一下:

ORG $6080; // Defines the start of data/code
CAT EQU 5;  // Defines a constant with value 5, does not allocate any memory
DOG DC.L CAT;  // Defines a 32bit variable in memory, sets value to CAT (5)
Hourse EQU 1;  // Defines a constant with value 1, does not allocate any memory

现在您已经了解了块的开始以及内存中的内容以及内存中的内容,您可以绘制它的内存映射。它将包含一个32位的值。

答案 1 :(得分:-1)

这是我试图理解你的讲师想要的东西。他们选择sudo代码很有意思。

ORG可能指的是一个数字,尽管这可能是一个内存地址。

然后,CAT可能是寄存器中的变量。 EQU说CAT等于5.

然后,DOG也可能是寄存器中的变量。绝对远程寻址用于表示DOG等于什么。换句话说,DOG等于DC.L索引为5。

Hourse是寄存器中的另一个变量,它等于1.

现在我们可以创建一个表(Memory Map)

Variable | Value | Address

ORG          1       ?
CAT          5       ?
DOG          ?     DC.L indexed by 5
Hourse       1       ?

您可以在程序集的数据部分中定义这些内存位置。然后你可以填写地址问号。存储的实际值是任意的,但仅包含在上下文中。