导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→关于51汇编的BCD乘法运算?[poppush]

 *第25542篇: 关于51汇编的BCD乘法运算?

  
楼 主:poppush 2004年9月9日15:17
 关于51汇编的BCD乘法运算?
5位bcd  (00000-99999) 乘 4位bcd (0.000-1.999) 
用51汇编   
各位有什么好的思路啊 ? 
  
2楼:金鹏友 2004年9月10日05:54
 你想自己重新构思,还是想应用,如果是应用
你想自己重新构思,还是想应用,如果是应用好象有专门的子程序可以下载。
  
3楼:poppush 2004年9月10日08:38
 请问那里有这个子程序下载?   谢谢
  
4楼:poppush 2004年9月11日11:59
 自己搞定   哈哈  附源码 !!!!!!!!!!!!!
;乘法运算
 YUNSUAN:
        MOV A,4AH
        ADD A,4BH
        ADD A,4CH
        JNZ YUNS1
        MOV 50H,40H     ;1.000
        MOV 51H,41H
        MOV 52H,42H
        MOV 53H,43H
        MOV 54H,44H
        AJMP YUNSEX
   YUNS1:;MOV 35H,#00H
         MOV A,40H      ;4AH 40H
         MOV B,4AH
         CALL CFF
         CALL HBCD

         MOV A,41H      ;4AH 41H
         MOV B,4AH
         CALL CFF
           CALL DIEJIA
         MOV A,40H      ;4BH 40H
         MOV B,4BH
         CALL CFF
           CALL DIEJIA
         CALL HBCD
         MOV 3AH,37H

         MOV A,4AH      ;;
         MOV B,42H
         CALL CFF
          CALL DIEJIA
         MOV A,4BH     ;;;
         MOV B,41H
         CALL CFF
          CALL DIEJIA
         MOV A,4CH     ;;;
         MOV B,40H
         CALL CFF
          CALL DIEJIA
         CALL HBCD
          MOV A,36H
          ADD A,3AH
          MOV 36H,A
          MOV 3AH,37H

         MOV A,4AH      ;;
         MOV B,43H
         CALL CFF
          CALL DIEJIA
         MOV A,4BH     ;;;
         MOV B,42H
         CALL CFF
          CALL DIEJIA
         MOV A,4CH     ;;;
         MOV B,41H
         CALL CFF
          CALL DIEJIA
         CALL HBCD
          MOV A,36H
          ADD A,3AH
          MOV 36H,A
          MOV 3AH,37H
          MOV 3BH,35H

          MOV A,4AH      ;; 个位
         MOV B,44H
         CALL CFF
          CALL DIEJIA
         MOV A,4BH     ;;;
         MOV B,43H
         CALL CFF
          CALL DIEJIA
         MOV A,4CH     ;;;
         MOV B,42H
         CALL CFF
          CALL DIEJIA
         CALL HBCD
          MOV A,36H
          ADD A,3AH
          MOV 36H,A
          MOV 3AH,37H
          MOV 3CH,35H

          MOV A,4BH      ;; 十位
         MOV B,44H
         CALL CFF
          CALL DIEJIA
         MOV A,4CH     ;;;
         MOV B,43H
         CALL CFF
          CALL DIEJIA
         CALL HBCD
          MOV A,36H
          ADD A,3AH
          MOV 36H,A
          MOV 3DH,35H

          MOV A,4CH       ;百位
          MOV B,44H
          CALL CFF
          CALL DIEJIA
          CALL HBCD
          MOV 3EH,35H
          MOV 3FH,36H

          MOV R7,4DH
          CJNE R7,#00H,YUNS2
     ASAS:MOV 50H,3BH
          MOV 51H,3CH
          MOV 52H,3DH
          MOV 53H,3EH
          MOV 54H,3FH
         AJMP YUNSEX
      YUNS2:MOV R7,#00H
            MOV A,3BH
            ADD A,40H
            CALL FENLISW
            MOV 3BH,B
            MOV A,3CH
            ADD A,41H
            CALL FENLISW
            MOV 3CH,B
            MOV A,3DH
            ADD A,42H
            CALL FENLISW
            MOV 3DH,B
            MOV A,3EH
            ADD A,43H
            CALL FENLISW
            MOV 3EH,B
            MOV A,3FH
            ADD A,44H
            CALL FENLISW
            MOV 3FH,B
            MOV A,R7
            JZ ASAS
            CALL QINGLING
     YUNSEX:RET

  FENLISW:ADD A,R7      ;分离十位
          MOV B,#10
          DIV AB
          MOV R7,A
          RET

  DIEJIA:MOV A,36H
          ADD A,R7
          MOV 36H,A
         RET

  CFF:   JZ CFFEX              ;输入A B 乘法 输出在R7
         MOV R7,B
         CJNE R7,#00H,CFFEX3
          JMP CFFEX
     CFFEX3:MUL AB
            MOV R7,A
          AJMP CFFEX2
     CFFEX:MOV R7,#00H
    CFFEX2:RET

 HBCD:    MOV R7,36H
          CJNE R7,#00H,BCDEX3   ;gao 37H 36h  di  35h   shuru r7
          JMP BCDEX
     BCDEX3:
           MOV A,R7
           MOV B,#100
           DIV AB
           MOV 37H,A
           MOV A,#10 ;分离十位
           XCH A,B
           DIV AB    ;十位在A 余数在B
           MOV 36H,A
           MOV 35H,B
          AJMP BCDEX2
     BCDEX:MOV 35H,#00H
           MOV 36H,#00H
    BCDEX2:RET


>>>>>>对该主题发表你的看法

本主题贴数4,分页: [第1页]


[上一篇主题]:键盘设计编程

[下一篇主题]:求vc开发