彙編語言
彙編語言是為特定計算機或計算機系列設計的一種面向機器的語言﹐由彙編執行指令和彙編偽指令組成。使用彙編語言編寫的程式,機器不能直接識別。彙編器將彙編語言翻譯成機器語言。
彙編程式是系統軟體中語言處理系統軟體。彙編器把彙編語言翻譯成機器語言的過程稱為彙編。
MASM編譯器介紹
MASM是Microsoft公司推出的彙編編譯器。它的版本從低到高經過了很多次的升級(微軟的通病,升級補丁多如牛毛)。每次升級除了例行的錯誤修正外都增加了一些新的功能,以至於到最後高版本和低版本的語法和功能相差很多,向下兼容性也不好。低版本的MASM固然無法編譯高版本的源程式,但高版本的MASM也可能無法正常編譯低版本的源程式,如MASM 4.0寫的源程式常常無法在MASM 6.x上編譯成功。在使用MASM系列編譯器時,如果不先搞清楚特定的語法和編譯選項可以在哪個版本上用,編譯中就會錯誤連篇。所以在這裡有必要了解一下MASM各版本的演變過程
TASM的用法
TASM是Borland公司推出的彙編編譯器,也是一種使用很廣泛的編譯器,和MASM相比,TASM的升級沒有這么頻繁。TASM早在1.0版本就有了對80386處理器指令的完全支持(MASM要到5.0版本才支持80386指令),1989年推出的1.01版本修正了1.0版的一些錯誤;早期的版本還有TASM 3.0和TASM 4.0,其中4.0版是TASM系列編譯器編寫DOS程式使用最廣泛的版本。
到目前為止,TASM的最後一個版本是5.0版,這個版本支持Win32編程,並單獨為Win32編程附帶有一整套的32位程式:32位的編譯器TASM32.EXE、連結器TLINK32.EXE和資源編譯器BRC32.EXE。與這些32位程式對應的16位工具在軟體包中依然存在,檔案名稱為TASM.EXE,TLINK.EXE和BRC.EXE等。
NASM
NASM是一個為可移植性與模組化而設計的一個80x86的彙編器。它支持相當多的目標檔案格式,包括Linux和'NetBSD/FreeBSD','a.out','ELF','COFF',微軟16位的'OBJ'和'Win32'。它還可以輸出純二進制檔案。它的語法設計得相當的簡潔易懂,和Intel語法相似但更簡單。它支持'Pentium','P6','MMX','3DNow!','SSE' and 'SSE2'指令集.