DATA SEGMENT
BUF DB 45,50,-34,40,4,15,29,-1,-2,-59
CN EQU $-BUF
A DB ?
B DB ? ;是DB
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START:
MOV AX,DATA
MOV DS,AX
;-------------
;BX用来作数组下标(或指针)
;CX作循环控制
;A、B作计数使用
;-------------
MOV BX,0
MOV CX,CN
MOV A,0
MOV B,0
S0:
CMP BUF[BX],0
JZ NEXT ;等于0则不计数,测试下一个
JG GREAT ;有符号数比较,大于0则A加1
INC B ;否则B加1
JMP NEXT
GREAT:
INC A
NEXT:
INC BX ;修改下标(指针),使共指到下一个数
LOOP S0
HLT
CODE ENDS
END START
B D8