版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第五章匯編語言計程儀編程,主要內(nèi)容第五章匯編語言計程儀編程,匯編語言結(jié)構(gòu)常用的偽指令各種匯編語言方案的基本結(jié)構(gòu)設(shè)置方法和實現(xiàn)常用的DOS功能調(diào)用,主要內(nèi)容:難點: 常用DOS功能調(diào)用計算機軟件編程語言的發(fā)展1 .機器語言2 .匯編語言組件計程儀程序的“翻譯”作用、機器語言、 匯編語言和高級語言的第5章匯編語言計程儀編程3 .高級語言(High-levellanguage) C/C 4.混合語言(Hybrid Language ),一、匯編語言源程序格式第5章匯編語言程序設(shè)置修訂,匯編語言源程序是匯編語言語句的單字符定徑套8086/8088宏命令匯編語言中的單詞由以下字符組成: 1 )英文字母:
2、 az、az; 2 )數(shù)字: 09 3 )算術(shù)運算符:- * /; 分隔符: (=SP (空格) TAB (制表符); 5 )連特羅爾查詢密碼: CR (換行) LF (換行) FF (分頁); 6 )專用文字: $ MOV AH,2; 顯示提示信息的MOV DL、a; INT 21H、匯編語言源計程儀程序格式第5章匯編語言計程儀編程、2 .組件語句的歌舞劇(Operands )暫存器(Registers )常數(shù)(Constants )、常數(shù)字符串常量符號常數(shù)值表達式、二進制常數(shù)十進制常數(shù)八進制數(shù)值常量或字符常數(shù)。 數(shù)字是差動奧爾特的十進制,加上d也可以表示十進制。 1234的數(shù)字加上b表示二
3、進制,例如1234D。 在1010B的數(shù)字后面加上h表示十六進制。 用單引號表示,如1234H字符常數(shù)。 對于1234組件,用支持字符的ASCII表示。 例如,31H、32H、33H、34H,例如,數(shù)據(jù)1 db12、34、56; 十進制數(shù)據(jù)2 db 12 h、34H和56H; 十六進制MOV AL、g; 字符串db 1234; 字符串、匯編語言源計程儀報格式第5章匯編語言計程儀編程是在a、b、c、d、e、f開頭的十六進制數(shù)之前加0,與h末尾的識別符進行區(qū)別。 例如,暫存器名AH、BH、CH、DH變量名abcdH等的示例mov AL、0AH mov AL、AH mov BX、0abcdH、匯編語
4、言源柱計程儀柱格式第5章匯編語言柱設(shè)定修正、5、式以及式中的操作員,式是常數(shù)、標簽條。 在計算公式之后,匯編程序可以得到確定的數(shù)值,來將這個數(shù)值組裝到指令中。 根據(jù)公式表示的內(nèi)容,分數(shù)式、地址式。表達式是指令或偽操作的命令。在表達式中,運營商按匯編程序完成示例MOV AX,12 - 4的MOV AX,8; 數(shù)值表達式LEA BX、string 4; 地址表示式、匯編語言源計程儀柱格式第5章匯編語言計程儀編程、表示式中的操作符如下所示: 1 .算術(shù)運算符(,-,* /,MOD ) 2.邏輯運算符(AND,OR,NOT,XOR ) 3假: 1 .數(shù)值返回運算符(SEG,OFFSET 5 .類型操作
5、(PTR ) 6.地址計數(shù)器($ ),匯編語言源柱計程儀格式第五章匯編語言柱設(shè)置修訂,例如3360 .算術(shù)運算符(,-) 48 2 .邏輯運算符(AND、OR、NOT、XOR) MOV AX、80h OR 70h MOV AX、0F0h 3.關(guān)系運算符(e GT,GE,LT,)假: 0 MOV AX,1 GE 2 MOV AX,0,匯編語言源計程儀程序格式第5章匯編語言計程儀編程,存儲歌舞劇標識符,標簽條變量,分析運算符, OFFSETSEGTYPE新屬性,如偏移地址段地址類型大小、類型運算符PTR、THIS,匯編語言源計程儀程序格式第5章匯編語言計程儀編程,1 .數(shù)值回復操作符(seg、of
6、fset、type ) 表51中表示SEG取符號地址的段地址示例MOV AX、SEG yy OFFSET取象征符地址的偏移地址示例MOV BX、OFFSET yy TYPE取的變量的類型,LENGTH和SIZE的對由DUP定義, 且在DUP的后括弧內(nèi),單一數(shù)據(jù)的x為SIZE x=TYPE x * LENGTH x,匯編語言源計程儀程序格式第5章匯編語言程序設(shè)定修正,例如:數(shù)據(jù)段的開頭地址50000H A1 DB 24H,47H,0F3H A2 DW 4567H, 第五章假定0A00H A3 DD 0B1234098H,98765432H A4 DW 40H DUP(1)的匯編語言源計程儀程序格
7、式;修改匯編語言程序設(shè)置;例如,數(shù)據(jù)段的第一地址50000H A1 DB 24H,47H,0F3H A2 DW 4567H, 假定0A00H A3 DD 0B1234098H,98765432H A4 DW 40H DUP(1)的匯編語言源計程儀程序格式第五章匯編語言計程儀編程,2、屬性操作員等運算符也被稱為屬性修改運算符,因為它們會向存儲器歌舞劇臨時指定新的屬性,并忽略當前屬性PTR格式:類型PTR內(nèi)存地址表達式示例: INC WORD PTR BX,THIS格式: THIS類型操作: THIS運算符功能與PTR類似,由此生成的新的存儲命令段和片偏移屬性與下一個存儲單元段和片偏移相同例如,在
8、Z11 EQU THIS WORD Z1 DB 20H,40H中,變量Z11和Z1具有相同的段和關(guān)片偏移字屬性,但是Z11的類型是WORD,而Z1的屬性是字節(jié)。匯編語言源計程儀程序格式第五章匯編語言程序計程儀程序設(shè)定修訂、一、數(shù)據(jù)定義及存儲器分配虛擬指令格式:變量名稱DB/DW/DD/DQ/DT; 注釋,DUP常用于數(shù)據(jù)定義偽指令中,變量名稱為DB/DW/DD/DQ/DT DUP (表達式2 ); 注釋,例如:a1db10、10h; 定義2字節(jié)a2dw10、10h; 定義兩個單詞A3 DB AB。 定義2字節(jié)A4 DW AB。 定義一個字符a5d b3dup (1,2,3 )參照L1.ASM、
9、array db20 dup (0,1,4 d up (2),5 )占用多少字符?140個、虛擬指令及其應用第5章匯編語言計程儀編程、當且僅當(代入)語句EQU格式:符號名EQU式等號語句=格式:符號名=式、注意: EQU和=定義的象征符不占存儲單元。 例如,數(shù)據(jù)段的起始地址為50000H A1 DB 24H,47H,0F3H A2 DW 4567H,0A00H A3 DD 0B1234098H, 98765432H L1 EQU 40H A4 DW L1 DUP(1),標簽條定義的偽指令及其應用第5章匯編語言計程儀編程,格式:變量名稱或標簽條名稱LABEL型例: VAR1 LABLE WOR
10、D VAR2 DB 20 DUP(1),變量VAR1和VAR2為相同的段貝段定義偽指令SEGMENT/ENDS格式:段名SEGMENT定位類型組合類型段內(nèi)文序列段名ENDS,定位類型規(guī)定了對該段的起始地址的請求,PAGE (頁):該PARA (節(jié)):十六進制地址的最小一位是0H。 這種類型是系統(tǒng)的差動奧爾特。 WORD (字):此段從雙位數(shù)地址開始。 字節(jié):組合類型表示該段與其他段之間的連接和位置關(guān)系,在連接時起作用。 有六種選擇: NONE :這種類型是系統(tǒng)的差動奧爾特。 公共、堆棧、公共、AT表達式、內(nèi)存。 的雙曲馀弦值。 類別是與程序設(shè)計師賦予該段的段名不同的另一種名稱信息,必須用單引號
11、括起來。 在連接時,連接程序計程儀程序?qū)⒊绦蛑械乃蓄悇e相同的段組合到一個段組中。偽指令及其應用第五章匯編語言計程儀編程、進程定義偽指令定義子例程的形式是進程名PROC NEAR/FAR RET進程名ENDP、進程結(jié)束偽指令END此語句是匯編語言源計程儀程序的最后一句,標記整個進程結(jié)束,公式的值是內(nèi)存地址也就是說,普通堆計程儀中第一個可執(zhí)行指令的地址。 其形式為END標簽條,該計程儀報開始偽指令ORG通知匯編程序?qū)⒃撈瘘c偏移地址存儲在隨后的段或子搖滾樂中。 其格式為ORG表達式,段地址偽指令ASSUME此偽指令用于告知具有匯編程序的段使用哪個段信號發(fā)送器。 格式: ASSUME段寄存器名:段名
12、、段寄存器名:段名、偽指令及其應用第5章匯編語言計程儀編程、指令或語句,向計算機傳達為了完成某個修正計算步驟而需要執(zhí)行的操作。 普計程儀程序是在解決某個問題所需要的完整的命令列或者字符串上加上必要的數(shù)據(jù)的程序。 計程儀編程是創(chuàng)建程序計程儀程序的過程。 1 )在設(shè)置和修改方案計程儀時,應當考慮滿足方案計程儀的精準性。 2 )提高普計程儀拉姆的可讀性。 3 )所寫的程序應該是結(jié)構(gòu)化的,容易修正,容易調(diào)試,即程序計程儀的維護性。計程儀編程的基本步驟1 .分析問題,建立模型,例如: Y=|X|,在4分配存儲器空間和機床5、程序計程儀6上調(diào)試、執(zhí)行程序計程儀,根據(jù)2決策算法3、算法,建立程序計程儀、程序
13、程序流程圖,編程步驟5章語言編程, 計程儀柱的基本結(jié)構(gòu)、柱計程儀柱是指令的柱計程儀柱的執(zhí)行有一定的順序,根據(jù)執(zhí)行順序,能夠?qū)⒂嫵虄x柱分為順序結(jié)構(gòu)、分支(選擇)結(jié)構(gòu)、環(huán)結(jié)構(gòu)、子程序結(jié)構(gòu)的基本結(jié)構(gòu)。 順序結(jié)構(gòu):一個線性結(jié)構(gòu),顯示了每執(zhí)行一次計程儀程序時,語句或段按順序執(zhí)行的程序的順序結(jié)構(gòu)。 其中S1、S2、S3表示依次執(zhí)行的語句或段。 的雙曲馀弦值。 例子5-4假定試制了Y=X3 8X2 8X 6、X=10時修正y值的方程式計程儀。 Y=(X 8)X 8)X 6、普拉姆的基本構(gòu)造第五章匯編語言定規(guī)劃、開始3360 mov ax、堆棧_ seg mov ss、AX MOV SP、偏移AX MOV S
14、P、X ADD AX、8 MUL X ADD AX, 8 MUL X ADD AX,5 MOV Y,axretmainendpcode _ segendsendstart, 數(shù)據(jù)啟動觸發(fā)符號_設(shè)置代碼_設(shè)置代碼3360代碼_ seg、ds 3360數(shù)據(jù)設(shè)置代碼3330、普通堆計程儀的基本結(jié)構(gòu)第五2顯示查找表計程儀程序、顯示查找表的關(guān)鍵是組織表,主題中包含所有可能的值,應該按順序排列。這種顯示查找表操作的思維方法方式是:使用表開頭地址和偏移地址來形成某個結(jié)果的地址,之后按原樣使用MOV數(shù)據(jù)轉(zhuǎn)移指令獲得結(jié)果或XLAT顯示查找表命令來獲得結(jié)果。 在例5-5存儲器中,從TABLE開始的16針織面料連續(xù)
15、存儲自然數(shù)015的平方值(稱為平方表)。 將任意數(shù)目X(0X15 )給予XX單元以根據(jù)顯示查找表獲得x的平方值,并且將結(jié)果存儲在YY單元中。計程儀程序的基本結(jié)構(gòu)第5章匯編語言計程儀編程、datasegmenttabledb0、1、4、9、16、25、36、49、64、81; 預定徑套平方表db100、121、144、169、196、225 xxd b 5; 變量X YYDB? 定義結(jié)果存儲針織面料dataendscodesegmentassumecs 3360代碼,ds 3360數(shù)據(jù),ss 3360堆棧啟動協(xié)議推送; 返回地址MOVAX,0推送MOVAX,數(shù)據(jù); 初始化DS MOVDS、AX LEABX和表格。 BX點位表的起始地址MOVAL,XX; 將被檢查數(shù)作為目錄索引值XLAT的顯示查找表MOVYY、AL; 保存結(jié)果RET; 返回dos開始結(jié)束代碼結(jié)束開始。 在示例5-5的存儲器中,自然數(shù)015的平方值(稱為平方表)連續(xù)存儲在16個從表開始的單元格中。 將任意數(shù)目X(0X15 )給予XX單元以根據(jù)顯示查找表獲得x的平方值,并且將結(jié)果存儲在YY單元中。計程儀程序的基本結(jié)構(gòu)第五章匯編語言程序設(shè)定修訂
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電池及電池系統(tǒng)維修保養(yǎng)師崗前保密意識考核試卷含答案
- 長期照護師班組考核知識考核試卷含答案
- 制材工安全技能考核試卷含答案
- 農(nóng)作物種植技術(shù)員安全教育水平考核試卷含答案
- 甘油精制工班組協(xié)作模擬考核試卷含答案
- 甲殼類繁育工安全綜合競賽考核試卷含答案
- 燒結(jié)成品工崗前日常考核試卷含答案
- 制帽工操作技能競賽考核試卷含答案
- 糖藝師崗前生產(chǎn)安全考核試卷含答案
- 坯布縫接工安全防護水平考核試卷含答案
- 【12篇】新部編版小學語文六年級上冊【課內(nèi)外閱讀理解專項訓練(完整版)】含答案
- 船艇涂裝教學課件
- 招標績效考核方案(3篇)
- 500萬的咨詢合同范本
- 2025年貸款房屋轉(zhuǎn)贈協(xié)議書
- 2025天津市個人房屋租賃合同樣本
- 中藥熱熨敷技術(shù)及操作流程圖
- 鶴壁供熱管理辦法
- 01 華為采購管理架構(gòu)(20P)
- 糖尿病逆轉(zhuǎn)與綜合管理案例分享
- 工行信息安全管理辦法
評論
0/150
提交評論