tageb.asm
来自「微芯公司的PIC子程序库及运算平台」· 汇编 代码 · 共 62 行
ASM
62 行
;********************TAGEB********************
;本程序实现标准浮点数比较大小。
;入口参数:A在ARGBH1:ARGBL1:EXP1中,B在ARGBH2:ARGBL2:EXP2中。
;出口参数:如果A>=B,则W=1,否则W=0。
;占用资源:W,STATUS,020H~02BH,一重堆栈。
IFNDEF TAGEB1
#DEFINE TAGEB1
TAGEB MOVF BARGB0,W ; test if signs opposite
XORWF AARGB0,W
MOVWF TEMP
BTFSC TEMP,MSB
GOTO TAGEB24O
BTFSC BARGB0,MSB
GOTO TAGEB24N
TAGEB24P MOVF BEXP,W ; compare positive arguments
SUBWF AEXP,W
BTFSS STATUS,C
RETLW 0x00
BTFSS STATUS,Z
RETLW 0x01
MOVF BARGB0,W
SUBWF AARGB0,W
BTFSS STATUS,C
RETLW 0x00
BTFSS STATUS,Z
RETLW 0x01
MOVF BARGB1,W
SUBWF AARGB1,W
BTFSS STATUS,C
RETLW 0x00
RETLW 0x01
TAGEB24N MOVF AEXP,W ; compare negative arguments
SUBWF BEXP,W
BTFSS STATUS,C
RETLW 0x00
BTFSS STATUS,Z
RETLW 0x01
MOVF AARGB0,W
SUBWF BARGB0,W
BTFSS STATUS,C
RETLW 0x00
BTFSS STATUS,Z
RETLW 0x01
MOVF AARGB1,W
SUBWF BARGB1,W
BTFSS STATUS,C
RETLW 0x00
RETLW 0x01
TAGEB24O BTFSS AARGB0,MSB
RETLW 0x01
RETLW 0x00
ENDIF
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?