您的位置:首页 > 其它

正负数、0,个数的统计

2016-01-25 11:30 363 查看
8051单片机汇编程序请教。悬赏分:30
设有40个有符号数,连续存放在400H为首地址的存储单元,试编程统计其中零,正数和负数的个数分别保存在R2,R3,R4中。
;==========================================
最佳答案:
程序如下:
    ORG  0H
    MOV  A,  #00H
    MOV  R2, A   
    MOV  R3, A
    MOV  R4, A
    MOV  R6, A
    MOV  R5, #40
    MOV  DPTR, #TABLE
LOOP:
    CLR  A
    MOVC A, @A+DPTR
    JNZ  CONT_P
    INC  R2
    SJMP NEXT
CONT_P:
    JB   ACC.7, CONT_N
    INC  R3
    SJMP NEXT
CONT_N:
    INC  R4
NEXT:
    INC  DPTR
    DJNZ R5, LOOP
    MOV  P0, R4
    SJMP $
    ORG  400H
TABLE:
    DB   01H, 15H, 22H,0FFH, 00H, 02H, 09H,0F9H, 00H, 00H
    DB   01H, 15H, 22H,0FFH, 00H, 02H, 09H,0F9H, 00H, 00H
    DB   01H, 15H, 22H,0FFH, 00H, 02H, 09H,0F9H, 00H, 00H
    DB   02H, 05H, 00H,0FFH, 26H, 34H, 00H, 00H, 00H, 00H
END
;==========================================
;数据个数与程序执行结果
    ;          实际个数 保存单元 统计个数
    ;零个数      14        R2         0EH
    ;正数个数    19        R3         13H
    ;负数个数:    7        R4         07H
;==========================================
回答者: 做而论道     回答时间:2009-12-06 20:26
提问者对于答案的评价:非常感谢
原题网址:http://zhidao.baidu.com/question/128531909.html
;==========================================
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: