如何用汇编语言判断一组数据正负并统计其正数和负数的总个数,再放到分别指定位置,求大神 10
1个回答
展开全部
COUNT_NUM_0 DATA 30H ;存放0的个数
COUNT_NUM_P DATA 31H ;存放正数个数
COUNT_NUM_N DATA 32H ;存放负数个数
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN:
MOV A,#0
MOV 31H,A
MOV 32H,A
MOV 33H,A
MOV R7,#30;这组数据总个数,假设有30个
MOV R0,#00
MOV DPTR,#TABLE;假设数据存放在rom中
NEXT_ONE:
MOV A,R0
MOVC A,@A+DPTR
JZ ACC_IS_0
JB ACC.7,ACC_IS_N;判断是否为负数,为负数就跳转
ACC_IS_P:;为正数
INC COUNT_NUM_P
AJMP NEX
ACC_IS_N:;为负数
INC COUNT_NUM_N
AJMP NEXT
ACC_IS_0:;为0
INC COUNT_NUM_0
;AJMP NEXT
NEXT:;
INC R0
DJNZ R7,NEXT_ONE
AJMP $
ORG 0500H
TABLE:
DB 55,60,70,80,90
DB ff,61,70,81,98
DB f2,62,00,07,98
DB 58,63,70,87,98
DB 80,7f,00,82,93
DB 54,69,79,89,98
END
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询