複製鏈接
請複製以下鏈接發送給好友

彙編語言程序

鎖定
彙編語言程序也稱為彙編語言源程序,就是用彙編語言編寫的一種計算機程序, 屬於計算機低級語言程序,是屬性為ASM的源文件。彙編語言程序在經過彙編鏈接後得到可執行程序即EXE文件。
彙編語言程序裏面包括彙編指令偽指令、和宏指令、數字、字符,還有處理器的通用寄存器段寄存器偽指令可以完成如處理器選擇、定義程序模式、定義數據、分配存儲器、指示程序結束等功能;宏指令的使用可以縮短程序的長度,還可以調用系統程序裏面的函數或程序;數字和字符則是程序裏的相關數據和處理對象;通用寄存器用來存放計算過程中所用到操作數、結果或其他信息;段寄存器用於存儲器尋址,直接或間接地存放段地址彙編指令構成程序的代碼部分,程序的功能實現就是靠編制彙編指令。彙編語言程序的英語為Assembly language program,中文為彙編語言程序。
中文名
彙編語言程序
領    域
計算機程序
別    名
彙編語言源程序

彙編語言程序彙編語言程序

彙編語言程序的英語為Assembly language program,中文為彙編語言程序
彙編語言程序可以分為若干個段,是由偽指令來定義的,每一個段都由若干條語句組成。它可以有數據段、附加段、堆棧段代碼段;數據段存放程序裏的相關數據,附加段則用來存放附加的數據,堆棧段定義了堆棧所在的區域,代碼段是程序的主要部分,由彙編指令編制的程序代碼就存放在這裏。這幾個段除了代碼段之外,都是可有可無的。
彙編語言程序的每一條語句可以由4項組成,格式如下:
〈name〉 operation operand 〈; comment〉
其中名字(name)項是一個符號。
操作(operation)項是一個操作碼助記符,它可以是指令、偽指令宏指令名。
操作數(operand)項由一個或多個表達式組成,它提供為執行所要求的操作而需要的信息。
註釋(comment)項用來説明程序或語句的功能。“;”為識別註釋項的開始。“;”也可以從一行的第一個字符開始,此時整行都是註釋,常用來説明下面一段程序的功能。
上面4項中帶尖括號的兩項是可有可無的。各項之間必須用“空格”(space)或“水平製表”(TAB)符隔開。

彙編語言程序彙編語言程序實例

用匯編語言對4位10進制數加密。密碼是0123456789對應為9082746315。 DATA SEGMENT
TABLE DB 39H,30H,38H,32H,37H,34H,36H,33H,31H,35H;密碼錶 RESULT DB 4 DUP(?);四位十進制數對應的密碼 DATA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE MAIN PROC FAR MOV AX,DATA MOV DS,AX MOV ES,AX LEA BX,TABLE LEA DI,RESULT MOV AX,1234;已知的四位十進制數,以下分別求四位十進制數位,並將密碼存入RESULT中 MOV SI,1000 CALL NUMBER MOV SI,100 CALL NUMBER MOV SI,10 CALL NUMBER MOV SI,1 CALL NUMBER LEA DI,RESULT;在屏幕上依次顯示四位加密後的十進制數 MOV CX,4 NEXT: MOV DL,[DI] MOV AH,2H INT 21H INC DI LOOP NEXT ;按任意鍵退出 mov ah,1 int 21h MOV AX,4C00H INT 21H MAIN ENDP NUMBER PROC NEAR MOV DX,0 DIV SI MOV SI,DX XLAT STOSB MOV AX,SI RET NUMBER ENDP CODE ENDS END MAIN. [1] 

彙編語言程序編制過程

(1) 分析問題;
(2) 建立數學模型;
(3) 確定算法;
(4) 繪製程序流程圖
(5) 內存空間分配;
(6) 編制程序。

彙編語言程序運行過程

(1) 用編輯程序(EDIT)建立ASM源文件;
(2) 用MASM程序把ASM文件(即彙編語言程序)轉換成OBJ文件;
(3) 用LINK程序把OBJ文件轉換成EXE文件;
( 4) 用調試程序DEBUG調試EXE文件;
(5)   [2]  在DOS命令行下直接鍵入EXE文件名就可以執行該程序;

彙編語言程序優點

因為用匯編語言設計的程序最終被轉換成機器指令,故能夠保持機器語言的一致性,直接、簡捷,並能像機器指令一樣訪問、控制計算機的各種硬件設備,如磁盤存儲器CPUI/O端口等。使用匯編語言,可以訪問所有能夠被訪問的軟、硬件資源。 [3] 
目標代碼簡短,佔用內存少,執行速度快,是高效的程序設計語言,經常與高級語言配合使用,以改善程序的執行速度和效率,彌補高級語言在硬件控制方面的不足,應用十分廣泛。 [3] 

彙編語言程序缺點

彙編語言程序是面向機器的,處於整個計算機語言層次結構的底層,故被視為一種低級語言,通常是為特定的計算機或系列計算機專門設計的。不同的處理器有不同的彙編語言語法和編譯器,編譯的程序無法在不同的處理器上執行,缺乏可移植性; [3] 
難於從彙編語言代碼上理解程序設計意圖,可維護性差,即使是完成簡單的工作也需要大量的彙編語言代碼,很容易產生bug,難於調試; [3] 
使用匯編語言必須對某種處理器非常瞭解,而且只能針對特定的體系結構和處理器進行優化,開發效率很低,週期長且單調。 [3] 
參考資料