我在这件事上需要帮助。我必须画一张记忆图,我有
这是代码
ORG $6080;
CAT EQU 5;
DOG DC.L CAT;
Hourse EQU 1;
我没有得到ORG线,任何人都可以告诉我如何绘制其内存映射
答案 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 ?
您可以在程序集的数据部分中定义这些内存位置。然后你可以填写地址问号。存储的实际值是任意的,但仅包含在上下文中。