日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Masm】使用教程

發(fā)布時間:2023/12/9 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Masm】使用教程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
如果你在用匯編語言來開發(fā)windows下的程序的話,MASM32是很好的選擇。

(Masm32下載地址請用google搜索罷。)

工欲善其事,必先利其器。

本文主要針對masm32?v8來說明三點:

1 、基本使用方法
如何在MASM32中建立、匯編、鏈接源程序文件和運行生成的可執(zhí)行文件。

2 、如何開啟MASM32的在線幫助功能

3 、漢化QEDITOR菜單

一、基本使用方法
以在C: \PWIN951\TEMP文件夾下建立TEST.ASM和生成TEST.EXE為例.

安裝好MASM32后,打開“資源管理器”或“我的電腦”,進(jìn)入MASM32所在文件夾(
假設(shè)為C: \MASM32),雙擊QEDITOR.EXE
的圖標(biāo),這就進(jìn)入了MASM32的集成開發(fā)環(huán)境。

1 .[這一步是可選的,以下可選的步驟均簡稱為“可選”]?輸入資源文件,?然后使用菜單欄上的菜單File?->?Save?或?快捷工具欄中的代表存盤功能的磁盤狀圖標(biāo),第一次需要輸入文件名,注意要指定擴展名?.RC并存盤,注意如果是在集成環(huán)境中編譯此資源文件,文件名必須是RSRC.RC(大小寫均可)。

2 .[可選]?編譯資源文件。使用菜單欄上的菜單Project?->?Compile?Resource?File。這時系統(tǒng)會打開一個DOS窗口運行相關(guān)的批處理文件,并報告結(jié)果。

若不編譯成功,信息為(具體錯誤信息因錯誤而異):

Microsoft?(R)?Windows?(R)?Resource?Compiler,?Version?
5 . 00 . 1823 . 1 ?-?Build? 1823
Copyright?(C)?Microsoft?Corp.?
1985 - 1998 .?All?rights?reserved.

Using?codepage?
936 ?as?default
Creating?rsrc.RES
RC: ?RCPP?-CP? 936 ?-f? C: \PWIN951\TEMP\RCa83947?-g? C: \PWIN951\TEMP\RDa83947?-DRC_IN?VOKED?-D_WIN32?-pc\:/?-E?-I.?-I?.

rsrc.rc.

rsrc.rc?(
1 ):?error?RC2135?:?file? not ? found: ?MAINICON.ICO.
Writing?
MENU: 600 ,? lang: 0x409,?size? 128
Microsoft?(R)?Windows?Resource?To?Object?Converter?Version?
5 . 00 . 1736 . 1
Copyright?(C)?Microsoft?Corp.?
1992 - 1997 .?All?rights?reserved.

CVTRES?:?fatal?error?
CVT1101: ?cannot?open?rsrc.res?for?reading
Press?any?key?to?continue?.?.?.

其中給出了出錯語句的行號,錯誤類型代碼及錯誤信息。
按任一鍵結(jié)束,再關(guān)閉此DOS窗口,并按錯誤信息修改資源文件,存盤后,重新編譯。

技巧小提示: ?在qeditor.exe中,按Ctlr+G可跳到指定的行

直到顯示如下成功信息:

Microsoft?(R)?Windows?(R)?Resource?Compiler,?Version?
5 . 00 . 1823 . 1 ?-?Build? 1823
Copyright?(C)?Microsoft?Corp.?
1985 - 1998 .?All?rights?reserved.

Using?codepage?
936 ?as?default
Creating?rsrc.RES
RC: ?RCPP?-CP? 936 ?-f? C: \PWIN951\TEMP\RCa81843?-g? C: \PWIN951\TEMP\RDa81843?-DRC_IN
VOKED?-D_WIN32?-pc\:/?-E?-I.?-I?.

rsrc.rc.
Writing?
MENU: 600 ,? lang: 0x409,?size? 128
Microsoft?(R)?Windows?Resource?To?Object?Converter?Version?
5 . 00 . 1736 . 1
Copyright?(C)?Microsoft?Corp.?
1992 - 1997 .?All?rights?reserved.

