匯編語言編譯格式
Ⅰ 匯編語言一般用什麼編譯器編輯
一般用MASM,現在的最高版本是6.15。
borland不可以。
保存的格式是.asm
你可以用TextPad編寫保存為asm格式就可以了,然後用MASM中的make32或者make16編譯就可以了。
Ⅱ 匯編語言用什麼編寫
任何語言的源程序都是可以用「任何」文本編輯器生成的,唯一的要求:非格式化。也就是不要有字體、顏色、段落等等格式控制,換句話說,要純ASCII文本文件。
通常我就用「記事本」,在命令行方式下就用EDIT。
至於IDE,網上也有很多,但是沒見過幾個特別好用的,沒有集成調試(DEBUG)功能的話,還不如就用批處理。
Ⅲ 怎麼編譯匯編語言程序
計算機硬體系統只懂自己的指令程序,而不懂其他語言程序。因此,想用匯編語言或高級語言,則必須有這樣一程序,它將用匯編語言或高級語言寫成的程序轉換成等價的機器語言程序,我們稱這種程序(轉換)為翻譯程序(Translator),把匯編語言的翻譯程序稱為匯編程序( Assembler ),把高級語言的翻譯程序稱為編譯程序( Comiler )。編譯程序也稱為編譯器,它的輸入對象稱為源程序( Source program ),輸出對象稱為目標程序( Object program )。
Ⅳ 匯編程序是怎麼編譯的
匯編語言是一種低級語言,匯編語言是匯編指令集、偽指令集和使用它們規則的統稱,使用具有一定含義的符號為助憶符,用指令助憶符、符號地址等組成的符號指令稱為匯編格式指令。
過程:
編輯:用編輯軟體(EDIT.EXE或記事本)形成源程序(.ASM)
匯編:用匯編程序(MASM.EXE)對源程序進行匯編,形成目標文件(.OBJ),格式如下:MASM LX.ASM;
連接:用連接程序(LINK.EXE)對目標程序進行連接,形成可執行文件(.EXE),格式如下:LINK LX.OBJ;
執行:如果結果在屏幕在顯示,則直接執行可執行文件。
調試:用調試程序(LINK.EXE)對可執行文件進行調試,格式如下:DEBUG LX.EXE
匯編語言中,用助記符(Memoni)代替操作碼,用地址符號(Symbol)或標號(Label)代替地址碼。匯編程序(如MASM)的原理實際上就是把匯編的代碼轉成電腦可以識別的二進制碼
Ⅳ 匯編語言編譯後生成什麼格式文件
看你用什麼
軟體編譯。
可以BIN,也可以HEX
。也可以同時生成
2
種格式。
Ⅵ 編寫匯編語言程序,要有完整的格式(要有必要的數據段和代碼段)
DATA SEGMENT
STR1 DB 'This is a program',0DH,0AH
STR2 DB 'Disk operation ','$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AH,9
LEA DX,STR1
INT 21H
MOV AH,2
MOV DL,0DH
INT 21H
MOV AH,2
MOV DL,0AH
INT 21H
MOV AH,9
LEA DX,STR2
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
Ⅶ 匯編語言用什麼軟體寫的後綴名是什麼
匯編語言不是用什麼軟體寫的,是由字母、單詞來代替一個特定的指令來編輯的,後綴名是.asm。
匯編語言是用一些容易理解和記憶的字母,單詞來代替一個特定的指令,比如:用「ADD」代表數字邏輯上的加減,「MOV」代表數據傳遞等等,通過這種方法,人們很容易去閱讀已經完成的程序或者理解程序正在執行的功能,對現有程序的bug修復以及運營維護都變得更加簡單方便。
匯編語言具有更高的機器相關性,更加便於記憶和書寫,但又同時保留了機器語言高速度和高效率的特點。匯編語言仍是面向機器的語言,很難從其代碼上理解程序設計意圖,設計出來的程序不易被移植,故不像其他大多數的高級計算機語言一樣被廣泛應用。
(7)匯編語言編譯格式擴展閱讀
匯編語言表達式常量:
1>數值常量1010H
2>符號常量
偽指令:<符號名>EQU<表達式>
功能:定義所指符號常量所代表的常量的值
說明:表達式可以是常數、指令助記符、偽指令助記符、寄存器名字或其他自定義的符號
例子:VAEQU100;表達式為常數
NUMEQUVA+100;表達式為數值表達式
OPEEQUADD;表達式為指令助記符
偽指令:<符號名>=<常數表達式>
功能:定義所指符號常量所代表的常量的值
說明:「=」之後只能是常數,對於字元和字元串匯編時按照整數處理
例子:VA=100
NUM=3*100
NUM=VA+500
Ⅷ 請問匯編程序, 解釋程序, 編譯程序分別指
1、匯編程序
把匯編語言書寫的程序翻譯成與之等價的機器語言程序的翻譯程序。匯編程序輸入的是用匯編語言書寫的源程序,輸出的是用機器語言表示的目標程序。匯編語言是為特定計算機或計算機系列設計的一種面向機器的語言,由匯編執行指令和匯編偽指令組成。
採用匯編語言編寫程序雖不如高級程序設計語言簡便、直觀,但是匯編出的目標程序佔用內存較少、運行效率較高,且能直接引用計算機的各種設備資源。它通常用於編寫系統的核心部分程序,或編寫需要耗費大量運行時間和實時性要求較高的程序段。
2、解釋程序
解釋程序是一種語言處理程序,在詞法、語法和語義分析方面與編譯程序的工作原理基本相同,但在運行用戶程序時,它直接執行源程序或源程序的內部形式(中間代碼)。因此,解釋程序並不產生目標程序,這是它和編譯程序的主要區別。
3、編譯程序
編譯程序也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。
它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。
(8)匯編語言編譯格式擴展閱讀:
工作過程
1、匯編程序
輸入匯編語言源程序。檢查語法的正確性,如果正確,則將源程序翻譯成等價的二進制或浮動二進制的機器語言程序,並根據用戶的需要輸出源程序和目標程序的對照清單;如果語法有錯,則輸出錯誤信息,指明錯誤的部位、類型和編號。最後,對已匯編出的目標程序進行善後處理。
2、解釋程序
由總控程序完成初始化工作。依次從源程序中取出一條語句進行語法檢查,如有錯,輸出錯誤信息;如果通過了語法檢查,則根據語句翻澤成相應的指令並執行它。檢查源程序是否已經全部解釋執行完畢,如果未完成則繼續解釋並執行下一條語句,直到全部語句都處理完畢。
3、編譯程序
先進行詞法分析與語法分析,然後生成中間代碼,接著對程序進行多種等價變換來代碼優化,最後生成目標代碼。
Ⅸ 匯編語言的組成
這部分指令用於同外圍設備交換數據,包括埠輸入指令IN/INS、埠輸出指令OUT/OUTS。高級語言輔助指令這部分指令為高級語言的編譯器提供方便,包括創建棧幀的指令ENTER和釋放棧幀的指令LEAVE。控制和特權指令這部分包括無操作指令NOP、停機指
匯編語言是利用指令的助記符、符號地址、標號來編寫的語言。
語句格式為:
標號: 指令助記符 操作數,操作數 ;注釋
標號表示本指令語句的符號地址,標號後面必須緊跟冒號「:」。
注釋前必須加上分號「:」。
所以匯編語言由標號、指令助記符、操作數、和注釋 四部分組成。
在電腦中,把匯編語言轉換為機器語言的過程就叫做編譯。
編譯(compilation , compile) 1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。 2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。 編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。
編譯語言是一種以編譯器來實現的編程語言。它不像直譯語言一樣,由解釋器將代碼一句一句運行,而是以編譯器,先將代碼編譯為機器碼,再加以運行。理論上,任何編程語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程序的應用有關。
將某一種程序設計語言寫的程序翻譯成等價的另一種語言的程序的程序, 稱之為編譯程序(compiler) 。
Ⅹ 如何編寫最簡單的匯編語言
首先明白編譯環境:以上4個exe程序必須在32機中運行,若是64位機,請參照dosbox0.74(如何在64位機中使用debug)使用方法。
了解計算機CPU原理:詳情請參照「80X86計算機組織」和「80X86的指令系統和定址方式」
首先有一道題:
求表達式Y=A*X+B-C的值,已知A、B、C分別存放在DA-1、DA-2、DA-3位元組單元,它們的值分別是:5 、 6、 7,X存放在INPUT位元組單元,結果Y放入JSJ_10位元組單元。
分析順序結構程序代碼:由記事本敲出來的
data segment da_1 db 5 da_2 db 6 da_3 db 7 input db 1 jsj_10 db 0data ends ;這一段在內存中定義了一個段,叫做data,並且其中存入了5個變數並且付入初值,db代表每個變數佔用1個位元組,若是dd則為字,為2個位元組code segment ;名字叫做code的段的定義,顯然這兒作為代碼段,當然code這個名字可以更改 assume cs:code,ds:data ;指定data為DS數據段,code為CS代碼段start: mov ax,data ;加法指令 mov ds,ax ;加法指令 mov al,da_1 ;加法指令
mov bl,input ;加法指令
mul bl ;乘法 add al,da_2 sub al,da_3 ;減法 mov jsj_10,al
exit: mov ah,4ch int 21h ;這兩行相當於ret(返回值),就像C語言中的return 0;
code ends end start
注釋: XXXX segment
.............
XXXX ends ;定義一個段
assume ds:XXXX 把XXXX段指定為ds(ds是段地址寄存器)
請先提前把masm edit debug link文件放入預定的文件夾,並把編寫的xxxx.asm代碼文件放入該文件夾,asm文件可用記事本寫成,並改格式txt為asm(有的看不到文件後綴.txt的請參照網路)