以單步模式執行 8085 程式


以單步模式執行程式

單步模式對於查詢在一次執行後未產生預期結果的程式非常有用。我們用它進行程式除錯。類似地,像要單獨執行的操作一樣,在“>”提示符處鍵入“S”。我們可以清楚地注意到,在 S 之後發生了地址更改。給定的系統清楚地提示了以下內容

起始地址為:xxxx - yy/

其中記憶體地址為 xxxx,位於記憶體的內容為 yy,允許使用者響應所需的單步執行起始地址。如果我們執行程式從指定的地址 xxxx 開始執行,我們響應 。我們表示 代表空格鍵按下,它在鍵盤上太寬了。如果程式的位置從 C000H 開始,我們響應“C000”。

之後,系統顯示“C000-21/”,其中記憶體內容 21 的位置為 C000H。然後在我們完成對 的響應後。

檢查暫存器命令為了檢查暫存器值,我們鍵入“X”,無需更改地址。整個系統的提示如下

暫存器

要求使用者響應所需的暫存器名稱。如果要檢視暫存器 C 的內容,我們鍵入 C,無需更改地址 。我們立即得到響應

C5xx-

其中暫存器 C 的內容為 xx,允許使用者在為 xx 指定的位置輸入新值。例如,如果我們希望暫存器 C 為 36H,我們得到響應 36 和地址更改 。如果使用者不需要更改暫存器的內容,則執行對地址更改 的響應。如果是地址更改,即 ,則命令 X 終止,並再次出現提示“>”。如果它變成 ,則系統會自動顯示暫存器 D 的內容,允許使用者可選地向暫存器 D 輸入新值。透過重複使用 ,我們可以看到所有內容,如果需要,我們可以修改所有暫存器的內容。暫存器 A 的序列如下

                                                  A、B、C、D、E、F、I、H、L、SPH、SPL、PCH 和 PCL

這裡 F 是標誌暫存器,SPH 和 SPL 是 SP 的最高有效位和最低有效位元組,PCH 和 PCL 分別是。8 位暫存器 I 提供中斷的掩碼狀態。

顯示記憶體命令為了顯示記憶體內容,我們鍵入“D”,無需更改地址 。提示如下

起始地址

使用者需要響應所需的記憶體顯示起始地址。使用者需要以十六進位制提供記憶體地址,無需 H 字尾和 (例如“C200”)。

然後系統提示使用者輸入結束地址。當用戶提供結束地址時,所需記憶體位置的內容將顯示在終端上,“>”提示符重新出現。使用此命令,我們只能檢視多個記憶體位置的內容,但不能更改它們。要修改記憶體位置的內容,我們使用修改記憶體命令。

檢查暫存器/記憶體後繼續單步執行:我們必須說,在通過幾組指令單步執行程式後,暫存器和記憶體的內容已滿足我們的要求。之後,我們繼續以單步模式執行程式的其餘部分。

我們在提示符“>”處鍵入“S”,無需更改地址 。系統的提示如下

起始地址為:xxxx - yy

其中 xxxx 是記憶體地址,位於記憶體的內容為 yy。指令的正確地址為 xxxx,我們要繼續進行單步執行。為了終止單步執行,我們響應地址更改 ,“>”提示符出現。檢查暫存器和記憶體的內容,並繼續單步執行,直到程式結束。

顯示記憶體命令:為了顯示記憶體內容,我們鍵入“D”,無需更改地址 。提示如下

起始地址

使用者需要響應所需的記憶體顯示起始地址。使用者需要以十六進位制提供記憶體地址,無需 H 字尾和 (例如“C200”)。

然後系統提示使用者輸入結束地址。當用戶提供結束地址時,所需記憶體位置的內容將顯示在終端上,“>”提示符重新出現。使用此命令,我們只能檢視多個記憶體位置的內容,但不能更改它們。要修改記憶體位置的內容,我們使用修改記憶體命令。

檢查暫存器/記憶體後繼續單步執行:我們必須說,在通過幾組指令單步執行程式後,暫存器和記憶體的內容已滿足我們的要求。之後,我們繼續以單步模式執行程式的其餘部分。

我們在提示符“>”處鍵入“S”,無需更改地址 。系統的提示如下

起始地址為:xxxx - yy

其中 xxxx 是記憶體地址,位於記憶體的內容為 yy。指令的正確地址為 xxxx,我們要繼續進行單步執行。為了終止單步執行,我們響應地址更改 ,“>”提示符出現。檢查暫存器和記憶體的內容,並繼續單步執行,直到程式結束。

更新於: 2019-07-30

377 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.