



版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第四章匯編語言程序設計 教學目標介紹匯編語言指令及匯編語言程序設計方法。 學習要求種匯編語言程序設計結構及設計方法。 講授內容第四章匯編語言程序設計第一節匯編語言概第二節匯編語言指令第三節匯編語言程序設計第一節匯編語言概述一、為什么會用匯編語言?目的:為解決機器語言編程非常困難與交流不便。匯編語言是一種介于機器語言和高級語言之間的計算機編程語言,它允許程序員使用助記符書寫指令,并嚴格遵守語法規則編寫匯編語言源程序。匯編語言源程序經過匯編和鏈接之后才能生成可執行的目標代碼文件。二、匯編語言的主要特點優勢:利用匯編語言編程,程序員可直接使用存儲器、寄存器、I/O端口和CPU的許多硬件系統特性(如中
2、斷系統、DMA系統等),可直接對寄存器、存儲單元、I/O端口進行位、字節以及字處理,同時也能直接利 用CPU的指令系統及其提供的各種尋址方式,編寫出高質量的程序。特點:目標代碼精簡,占內存少,執行速度快。缺點:由于程序與所要解決問題的數學模型之間的關系不直觀,使得編 程難度增大,出錯的可能性也增大,因而程序設計和調試的時間也比較長。 且在不同機器間的可移植性較差。適用場合:主要用于一些對內存容量和速度要求比較高的編程場合,如 系統軟件、實時控制軟件、I/O接口驅動程序等設計中。第二節匯編語言指令指令是構成程序的基本單位,按其作用與編譯情況分為兩大類: 指令性語句(即符號指令)和指示性語句(即偽
3、指令)。指令性語句是可執行語句,與機器指令相對應,它命令CPU進行某種操作,其功能由硬件完成。指示性語句(偽指令語句)是說明性語句,無對應的機器指令,它僅為匯編程序提供編譯信息,為鏈接程序提供鏈接信息,其功能是由相應的 軟件完成。一、常用的基本偽指令數據定義偽指令DB、DW、DD、DUP、段定義偽指令SEGMENT、ENDS;ASSUME;ORG過程定義偽指令PROC、ENDP源程序結束偽指令END程序的起始地址標符號定義偽指令、宏定義偽指令第三節匯編語言程序設計方法一、程序設計的一般步驟匯編語言程序設計基本上與高級語言程序設計一樣,一般步驟:分析問題并抽象出數學模型。確定最佳算法。畫出程序結
4、構框圖和流程圖。合理分配內存工作單元和寄存器,并了解I/O接口地址。編程并調試。(有時需要用注釋行說明程序,便于閱讀和修改)二、程序的基本結構1.順序結構對應簡單程序,順序執行,無轉移、無循環。指令指針IP值線性增加。2.分支結構依據不同條件分支到各程序段,有雙分支和多分支兩種。IP值受 Y YN分支結構兩個分支順序結構2.分支結構依據不同條件分支到各程序段,有雙分支和多分支兩種。IP值受標志位的影響而跳變。A=A=分支A=A=分支分支分支A=?分支結構三個分支分支結構多路分支3.循環結構實現那些需要重復做的工作。IP值因計數器CX中的值不為零而循 環。至少循環一次結構允許0次循環結構三種基本
5、結構奠定了實現任何復雜程序的基礎。三種基本結構奠定了實現任何復雜程序的基礎。三、子程序設計1.子程序的形式:主程序CALLNEARPTRSAB1MOVINT21H子程序SAB1 PROCNOPRETSAB1 ENDP主程序CODEASEGMENTCALLFAR PTR SAB1MOVAH,4CHINTCODEAENDS子程序CODEBSEGMENT SAB1PROCFARNOPRETSAB1CODEBENDS例:求出以STRING1起始的100個字節單元中的帶符號數的絕對值,并將運算結果存入以STRING2起始的100個字節單元中。主程序LEASI,STRING1LEAMOVCX,100AGA
6、IN:CALLABS1INCSI求AL絕對值子程序ABS1PROCNEARMOVAL,SIANDJNSNEXTNEGALINCDI LOOPNEXT:MOVDI,ALRETABS1ENDP2.子程序的嵌套子程序調用其它子程序,被稱為子程序的嵌套主過程主過程子過程1子過程2CALL 子過程1 斷點1CALL 子過程2 斷點2RETRET子過程嵌套示意圖3.子程序的遞歸遞歸子程序是子程序嵌套的一種特例。在子程序執行時又調用 該子程序自身的情況。DATANDB?SUMDW?DATAENDSMOVAL,N MOVAH,0 CALLADDOPER MOVSUM,AXADDOPERPROCNEARANDJZDONE PUSHAX DECALCALLADDOPER K1:POPBXADDAX,BXDONE:RET ADDOPER4.主、子程序間的參數傳遞
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 激光技術新行業趨勢試題及答案
- 系統架構設計師優化系統性能途徑試題及答案
- 高效衛生管理考試備考試題及答案
- 系統架構設計師考試的實戰訓練技巧試題及答案
- 綠色光電技術的應用案例試題及答案
- 網絡設計師職業安全與健康及試題及答案
- 計算機二級考試高分秘籍分享試題及答案
- 稅法解析與考察試題及答案
- 評估健康管理師考試的復習效果試題及答案
- 藥劑學前沿問題考試試題及答案
- 2024年陜西秦農農村商業銀行股份有限公司招聘筆試參考題庫含答案解析
- 工地圖文廣告清單及報價(2家)
- 冠狀動脈造影健康宣教
- 碳酸鹽巖的成巖作用課件
- 消防內務條令全文文檔
- 全國優質課一等獎初中音樂《姹紫嫣紅》課件
- 科倫員工手冊
- 學校食堂飲食保障供餐應急預案
- 心理健康教育課件《高三學生心理輔導之跨越高原期》
- 《傳統紋樣》課程標準
- 西師大版數學五年級上冊全冊完整版教案教學設計
評論
0/150
提交評論