📄 order.lst
字号:
Turbo Assembler Version 4.1 08/05/15 23:52:12 Page 1
H:\上机\order\ORDER.ASM
1 0000 STACK1 SEGMENT PARA STACK
2 0000 20*(0000) DW 32 DUP(0)
3 0040 STACK1 ENDS
4 0000 DATA SEGMENT
5 0000 FF 00 FF*(00) IBUF DB 255,0,255 DUP(0)
6 0101 FF*(0000) PLUS DW 255 DUP(0)
7 02FF FF*(0000) MINUS DW 255 DUP(0)
8 04FD 00 PLUSC DB 0
9 04FE 00 MINUSC DB 0
10 04FF DATA ENDS
11 0000 CODE SEGMENT
12 ASSUME CS:CODE,DS:DATA
13 0000 BEGIN PROC FAR
14 0000 1E PUSH DS
15 0001 B8 0000 MOV AX,0
16 0004 50 PUSH AX
17 0005 B8 0000s MOV AX,DATA
18 0008 8E D8 MOV DS,AX
19 000A BA 0000r MOV DX,OFFSET IBUF
20 000D B4 0A MOV AH,10
21 000F CD 21 INT 21H
22 0011 B4 02 MOV AH,2
23 0013 B2 0A MOV DL,0AH
24 0015 CD 21 INT 21H
25 0017 C6 06 04FDr 00 MOV PLUSC,0
26 001C C6 06 04FEr 00 MOV MINUSC,0
27 0021 BE 0101r MOV SI,OFFSET PLUS
28 0024 BF 02FFr MOV DI,OFFSET MINUS
29 0027 BB 0002 MOV BX,2
30 002A 80 BF 0000r 2D AGAIN: CMP IBUF[BX],'-'
31 002F 74 0F JE GMINUS
32 0031 FE 06 04FDr INC PLUSC
33 0035 E8 00BD CALL DACB
34 0038 89 14 MOV [SI],DX
35 003A 83 C6 02 ADD SI,2
36 003D EB 0E 90 JMP PMCOM
37 0040 43 GMINUS: INC BX
38 0041 FE 06 04FEr INC MINUSC
39 0045 E8 00AD CALL DACB
40 0048 89 15 MOV [DI],DX
41 004A 83 C7 02 ADD DI,2
42 004D 43 PMCOM: INC BX
43 004E 80 BF FFFFr 0D CMP IBUF[BX-1],0DH
44 0053 75 D5 JNE AGAIN
45 0055 BE 0101r MOV SI,OFFSET PLUS
46 0058 8A 16 04FDr MOV DL,PLUSC
47 005C B4 00 MOV AH,0
48 005E 4A DEC DX
49 005F 8B CA OUTSID: MOV CX,DX
50 0061 56 PUSH SI
51 0062 8B 04 MOV AX,[SI]
52 0064 83 C6 02 INSIDE: ADD SI,2
53 0067 3B 04 CMP AX,[SI]
54 0069 72 02 JC NEXCHG
55 006B 87 04 XCHG [SI],AX
56 006D E2 F5 NEXCHG: LOOP INSIDE
57 006F 5E POP SI
Turbo Assembler Version 4.1 08/05/15 23:52:12 Page 2
H:\上机\order\ORDER.ASM
58 0070 89 04 MOV [SI],AX
59 0072 83 C6 02 ADD SI,2
60 0075 4A DEC DX
61 0076 75 E7 JNZ OUTSID
62 0078 BE 02FFr MOV SI,OFFSET MINUS
63 007B 8A 16 04FEr MOV DL,MINUSC
64 007F B6 00 MOV DH,0
65 0081 4A DEC DX
66 0082 8B CA OUTSDE: MOV CX,DX
67 0084 56 PUSH SI
68 0085 8B 04 MOV AX,[SI]
69 0087 83 C6 02 INSDE: ADD SI,2
70 008A 3B 04 CMP AX,[SI]
71 008C 73 02 JNC NEXCH
72 008E 87 04 XCHG [SI],AX
73 0090 E2 F5 NEXCH: LOOP INSDE
74 0092 5E POP SI
75 0093 89 04 MOV [SI],AX
76 0095 83 C6 02 ADD SI,2
77 0098 4A DEC DX
78 0099 75 E7 JNZ OUTSDE
79 009B 4B OUTPUT: DEC BX
80 009C C6 87 0000r 24 MOV IBUF[BX],'$'
81 00A1 8A 0E 04FDr MOV CL,PLUSC
82 00A5 B5 00 MOV CH,0
83 00A7 8B F9 MOV DI,CX
84 00A9 86 E9 XCHG CH,CL
85 00AB D1 E7 SHL DI,1
86 00AD 83 EF 02 PAG: SUB DI,2
87 00B0 22 ED AND CH,CH
88 00B2 74 11 JZ PDONE
89 00B4 8B 95 0101r MOV DX,PLUS[DI]
90 00B8 E8 0059 CALL BCDA
91 00BB 4B DEC BX
92 00BC C6 87 0000r 2C MOV IBUF[BX],','
93 00C1 FE CD DEC CH
94 00C3 EB E8 JMP PAG
95 00C5 8A 0E 04FEr PDONE: MOV CL,MINUSC
96 00C9 8B F9 MOV DI,CX
97 00CB 8A E9 MOV CH,CL
98 00CD D1 E7 SHL DI,1
99 00CF 83 EF 02 MAG: SUB DI,2
100 00D2 22 ED AND CH,CH
101 00D4 74 17 JZ MDONE
102 00D6 8B 95 02FFr MOV DX,MINUS[DI]
103 00DA E8 0037 CALL BCDA
104 00DD 4B DEC BX
105 00DE C6 87 0000r 2D MOV IBUF[BX],'-'
106 00E3 4B DEC BX
107 00E4 C6 87 0000r 2C MOV IBUF[BX],','
108 00E9 FE CD DEC CH
109 00EB EB E2 JMP MAG
110 00ED BA 0002r MDONE: MOV DX,OFFSET IBUF+2
111 00F0 B4 09 MOV AH,9
112 00F2 CD 21 INT 21H
113 00F4 CB RET
114 00F5 BEGIN ENDP
Turbo Assembler Version 4.1 08/05/15 23:52:12 Page 3
H:\上机\order\ORDER.ASM
115 00F5 DACB PROC
116 00F5 33 D2 XOR DX,DX
117 00F7 B1 04 MOV CL,4
118 00F9 D3 E2 DACB1: SHL DX,CL
119 00FB 8A AF 0000r MOV CH,IBUF[BX]
120 00FF 80 E5 0F AND CH,0FH
121 0102 0A D5 OR DL,CH
122 0104 43 INC BX
123 0105 80 BF 0000r 0D CMP IBUF[BX],0DH
124 010A 74 07 JE DONE
125 010C 80 BF 0000r 2C CMP IBUF[BX],','
126 0111 75 E6 JNE DACB1
127 0113 C3 DONE: RET
128 0114 DACB ENDP
129 0114 BCDA PROC
130 0114 B1 04 MOV CL,4
131 0116 8A C2 BCDA1: MOV AL,DL
132 0118 24 0F AND AL,0FH
133 011A 04 30 ADD AL,30H
134 011C 4B DEC BX
135 011D 88 87 0000r MOV IBUF[BX],AL
136 0121 D3 EA SHR DX,CL
137 0123 23 D2 AND DX,DX
138 0125 75 EF JNE BCDA1
139 0127 C3 RET
140 0128 BCDA ENDP
141 0128 CODE ENDS
142 END BEGIN
Turbo Assembler Version 4.1 08/05/15 23:52:12 Page 4
Symbol Table
Symbol Name Type Value Cref (defined at #)
??DATE Text "08/05/15"
??FILENAME Text "ORDER "
??TIME Text "23:52:12"
??VERSION Number 040A
@CPU Text 0101H
@CURSEG Text CODE #1 #4 #11
@FILENAME Text ORDER
@WORDSIZE Text 2 #1 #4 #11
AGAIN Near CODE:002A #30 44
BCDA Near CODE:0114 90 103 #129
BCDA1 Near CODE:0116 #131 138
BEGIN Far CODE:0000 #13 142
DACB Near CODE:00F5 33 39 #115
DACB1 Near CODE:00F9 #118 126
DONE Near CODE:0113 124 #127
GMINUS Near CODE:0040 31 #37
IBUF Byte DATA:0000 #5 19 30 43 80 92 105 107 110 119 123 125 135
INSDE Near CODE:0087 #69 73
INSIDE Near CODE:0064 #52 56
MAG Near CODE:00CF #99 109
MDONE Near CODE:00ED 101 #110
MINUS Word DATA:02FF #7 28 62 102
MINUSC Byte DATA:04FE #9 26 38 63 95
NEXCH Near CODE:0090 71 #73
NEXCHG Near CODE:006D 54 #56
OUTPUT Near CODE:009B #79
OUTSDE Near CODE:0082 #66 78
OUTSID Near CODE:005F #49 61
PAG Near CODE:00AD #86 94
PDONE Near CODE:00C5 88 #95
PLUS Word DATA:0101 #6 27 45 89
PLUSC Byte DATA:04FD #8 25 32 46 81
PMCOM Near CODE:004D 36 #42
Groups & Segments Bit Size Align Combine Class Cref (defined at #)
CODE 16 0128 Para none #11 12
DATA 16 04FF Para none #4 12 17
STACK1 16 0040 Para Stack #1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -