• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

51单片机汇编问题

执念 2015-03-19 浏览量:1424
编程求出内部RAM30H单元中的数据中的“0”的个数,并将结果存入31H 单元
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 真是绞尽脑汁

    亲测可用

       ORG  0000H
              MOV 31H,30H
              MOV R1,#00H
              MOV R2,#08H 
              SJMP LOOP
    JJ:       CJNE R2,#0ffH,LOOP
              SJMP EEND        
    LOOP:     CLR A
              MOV A,31H
              DEC R2
              RL A
              MOV 31H,A
              ANL A,#01H  ;与
              CJNE A,#01H,ADDNUM ;判断与后的结果
              SJMP JJ
    ADDNUM:   INC R1     ;累加
              CJNE R2,#00H,JJ
    EEND:     MOV 31H,R1      
      END

    • 发布于 2015-03-19
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:12
  • 什么类型单片机,用C帮你行吗?
    • 发布于2015-03-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 我靠,我说咋没回复了呢!51,汇编!

    51我用C帮你处理可以吗?

    • 发布于2015-03-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 汇编不会。。。51也不会。。。

    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • MOV  R2,#8;需要移位8次
    MOV  R1,#0;R1为计数器
    MOV  A,30H;取数

    AGAIN:RLC A;最高位移入Cy
          JNC NEXT
          DJNZ R2,AGAIN
    NEXT: INC R1;Cy=0,则计数器加1
          MOV 31H,R1;存结果

    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 一般通用的单片机,STC89C51,STC12C5A60S2
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 昨天晚上没在,,,C可以解决这个问题?
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 好吧,还是很欢迎顶贴的
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 好像不行,不过还是谢谢啦!
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 嗯,我试过了,可以实现,十分感谢!
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 指针。编译和仿真程序。

    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 我发布的那个51开发板里面也有指针操作地址。一个是对外部地址的操作,另一个程序跳转。指针对地址操作很灵活的。
    • 发布于2015-03-20
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

51单片机汇编问题