資源簡介
NASM中文手冊.pdf
學nasm必備哈
1.1 什么是NASM
[1]NASM是一個為可移植性與模塊化而設計的一個80x86的匯編器。它支持相當多
的目標文件格式,包括Linux和'NetBSD/FreeBSD','a.out','ELF','COFF',微軟16
位的'OBJ'和'Win32'。它還可以輸出純二進制文件。它的語法設計得相當的簡
潔易懂,和Intel語法相似但更簡單。它支持'Pentium','P6','MMX','3DNow!',
'SSE' and 'SSE2'指令集,
1.1.1 為什么還需要一個匯編器?
NASM當初被設計出來的想法是'comp.lang.asm.x86'(或者可能是'alt.lang.asm'
,我忘了),從本質上講,是因為沒有一個好的免費的x86系例的匯編器可以使用,
所以,必須有人來寫一個。
(*)'a86'不錯,但不是免費的,而且你不可能得到32位代碼編寫的功能,除非你
付費,它只使用在dos上。
(*) 'gas'是免費的,而且在dos下和unix下都可以使用,但是它是作為'gcc'的一
個后臺而設計的,并不是很好,'gcc'一直就提供給它絕對正確的代碼,所以它的
錯誤檢測功能相當弱,還有就是對于任何一個想真正利用它寫點東西的人來講,
它的語法簡直太可怕了,并且你無法在里面寫正確的16位代碼。
(*) 'as86'是專門為Minix和Linux設計的,但看上去并沒有很多文檔可以參考。
(*) 'MASM'不是很好,并且相當貴,還且只能運行在DOS下。
(*) 'TASM'好一些,但卻極入與MASM保持兼容,這就意味著無數的偽操作碼和繁瑣
的約定,并且它的語法本質上就是MASM的,伴隨著的就是一些自相矛盾和奇怪的
東西。它也是相當貴的,并且只能運行在DOS下。
所以,只有NASM才能使您愉悅得編程。目前,它仍在原型設計階段-我們不期望它
能夠超越所有的這些匯編器。但請您發給我們bug報告,修正意見,和其他有用的
信息,還有其他任何你手頭有的對我們有用的信息(感謝所有已經這樣在做了的
人們),我們還會不斷地改進它。
1.1.2 許可條件
請閱讀作為NASM發布的一部分的文件'Licence',只有在該許可條件下你才可以使
用NASM。
代碼片段和文件信息
評論
共有 條評論