版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
DOS系統(tǒng)功能調(diào)用DOS系統(tǒng)功能調(diào)用格式在AH中設(shè)置功能號(hào)在指定的寄存器中設(shè)置入口參數(shù)用INT
21H指令執(zhí)行系統(tǒng)功能調(diào)用根據(jù)出口參數(shù)分析執(zhí)行情況DOS系統(tǒng)功能調(diào)用INT
21H的部分I/O操作1).
鍵盤輸入一個(gè)字符并回顯計(jì)算機(jī)等待從標(biāo)準(zhǔn)輸入設(shè)備(主要指鍵盤)輸入,直到按下一個(gè)鍵。如果按下的是數(shù)字、字母等可用ASCII碼表示的字符,則這個(gè)字符就被送到屏幕顯示并把其對(duì)應(yīng)的ASCII碼值送到AL寄存器。如果按下Tab制表鍵,則光標(biāo)通過添加空格。如按下的鍵是組合的Ctrl-Break兩鍵,則執(zhí)行23H的中斷而退出命令執(zhí)行。功能號(hào)AH=01H,出口參數(shù)AL=字符;AH
,
01H21H使用格式:
MOVINTEx2.asm2).
鍵盤輸入字符到緩沖區(qū):功能號(hào):AH=0AH,入口參數(shù):DS:DX=緩沖區(qū)首址(DS:DX)=緩沖區(qū)最大字符數(shù)(DS:DX+1)=緩沖區(qū)實(shí)際輸入字符數(shù)(AL)=00有輸入(AL)=FF無輸入從鍵盤接收字符串存入內(nèi)存。要求事先定義一個(gè)輸入緩沖區(qū),它的始址放于
DS:DX,第一個(gè)字節(jié)指出緩沖區(qū)能容納的最大字符數(shù)(1~255),不能為零,該值由用戶設(shè)置;第二字節(jié)保留以用作由D0S返回實(shí)際讀入的字符數(shù)(回車除外);從第三個(gè)字節(jié)開始存放從鍵盤上接收的字符。若實(shí)際輸入的字符數(shù)少于定義的字節(jié)數(shù),緩沖區(qū)內(nèi)其余字節(jié)填零;若多于定義的字節(jié)數(shù),則后來輸入的字符丟掉并且響鈴。DOS還自動(dòng)在輸入字符串的末尾加上回車字符,然而這個(gè)回車字符未被計(jì)入由DOS填到第二個(gè)輔助字節(jié)內(nèi)的數(shù)目之中。因此,在設(shè)立輸入緩沖區(qū)最大尺寸時(shí)要比所希望輸入的字節(jié)數(shù)多一個(gè)字節(jié)。Ex3.asm3).輸出一個(gè)字符功能號(hào)
:
AH=2入口參數(shù):DL=字符,光標(biāo)隨字符移動(dòng)使用格式:MOVMOVINTDL
,
‘A’AH
,
02H21H執(zhí)行上面程序后,將在屏幕上顯示字符A.Ex4.asm4).輸出字符串,
功能號(hào)
:
AH=9,入口參數(shù):DS:DX=串地址,字串結(jié)束為“$”符號(hào)使用格式:
BUF
DB
‘HELLO!’,’$’……MOVMOVINTDX,
OFFSET
BUFAH,
09H21H……….
Ex5.asm5.S系統(tǒng)5)鍵盤輸入一個(gè)字符無回顯,支持CTRL_BREAK,CTRL_C檢查處理。功能號(hào):AH=08H出口參數(shù):AL=字符;6)返回DOS系統(tǒng)功能號(hào):AH=4CH7)清鍵盤緩沖區(qū),并調(diào)用一種鍵盤功能功能號(hào):AH=0CHAL=鍵盤功能號(hào)(1s7s8s0AH)第5章
循環(huán)與分支程序設(shè)計(jì)編制一個(gè)匯編程序的步驟:分析題意,確定算法。這一步是能否編制出高質(zhì)量程序的關(guān)鍵,因此不應(yīng)該一拿到題目就急于寫程序,而是應(yīng)該仔細(xì)地分析和理解題意,找出合理的算法及適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu)。根據(jù)算法畫出程序框圖。這樣可以減少出錯(cuò)的可能性。畫框圖時(shí)可以由粗到細(xì)把算法逐步地具體化。根據(jù)框圖編寫程序。上機(jī)調(diào)試程序。任何程序必須經(jīng)過調(diào)試才能檢查出你的設(shè)計(jì)思想是否正確以及你的程序是否符合你的設(shè)計(jì)思想,結(jié)果是否正確。5.1
順序結(jié)構(gòu)程序例1:自然數(shù)0~15的平方表,存在內(nèi)存TABLE開始的連續(xù)16個(gè)單元中,現(xiàn)XAD單元存有任意一自然數(shù)(0
X<15),查表求X的平方,存入YAD單元中。X2的值的地址:TABLE表的首地址
+
Xdatatablesegmentdb
0,1,4,9,16,25,36,49,64,81db
100,121,144,169,196,225xad
db
3yad
db
?datacodeendssegmentassume
cs:code,ds:data,ss:stackstart
proc
farpushds;將DS入棧movax,0000h;AX置零pushax;將0入棧movax
,data;初始化DSmovds
,axah
,0al
,xadbx
,
ax;AH送0;將X送ALadd;求X平方值的地址al
,byte
ptr[bx]
;X平方值送mov
bx,offset
table;表的首址送B
movmovaddmov
movyad
,
almov
ah,4chint
21hstartcodeendpendsend
start例2:編程求y=((a+b)*c-d)/e
其中asbscsdse依次放在VARAsVARBs
VARCsVARDsVARE單元開始的內(nèi)存中,結(jié)果存放在VARY單元中。DATA SEGMEN;定義數(shù)VARAVARBVARCVARDDW
6DW
7DW
8DW
9;
a=6;
b=7;
c=8;
d=9VAREDW
10;
e=10VARYDW
?;
yDATAENDSSTACK SEGMENT;定義堆棧段DW
20H
DUP
(?)STACKCODESTARTENDSSEGMENT;定義代碼段PROC
FARASSUME
CS:CODE,
DS:DATA,SS:STACKPUSH
DS;DS:00壓棧BEGIN:MOV
AX,
0PUSH
AXMOV
AX,
DATAMOV
DS,AX;置數(shù)據(jù)段MOV
AX,VARAADD
AX,
VARB;a+bIMUL
VARCMOV
CX,AXMOV
BX,DX;(a+b)*cMOV
AX,
VARD;(a+b)*c-dCWDSUB
CX,AXSBB
BX,DXMOV
AX,CXMOV
DX,BXIDIV
VARE ;((a+b)*c-d)/eMOV
VARY,
AXRETSTART
ENDPCODE
ENDSEND
BEGIN5.2
分支結(jié)構(gòu)程序設(shè)計(jì)1.分支程序的結(jié)構(gòu)形式分支程序結(jié)構(gòu)可以有兩種形式IF_THEN_ELSE語句和CASE語句。IF_THEN_ELSE語句可以引出兩個(gè)分支,CASE語句則可以引出多個(gè)分支,不論哪一種形式,在某一種確定條件下,只能執(zhí)行多個(gè)分支中的一個(gè)分支。1:符號(hào)函數(shù):DATAXXYYDATACODEASSUMESTARTPROCBEGIN:SEGMENT
;定義數(shù)據(jù)段DB
10DB
?ENDSSEGMENT;定義代碼段
CS:CODE,DS:DATA
FARPUSH
DS;DS:00壓棧DS,
AXAL,
XXAL,
0BIGR;置數(shù)據(jù)段;AL=XX;AL與0比較;大于,等于轉(zhuǎn)BIGRAL,
0FFH;AL=-1MOV AX,
0PUSH
AXMOV AX,
DATAMOVMOVCMPJGEMOVJMPEQUT
;轉(zhuǎn)EQUTBIGR:MOVEQUT:JE
EQUT;
等于0,轉(zhuǎn)EQUTAL,
01 ;
AL=1MOV YY,AL
;符號(hào)函數(shù)的結(jié)果存入YY單元
RETSTARTCODEENDENDPENDSBEGIN2:某車站需編寫一個(gè)計(jì)算行李托運(yùn)費(fèi)的程序,其要求為:其中G為托運(yùn)質(zhì)量,當(dāng)G=0時(shí),退出程序,G>60Kg不受理。程序:;定義數(shù)據(jù)段;設(shè)托運(yùn)質(zhì)量為25KgSEGMENT
DW
25DW
?DATAXXYYDATA
ENDSSTACK
SEGMENT;定義堆棧段DW
50h
DUP(?)ENDSSTACKCODESTARTSEGMENT
;定義代碼段PROC
FARASSUME
CS:
CODE,
DS:
DATA,
SS:
STACK;DS:00壓棧DS,AX;置數(shù)據(jù)段AX,XX;取托運(yùn)質(zhì)量DEGIN:
PUSH
DSMOV AX,
0PUSH
AXMOV AX,
DATA
MOVMOV
CMPJLECMPJLEAX,
0EXITAX,
20OK;AX與0比較是否大于;小于、等于轉(zhuǎn)EXIT;質(zhì)量是否大于20Kg;小于、等于轉(zhuǎn)OKCMPJGAX,LAB40;質(zhì)量是否大于40Kg;大于轉(zhuǎn)LABSUBAX,20;G-20movcx,2MULcx;(G-20)*2ADDAX,20;(G-20)*2+20JMPOK;轉(zhuǎn)OK;質(zhì)量是否大于60KgEXIT;大于60Kg轉(zhuǎn)EXIT;(G-40)AX,
40cx,3cxAX,
60YY,
AXLAB:
CMP
AX,
60JGSUBmovMULADDMOVRETENDP;(G-40)*3;(G-40)*3+60;托運(yùn)費(fèi)存入YY中OK:EXIT:STARTCODE
ENDSEND
BEGIN3根據(jù)AL中的被放置位的情況控制轉(zhuǎn)移到8個(gè)子程序(R1~R8)中的一個(gè):若AL為00000001則轉(zhuǎn)移至R1;若AL為00000010則轉(zhuǎn)移至R2;若AL為00000100則轉(zhuǎn)移至R3;若AL為00001000則轉(zhuǎn)移至R4;若AL為00010000則轉(zhuǎn)移至R5;若AL為00100000則轉(zhuǎn)移至R6;若AL為01000000則轉(zhuǎn)移至R7;若AL為10000000則轉(zhuǎn)移至R8。分析:實(shí)現(xiàn)CASE結(jié)構(gòu)時(shí),可以使用跳躍表法,使程序能根據(jù)不同的條件轉(zhuǎn)移到多個(gè)程序分支中去。變址尋址方式、寄存器間接尋址方式基址變址尋址方式實(shí)現(xiàn)跳躍表法的程序。DATASEGMENT;定義數(shù)據(jù)段BRTABDATADW
R11DW
R21DW
R31DW
R41DW
R51DW
R61DW
R71DW
R81ENDS;子程序R1入口偏移地址,段地址STACKSEGMENT
PARASTACK‘STACK’
;定義堆棧段DB100
DUP
(?)TOPEQU$-STACKSTACKENDSCODESEGMENT;定義代碼段STARTPROC
FARASSUMEDEGIN:
PUSHCS:CODE,DS:DATA,
SS:STACKDSMOVAX,
0;DS:00壓棧PUSHAX;使程序能返回DOSMOVAX,
DATAMOVDS,
AX;置數(shù)據(jù)段MOVAX,
STACMOVSS,
AX;置堆棧段MOVAX,
TOPMOVSP,
AX;置棧頂指針LEAGTBIT:
RCRBX,
BRTABAL,
1;BX指向跳轉(zhuǎn)表JCGETAD;順序檢查AL中各位的狀態(tài)INCBX;BX加2,指向跳轉(zhuǎn)表中INCBX;下一個(gè)子程序地址JMPGTBITGETAD:JMPWORD
PTR
[BX];轉(zhuǎn)移到相應(yīng)的子程序START
ENDP
CODE
ENDSEND
BEGIN基址變址尋址方式;循環(huán)次數(shù)8送cxlea
bx,
BRTABmov
si,7*type
branch_tablemov
cx,8l:shl
al,1jnb
not_yetjmp
word
ptr[bx][si];把a(bǔ)l邏輯左移1位;CF=0轉(zhuǎn)到not_yet;CF=1轉(zhuǎn)到相應(yīng)程序分支not_yet:sub
si,type
branch_table;
修改地址loop
l ;
循環(huán)4、在附加段中,有一個(gè)按從小到大順序排列的無符號(hào)數(shù)數(shù)組,其首地址存放在DI寄存器中,數(shù)組中的第一個(gè)單元存放著數(shù)組長度。在AX中有一個(gè)無符號(hào)數(shù),要求在數(shù)組中查找(AX),如找到,則使CF=0,并在SI中給出該元素在數(shù)組中的偏移地址;如未找到,則使CF=1。折半查找算法:①
折半查找法先取有序數(shù)組的中間元素與查找值相比較,如相等則查找成功;②
如查找值大于中間元素,則再取高半部的中間元素與查找值相比較;如查找值小于中間元素,則再取低半部的中間元素與查找值相比較;如此重復(fù)直到查找成功或最終未找到該數(shù)(查找不成功)為止。③折半查找法的效率高于順序查找法,對(duì)于長度為N的表格,順查找法平均要作N/2次比較,而折半查找法的平均比較次數(shù)為log2N。所以,如果數(shù)組長度為100,則順序查找法平均要作50次比較,而折半查找法平均作7次比較就可以了。①
初始化被查找數(shù)組的首尾下標(biāo),low=1,high=n②
若low>high,則查找失敗,置CF=1,退出程序。否則,計(jì)算中點(diǎn):mid=(low+high)/2K與中點(diǎn)元素r[mid]比較。若k=r[mid],則查找成功,程序結(jié)若k<r[mid],則跳轉(zhuǎn)步驟4;若k>r[mid],則轉(zhuǎn)步驟5③
低半部分查找(lower),high=mid-1返回步驟2繼續(xù)查找。③
高半部分查找(higher),low=mid+1返回步驟2繼續(xù)查找。dseglow_idxsegmentdw?high_idx
dw?endssegmentproc
neardsegcsegb_searchassumecs:cseg,ds:dseg,es:dsegpushpushmov
mov
movpopdsaxax,dsegds,axes,axaxcmp
ax,es:[di+2]ja
chk_lastsi,es:[di+2]leaje
exitstcjmpchk_last:exitmovshladdcmpjbjestcjmpsi,es:[di]si,1si,diax,es:[si]searchexitexitsearch:mov
mov
mov
movlow_idx,1bx,es:[si]high_idx,bxbx,dimid:mov
mov
cmpjaaddshrmovshlcompare:cx,low_idxdx,high_idxcx,dxno_matchcx,dxcx,1si,cxsi,1cmpax,es:[bx+si]jeexitjahigherdeccxmovhigh_idx,cxjmpmidhigher:inccxmovlow_idx,cxjmpmidno_match:stcexit:popdsretb_searchendpcsegendsend5.3
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)1、循環(huán)程序的結(jié)構(gòu)形式①
DO_WHILE結(jié)構(gòu)形式。DO_WHILE結(jié)構(gòu)把對(duì)循環(huán)控制條件的判斷放在循環(huán)的入口,先判斷條件,滿足條件就執(zhí)行循環(huán)體,否則則退出循環(huán)。②
DO_UNTIL結(jié)構(gòu)形式。先執(zhí)行循環(huán)體然后再判斷條件,不滿足則繼續(xù),否則退出循環(huán)。循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(2)循環(huán)程序的結(jié)構(gòu)形式流程圖:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(3)循環(huán)程序由三部分組成:設(shè)置循環(huán)的初始狀態(tài)。設(shè)置循環(huán)次數(shù)的計(jì)數(shù)值,以及循環(huán)體正常工作而建立的初始狀態(tài)等。循環(huán)體。由循環(huán)的工作部分及修改部分組成,循環(huán)的工作部分是為完成程序功能而設(shè)計(jì)的主要程序段,循環(huán)的修改部分則是為保證每一次重復(fù)(循環(huán))時(shí),參加執(zhí)行的信息能發(fā)生有規(guī)律的變化而建立的程序段。循環(huán)控制部分。每個(gè)循環(huán)程序必須選擇一個(gè)循環(huán)控制條件來控制循環(huán)的運(yùn)行和結(jié)束。循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(4)AX;00壓棧
AX,DATADS,AX
;置數(shù)據(jù)段PUSH
MOV
MOV
MOV
MOV
MOVAX,0;累加器清0CX,MAX;循環(huán)控CX=MAXBX,1;初始加數(shù)用1例1求S=1+2+3+…+100AGAIN:ADDAX,BX;累加求和DATASEGMENT;定義數(shù)據(jù)段INCBX;下一個(gè)數(shù)MAXDW100LOOPAGAIN;循環(huán)轉(zhuǎn)AGAINSUMDW?MOVSUM,
AX;求和結(jié)果存SUM中DATAENDSRETSTACKSEGMENTPARASTARTENDPSTACK;定義堆棧段CODEENDSSTACKCODEDW
20HENDSDUP(?)
END
BEGINSEGMENT;定義代碼段STARTPROCFARASSUMEBEGIN:CS:CODE,PUSHDS:DATA,
SS:STACKDS
;DS壓棧MOVAX,
0循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(5)例2求N!DATA
SEGMENT;定義數(shù)據(jù)段DW
5DW
?NYYDATA
ENDSSTACKSEGMENT;定義堆棧段50H
DUP
(?);定義代碼段STACKCODESTARTDWENDSSEGMENTPROC
FARASSUME
CS:CODE,
DS:DATA,
SS:STACKBEGIN:PUSHDS;DS壓棧MOVAX,
0PUSHAX;00壓棧MOVAX,
DATAMOVDS,
AX;置數(shù)據(jù)段MOVAX,
N;
AX=NCMP AX,0;比較是否為0JNENOZ;非0轉(zhuǎn)NOZINCAX;0則AX=1JMPEXIT;轉(zhuǎn)EXITNOZ:MOVBX,
AX ;
BX=AX=NMOVAX,1
;累積AX=1AGAIN:MULBX;相乘AX*BX->AXDECBX;BX減1EXIT:MOVJNE
AGAIN;非0繼續(xù)
YY,AX;保存N!結(jié)果到Y(jié)Y中RETSTARTCODE
ENDENDPENDSBEGIN循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(6)VARADW500;
minVARBDW?VARCDW?DATASTACKENDSSEGMENT;定義堆棧段
DW
20H
DUP(?)ENDSSTACKCODESTARTSEGMENT ;定義代碼段PROC
FARASSUME
CS:CODE,
DS:DATA,SS:STACK;DS壓棧;0壓棧DSAX,
0AXAX,
DATADS,
AXDX,
VARABEGIN:
PUSHMOV
PUSH
MOV
MOV
MOV
MOV
MOV
MOVAX,0;累加器清0BX,2;加數(shù)初值
CX,0;項(xiàng)數(shù)記錄CX例3:求2+4+6+…直到和剛大于500,保存實(shí)際和及項(xiàng)數(shù)nDATA
SEGMENT;
定義數(shù)據(jù)段
AGAIN:
ADD AX,
BX
;
求和INC
CX
;項(xiàng)數(shù)記錄CX加1INCINCBXBXCMP大于VARAJGE;加數(shù)加2AX,DX
;是否EXIT
;大于、等于轉(zhuǎn)繼續(xù)
EXIT:JMP
AGAIN
;否則,VARB,AX;保存和
VARC,CX;保存項(xiàng)數(shù)nENDSMOV
MOVRETSTART
ENDP
CODEENDBEGIN循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(7)例4試編制一個(gè)程序把BX寄存器內(nèi)的二進(jìn)制數(shù)用十六進(jìn)制數(shù)的形式在屏幕上顯示出來。循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(9)PROGNAM
MAINSEGMENT
PROC
FAR;代碼段定義;主程序ASSUME
CS:
PROGNAMSTART:PUSH
DSSUBAX,
AX;DS:00壓棧PUSHAXMOVCH,4
;CH循環(huán)次數(shù)ROTATE:
MOVCL,
4;每次循環(huán)輸出一位十六進(jìn)制數(shù)ROLBX,
CL;即移位4個(gè)二進(jìn)制位MOVAL,
BL;
AL=BLANDAL,0FH
;取低4位ADDAL,30H
;轉(zhuǎn)變?yōu)锳SCII碼CMPAL,3AH;是否為’0’-‘9’JLPRINTIT;是轉(zhuǎn)PRINTITADDAL,7
H
;否轉(zhuǎn)為’A’-‘F’PRINTIT:MOVDL,
AL;DL=輸出字符MOVAH,
2INT21H
;調(diào)用DOS中斷,顯示字符DECCHJNZROTATE;沒循環(huán)結(jié)束,繼續(xù)RET;返回MAINENDPENDSPROGNAMEND
START循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(10)例5:在ADDR單元中存放著數(shù)Y的地址,試編制一程序把Y中1的個(gè)數(shù)存入COUNT單元中。程序框圖循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(11)DATAREA
SEGMENT;數(shù)據(jù)段定義ADDR
NUMBER
COUNTDW
NUMBER
DW
YDW
?DATAREA
ENDS
PROGNAMMAIN
PROCSEGMENT;代碼段定義
FARASSUME
CS:PROGNAM,
DS:DATAREASTART:
PUSH
DSSUBAX,
AX;DS:00壓棧PUSHAXMOVAX,
DATAREAMOVDS,
AX;置數(shù)據(jù)段MOVCX,
0;CX計(jì)數(shù)器清0MOVBX,
ADDRMOVAX,
[BX];取Y值給AXREPEAT:TESTAX,0FFFFHJZ
EXIT;測試AX是否為0?,是轉(zhuǎn)EXITJNS
SHIFT;符號(hào)為不為1轉(zhuǎn)SHIFTINC
CX;計(jì)數(shù)器加1SHIFT:SHLAX,
1;左移一位JMP
REPEAT;繼續(xù)找1EXIT:MOVCOUNT,
CX;保存計(jì)數(shù)值RETMAINENDPPROGNAMENDSENDS例6:學(xué)生成績統(tǒng)計(jì),要求鍵盤輸入成績、人數(shù),并統(tǒng)計(jì)優(yōu)、良中、及格和不及格各多少人。循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(12)循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(13)DATASEGMENT;定義數(shù)據(jù)段STUNUM
EQU30;學(xué)生人數(shù)SCOREDB68,75,37,93,65,80,78,70,84,67;學(xué)生成績DB86,74,65,54,56,77,85,69,78,95DB69,53,77,68,88,93,84,76,77,80LT60DB0;存放不及格人數(shù)GE60DB0;存放及格人數(shù)GE70DB0;存放中人數(shù)GE80DB0;存放良人數(shù)GE90DB0;存放優(yōu)人數(shù)DATASEGMENTSTACKSEGMENT;定義堆棧段STADW20HDUP(?)TOPDW?STACKENDSCODESEGMENT;定義代碼段MAINPROCFARASSUME
CS:CODE,
DS:DATA,
SS:STACKSTART:PUSHDS;DS壓棧MOVAX,0PUSHAX;0壓棧MOVAX,DATAMOVDS,AX;置數(shù)據(jù)段循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(14)MOVCX,STUNUM;取學(xué)生人數(shù)MOVBX,OFFSET
SCORE;BX指向?qū)W生成績表首地址B60:MOVAL,[BX];取出一個(gè)學(xué)生成績CMPAL,60;是否大于60JAM60;大于、等于轉(zhuǎn)M60LEASI,LT60;SI指向LT60單元INC[SI];SI加1JMPNEXT;繼續(xù)統(tǒng)計(jì)下一個(gè)成績M60:CMPAL,70;是否大于70JAM70;大于、等于轉(zhuǎn)M70LEASI,GE60;SI指向GE60單元INC[SI];SI加1JMPNEXT;繼續(xù)統(tǒng)計(jì)下一個(gè)成績M70:CMPAL,80;是否大于80JAM80;大于、等于轉(zhuǎn)M80LEASI,GE70;SI指向GE70單元INC[SI];SI加1JMPNEXT;繼續(xù)統(tǒng)計(jì)下一個(gè)成績M80:CMPAL,90;是否大于90JAM90;大于、等于轉(zhuǎn)M90LEASI,GE80;SI指向GE80單元INC[SI];SI加1JMPNEXT;繼續(xù)統(tǒng)計(jì)下一個(gè)成績M90:LEASI,GE90;SI指向GE90單元INC[SI];SI加1NEXT:INCBX;BX加1LOOPB60;沒有統(tǒng)計(jì)完,繼續(xù)RETMAINENDPENDSTART循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(12)多重循環(huán)程序設(shè)計(jì)例1、延時(shí)程序DELAY:MOV
DX,3FFH;外層循環(huán)3FFH次TIME:MOVAX,0FFFFH;內(nèi)層循環(huán)FFFFH次TIME1:DECAXNOP;空操作,起延時(shí)作用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧省大連市中山區(qū)2024-2025學(xué)年八年級(jí)上學(xué)期期中考試物理試卷(含答案)
- 2024-2025學(xué)年山東省德州市齊河縣馬集中學(xué)七年級(jí)(上)第一次月考數(shù)學(xué)試卷(含答案)
- 地方公務(wù)員浙江申論33
- 地方公務(wù)員遼寧申論99
- 2021年山東省淄博市中考數(shù)學(xué)試卷(解析版)
- 河北行政職業(yè)能力模擬68
- 文創(chuàng)公司管理手冊(cè)
- 2003年云南省錄用國家公務(wù)員考試《申論》試題
- 2015年7月17日山東省公務(wù)員無領(lǐng)導(dǎo)小組討論面試真題
- 湖南公務(wù)員面試模擬41
- 2023年上海聯(lián)合產(chǎn)權(quán)交易所校園招聘筆試模擬試題及答案解析
- 神經(jīng)內(nèi)科大病歷書寫規(guī)范
- 《思想道德與法治》 課件 第三章 弘揚(yáng)中國精神
- 有關(guān)青春的英語范文高中通用28篇
- 五年級(jí)上冊(cè)語文課件-19 父愛之舟 人教部編版 (共22張PPT)
- 中型博物館教學(xué)設(shè)計(jì)任務(wù)書
- 食材配送整體服務(wù)流程
- 【廣東】濱水主題景觀項(xiàng)目及多功能城市設(shè)計(jì)
- 植物的衰老與器官脫落
- 中國動(dòng)漫發(fā)展史(34張)課件
- 中國民歌介紹課件
評(píng)論
0/150
提交評(píng)論