【正确答案】编程如下:
ONE EQU 30H
TWO EQU 31H
THREE EQU 32H
STOR:MOV R0,#20H ;置数据区首址
SLOP:MOV A,@R0 ;读数据
JZ LP1 ;数据=0,转
JB Acc.7,LP2 ;数据<0,转
INC ONE ;数据>0,ONE单元加1
LP0:INC R0 ;指向下一数据
DJNZ 1FH,SLOP ;判统计结束否?未结束循环
RET ;统计结束,返回
LP1:INC TWO ;数据=0,TWO单元加1
SJMP LP0 ;返回循环体
LP2:INC THREE ;数据<0,THREE单元加1
SJMP LP0 ;返回循环体
【答案解析】