80x86組合語言程式設計 PPT繁體中文電子書 軟體簡介: 80x86組合語言程式設計PPT繁體中文電子書 【內容說明】★◇以下中文譯文說明僅供參考,實際軟體內容請以光碟內容為準◇★ 內容簡介 本書由基礎理論、編程工具、編程方法和實際應用4部分組成,共13章。第1、2章為基礎理 論部分,包括數制、碼制等基礎知識,電腦組成及基本原理;第3、4章介紹編程工具,包括 指明令系統、尋址方式、偽操作和組合語言格式;第5~9章和第13章講述編程方法,包括迴 圈、分支、子程式等基本程式結構,宏彙編技術,中斷等輸入輸出程式方法,BIOS和DOS系 統功能調用方法,以及多個模組的連接技術;第10~12章為實際部分,包括圖形顯示、發聲 和磁片文件存取技術。本書不僅可以作為高等院校“組合語言程式設計”課程的教材,也可以 供需用組合語言的工程技術人員和科研人員使用 目錄 前言Ⅰ第1章基礎知識1 1.1進位記數制與不同基數的數之間的轉換1 1.1.1二進位數1 1.1.2二進位數和十進位數之間的轉換2 1.1.3十六進位數及其與二進位數、十進位數之間的轉換3 1.2二進位數和十六進位數運算5 1.2.1二進位數運算5 1.2.2十六進位數運算5 1.3電腦中數和字元的表示6 1.3.1數的補數表示6 1.3.2補數的加法和減法8 1.3.3無符號整數10 1.3.4字元表示法10 1.4幾種基本的邏輯運算11 1.4.1“與”運算(AND)11 1.4.2“或”運算(OR)12 1.4.3“非”運算(NOT)12 1.4.4“異或”運算(XOR,exclusiveOR)12 習題13第2章80x86電腦組織14 2.180x86微處理器14 2.2基於微處理器的電腦系統構成16 2.2.1硬體16 2.2.2軟體17 2.3中央處理機18 2.3.1中央處理機(CPU)的組成18 2.3.280x86寄存器組19 2.4記憶體23 2.4.1存儲單元的地址和內容23 2.4.2實模式記憶體尋址25 2.4.3保護模式記憶體尋址29 2.5外部設備34 習題35第3章80x86的指令系統和尋址方式38 3.180x86的尋址方式39 3.1.1與數據有關的尋址方式39 3.1.2與轉移位址有關的尋址方式47 3.280x86機器語言指令概況49 3.2.1操作碼的機器語言表示50 3.2.2尋址方式的機器語言表示50 3.2.3加法的機器指令舉例52 3.2.4指令的執行時間55 3.2.532位元指令格式簡介57 3.380x86的指令系統58 3.3.1數據傳送指令58 3.3.2算術指令69 3.3.3邏輯指令86 3.3.4串處理指令92 3.3.5控制轉移指令100 3.3.6處理機控制與雜項操作指令120 習題123第4章組合語言程式格式134 4.1組合語言程式功能134 4.2偽操作135 4.2.1處理器選擇偽操作135 4.2.2段定義偽操作135 4.2.3程式開始和結束偽操作143 4.2.4數據定義及記憶體分配偽操作144 4.2.5運算式賦值偽操作EQU149 4.2.6位址計數器與對準偽操作150 4.2.7基數控制偽操作152 4.3組合語言程式格式152 4.3.1名字項153 4.3.2操作項154 4.3.3操作數項154 4.3.4註釋項159 4.4組合語言程式的上機過程161 4.4.1建立組合語言的工作環境161 4.4.2建立ASM文件162 4.4.3用MASM程式產生OBJ文件163 4.4.4用LINK程式產生EXE文件166 4.4.5程式的執行167 4.4.6COM文件169 習題170第5章迴圈與分支程式設計175 5.1迴圈程式設計175 5.1.1迴圈程式的結構形式175 5.1.2迴圈程式設計方法176 5.1.3多重迴圈程式設計186 5.2分支程式設計191 5.2.1分支程式的結構形式191 5.2.2分支程式設計方法191 5.2.3跳躍表法195 5.3如何在實模式下發揮80386及其後繼機型的優勢200 5.3.1充分利用高檔機的32位字長特性200 5.3.2通用寄存器可作為指針寄存器204 5.3.3與比例因數有關的尋址方式204 5.3.4各種機型提供的新指令207 習題209第6章子程式結構212 6.1子程式的設計方法212 6.1.1過程定義偽操作212 6.1.2子程式的調用和返回214 6.1.3保存與恢復寄存器214 6.1.4子程式的參數傳送215 6.1.5增強功能的過程定義偽操作228 6.2嵌套與遞歸子程式233 6.2.1子程式的嵌套233 6.2.2遞歸子程式234 6.3子程式舉例241 6.4DOS系統功能調用255 習題256第7章高級組合語言技術261 7.1宏彙編261 7.1.1巨集定義、巨集調用和巨集展開261 7.1.2宏定義中的參數263 7.1.3LOCAL偽操作268 7.1.4在巨集定義內使用巨集269 7.1.5列表偽操作271 7.1.6宏庫的建立與調用274 7.1.7PURGE偽操作276 7.2重復彙編277 7.2.1重復偽操作277 7.2.2不定重復偽操作279 7.3條件彙編281 7.3.1條件偽操作IF的使用舉例282 7.3.2條件偽操作IF1的使用舉例284 7.3.3條件偽操作IFNDEF的使用舉例285 7.3.4條件偽操作IFB的使用舉例290 7.3.5條件偽操作IFIDN的使用舉例291 7.4高級語言結構293 7.4.1.IF/.ELSEIF/.ELSE/.ENDIF293 7.4.2.WHILE/.ENDW295 7.4.3.REPEAT/.UNTIL和.REPEAT/.UNTILCXZ296 7.4.4.BREAK和.CONTINUE298 7.4.5高級語言結構中使用的運算式300 習題301第8章輸入輸出程式設計305 8.1I/O設備的數據傳送方式305 8.1.1CPU與外設305 8.1.2直接記憶體存取方式305 8.2程式直接控制I/O方式306 8.2.1I/O埠306 8.2.2I/O指令307 8.2.3I/O程式舉例308 8.3中斷傳送方式312 8.3.18086的中斷分類313 8.3.2中斷向量表315 8.3.3中斷過程319 8.3.4中斷優先級的中斷嵌套320 8.3.5中斷處理程式322 8.3.6中斷程式舉例323 8.480386輸入輸出335 8.4.180386I/O操作335 8.4.2I/O允許位圖336 8.580386的中斷處理336 8.5.180386的中斷和異常337 8.5.2實地址下的中斷處理339 8.5.3保護方式下的中斷處理340 8.5.4虛擬8086方式下的中斷處理342 習題343第9章BIOS和DOS中斷345 9.1鍵盤I/O347 9.1.1字元碼與掃描碼347 9.1.2BIOS鍵盤中斷348 9.1.3DOS鍵盤功能調用349 9.2顯示器I/O354 9.2.1字元屬性354 9.2.2BIOS顯示中斷357 9.2.3DOS顯示功能調用365 9.3印表機I/O366 9.3.1DOS列印功能367 9.3.2印表機的控制字元368 9.3.3BIOS列印功能372 9.4串列通信口I/O375 9.4.1串列通信介面375 9.4.2串列口功能調用378 9.4.3串列通信口中斷383 習題392第10章彩色圖形程式設計394 10.1顯示方式394 10.1.1顯示解析度394 10.1.2BIOS設置顯示方式395 10.1.3確定顯示適配器397 10.2視頻顯示記憶體398 10.2.1圖形記憶體映象398 10.2.2數據到顏色的轉換401 10.2.3直接視頻顯示402 10.3EGA/VGA圖形程式設計405 10.3.1讀寫圖元406 10.3.2圖形方式下的文本顯示411 10.3.3彩色繪圖程式414 10.4電腦動畫418 10.4.1動畫顯示技術419 10.4.2互動式動畫422 10.4.3遊戲程式實例424 習題445第11章發聲系統的程式設計447 11.1可編程內部定時器8253/54447 11.1.1編程結構447 11.1.2操作模式447 11.1.3控制字450 11.1.4IBMPC8253/54定時器的使用451 11.2通用發聲程式452 11.2.1揚聲器驅動方式452 11.2.2通用發聲程式GENSOUND453 11.2.380x86PC的時間延遲456 11.3樂曲程式457 11.3.1音調與頻率和時間的關係457 11.3.2演奏樂曲的程式458 11.3.3鍵盤控制發聲程式460 11.4報警程式467 習題472第12章磁片文件存取技術474 12.1磁片的記錄方式474 12.1.1磁片記錄資訊的地址474 12.1.2磁片系統區和數據區476 12.1.3磁片目錄及文件分配表476 12.2文件代號式磁片存取478 12.2.1路徑名和ASCIZ串479 12.2.2文件代號和錯誤返回代碼479 12.2.3文件屬性480 12.2.4寫磁片文件481 12.2.5讀磁片文件486 12.2.6移動讀寫指針491 12.3字元設備的檔代號式I/O497 12.4利用檔控制塊的磁片存取方式500 12.4.1文件控制塊501 12.4.2建立磁片文件503 12.4.3順序讀磁片文件509 12.4.4隨機存取磁片文件513 12.4.5絕對磁片I/O516 12.5BIOS磁片存取功能517 12.5.1BIOS磁片操作517 12.5.2狀態字節519 12.5.3BIOS磁片操作舉例519 習題522第13章模組化程式設計524 13.1組合語言程式概述524 13.1.1組合語言程式的主要工具524 13.1.2彙編過程526 13.1.3幾個問題527 13.2連接程式及連接對程式設計的要求529 13.2.1連接程式的主要功能529 13.2.2連接對程式設計的要求530 13.3組合語言程式與高級語言程式的連接547 13.3.1直接插入法547 13.3.2C語言程式調用組合語言過程法548 13.4模組化程式設計概述552 13.4.1模組化程式設計553 13.4.2結構化程式設計555 13.4.3程式設計舉例556 習題564參考文獻569附錄180x86指令系統一覽表570附錄2偽操作與操作符表588附錄3中斷向量 地址一覽表603附錄4DOS系統功能調用(INT21H)605附錄5BIOS功能調用611