51单片机编程遇到的问题
从片内RAM30H单元开始存有一组带符号其个数已存放在2FH单元中。编写程序,统计其中大于0,等于0和小于0的数的个数,并将统计结果分别放入30H.40H.50H三个单元...
从片内RAM30H单元开始存有一组带符号其个数已存放在2FH单元中。编写程序,统计其中大于0,等于0和小于0的数的个数,并将统计结果分别放入30H.40H.50H三个单元中。 谢谢
展开
2个回答
展开全部
;
MOV R3, #0
MOV R4, #0
MOV R5, #0
MOV R0, #30H
MOV R2, 2FH
LOOP:
MOV A, @R0
JNZ ZF
INC R3 ;0的个数
SJMP NEXT
ZF:
JB ACC.7, FU
INC R4 ;正数的个数
SJMP NEXT
FU:
INC R5 ;负数的个数
NEXT:
INC R0
DJNZ R2, LOOP
MOV 30H, R3
MOV 40H, R4
MOV 50H, R5
SJMP $
END
MOV R3, #0
MOV R4, #0
MOV R5, #0
MOV R0, #30H
MOV R2, 2FH
LOOP:
MOV A, @R0
JNZ ZF
INC R3 ;0的个数
SJMP NEXT
ZF:
JB ACC.7, FU
INC R4 ;正数的个数
SJMP NEXT
FU:
INC R5 ;负数的个数
NEXT:
INC R0
DJNZ R2, LOOP
MOV 30H, R3
MOV 40H, R4
MOV 50H, R5
SJMP $
END
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询