8086彙編學習
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,(大小寫不敏感)。出現一個【-】在其後輸入命令就可以執行了。
暫存器相關
- 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+可執行檔案的檔名
相關文章
- 8086 彙編學習 Part 6
- 8086 彙編學習 Part 7
- 8086 彙編學習 Part 9
- 8086 彙編學習 Part 2
- 8086 彙編學習 Part 3
- MacOs 下除錯 8086 彙編Mac除錯
- 8086彙編指令快速參考
- Android手機玩8086彙編Android
- 彙編學習筆記筆記
- iOS逆向學習筆記 - 彙編(一) - 初識彙編iOS筆記
- 彙編基礎學習筆記筆記
- 彙編學習小記(三)-查表
- 學習筆記分享之彙編---2.彙編指令/語法筆記
- 我的彙編學習之路(1):指令
- 彙編學習筆記之轉移指令筆記
- 彙編學習小記(一)-熟悉DEBUG環境
- 彙編學習小記(二)-順序程式設計程式設計
- win32下彙編程式碼結構學習Win32
- 彙編學習筆記07——BCD碼及調整指令筆記
- 逆向學習筆記3——暫存器與彙編指令筆記
- Solidity語言學習筆記————38、Solidity彙編Solid筆記
- Solidity語言學習筆記————39、獨立彙編Solid筆記
- 在一臺ubuntu的arm板子上學習arm彙編Ubuntu
- 我的彙編學習之路(2):主要術語和概念
- 組合語言學習記錄--第一個彙編程式組合語言
- 【自用】彙編初學筆記 #1筆記
- 32位彙編第一講x86和8086的區別,以及OllyDbg偵錯程式的使用
- 前端學習資源彙總前端
- Flutter學習資源彙總Flutter
- Java學習書籍彙總Java
- go學習資源彙總Go
- React學習資源彙總React
- SpringBoot學習彙總Spring Boot
- 嵌入式作業2.1 彙編練習
- iOS逆向學習筆記 - 彙編(四) - 迴圈&選擇[cmp 比較指令]iOS筆記
- 彙編命令A
- 彙編指令
- TensorFlow學習資源彙總