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

📄 fd.asm

📁 一些基本的浮点数运算实现,可以方面地在ASM环境下调用这些子程序,简化编程
💻 ASM
字号:
将要处理的数据从外部存储器送到第一工作区,1FH为数符(正/负,R2为阶码,R3R4为数值)
MVDP0:MOVX  A,@DPTR
      MOV   C,ACC.7
      MOV   1FH,C
      MOV   C,ACC,6
      MOV   ACC.7,C
      MOV   R2,A
      INC   DPTR
      MOVX  A,@DPTR
      MOV   R3,A
      INC   DPTR
      MOVX  A,@DPTR
      MOV   R4,A
      DEC   DPTR
      DEC   DPTR
      RET

将要处理的数据从外部存储器送到第二工作区,1EH为数符(正/负,R5为阶码,R6R7为数值)
MVDP1:MOVX  A,@DPTR
      MOV   C,ACC.7
      MOV   1EH,C
      MOV   C,ACC,6
      MOV   ACC.7,C
      MOV   R5,A
      INC   DPTR
      MOVX  A,@DPTR
      MOV   R6,A
      INC   DPTR
      MOVX  A,@DPTR
      MOV   R7,A
      DEC   DPTR
      DEC   DPTR
      RET

将第一工作区的数据送到指定的外部存储器
RMVDP0:MOV   A,R2
       MOVX  @DPTR,A
       INC   DPTR
       MOV   A,R3
       MOVX  @DPTR,A
       INC   DPTR
       MOV   A,R4
       MOVX  @DPTR,A
       DEC   DPTR
       DEC   DPTR
       RET


将第二工作区的数据送到指定的外部存储器
RMVDP0:MOV   A,R5
       MOVX  @DPTR,A
       INC   DPTR
       MOV   A,R6
       MOVX  @DPTR,A
       INC   DPTR
       MOV   A,R7
       MOVX  @DPTR,A
       DEC   DPTR
       DEC   DPTR
       RET

比较R2R3R4与R5R6R7的大小,F0=1 时,第一工作区的数据小于第二工作区的数据
FCMP:MOV   A,R2
     MOV   C,ACC.6
     MOV   ACC.7,C
     MOV   B,A
     MOV   A,R5
     MOV   C,ACC.6
     MOV   ACC.7,C
     CLR   C
     SUBB  A,B
     JZ    CMP2
     MOV   F0,C
     RET
CMP2:MOV   A,R4
     CLR   C
     SUBB  A,R7
     MOV   B,A
     MOV   A,R3
     CLR   C
     SUBB  A,R6
     ORL   A,#00H
     JZ    CMP3
     MOV   F0,C
CMP3:MOV   A,B
     MOV   F0,C
     RET

将第一工作区的数据送到第二工作区
RTR:MOV   A,R2
    MOV   R5,A
    MOV   A,R3
    MOV   R6,A
    MOV   A,R4
    MOV   R7,A
    RET
      

⌨️ 快捷键说明

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