Press?any?key?to?continue?.?.?.

說明生成了rsrc.RES和rsrc.obj文件,按任一鍵結(jié)束,再關(guān)閉此DOS窗口。

⒊輸入源程序,然后使用菜單欄上的菜單File?->?Save?或?快捷工具欄中的代表存盤功能的磁盤狀圖標(biāo),第一次需要輸入文件名,注意要指定擴展名?.ASM[
本例中為C: \PWIN951\TEMP\ TEST .ASM]。

⒋匯編源程序。使用菜單欄上的菜單Project?->?Assemblier?ASM?file。這時系統(tǒng)會打開一個DOS窗口運行相關(guān)的批處理文件。結(jié)束后會彈出一個名為“\masm32\bin\asmbl.txt”的窗口報告結(jié)果。

若匯編不成功,則顯示信息如下(具體錯誤信息因錯誤而異):

Assembling: ? C: \PWIN951\TEMP\ test .asm
C: \PWIN951\TEMP\ test .asm( 60 )?:?error? A2006: ?undefined?symbol?:?NULL
C: \PWIN951\TEMP\ test .asm( 60 )?:?error? A2114: ?INVOKE?argument?type?mismatch?:?argument?:? 1

Volume?
in ?drive?C?is?LIU?
Volume?Serial?Number?is?
4061 -17D7
Directory?of?
C: \PWIN951\TEMP

TEST ?ASM? 8 , 402 ? 06 - 05 - 02 ? 19 : 29 ? test .asm
1 ?file(s)? 13 , 010 ?bytes
0 ?dir(s)? 24 , 403 , 968 ?bytes?free
其中包括了詳細(xì)出錯信息。如

C: \PWIN951\TEMP\ test .asm( 60 )?:?error? A2006: ?undefined?symbol?:?NULL



C: \PWIN951\TEMP\ test .asm?為源程序文件的文件說明符
(
60 )?其中60為源程序中引起錯誤的語句的行號
error?A2006?A2006為錯誤類型代號
undefined?symbol?:?NULL?為具體錯誤信息

這時應(yīng)按這些信息修改源程序中相應(yīng)行,存盤后重新匯編。直至窗口顯示如下成功信息:

Assembling: ? C: \PWIN951\TEMP\ test .asm

Volume?
in ?drive?C?is?LIU?
Volume?Serial?Number?is?
4061 -17D7
Directory?of?
C: \PWIN951\TEMP

TEST ?ASM? 8 , 401 ? 06 - 05 - 02 ? 19 : 34 ? test .asm
TEST ?OBJ? 3 , 720 ? 06 - 05 - 02 ? 19 : 35 ? test .obj
2 ?file(s)? 16 , 729 ?bytes
0 ?dir(s)? 22 , 298 , 624 ?bytes?free

其中包括了新生成的目標(biāo)文件TEST.OBJ的有關(guān)信息。


⒌鏈接目標(biāo)文件。使用菜單欄上的菜單Project?->?Link?OBJ?file。這時系統(tǒng)會打開一個DOS窗口運行相關(guān)的批處理文件,并彈出名為“\masm32\bin\lnk.txt”
的窗口報告結(jié)果如下:

Volume?
in ?drive?C?is?LIU?
Volume?Serial?Number?is?
4061 -17D7
Directory?of?
C: \PWIN951\TEMP

TEST ?ASM? 8 , 401 ? 06 - 05 - 02 ? 19 : 34 ? test .asm
TEST ?OBJ? 3 , 720 ? 06 - 05 - 02 ? 19 : 35 ? test .obj
TEST ?EXE? 4 , 608 ? 06 - 05 - 02 ? 19 : 38 ? test .exe
3 ?file(s)? 16 , 729 ?bytes
0 ?dir(s)? 24 , 395 , 776 ?bytes?free

其中包括新生成的可執(zhí)行文件TEST.EXE的有關(guān)信息.


注:沒有找到資源文件不屬于錯誤,因此如果你的程序使用了窗口,匯編和鏈接均順利完成,但運行時卻看不到程序窗口,很可是你將窗口信息放在資源文件中,但資源文件尚未編譯或編譯沒有成功。

⒍?運行生成的可執(zhí)行文件.使用菜單欄上的菜單Project?->?Run?program。

看到程序運行的結(jié)果了嗎?

如果你的程序使用了窗口,但運行時看不到窗口,很可能是你將窗口信息放在資源文件中,但資源文件尚未編譯或編譯沒有成功。

總之,要注意的是,對源程序文件或資源文件修改后一定要先存盤,然后再進(jìn)行后繼操作,否則錯誤依舊。

Project菜單中其它菜單項的功能和用法:

Assemble?&?Link?匯編源程序并鏈接,適用于資源文件未修改,但修改了源程序的情況
Build?All?編譯資源文件,匯編源程序并鏈接,適用于資源文件和源程序均修改的情況


Console?Link?OBJ?File?匯編控制臺型源程序
&Console?Assemble?Link?匯編并鏈接控制臺型源程序
Console?Build?All?生成控制臺可執(zhí)行程序?


二、開啟MASM32的在線幫助功能
在用MASM32編寫程序時,大量使用了WINDOWS?API函數(shù),眾多的函數(shù)不同的參數(shù)我們很難記住,只能現(xiàn)用現(xiàn)查。

MASM32提供了在線幫助功能,但必須進(jìn)行相應(yīng)設(shè)置,才能“招之即來”。

在QEDITOR中按功能鍵?F1?,彈出對話框,幫助文件?.Hlp沒找到?怎么辦?跟我做:

選擇菜單TOOLS?->?Change?Editor?settings,彈出名為“Change?Quick?Editor?settings”的窗口,從Double?Click?Item?to?Edit下的列表框中找到“F1?Help?File?=??.hlp”項,剛才我們看到的?.hlp就在其中,原來MASM32不知我們的幫助文件放在何處,所以只能由我們用戶自己來指定位置。

雙擊這一項,彈出一個對話框,直接輸入我們所用的幫助文件的文件說明符,[如我的是“
C: \PWIN951\HELP\WIN32.HLP”,是DLEPHI附帶的。],或則單擊 " Browse... " 按鈕從選擇文件對話框中選擇。做完后單擊 " Save " 按鈕,然后關(guān)閉此窗口。

重新啟動QEDITOR,將光標(biāo)定位在一個API函數(shù)名,如MessageBox上,按下功能鍵?F1,?幫助信息出來了吧!?


注意:修改設(shè)置后要重新啟動QEDITOR,新的設(shè)置才起作用。


三、漢化QEDITOR菜單

QEDITOR的菜單內(nèi)容保存在文件QEDITOR.INI中,將其中的菜單項文本改為中文,就完成漢化了(當(dāng)然你要使用中文版的WINDOWS)。

由于QEDITOR.INI是非常重要的文件,所以修改前一定要備份,修改時也要小心。下面是我將其中對應(yīng)Project菜單的菜單項文本的漢化后的內(nèi)容。


; ?--------------------------------------------------------
;
?Do?not?edit?this?file?manually,?the?sequence?of?settings
;
?must?be?in?the?correct?order?and?it?must?have?the?correct
;
?number?of?settings?otherwise?the?editor?may?not?function
;
?properly.
;
?--------------------------------------------------------

[editor?settings]
MASM32?Version?
6
command.com
0
1
1
4
2
2
76
80
70
*
*
*
*
\pwin951\help\win32.hlp
0
[menu?settings]
; ------------------------------------------------------------
;
?File?paths?should?have?the?drive?added?so?that?the?relative
;
?paths?become?absolute?paths.?This?allows?the?tools?to?be
;
?accessed?from?different?drives?on?the?computer.
;
?-----------------------------------------------------------

