串操作程序设计 HLJU 设X、Y、Z均为双精度数,它们分别存放在X、X+2、Y、Y+2、Z、Z+2存储单元中,存放时高位存高地址,低位存低地址,编写程序实现下面表达式的计算:X+(Y-Z)=W
DATA SEGMENT STRING1 DB 'The 1th string:','$' STRING2 DB 'The 1th string:','$' OLDS DB 10 DUP(?) NEWS DB 10 DUP(?) LEN DW 5 ; STR1 DB 'YES','$' STR2 DB 'NO','$' DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV ES,AX
LEA DX,STRING1
MOV AH,9
INT 21HMOV CX,LEN MOV SI,0
AGAIN1: MOV AH,01H
INT 21H
MOV OLDS[SI],AL
INC SI
LOOP AGAIN1
MOV AH,2
MOV DL,0AH
INT 21H
MOV AH,2
MOV DL,0AH
INT 21H
LEA DX,STRING2
MOV AH,9
INT 21HMOV CX,LEN MOV DI,0
AGAIN2: MOV AH,01H
INT 21H
MOV NEWS[DI],AL
INC DI
LOOP AGAIN2
MOV AH,2
MOV DL,0AH
INT 21H
MOV AH,2
MOV DL,0DH
INT 21H
MOV CX,LEN
LEA SI,OLDS
LEA DI,NEWS
CLD
REPZ CMPSB
JNE NOYES: LEA DX,STR1
MOV AH,09H
int 21H
JMP FINALNO: LEA DX,STR2
MOV AH,09H
INT 21H
JMP FINAL
FINAL:
MOV AH,4CH
INT 21H
CODE ENDS
END START