📄 得分系统.lst
字号:
Turbo Assembler Version 4.1 08/05/21 12:46:34 Page 1
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\得分系统.ASM
1
2 0000 DATA SEGMENT
3 0000 07*(00) MARK DB 7 DUP (0)
4 0007 50 6C 65 61 73 65 20+ STRING1 DB 'Please inter 7 scores : ','$' ;开始提示语句
5 69 6E 74 65 72 20 37+
6 20 73 63 6F 72 65 73+
7 20 3A 20 20 20 20 24
8 0023 72 65 73 75 6C 74 20+ STRING2 DB 'result : ','$' ;结果提示语句
9 20 3A 20 20 20 20 24
10 0031 DATA ENDS
11 0000 STACK1 SEGMENT PARA STACK
12 0000 14*(00) DB 20 DUP (0)
13 0014 STACK1 ENDS
14
15 0000 COSEG SEGMENT
16 ASSUME CS:COSEG,DS:DATA,SS:STACK1
17
18 0000 START:
19 0000 B8 0000s MOV AX,DATA
20 0003 8E D8 MOV DS,AX
21
22 0005 BA 0007r LEA DX,STRING1
23 0008 B4 09 MOV AH,09H
24 000A CD 21 INT 21H
25 000C B9 0007 MOV CX,7
26 000F BE 0000r MOV SI,OFFSET MARK
27 0012 LOP1:
28 0012 B4 01 MOV AH,01H
29 0014 CD 21 INT 21H
30 0016 B3 30 MOV BL,30H
31 0018 2A C3 SUB AL,BL ;输入的数变为ASCII码
32 001A 8A D8 MOV BL,AL
33 001C B0 0A MOV AL,10
34 001E F6 E3 MUL BL
35 0020 8A D0 MOV DL,AL
36 0022 B4 01 MOV AH,01H
37 0024 CD 21 INT 21H
38 0026 B3 30 MOV BL,30H
39 0028 2A C3 SUB AL,BL
40 002A 02 C2 ADD AL,DL
41 002C 88 04 MOV [SI],AL
42 002E 46 INC SI
43 002F B2 20 MOV DL,' '
44 0031 B4 02 MOV AH,02H
45 0033 CD 21 INT 21H
46 0035 E2 DB LOOP LOP1
47 0037 52 PUSH DX
48 0038 50 PUSH AX
49 0039 B2 0A MOV DL,0AH
50 003B B4 02 MOV AH,02H
51 003D CD 21 INT 21H
52 003F B2 0D MOV DL,0DH
53 0041 B4 02 MOV AH,02H
54 0043 CD 21 INT 21H
55 0045 58 POP AX
56 0046 5A POP DX
57 0047 52 PUSH DX
Turbo Assembler Version 4.1 08/05/21 12:46:34 Page 2
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\得分系统.ASM
58 0048 50 PUSH AX
59 0049 B2 0A MOV DL,0AH
60 004B B4 02 MOV AH,02H
61 004D CD 21 INT 21H
62 004F B2 0D MOV DL,0DH
63 0051 B4 02 MOV AH,02H
64 0053 CD 21 INT 21H
65 0055 58 POP AX
66 0056 5A POP DX
67 0057 BA 0023r LEA DX,STRING2
68 005A B4 09 MOV AH,09H
69 005C CD 21 INT 21H
70 005E B9 0006 MOV CX,6
71 0061 BE 0000r MOV SI,OFFSET MARK
72 0064 8A 3C MOV BH,[SI]
73 0066 8A 1C MOV BL,[SI]
74 0068 46 LOP2: INC SI
75 0069 3A 3C CMP BH,[SI]
76 006B 77 02 JA EVENT1
77 006D 8A 3C MOV BH,[SI]
78 006F 3A 1C EVENT1: CMP BL,[SI]
79 0071 72 02 JB EVENT2
80 0073 8A 1C MOV BL,[SI]
81 0075 E2 F1 EVENT2: LOOP LOP2
82 0077 BE 0000r MOV SI,OFFSET MARK
83 007A B9 0007 MOV CX,7
84 007D 2A C0 SUB AL,AL
85 007F 02 04 LOP3: ADD AL,[SI] ;求7个数和
86 0081 46 INC SI
87 0082 E2 FB LOOP LOP3
88 0084 2A C7 SUB AL,BH ;7个数的和减去最大数
89 0086 2A C3 SUB AL,BL ;7个数的和减去最小数
90 0088 98 CBW
91 0089 B3 05 MOV BL,5
92 008B F6 F3 DIV BL ;和除以5
93 008D 50 PUSH AX
94 008E 98 CBW
95 008F B3 0A MOV BL,10
96 0091 F6 F3 DIV BL
97 0093 8A FC MOV BH,AH
98 0095 04 30 ADD AL,30H
99 0097 8A D0 MOV DL,AL
100 0099 B4 02 MOV AH,02H
101 009B CD 21 INT 21H
102 009D 8A E7 MOV AH,BH
103 009F 80 C4 30 ADD AH,30H
104 00A2 8A D4 MOV DL,AH
105 00A4 B4 02 MOV AH,02H
106 00A6 CD 21 INT 21H
107 00A8 B2 2E MOV DL,'.'
108 00AA B4 02 MOV AH,02H
109 00AC CD 21 INT 21H
110 00AE 58 POP AX
111 00AF 8A C4 MOV AL,AH
112 00B1 B4 02 MOV AH,2
113 00B3 F6 E4 MUL AH
114 00B5 04 30 ADD AL,30H
Turbo Assembler Version 4.1 08/05/21 12:46:34 Page 3
C:\DOCUME~1\ADMINI~1\MYDOCU~1\汇编程序\得分系统.ASM
115 00B7 8A D0 MOV DL,AL
116 00B9 B4 02 MOV AH,02H
117 00BB CD 21 INT 21H
118 00BD B4 4C MOV AH,4CH
119 00BF CD 21 INT 21H
120 00C1 COSEG ENDS
121 END START
Turbo Assembler Version 4.1 08/05/21 12:46:34 Page 4
Symbol Table
Symbol Name Type Value Cref (defined at #)
??DATE Text "08/05/21"
??FILENAME Text "得分系统"
??TIME Text "12:46:34"
??VERSION Number 040A
@CPU Text 0101H
@CURSEG Text COSEG #2 #11 #15
@FILENAME Text 得分系统
@WORDSIZE Text 2 #2 #11 #15
EVENT1 Near COSEG:006F 76 #78
EVENT2 Near COSEG:0075 79 #81
LOP1 Near COSEG:0012 #27 46
LOP2 Near COSEG:0068 #74 81
LOP3 Near COSEG:007F #85 87
MARK Byte DATA:0000 #3 26 71 82
START Near COSEG:0000 #18 121
STRING1 Byte DATA:0007 #4 22
STRING2 Byte DATA:0023 #8 67
Groups & Segments Bit Size Align Combine Class Cref (defined at #)
COSEG 16 00C1 Para none #15 16
DATA 16 0031 Para none #2 16 19
STACK1 16 0014 Para Stack #11 16
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -