?? 6-17.asm
字號(hào):
;統(tǒng)計(jì)正數(shù),負(fù)數(shù),零的個(gè)數(shù)
DATA SEGMENT
DA_WORD DW -1,3,5,0,-5,-7,4,0,-7,0,4,6
CUNT1 DB $-DA_WORD
CUNT2 DB 0 ;存放正數(shù)個(gè)數(shù)
CUNT3 DB 0 ;存放零的個(gè)數(shù)
CUNT4 DB 0 ;存放負(fù)數(shù)的個(gè)數(shù)
STRING1 DB 'THE NUMBER OF PLUS IS:','$'
STRING2 DB 0AH,0DH,'THE NUMBER OF ZERO IS:','$'
STRING3 DB 0AH,0DH,'THE NUMBER OF NEGATIVE IS:','$'
BASE DB 30H
DATA ENDS
STACK1 SEGMENT PARA STACK
DW 120H DUP(0)
STACK1 ENDS
COSEG SEGMENT
ASSUME CS:COSEG,DS:DATA,SS:STACK1
START: MOV AX,DATA
MOV DS,AX
XOR AX,AX
XOR BX,BX
XOR CX,CX
XOR DX,DX
LEA SI,DA_WORD
MOV CL,CUNT1
LOP: TEST WORD PTR DA_WORD[SI],0FFFFH
JE ZERO
TEST WORD PTR [SI],8000H
JE PLUS
INC DL;負(fù)數(shù)的個(gè)數(shù)
JMP NEXT
PLUS: INC DH ;正數(shù)個(gè)數(shù)
JMP NEXT
ZERO: INC CH ;零的個(gè)數(shù)
NEXT: INC SI
INC SI
DEC CL
DEC CL
JNE LOP
MOV CUNT2,DH ;存結(jié)果
MOV CUNT3,DL
MOV CUNT4,CH
MOV DX,OFFSET STRING1;顯示
MOV AH,09H
INT 21H
MOV CL,CUNT2
ADD CL,BASE
MOV DL,CL
MOV AH,02H
INT 21H
MOV DX,OFFSET STRING2
MOV AH,09H
INT 21H
MOV CL,CUNT4
ADD CL,BASE
MOV DL,CL
MOV AH,02H
INT 21H
MOV DX,OFFSET STRING3
MOV AH,09H
INT 21H
MOV CL,CUNT3
ADD CL,BASE
MOV DL,CL
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
COSEG ENDS
END START
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -