-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path12.ASM
73 lines (63 loc) · 974 Bytes
/
12.ASM
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
;从键盘上输入一串字符(用回车键结束,使用10号功能调用。)放在STRING 中, 试编制一个程序测试字符串中是否存在数字。如有,则把CL 的第5 位置1,否则将该位置 置0
S1 SEGMENT
STRING DB 60H DUP(24H)
ST1 DB 'YES',0DH,0AH,24H
ST2 DB 'NO',0DH,0AH,24H
CRLF DB 0DH,0AH,24H
S1 ENDS
S2 SEGMENT STACK
DW 60H DUP(?)
TOS LABEL WORD
S2 ENDS
S3 SEGMENT
ASSUME DS:S1,SS:S2,CS:S3
MAIN PROC FAR
MOV AX,S1
MOV DS,AX
MOV AX,S2
MOV SS,AX
LEA SP,TOS
LEA DX,STRING
MOV AH,0AH
INT 21H
MOV BX,DX
MOV CL,[BX+1]
MOV AL,CL
XOR CH,CH
ADD CX,OFFSET STRING
MOV SI,CX
MOV CL,AL
XOR CH,CH
LEA DX,CRLF
MOV AH,09H
INT 21H
XOR DI,DI ;JUDGEMENT
INC SI
L1: MOV DL,[SI]
CMP DL,30H
JB L2
CMP DL,39H
JA L2
INC DI
L2: DEC SI
;MOV AH,02H
;INT 21H
LOOP L1
LEA DX,CRLF
MOV AH,9
INT 21H
MOV DX,DI
CMP DX,0
JE L3
LEA DX,ST1
AND CL,0EFH;第5位置0
JMP L4
L3: LEA DX,ST2
OR CL,10H;第5位置1
L4: MOV AH,9
INT 21H
EXIT: MOV AH,4CH
INT 21H
MAIN ENDP
S3 ENDS
END MAIN