[&R工程]
&R?編譯資源文件,\MASM32\BIN\Bres.bat?
&A?匯編源程序文件,\MASM32\BIN\Assmbl.bat?
-
&L?鏈接目標(biāo)文件,\MASM32\BIN\Lnk.bat?
匯編源程序并鏈接目標(biāo)文件,\MASM32\BIN\Build.bat?
&B?編譯資源文件、匯編源程序并鏈接目標(biāo)文件,\MASM32\BIN\Bldall.bat?
運行?&Makeit.bat?生成可執(zhí)行文件,makeit.bat
-
&O?鏈接控制臺目標(biāo)文件,\MASM32\BIN\Lnkc.bat?
&C?匯編和鏈接控制臺文件,\MASM32\BIN\Buildc.bat?
&A?一步生成控制臺可執(zhí)行文件,\MASM32\BIN\Bldallc.bat?
-
&R?運行程序,.exe

[&Tools]

總結(jié)

以上是生活随笔為你收集整理的【Masm】使用教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久精品这里有 | 日韩欧美在线视频播放 | aaaaaav| 美女扒开粉嫩尿口 | 一区二区三区免费在线观看视频 | 性爱免费在线视频 | 久久亚洲综合国产精品99麻豆精品福利 | 僵尸叔叔在线观看国语高清免费观看 | 国产一区二区三区福利 | 鲁鲁在线| 国产中文字字幕乱码无限 | 美女扒开尿口让男人爽 | 中文字幕一区二区三区手机版 | 丰满尤物白嫩啪啪少妇 | 91亚色 | 亚洲欧美激情另类 | 91美女片黄在线观看 | 俺来也在线视频 | 亚洲视频免费在线播放 | 女女h百合无遮涩涩漫画软件 | 国产在线精品成人欧美 | 91麻豆视频在线观看 | 在线精品福利 | 中文字幕手机在线视频 | 韩国日本欧美一区 | 亚洲无套| 青青国产精品视频 | 一本大道久久 | 欧美顶级毛片在线播放 | 先锋av资源在线 | 香蕉视频91| av在线中文 | 国产第六页 | 日本免费精品视频 | 在线午夜 | 西西444www大胆无视频 | 91精品又粗又猛又爽 | 综合九九 | 碰超在线 | 免费观看国产精品视频 | 好了av在线 | 国产在线观看免费 | 高潮白浆| 91看片在线看| 中文字幕日本在线观看 | 超碰cc| 三级理论电影 | 狠狠躁夜夜躁人 | 无码人妻精品一区二区三区蜜桃91 | 日韩在线第一 | 96精品视频在线观看 | 蜜桃tv在线观看 | 日本爽爽爽爽爽爽在线观看免 | 午夜色网站 | 黄色一级免费网站 | 天堂国产 | 日本黄色大片免费 | 精品人人妻人人澡人人爽牛牛 | 国产日韩在线视频 | 日韩一区二区免费在线观看 | 日本丰满少妇一区二区三区 | 欧美视频在线一区 | 美女视频黄频视频大全 | 亚洲最新视频 | 黄色三级小视频 | 农村妇女毛片 | av电影免费在线播放 | 日本激情一区二区 | 波多野结衣日韩 | 中国字幕av| 青青视频网 | 亚洲免费视频一区二区三区 | 日本美女a级片 | 欧美丰满熟妇xxxxx | 麻豆一区二区99久久久久 | 久久精品三级视频 | 桃色一区二区三区 | 青草成人免费视频 | 福利在线观看 | 麻豆啪啪 | 亚洲精品美女网站 | xxx日韩| 欧美激情精品久久久久 | 伊是香蕉大人久久 | 日本一区二区高清免费 | 亚洲超碰在线观看 | 亚洲精品视频在线观看免费视频 | 国产ts网站 | 97免费公开视频 | 啪啪av网站 | 亚洲天堂影视 | 国产精品呦呦 | 亚洲精品男人的天堂 | 欧美伦理片网站 | 粗大的内捧猛烈进出 | 亚洲深夜视频 | 国产一区a | 欧美综合视频在线观看 | 亚洲激情视频小说 |