簡體   English   中英

68000匯編代碼內存映射

[英]68000 assembly code memory mapping

我需要這方面的幫助。我必須繪制一個內存映射,

這是代碼

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

我沒有遵循ORG線,誰能告訴我如何繪制其內存圖

讓我們分解一下:

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位值。

這是我嘗試了解您的講師的要求。 他們對sudo代碼的選擇很有趣。

盡管ORG可能是一個內存地址,但它可能是指一個數字。

因此,CAT可能是寄存器中的變量。 EQU表示CAT等於5。

因此,DOG也可能是寄存器中的變量。 絕對遠端尋址用於表示DOG等於什么。 換句話說,DOG等於索引為5的DC.L。

然后Hourse是寄存器中的另一個變量,它等於1。

現在可以在其中創建表(內存映射)

Variable | Value | Address

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

您可以在程序集的數據部分中定義這些存儲位置。 然后,您可以填寫地址問號。 存儲的實際值是任意的,但僅包含在上下文中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM