⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xwfab.asm

📁 这是一个本人编写的程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
                 MOV 46H,#0F5H
                 MOV 47H,#05H
                 MOV A,SPI_TMP
                 MOV  SPI_TMP,SPI_TMP+2
                 MOV  SPI_TMP+2,A
		 MOV R0,#44H
		 MOV R2,#04H
		 MOV R1,#SPI_TMP
		 MOV R3,#03H
		 LCALL MMUL
                 MOV R0,#44H
                 MOV R2,#07H
                 MOV 40H,#00H
                 MOV 41H,#00H
                 MOV 42H,#80H
                 MOV R1,#40H
                 MOV R3,#03H
                 LCALL MDIV
                 MOV R0,#44H
                 MOV R7,#04H
                 MOV R1,#SPI_TMPGS
                 LCALL NBTD
                 MOV    SPI_TMPGS,3FH
                 LJMP      STOR_EXCGS
;---------------
     SPICHGS_FAI:MOV A,SPI_TMP
                 JNB ACC.7,GS_FA_Z
                 MOV  3FH,#1
                 CLR  C
                 MOV  A,SPI_TMP+2
                 SUBB  A,#1
                 CPL   A
                 MOV  SPI_TMP+2,A
                 MOV  A,SPI_TMP+1
                 SUBB A,#0
                 CPL   A
                 MOV  SPI_TMP+1,A
                 MOV  A,SPI_TMP
                 SUBB A,#0
                 CPL   A
                 ANL   A,#7FH
                 MOV  SPI_TMP,A
                 SJMP  GS_FAI_Z
         GS_FA_Z:MOV  3FH,#0
        GS_FAI_Z:MOV 44H,#00H
                 MOV 45H,#8DH
                 MOV 46H,#38H
                 MOV 47H,#0CH
                 MOV 48H,#01H
                 MOV A,SPI_TMP
                 MOV  SPI_TMP,SPI_TMP+2
                 MOV  SPI_TMP+2,A
		 MOV R0,#44H
		 MOV R2,#05H
		 MOV R1,#SPI_TMP
		 MOV R3,#03H
		 LCALL MMUL
                 MOV R0,#44H
                 MOV R2,#07H
                 MOV 40H,#00H
                 MOV 41H,#00H
                 MOV 42H,#0A0H
                 MOV 43H,#13H
                 MOV R1,#40H
                 MOV R3,#04H
                 LCALL MDIV
                 MOV R0,#44H;
                 MOV R7,#04H
                 MOV R1,#SPI_TMPGS+1
                 LCALL NBTD
                 MOV    SPI_TMPGS,3FH
                 LJMP      STOR_EXCGS
        ;---------------
     SPICHGS_f:  MOV A,SPI_TMP
                 JNB ACC.7,GS_f_Z
                 MOV  3FH,#1
                 CLR  C
                 MOV  A,SPI_TMP+2
                 SUBB  A,#1
                 CPL   A
                 MOV  SPI_TMP+2,A
                 MOV  A,SPI_TMP+1
                 SUBB A,#0
                 CPL   A
                 MOV  SPI_TMP+1,A
                 MOV  A,SPI_TMP
                 SUBB A,#0
                 CPL   A
                 ANL   A,#7FH
                 MOV  SPI_TMP,A
                 SJMP  GS_fF_Z
         GS_f_Z:MOV  3FH,#0
        GS_fF_Z: MOV 44H,#10H
                 MOV 45H,#27H
                 MOV A,SPI_TMP
                 MOV  SPI_TMP,SPI_TMP+2
                 MOV  SPI_TMP+2,A
		 MOV R0,#44H
		 MOV R2,#02H
		 MOV R1,#SPI_TMP
		 MOV R3,#03H
		 LCALL MMUL
                 MOV R0,#44H
                 MOV R2,#04H
                 MOV 40H,#00H
                 MOV 41H,#20H
                 MOV R1,#40H
                 MOV R3,#02H
                 LCALL MDIV
                 MOV R0,#44H
                 MOV R7,#03H
                 MOV R1,#SPI_TMPGS+1
                 LCALL NBTD
                 MOV    SPI_TMPGS,3FH
                 LJMP      STOR_EXCGS
;---------------
     SPICHGS_Neng:MOV A,SPI_TMP
                 JNB ACC.7,GS_Nen_Z
                 MOV  3FH,#1
                 CLR  C
                 MOV  A,SPI_TMP+2
                 SUBB  A,#1
                 CPL   A
                 MOV  SPI_TMP+2,A
                 MOV  A,SPI_TMP+1
                 SUBB A,#0
                 CPL   A
                 MOV  SPI_TMP+1,A
                 MOV  A,SPI_TMP
                 SUBB A,#0
                 CPL   A
                 ANL   A,#7FH
                 MOV  SPI_TMP,A
                 SJMP  GS_Neng_Z
         GS_Nen_Z:MOV  3FH,#0
        GS_Neng_Z:MOV 44H,#64H
                 MOV A,SPI_TMP
                 MOV  SPI_TMP,SPI_TMP+2
                 MOV  SPI_TMP+2,A
		 MOV R0,#44H
		 MOV R2,#01H
		 MOV R1,#SPI_TMP
		 MOV R3,#03H
		 LCALL MMUL
                 MOV R0,#44H
                 MOV R2,#04H
                 MOV 40H,#80H
                 MOV 41H,#0CH
                 MOV R1,#40H
                 MOV R3,#02H
                 LCALL MDIV
                 MOV R0,#44H
                 MOV R7,#03H
                 MOV R1,#SPI_TMPGS
                 LCALL NBTD
                 MOV    SPI_TMPGS,3FH
                 LJMP      STOR_EXCGS
;======================================
     STOR_EXCGS:MOV A,SPI_ARRAY
                MOV B,#quantity1
                DIV AB
                ;PUSH  ACC;0\1\2
                PUSH  B;0~27
         STORGS0:MOV B,#03H
                MUL AB
                MOV DPTR,#STORGS_L
                JMP @A+DPTR
        STORGS_L:LJMP       STOR_EXCGS_UI
                 LJMP       STOR_EXCGS_UU
                 LJMP       STOR_EXCGS_II
;---------------
  STOR_EXCGS_UI:POP    ACC;0~27
                MOV    B,#5
                MUL    AB
                MOV    R5,A
                MOV     DPTR,#ROOMUI_PC
                MOV    A,DPL
                ADD    A,R5
                MOV    DPL,A
                MOV    A,DPH
                ADDC   A,#0
                MOV    DPH,A
                MOV    R0,#SPI_TMPGS
                MOV    R2,#5
                LCALL  TRAX
                RET
;---------------
  STOR_EXCGS_UU:POP    ACC;0~27
                MOV    B,#5
                MUL    AB
                MOV    R5,A
                MOV    DPTR,#ROOMUU_PC
                MOV    A,DPL
                ADD    A,R5
                MOV    DPL,A
                MOV    A,DPH
                ADDC   A,#0
                MOV    DPH,A
                MOV    R0,#SPI_TMPGS
                MOV    R2,#5
                LCALL  TRAX
                RET
;---------------
  STOR_EXCGS_II:POP    ACC;0~27
                MOV    B,#5
                MUL    AB
                MOV    R5,A
                MOV    DPTR,#ROOMII_PC
                MOV    A,DPL
                ADD    A,R5
                MOV    DPL,A
                MOV    A,DPH
                ADDC   A,#0
                MOV    DPH,A
                MOV    R0,#SPI_TMPGS
                MOV    R2,#5
                LCALL  TRAX
                RET
