8086彙編學習

github_38838414發表於2017-11-19

8086彙編學習

資料:《組合語言》——王爽


debug相關

Debug 是DOS,Windows 都提供的真實模式(8086方式)程式的除錯工具,使用他可以檢視CPU各種暫存器中的內容,記憶體的情況和在機器碼級跟蹤程式的執行。
win10 win7已經不支援debug模式了,要想體驗debug模式可通過虛擬機器跑xp來完成
主要的Debug功能:
R命令:檢視、改變CPU暫存器的內容; D命令:檢視記憶體中的內容;
E命令:改寫記憶體中的內容;
U命令:將記憶體中的機器指令翻譯為彙編指令;
T命令:執行一條機器指令;
A命令: 以彙編指令的格式在記憶體中寫入一條機器指令。
進入Debug,進入DOS,或者在windows下進入虛擬的8086模式的DOS。【win】+【R】後輸入【command】,進入虛擬DOS,【Alt】+【Enter】可以全屏。輸入Debug,(大小寫不敏感)。出現一個【-】在其後輸入命令就可以執行了。

debug模式

暫存器相關

  • AX 累加暫存器 accumulator register(分為 AH / AL).
  • BX 基址暫存器 base address register (分為 BH / BL).
  • CX 計數暫存器 count register(分為 CH / CL ).
  • DX 資料暫存器 data register (分為 DH / DL).
  • SI 源變址暫存器 source index register.
  • DI 目的變址暫存器 destination index register.
  • BP 基址指標暫存器 base pointer.
  • SP 堆疊暫存器 stack pointer.
  • CS 程式碼段暫存器,用來存放當前正在執行的指令
  • DS 資料段暫存器,用來存放當前執行程式所用的資料
  • ES 附加段暫存器,由程式設計師決定用途
  • SS 堆疊段暫存器,指出堆疊所在區域

編譯連結

編譯器:masm
編譯:
1. 進入DOS環境
2. 進入masm所在目錄,執行masm.exe
3. 輸入所要編譯的檔名
4. 生成的中間檔案處可一路空格
這裡寫圖片描述

連結: 同上,不過是將masm.exe 換做link.exe
這裡寫圖片描述
跟蹤:輸入debug+可執行檔案的檔名

相關文章