⑴ 如何使用編譯器編譯匯編語言源程序
1、對支持內嵌匯編的,高級語言的編譯器能直接編譯!
2、對不支持內嵌匯編的情況:自然是用匯編編譯程序先將匯編源代碼編譯為obj文件,再由鏈接程序link和其他obj文件裝配形成exe。
⑵ 匯編的源代碼拿什麼東西編譯
比如說你的源文件是 test.asm
在cmd下進入你test.asm所在目錄,命令行下輸入 masm test.asm
這一步在test.asm目錄下生成一個 test.obj文件
然後是連接 link test.ojb
這樣在同一目錄下就有 test.exe了
你可以試試從網上或書上找的完整的代碼(書上有時給的是代碼片段) 看能否編譯。
還有出錯時看看編譯器給出的錯誤提示,常見的問題是缺少相關庫文件,重裝一遍編譯器就行。
還有文件名長度也可能導致編譯連接失敗。我發現link可以連接的文件名好像不能超過8個字元,即使編譯這步沒有問題
⑶ 匯編源程序經過編譯後是什麼誰能提供,我想看一下。謝謝
匯編程序編寫的一般過程:
1、編輯:EDIT 文件名.ASM
2、匯編:MASM 文件名;
用.ASM(源文件)生成.OBJ(目標文件),
也可生成.LST(列表)、.CRF(交叉引用)
3、連接:LINK 文件名;
用.OBJ文件生成.EXE(可執行文件)
也可生成.MAP(存儲映象),
還可使用.LIB(庫文件)
4、調試:DEBUG 文件名.EXE
按每個模塊(子程序)的輸入輸出關系檢查
即編譯後生成obj文件,鏈接後生成exe文件
⑷ 編譯程序把源代碼編譯為的目標代碼是什麼代碼是不是匯編
這個問題比較復雜,其實來說,編譯器可以翻譯高級語言為任何低級語言或機器語言。像JAVA,.NET的編譯器是編譯結果是中間代碼(可以理解為一種低級語言),由相應解釋器執行;像C之類的編譯以後可以是根據不同平台相應的機器碼,就是01組成的編碼,由對應平台的計算機直接執行;除此以外,gcc等也可以將C編譯為匯編輸出!
建議學習《編譯原理》這門課程,你會有更深的理解。
⑸ 怎麼編譯匯編語言程序
計算機硬體系統只懂自己的指令程序,而不懂其他語言程序。因此,想用匯編語言或高級語言,則必須有這樣一程序,它將用匯編語言或高級語言寫成的程序轉換成等價的機器語言程序,我們稱這種程序(轉換)為翻譯程序(Translator),把匯編語言的翻譯程序稱為匯編程序( Assembler ),把高級語言的翻譯程序稱為編譯程序( Comiler )。編譯程序也稱為編譯器,它的輸入對象稱為源程序( Source program ),輸出對象稱為目標程序( Object program )。
⑹ 匯編語言的源程序需要編譯嗎
匯編語言不是機器語言,肯定要先翻譯成機器語言(.obj文件),再連接成可執行文件才能被計算機執行。
如果是裸機,可以不用連接。
⑺ 編譯程序把源程序編譯為匯編程序的過程是怎樣的
你去看《編譯原理》這本書就知道了。
⑻ 匯編程序是怎麼編譯的
匯編語言是一種低級語言,匯編語言是匯編指令集、偽指令集和使用它們規則的統稱,使用具有一定含義的符號為助憶符,用指令助憶符、符號地址等組成的符號指令稱為匯編格式指令。
過程:
編輯:用編輯軟體(EDIT.EXE或記事本)形成源程序(.ASM)
匯編:用匯編程序(MASM.EXE)對源程序進行匯編,形成目標文件(.OBJ),格式如下:MASM LX.ASM;
連接:用連接程序(LINK.EXE)對目標程序進行連接,形成可執行文件(.EXE),格式如下:LINK LX.OBJ;
執行:如果結果在屏幕在顯示,則直接執行可執行文件。
調試:用調試程序(LINK.EXE)對可執行文件進行調試,格式如下:DEBUG LX.EXE
匯編語言中,用助記符(Memoni)代替操作碼,用地址符號(Symbol)或標號(Label)代替地址碼。匯編程序(如MASM)的原理實際上就是把匯編的代碼轉成電腦可以識別的二進制碼
⑼ 編譯成功的匯編源代碼,用masm5編譯時出錯,如下代碼
SHR AL,4 移位指令中的移位次數要用CL,不能是立即數
MOV CL,4
SHR AL,CL
另外:
JB C2
ADD AL,07H 這里應該是ADD AL,37H 吧
C2:
ADD AL,30H
⑽ codewarrior可以編譯匯編源代碼嗎
採用CodeWarrior IDE,開發人員可以得益於採用各種處理器和平台(從Motorola到TI到Intel)間的通用功能性。根據Gartner Dataquest的報告,CodeWarrior編譯器和調試器在商用嵌入式軟體開發工具的使用率方面排名第一。而這只是流行的CodeWarrior軟體開發工具中的兩個。CodeWarrior包括構建平台和應用所必需的所有主要工具 - IDE、編譯器、調試器、編輯器、鏈接器、匯編程序等。另外,CodeWarrior IDE支持開發人員插入他們所喜愛的工具,使他們可以自由地以希望的方式工作。 CodeWarrior開發工作室將尖端的調試技術與健全開發環境的簡易性結合在一起,將C/C++源級別調試和嵌入式應用開發帶入新的水平。開發工作室提供高度可視且自動化的框架,可以加速甚至是最復雜應用的開發,因此對於各種水平的開發人員來說,創建應用都是簡單而便捷的。 它是一個單一的開發環境,在所有所支持的工作站和個人電腦之間保持一致。在每個所支持的平台上,性能及使用均是相同的。無需擔心主機至主機的不兼容。