;***************************************
   CALCULATEFAI:MOV   17H,#0
  CALCULATEFAIT:MOV   DPTR,#CAL_TABFAI
                MOV   A,17H
                MOVC  A,@A+DPTR
                MOV   B,#36
                DIV   AB
                MOV   16H,A
                MOV   A,B
                CLR   C
                SUBB   A,#19
                MOV   15H,A
                LCALL EXCHANGFAI
                INC   17H
                MOV   A,17H
                CJNE  A,#10,CALCULATEFAIT
                RET

    EXCHANGFAI:MOV   DPTR,#EXCHANGFAI_L
               MOV   A,16H
               MOV   B,#3
               MUL   AB
               JMP   @A+DPTR
    EXCHANGFAI_L:LJMP  EXCHANGFAIUI;ui
                 LJMP  EXCHANGFAINUI0;uu
                 LJMP  EXCHANGFAINUI1;ii
   ;------------
   EXCHANGFAIUI:  LCALL READ_Ddatas
                  MOV   DPTR,#ROOMUI_PC
                  MOV   A,16H
                  MOV   B,#8CH;28*5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOVX  A,@DPTR
                  MOV       B,#3
                  MUL       AB
                  MOV       DPTR,#EXCHFAI_P
                  JMP       @A+DPTR
        EXCHFAI_P:LJMP      EXCHFAIPU
                  LJMP      EXCHFAIPD

       EXCHFAIPU: MOV   DPTR,#ROOMUI_PC
                  MOV   A,16H
                  MOV   B,#8CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  ADD   A,#13H
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOVX  A,@DPTR
                  MOV       B,#3
                  MUL       AB
                  MOV       DPTR,#EXCHFAI_PUQ
                  JMP       @A+DPTR
      EXCHFAI_PUQ:LJMP      EXCHFAIPUQU;1;3
                  LJMP      EXCHFAIPUQD;4;2

        EXCHFAIPD: MOV   DPTR,#ROOMUI_PC
                  MOV   A,16H
                  MOV   B,#8CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  ADD   A,#13H
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOVX  A,@DPTR
                  MOV       B,#3
                  MUL       AB
                  MOV       DPTR,#EXCHFAI_PDQ
                  JMP       @A+DPTR
      EXCHFAI_PDQ:LJMP      EXCHFAIPDQU;2;4
                  LJMP      EXCHFAIPDQD;3;1

      EXCHFAIPDQD:MOV   DPTR,#ROOMUI_PC;1
                  MOV   A,16H
                  MOV   B,#8CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  ADD   A,#19
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  ;INC   DPTR
                  INC   DPTR
                  MOV   R2,#3
                  MOV   R0,#35H
                  LCALL TXAR
                  LCALL CALCUDDATA
                  MOV   R0,#35H
                  MOV   R2,#3
                  MOV   DPTR,#ROOMFAI_PC
                  MOV   A,16H
                  MOV   B,#0CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  MOV   B,#3
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,16H
                  XRL   A,#2
                  JNZ   FAIPDQD0
                  DEC   DPL
                  DEC   DPL
                  DEC   DPL
         FAIPDQD0:LCALL TRAX
                  RET

      EXCHFAIPUQD:MOV   DPTR,#ROOMUI_PC;2
                  MOV   A,16H
                  MOV   B,#8CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  ADD   A,#13H
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  INC   DPTR
                  MOV   R2,#3
                  MOV   R0,#30H
                  LCALL TXAR
                  MOV   30H,#0
                  MOV   35H,#01H
                  MOV   36H,#80H
                  MOV   37H,#00H
                  MOV   R0,#30H
                  MOV   R1,#35H
                  MOV   R2,#3
                  LCALL BCDS
                  LCALL CALCUDDATA
                  MOV   R0,#35H
                  MOV   R2,#3
                  MOV   DPTR,#ROOMFAI_PC
                  MOV   A,16H
                  MOV   B,#0CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  MOV   B,#3
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,16H
                  XRL   A,#2
                  JNZ   FAIPUQD0
                  DEC   DPL
                  DEC   DPL
                  DEC   DPL
         FAIPUQD0:LCALL TRAX
                  RET

      EXCHFAIPUQU:MOV   DPTR,#ROOMUI_PC;3
                  MOV   A,16H
                  MOV   B,#8CH
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  MOV   A,15H
                  ADD   A,#13H
                  MOV   B,#5
                  MUL   AB
                  ADD   A,DPL
                  MOV   DPL,A
                  MOV   A,B
                  ADDC  A,DPH
                  MOV   DPH,A
                  INC   DPTR

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -