版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 微機原理與接口技術課程特點 綜合性強 數(shù)字電路、匯編語言程序設計和可編程I/O接口組成 本課程的“三大基石”。 使用基本邏輯部件和可編程I/O接口,組成計算機 系統(tǒng)的各種功能電路。 使用匯編語言設計控制或者驅動程序,實現(xiàn)電路 的控制功能。 三方面知識的有機結合,綜合應用。 實踐(驗)性強 本課程的理解程度、學習效果和學習興致,與實驗操作密切相關。 理論知識指導實驗操作,實驗結果驗證理論,通過實驗尋找感覺,在深入探索的基礎上,有所新認識、新發(fā)現(xiàn)。 課程主要內容以8088(6)微處理器為核心,介紹其工作原理和接口技術。內容有:CPU、總線控制器、時鐘發(fā)生器、各種半導體存儲器和一系列可編程I/O接
2、口。 實驗設備與方法 由PC系統(tǒng)和擴展I/O接口實驗系統(tǒng)組成。 程序設計使用匯編語言。 課程考核由以下三個方面組成: 實驗考核:考核對待實驗的態(tài)度、實驗設計與調試 的能力、實驗報告的撰寫水平等。出勤考核:期中考核:期末考核: 第一章 CPU的邏輯結構一、 8086的程序模型 程序模型 CPU內部的寄存器陣列,通過匯編語言操作。 程序模型圖解2.1 通用寄存器 AL AH BL BH DL DH CL CH15 8 7 0AXBXCXDX IP SP BP DI SI15 02.2 段寄存器 SS ES DS CS15 0二、內存結構圖解 字節(jié)單元結構 A a1100100B 64H 1007
3、0100H101H102H103H104H 字單元結構 AB ab 0F490H 64ABH 102415 0 100H 102H 104H 106H 108H 數(shù)據(jù)存儲格式小端存儲格式 低字節(jié)存放低地址單元,高字節(jié)存放高地址單元。大端存儲格式 低字節(jié)存放高地址單元,高字節(jié)存放低地址單元。 3A 5D7 0100H101H102H103H104H3A5DH 的小端存儲格式 5D 3A7 0100H101H102H103H104H3A5DH 的大端存儲格式 練習:將字單元結構轉換成小端存儲格式 AB ab 0F490H 64ABH 102415 0 100H 102H 104H 106H 108
4、H 內存分段結構 代碼(CS)段:源程序存儲區(qū)。 數(shù)據(jù)(DS)段:操作數(shù)存儲區(qū)。 附加(ES)段:數(shù)據(jù)段擴展。 堆棧(SS)段:數(shù)據(jù)后進先出的存儲區(qū)CS存儲區(qū)DS存儲區(qū)SS存儲區(qū)ES存儲區(qū) 物理地址和邏輯地址 物理地址:每個內存單元唯一的地址,由CPU輸出。 邏輯地址:由段地址和偏移地址組成。 編寫源程序使用的地址。 每個單元享有多個邏輯地址。 段地址:段區(qū)20位起始物理地址的高16位部分。 由CS、DS、ES、SS之一提供。偏移地址:段內部單元偏離段起始單元的距離。 由BX、SI、DI、BP等提供。 邏輯地址與物理地址的轉換 物理地址段地址10H偏移地址20位段首物理地址練習:將下列4個邏輯
5、地址轉換成物理地址。 CS1000H,BX1004H; DS208H, SI 284H; ES3406H, DI 23A4H; SS0A05H, BP 10B4H;第二章 匯編語言的尋址方式計算機的“方言”,與CPU邏輯結構密切相關。編程語句:各種操作功能的指令。例如:四則運算指令、邏輯運算指令等。 匯編語言?指令中說明源、目操作數(shù)來源的符號。匯編語言的核心內容。 尋址方式 指令的基本格式 OP DST,SRC;說明:OP:操作碼(MOV、ADD、SUB )DST:目地址,目操作數(shù)。SRC:源地址,源操作數(shù)。 源操作數(shù):來自寄存器、內存單元、立即數(shù)和I/O 端口之一。目操作數(shù):來自寄存器、內存
6、單元和I/O端口之一。 源、目操作數(shù)的字長相等。 執(zhí)行結果存入目地址,源操作數(shù)不變。 源、目操作數(shù)不能同為內存單元或I/O端口。 目操作數(shù)不能是立即數(shù)。匯編語言的基本“軍規(guī)”: 主要的尋址方式4.1 立即尋址 源操作數(shù)是8/16位直觀數(shù)據(jù)(“現(xiàn)金”)。 MOV AL,100; MOV AH,64H; MOV AX,1000H;MOV BL,10011B;MOV BH,A;MOV BX,1000;MOV CL,2;MOV CH,2;MOV CX,2;指出以下指令的錯誤MOV BL,256;MOV BH,100H;MOV BX,65536;MOV CL,129;MOV CH,128;MOV 100
7、H, CX ;4.2 寄存器尋址 源或目操作數(shù)來自8/16位寄存器。 MOV AL,DL; ADD AH,CH; SUB AX,BX; SUB SI,BX;ADD BP,AX;AND BX,DI;OR CX,SP;MOV DS,DX;MOV BX,ES;以下指令錯誤:MOV SI,BL;ADD BH,AX;SUB DX,CH;AND CX,IP; 4.3 寄存器間址 源或者目操作數(shù)來自內存單元。 指定:BX、SI、DI、BP提供偏移地址; CS、DS、ES、SS提供段地址。 間址單元匯編符號MEM:BX、 BP、 SI、 DI。其他非法! 例1:閱讀下列指令,圖解執(zhí)行結果。 MOV AX,10
8、20H; MOV DS,AX; MOV BX ,AX ; MOV BX ,AH; MOV BX+1 ,AL;AHAL1020H:1020H 1021H 例2:圖解下列指令執(zhí)行結果。 MOV CX,1ABCH; MOV ES,CX; MOV SI ,1020H ; MOV ES:SI ,CL; MOV ES:SI+1 ,CH;段名前綴CLCH1ABCH:1020H 1021H 例3:圖解下列指令執(zhí)行結果。 MOV CX,1ABCH; MOV ES,CX; MOV BP ,1020H ; MOV BP ,CL; MOV BP+1 ,CH;省略段名前綴寄存器間址單元的段默認: 默認DS段 MOV S
9、I ,CL; MOV DI ,AL; MOV BX ,DL; MOV DS: SI ,CL;MOV DS: DI ,AL;MOV DS: BX ,DL; 默認ES段 MOV ES: BP ,DL; MOV BP ,AL; 默認SS段 PUSH AX; AX SS: SP字單元 SP = SP + 2 POP DX; DX SS: SP字單元 SP = SP - 215 0SS : SP高地址方向AX練習:閱讀指令,指出內存單元的段屬性。 MOV CS: SI ,CL; MOV ES:SI ,CL; MOV AX,DI ; MOV DS:BP ,512; MOV BP ,256;4.4 直接尋址
10、 源或者目操作數(shù)來自內存單元。 指令直接給出偏移地址。 CS、DS、ES、SS提供段地址。 例:設DS=100H,ES=200H,CS=300H,圖解執(zhí)行結果。 MOV AX,-2;MOV ES:100H ,AH;MOV 101H ,AL;MOV CS:200H ,-129;小端存儲0FFH0FEH7FH0FFH7 0200H:100H100H:101H300H:200H 201H4.5 I/O端口尋址(輸入/輸出指令)OUT 40H,AL;IN AL ,40H;4.5.1 直接尋址 只能使用8位地址,尋址I/O端口。OUT 64,AL;IN AL ,64;比較前后兩組指令之區(qū)別。OUT 10
11、H,AX;IN AX ,10H ;OUT 16,AX;IN AX ,16;錯誤的直接尋址:OUT 100H,AL;IN AL ,100H;OUT 256,AX;IN AX ,256;4.5.2 I/O端口間接尋址 由DX指定I/O端口。 MOV DX,100H;端口地址OUT DX,AL; 輸出數(shù)據(jù)IN AL ,DX ; 輸入數(shù)據(jù)MOV DX,20H;OUT DX,AX; 16位I/O端口IN AX ,DX ;例1:指出端口字長和尋址方式。 OUT DX,AL;IN AL ,DX ;OUT 20H,AL;IN AL ,20H ;8位端口,間址8位端口,直接尋址AL7 0端口7 0 20H端口7
12、 0 DXOUT DX,AX;IN AX ,DX ;OUT 100,AX;IN AX ,100;例2:指出端口尋址方式和字長。 16位端口,間址16位端口,直接尋址AX15 0端口15 0 100端口15 0 DX例3:指出下列指令的錯誤。 OUT DX,AH;IN AH ,DX ;OUT 100H,AL;IN AX ,CX ;OUT DX,BL; 例4、圖解執(zhí)行結果。 MOV AL,15; OUT 2,AL; IN AL,2; MOV AH,AL; MOV DS,AX; MOV 2,AX;例5、比較下列指令。 MOV DX,AL; OUT DX,AL; IN AX,256;MOV AX,25
13、6;IN AL,DX;MOV AL,DX;MOV DX,AX;OUT DX,AX;8086指令系統(tǒng)(編程語句集合) 一、數(shù)據(jù)傳送類指令 通用寄存器賦值 MOV AL,100; MOV CH,64H; MOV AX,1000H;MOV BL,10010011B;MOV BH,A;MOV BX,1000;MOV CL,2;MOV CH,125;MOV CX,1000;錯誤的賦值: MOV BL,256; MOV CH,-129; MOV DX,65536; MOV DS,1290H; MOV ES,1280H;軍規(guī):段寄存器不能用立即數(shù)賦值! 段寄存器賦值 令DS100H MOV AX,100H;
14、 MOV DS,AX; 令ES1000H MOV CX,1000H; MOV ES,CX; 令SS2100H MOV BX,2100H; MOV SS,BX; 令CS4000H MOV SI,4000H; MOV CS,SI;軍規(guī):程序員不能賦值CS,由系統(tǒng)程序賦值。小結: 段寄存器不接受立即數(shù)。 段寄存器接受寄存器賦值。 CS不能軟件賦值。 內存單元賦值(寫內存)3.1 使用寄存器賦值 MOV BX,AX; MOV BP,DX; MOV ES:DI,CL; MOV CS:100H,CH; 分析內存單元字長、邏輯和物理地址。3.2 使用立即數(shù)賦值 MOV BX,100H; MOV ES:SI,
15、256; MOV SI,129; MOV CS:DI,128; 分析內存單元字長、邏輯和物理地址。具有二義性的立即數(shù)賦值:MOV BX,10H;MOV ES:SI,255;MOV SI,2;MOV CS:DI,2;如何解決二義性?使用說明符定義單元字長:MOV Byte PTR BX,10H;MOV Word PTR ES:SI,255;MOV Word PTR SI,-2;MOV Byte PTR CS:DI,-2; 3.3 讀內存數(shù)據(jù) MOV AL, BX ; MOV BX, ES:SI ; MOV CH, BP ; MOV DX, CS:DI ; MOV DL, 100H ; 分析內存單
16、元字長、邏輯和物理地址。 I/O 端口操作4.1 存取8位I/O端口OUT DX,AL;IN AL ,DX ;OUT 20H,AL;IN AL ,20H ;4.2 存取16位I/O端口OUT DX,AX;IN AX ,DX ;OUT 20H,AX;IN AX ,20H ;編寫指令序列,完成下列操作。(實驗素材) AX 與 BX 交換。 20H端口與 BH 交換。 BX 與 20H端口交換,16位字長。 DI 與 SI 交換,8位字長。 SI 與 ES:BX 交換,16位字長。 DS 與 ES交換。 兩個16位端口交換,地址20H和30H。 兩個8位端口交換,地址200H和300H。 堆棧與堆棧
17、存取5.1 堆棧 在內存開設,后進先出。 以字(16位)為單位存取。 SS提供段地址,SP提供偏移地址。 SP當前值指示當前棧底或者棧頂單元。5.2 堆棧存取5.2.1 數(shù)據(jù)入棧格式:PUSH SRC;功能:SP = SP-2 SRC SP 軍規(guī):立即數(shù)入棧非法!正確的入棧操作:PUSH AX;PUSH BX ;PUSH ES:SIPUSH CS; 錯誤的入棧操作:PUSH AH;PUSH BL ;PUSH 1000PUSH 100H; 5.2.2 數(shù)據(jù)出棧格式:POP DST;功能: DST SP SP = SP+2軍規(guī):CS為目地址非法!正確的出棧操作:POP AX;POP BX ;POP
18、 ES:SIPOP DS; 錯誤的出棧操作:POP AH;POP BL ;POP CSPOP 100H; 例1:完成DS與ES交換。解:應用堆棧存取實現(xiàn) PUSH DS; PUSH ES; POP DS; POP ES; 數(shù)據(jù)交換格式:XCHG DST,SRC; 不支持段寄存器。 不支持立即數(shù)。 支持8/16位數(shù)據(jù)交換。正確的數(shù)據(jù)交換:XCHG AX,CX;XCHG BX,DX ;XCHG ES:SI,DLXCHG DH, CS:DI ; 錯誤的數(shù)據(jù)交換:XCHG AX,DS;XCHG BH,CX ;XCHG ES:SI,100H;XCHG BX, CS:DI ; 二、算術運算類指令 加法指令
19、格式1: ADD DST,SRC;功能: DST = DST + SRC說明:執(zhí)行后,設置ZF、SF、CF和OF標志值。ZF=0,運算結果不等于0。ZF=1,運算結果等于0。 SF=0,運算結果0。SF=1,運算結果0。CF=0,運算結果無進/借位。CF=1,運算結果產生進/借位。OF=0,運算結果未溢出。OF=1,運算結果溢出。 PF=0,運算結果中含奇數(shù)個1。PF=1,運算結果含偶數(shù)個1 。AF=0,運算結果D3位無進/借位。AF=1,運算結果D3位產生進/借位。正確的加法運算:ADD AX,CX;ADD BX,DH;ADD ES:SI,1000;ADD DS, CS; 錯誤的加法運算:A
20、DD AX,CL;ADD 100H,DX;ADD ES:SI,100;ADD CS, DS; 例1:設AL=89H,分析加法運算結果。 ADD AL,78H;分析:執(zhí)行后AL = 01H,標志位取值如下CF = 1;產生進位ZF = 0;結果非0SF = 0;結果非負OF = 0;結果未溢出提問: 序數(shù)運算的結果? 整數(shù)運算的結果?例2:設AL=89H,分析加法運算結果。 ADD AL,87H;分析:執(zhí)行后AL = 10H,標志位取值如下CF = 1;產生進位ZF = 0;結果非0SF = 0;結果非負OF = 0;結果溢出提問: 序數(shù)運算的結果? 整數(shù)運算的結果?整數(shù)相加,溢出判斷: 異號數(shù)
21、相加,不溢出。 同號數(shù)相加,和改變符號則溢出。格式2: ADC DST,SRC;功能: DST = DST + SRC + Cy說明:與ADD相同。例3:AXBX = AXBX + SIDI。解:ADD BX,DI;ADC AX,SI;例4:89FDCBH +9652DBH,分析運算結果。解:MOV BX,0FDCBH;ADD BX,52DBH;MOV AL,89H;ADC AL,96H;格式3: INC DST;功能: DST = DST + 1說明:不影響CF標志。例5:7FH +1,分析運算結果。解1:MOV BX,7FH;INC BX; 未溢出解2:MOV BH,7FH;INC BH;
22、 溢出 減法指令格式1: SUB DST,SRC;功能: DST = DST - SRC說明:執(zhí)行后,設置ZF、SF、CF和OF標志值。例1:設AL=89H,分析相減結果。 SUB AL,78H;分析:執(zhí)行后AL = 11H,標志位取值如下CF = 0;無借位ZF = 0;結果非0SF = 0;結果非負OF = 1;結果溢出整數(shù)相減,溢出判斷: 同號數(shù)相減(異號數(shù)相加),不溢出。 異號數(shù)相減(同號數(shù)相加),差與被減數(shù) 同號,無溢出。否則溢出。證明: 設X0,Y0當X - Y 0,未溢出。當X - Y 0,溢出。 設X0,Y0當X - Y 0,溢出。當X - Y 0,未溢出。格式2: SBB D
23、ST,SRC;功能: DST = DST SRC -Cy說明:與SUB相同。格式3:DEC DST;功能: DST = DST 1說明:不影響CF。格式4:CMP DST,SRC;功能: DST SRC說明:執(zhí)行后,源目不變,標志與SUB相同。格式5:NEG DST;功能: DST = 0 - DST 說明:與SUB相同。例2:7FH 與89H,比較結果。解:MOV BL,7FH; CMP BL,89H;CF = 1;序數(shù)目源ZF = 0;源目不等SF = 1;結果為負OF = 1;溢出整數(shù)目源整數(shù)比較:DST-SRC OF SF ZF 結果 0 0 0 0 1 0 1 0 0 1 1 0 0
24、 0 1例7:數(shù)據(jù)8FH求補。解:MOV BL,8FH;NEG BL;結果:BL = 71H 乘法指令3.1 序數(shù)相乘格式:MUL SRC;功能: AX = AL SRC(8) DXAX = AX SRC(16)說明:執(zhí)行后,設置CF、OF標志值。 ZF和SF隨機值。正確的序數(shù)相乘:MUL CX;MUL DH;MUL ES;MUL SI; 指出乘法指令的錯誤,并糾正之。MUL BX;MUL 100;MUL ES:SI;MUL 100H; 例1:序數(shù)1020,分析相乘結果。解:MOV BL,10; MOV AL,20; MUL BL;結果:AH =0,AL = 0C8H,BL=0AHCF = O
25、F = 0;高一半乘積等于0。SF = 1/0 和 ZF = 1/0,隨機。例2:序數(shù)1616,分析相乘結果。解:MOV BL,16; MOV AL,16; MUL BL;結果:AH =1,AL = 0,BL=10HCF = OF = 1;高一半乘積不等0。SF = 1/0 和 ZF = 1/0,隨機。3.2 整數(shù)相乘格式:IMUL SRC;功能: AX = AL SRC(8) DXAX = AX SRC(16)說明:執(zhí)行后,設置CF、OF標志值。 ZF和SF隨機值。例3:整數(shù)-22,分析相乘結果。解:MOV BL,-2; MOV AL,2; IMUL BL;結果:AH =0FFH,AL =
26、0FCH,BL=0FEHCF = OF =0;高一半是低一半的符號擴展。SF = 1/0 和 ZF = 1/0,隨機。例4:整數(shù)-1616,分析相乘結果。解:MOV BL,-16; MOV AL,16; IMUL BL;結果:AH =0FFH,AL = 0,BL=0F0HCF = OF =1;高一半非低一半的符號擴展。SF = 1/0 和 ZF = 1/0,隨機。 除法指令4.1 序數(shù)相除格式:DIV SRC;功能: AHAL = AX SRC(8位) AL =商,AH =余數(shù)。 DXAX = DXAX SRC (16位) AX=商,DX =余數(shù)。執(zhí)行后,所有標志取隨機值。指出除法指令的錯誤,
27、并糾正之。MUL BX;MUL 100;MUL ES:SI;MUL 100H; 例1:AX=100,BL=12,分析相除結果。解:DIV BL;結果:AH =4(余),AL = 8(商)CF 、OF、SF和 ZF取隨機值。4.2 整數(shù)相除格式:IDIV SRC;功能: 用于符號數(shù)除法運算。4.3 整數(shù)字長擴展指令 字節(jié)擴展成字格式:CBW(convert byte to word)功能: 把AL符號位擴展到AH,形成AX。 AL7=0,AH=00H AL7=1,AH=0FFH 字擴展成雙字格式:CWD(convert word to double word)功能: 把AX符號位擴展到DX,形成
28、DXAX。 AX15=0,DX=0000H AX15=1,DX=0FFFFH例2:AL= -2,BL=2,分析相除結果。解:CBW; AL擴展成AX IDIV BL;結果:AH =0(余),AL = 0FFH(商),BL=02HCF 、OF、SF和 ZF取隨機值。例3:整數(shù)四則運算 (W -(XY+ Z -540)/X變量X等為16位存儲單元,定義如下:X EQU Word PTR 100HY EQU Word PTR 102H 解:順序結構源程序如下MOV AX,X;IMUL Y; DXAXMOV BX,AX;轉存MOV CX,DX;CXBXMOV AX,Z;CWD; Z擴展成DXAXADD
29、 BX,AX;ADC CX,DX; SUB BX,540;SBB CX,0; 減去借位MOV AX,W;CWD; W擴展成DXAXSUB AX,BX;SBB DX,CX; IDIV X;JMP $; 到此結束 壓縮BCD碼調整指令 壓縮BCD碼 一個字節(jié)表示兩位十進制數(shù),取值0 99。例:45H、89H、36H、99H 5.1 加法調整格式:DAA 說明:緊跟ADD(C)之后執(zhí)行,調整壓縮BCD碼 相加結果。調整原理如下: 當AL309或AF1時,執(zhí)行ALAL+6,AF=1。 當AL749或CF1時,執(zhí)行ALAL+60H,CF=1。 執(zhí)行后,OF隨機,其他受影響。例1:55+38,分析相加結果
30、。解1:MOV AL,55 ADD AL,38;結果:AL = 5DH(93)CF=0,OF=0,SF=0,ZF=0,AF=0。解2:MOV AL,55H ADD AL,38H; DAA;結果:AL = 93H(93)CF=0,OF隨機,SF=1,ZF=0,AF=1。例2:5538+3855,分析相加結果。解1:以下加法可否? MOV AX,5538H ADD AX,3855H; DAA;解2:MOV AL,38H;低字節(jié) ADD AL,55H; DAA; MOV AH,AL; 轉存 MOV AL,55H;高字節(jié) ADC AL,38H; DAA; XCHG AH,AL;高低字節(jié)交換5.2 減法
31、調整格式:DAS 自學!三、邏輯運算類指令 與運算: AND DST,SRC;功能: DST = DST SRC執(zhí)行后, CF = OF =0,ZF、SF和PF隨結果確定。PF=0,DST含奇數(shù)個1。PF=1,DST含偶數(shù)個1。Parity:(N+1)位奇校驗,N為DST字長。 或運算: OR DST,SRC;功能: DST = DST SRC 異或運算: XOR DST,SRC;功能: DST = DST SRC 非運算: NOT DST;功能: DST = / DST 測試: TEST DST,SRC;功能: DST SRC例1:58H69H,分析運算結果。解: MOV AL,58H AN
32、D AL,69H;結果:AL = 48HCF = OF=0、SF=0、ZF=0,PF=1。例2:AL7、AL6置1, AL1、AL0清0, AL5AL2 求反。解: OR AL,11000000B; AND AL,11111100B; XOR AL,00111100B;例3:如果AL =0,轉入ZERO處執(zhí)行。解1: TEST AL,0FFH;不改變AL,設置ZF值。 JZ ZERO;解2: CMP AL,0;不改變AL,設置ZF值。 JE ZERO;例4:如果AL 含偶數(shù)個1,轉入EVEN處執(zhí)行。解: TEST AL,0FFH;不改變AL,設置PF值。 JP EVEN;例5:如果AX=BX,
33、轉入EQUAL處執(zhí)行。解1: XOR AX,BX;設置ZF值。 JZ EQUAL;解2: CMP AX,BX;設置ZF值。 JE EQUAL;四、移位和循環(huán)類指令 邏輯左移格式1:SHL DST,1;格式2:SHL DST,CL;CL2執(zhí)行后, CF 、OF、ZF、SF和PF隨結果確定。DST07/15CF0 邏輯右移SHRDST07/15CF0 算術左移SAL 功能與SHL相同。DST07/15CF0 算術右移SARDST07/15CF符號位不變。 左循環(huán)ROLDST07/15CF 右循環(huán)RORDST07/15CF 串CF左循環(huán)RCLDST07/15CF 串CF右循環(huán)RCRDST07/15C
34、F例1:設AL=BL=100,分析下列執(zhí)行結果。解: SHL AL,1; SHR BL,1結果:AL=0C8H(200),BL=32H(50)結論:自行歸納例2:設AL=BL= -100,分析下列執(zhí)行結果。解: SAL AL,1; SAR BL,1結果:AL=38H,OF=1,溢出! BL=0CEH(-50),OF=0,正確。結論:自行歸納五、轉移類指令 無條件轉移格式1:JMP Short Label;2字節(jié)功能:IP = IP當前值+位移量(8);相對尋址轉移范圍:-128+127字節(jié)格式2:JMP Near PTR Label;3字節(jié)功能:IP = IP當前值+位移量(16)轉移范圍:-
35、32768+32767字節(jié) 單標志條件轉移指令格式1:JC Label;進/借位,2字節(jié)功能:當CF=1,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式2:JNC Label;無進/借位功能:當CF=0,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式3:JZ/JE Label;結果為0(相等)功能:當ZF=1,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式4:JNZ /JNE Label;結果非0(不等)功能:當ZF=0,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式5:JS Label;結果為負功能:當SF=1,IP = IP當前值+位移量(8
36、); 否則,順序執(zhí)行。格式6:JNS Label;結果非負功能:當SF=0,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式7:JO Label;結果溢出功能:當OF=1,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式8:JNO Label;結果未溢出功能:當OF=0,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式9:JP Label;結果含偶數(shù)個1功能:當PF=1,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式10:JNP Label;結果含奇數(shù)個1功能:當PF=0,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。 兩個序數(shù)比較,條件轉移指
37、令格式1:JB/JNAE Label;功能:當DSTSRC,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。單一條件:CF=1即:JB = JNAE = JC格式2:JBE/JNA Label;功能:當DSTSRC,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。復合條件:CF=1,ZF=0或者CF=1,ZF=0; 即:CFZF=1 格式3:JA/JNBE Label;功能:當DSTSRC,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。復合條件:CF=0,ZF=0即:CFZF=0格式4:JAE/JNB Label;功能:當DSTSRC ,IP = IP當前值+位移量(8);
38、 否則,順序執(zhí)行。單一條件:CF=0;即: JAE = JNB = JNC 例1:比較序數(shù)AX與BX。 如果AX = BX,轉入Zero執(zhí)行。 如果AX BX,轉入Above執(zhí)行。 否則,轉入Here執(zhí)行。解: CMP AX,BX; JE Zero; JA Above; JMP Here; 兩個整數(shù)比較,條件轉移指令 測試OF、SF、ZF復合條件。格式1:JL/JNGE Label;功能:當DSTSRC,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。整數(shù)比較:DST-SRC OF SF ZF 結果 0 0 0 DSTSRC 0 1 0 DSTSRC 1 0 0 DSTSRC 1 1 0
39、 DSTSRC 0 0 1 DSTSRC格式2:JLE/JNG Label;功能:當DSTSRC ,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式3:JG/JNLE Label;功能:當DSTSRC,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。格式4:JGE/JNL Label;功能:當DSTSRC ,IP = IP當前值+位移量(8); 否則,順序執(zhí)行。例2:比較整數(shù)AX與BX。 如果AX = BX,轉入Zero執(zhí)行。 如果AX BX,轉入Large執(zhí)行。 否則,轉入Here執(zhí)行。解: CMP AX,BX; JE Zero; JG Large; JMP Here;例3:比較AX與BX。 如果AX BX, BX置換AX 。 否則,轉入Equal執(zhí)行。解: CMP AX,BX; JZ Equal ; MOV AX,BX; 六、常用偽指令 CPU不認識不執(zhí)行,由匯編程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度茶葉科研與技術推廣服務合同4篇
- 2025年度茶葉品牌授權經營合同模板4篇
- 2025年度產業(yè)園區(qū)配套服務場承包經營合同樣本4篇
- 專業(yè)廣告策劃與推廣服務協(xié)議樣本版A版
- 2025年度智能家居系統(tǒng)產品試用體驗合同4篇
- 專業(yè)拓展訓練服務協(xié)議范例版
- 專業(yè)保安人員派遣合同合同2024年版版
- 專業(yè)儲油罐租賃服務協(xié)議示例版
- 2024年04月恒豐銀行合肥分行2024年社會招考筆試歷年參考題庫附帶答案詳解
- 2025年度體育場館場地租賃安全與賽事運營管理合同4篇
- 《高績效教練》GROW教練技術
- 刀模檢測、保養(yǎng)記錄
- 小學五年級脫式計算題300道-五年級上冊脫式計算題及答案
- 鋁礬土進口合同中英文
- 最新臺灣藥事法
- 2022年金礦采選項目可行性研究報告
- 氧氣吸入法操作并發(fā)癥預防及處理規(guī)范草稿
- 2022版云南財經大學推免管理辦法
- 門診特定病種待遇認定申請表
- 工傷保險待遇及案例分析PPT課件
- 自控工程識圖
評論
0/150
提交評論