標籤:style blog http ar color os sp on 資料
資料區塊移動。將一個連續儲存單元的資料移動到另一個連續的儲存單元,並找出其中零的個數並顯示出來。(注意在編程的時候要確保資料區塊位置的不確定性)
1 DATA SEGMENT 2 ORG $+20H 3 VA DB ‘2014001002003004‘ ;資料區塊 4 LEN EQU $-VA ;資料區塊長度 5 V1 DW VA ;源塊首址 6 V2 DW VA+1 ;目的塊首址 7 DATA ENDS 8 STACK1 SEGMENT STACK 9 DW 20H DUP(0)10 STACK1 ENDS11 CODE SEGMENT12 ASSUME CS:CODE,DS:DATA,SS:STACK113 START: MOV AX,DATA14 MOV DS,AX15 MOV BL,30H ;設定計數器(計0個數)16 MOV CX,LEN ;設定計數器(傳送條件)17 MOV SI,V1 ;SI指向源塊首址18 MOV DI,V2 ;DI指向目的塊首址19 CMP SI,DI ;比較兩塊首址,選擇不同傳送方式20 JA J221 ADD SI,LEN-122 ADD DI,LEN-123 J1: MOV AL,[SI]24 MOV [DI],AL25 CMP AL,30H26 JNE J0127 INC BL28 J01: DEC SI29 DEC DI30 DEC CX31 JNE J132 JMP DONE33 J2: MOV AL,[SI]34 MOV [DI],AL35 CMP AL,30H36 JNE J0237 INC BL38 J02: INC SI39 INC DI40 DEC CX41 JNE J242 DONE: MOV AH,2 ;顯示0個數43 MOV DL,BL44 INT 21H45 MOV AH,4CH ;return DOS46 INT 21H47 CODE ENDS48 END START
View Code
兩種傳送方式分別對應兩種情況。
資料區塊間的資料傳送程式