匯編語言開發(fā)過程詳解
程序開發(fā)過程
一、逐步開發(fā)
(1)源程序的編輯
- 源程序文件是無格式文件、純文本類型
- 以.ASM為擴展名,可使用任何文本編輯器
►Windows的記事本Notepad
►其他程序開發(fā)工具中的編輯環(huán)境
►專注于源程序編寫的編輯軟件,例如UltraEdit32
; eg0000.asm in Windows Console include io32.inc .data msg byte 'Hello World' ; 數(shù)據(jù)定義 .code start: mov eax,offset msg call dispmsg exit 0 end start
(2)源程序的匯編
- 生成目標模塊文件(.OBJ)
- MASM 6.x的匯編程序是ML.EXE
BIN\ML /c /coff eg0101.asm
►參數(shù)“/c”(小寫字母)實現(xiàn)源程序的匯編
►參數(shù)“/coff”(小寫字母)生成COFF格式目標模塊文件
ML.EXE的參數(shù)區(qū)別大小寫
將源文件放在MASM目錄
(3)目標文件的連接
- 把一個或多個目標文件和庫文件合成一個可執(zhí)行文件
- 可執(zhí)行文件以.EXE為擴展名
- 32位連接程序被更名為LINK32.EXE
BIN\LINK32 /subsystem:console eg0101.obj
►“/subsystem:console”生成Windows控制臺(Console)文件
►“/subsystem:windows”生成Windows圖形窗口的可執(zhí)行文件
使用批處理文件方便操作
匯編程序只指出語法錯誤
(4)可執(zhí)行文件的運行
- 進入控制臺(或模擬DOS)環(huán)境
- 在命令行提示符下輸入文件名(可以省略擴展名)按下回車鍵運行
eg0101.exe
運行錯誤,就需要
- 靜態(tài)排錯:閱讀分析源程序
- 動態(tài)排錯:利用調(diào)試程序
不要在Windows下雙擊運行
二、列表文件與調(diào)試程序
(1)列表文件
列表文件(.LST)含有源程序和目標代碼
BIN\ML /c /coff /Fl eg0101.asm
“/Fl”創(chuàng)建列表文件(大寫F、小寫l,不是數(shù)字1)
列表文件有兩部分內(nèi)容
- 第一部分:源程序及其代碼
- 第二部分:各種標識符
(2)調(diào)試程序
- WinDbg是微軟提供的Windows調(diào)試程序
- WinDbg支持源程序級調(diào)試,但匯編、連接時要加入?yún)?shù)
匯編時用“/Zi”(大寫Z、小寫i)參數(shù)
BIN\ML /c /coff /Fl /Zi eg0101.asm
連接時用“/debug”參數(shù)
BIN\LINK32 /subsystem:console /debug eg0101.obj
三、快速開發(fā)
快速開發(fā)的批處理文件MAKE32.BAT
@echo off BIN\ML /c /coff /Fl /Zi %1.asm if errorlevel 1 goto terminate BIN\LINK32 /subsystem:console /debug %1.obj if errorlevel 1 goto terminate DIR %1.* :terminate @echo on
快速開發(fā)過程
① 進入MASM目錄:雙擊文件WIN32.BAT
② 生成可執(zhí)行文件:make32 eg0101
到此這篇關(guān)于匯編語言開發(fā)過程的文章就介紹到這了,更多相關(guān)匯編語言開發(fā)過程內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
匯編語言XOR指令:對兩個操作數(shù)進行邏輯(按位)異或操作(推薦)
匯編語言(assembly language)是一種用于電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。這篇文章主要介紹了匯編語言XOR指令:對兩個操作數(shù)進行邏輯(按位)異或操作,需要的朋友可以參考下2020-01-01iOS匯編入門教程之在Xcode工程中嵌入?yún)R編代碼的方法
在Xcode中嵌入?yún)R編代碼主要依賴了C語言支持通過 __asm__ 引入?yún)R編代碼的功能。這篇文章主要介紹了iOS匯編入門教程之在Xcode工程中嵌入?yún)R編代碼的方法,需要的朋友可以參考下2020-02-02匯編語言實現(xiàn)在指定字符串中搜索字符''A''的方法
這篇文章主要介紹了匯編語言實現(xiàn)在指定字符串中搜索字符'A'的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-02-02