實驗報告
1. 實驗名稱
程序編譯及調試
2. 實驗目的
掌握匯編語言語句格式,程序結構,上機調試步驟和各種類型程序的設計方法。了解匯編語言的基本語法,匯編程序的功能和匯編,調試過程,偽指令,匯編語言程序設計,系統功能調用。
3.實驗內容
順序結構是最簡單的一種程序設計語言的語句。有序地組合在一起加以描述一個算法的組合方法結構,又稱為程序的控制結構或簡稱為程序結構,在流程圖中表示為一個個處理框串行連接,即一個語句緊跟著一個語句。計算機執行順序結構程序時,因而這種程序也稱為直線程序或簡單程序,順序結構程序是最基本的程序結構,只有一個入口和一個出口,主要由數據傳送指令,算術運算指令和邏輯運算指令組成。
4. 實驗步驟或程序
匯編語言程序的編輯,匯編,鏈接和調試:匯編的處理過程分為三步:
1.編寫匯編源程序:生成擴展名為.asm的源文件
2.匯編源程序:匯編源程序簡單講即將.asm文件轉換為.obj文件。源程序文件建立完畢后,采用匯編程序TASM將匯編源程序.asm文件轉換成二進制0,1表示的.obj目標文件。在轉換的過程中,匯編程序會對源文件進行掃描,如果語法有錯誤,匯編不能完成,而是將錯誤全部列出來,改正后才能匯編出來,即使匯編完成,也不能保證沒有語法錯誤的程序一定能夠正常運行,因為可能還會有其他概念或算法的錯誤。
3.鏈接目標程序:鏈接目標程序即將.obj文件轉化成可執行文件.exe文件。在匯編后的目標文件.obj中,所有的二進制目標代碼都是浮動的偏移地址,機器不能直接運行,需通過鏈接程序link把目標文件,庫文件或其他目標文件鏈接起來,形成可執行文件。鏈接成功后的可執行文件,可在DOS系統中直接運行,只要輸入相應的文件名即可。
在內存DATA單元中存放一個無符號字節數據,編制程序將其拆成兩位十六進制數,并存入DATA+1和DATA+2單元的低四位,DATA+1存放高位十六進制數,DATA+2單元存放低位十六進制數。
程序:
DSEG SEGMENT MOV DATA+1,AL
DATA DB 0C2H,0,0 AND AH,FH
DSEG ENDS MOV DATA+1,AL
CSEG SEGMENT AND AH,FH
ASSUME CS:CSEG,DS:DSEG MOV DATA+2,AH
START:MOV AX,DSEG MOV AH,4CH
MOV DS,AX INT 21H
MOV AL,DATA CSEG ENDS
MOV AH,AL END START
MOV CL,04
SHR AL,CL
5.程序運行
6.出現的問題及解決方法
7. 心得體會及建議
在這次實驗中我了解匯編語言的基本語法,明白了匯編語言語句格式,,能夠獨立的上機調試步。知道了匯編程序的功能和匯編,調試過程,偽指令,匯編語言程序設計,系統功能調用。可以上機調試程序了,是我這節課比較大的收獲。而且我運行了好幾遍程序,能夠了解標志位是怎么變化的。
建議:當我運行程序的時候,我會觀察標志位是怎么變化的。但是我也會有些不明白的地方,我就想到老師在指導的時候也不能兼顧到每一位同學。所以我建議,老師可以拿一個指定的程序讓同學們運行,然后將一下每一位的標志位怎樣變化。然后再用一節課讓同學們自己運行自己的程序之類的。
沈陽工業大學實驗報告
專業班級: 班 學號: 姓名:
年 月日 8/10
沈陽工業大學實驗報告
專業班級: 測控技術與儀器 班 學號: 姓名:
年 月 日 1 / 7