📄 ascth.asm
字号:
;********************ASCTH********************
;本程序实现ASCII码转化为一位十六进制数。
;入口参数:原ASCII码在SOU中。
;出口参数:结果在SOU中,若原ASCII码超出范围则STATUS:C为1。
;占用资源:W,STATUS,024H,一重堆栈。
IFNDEF ASCTH1
#DEFINE ASCTH1
ASCTH MOVLW 30H
SUBWF SOU,W
BTFSS STATUS,C
GOTO OVF ;SOU<30H则转
MOVLW 47H
SUBWF SOU,W
BTFSC STATUS,C
GOTO OVF ;SOU>46H则转
MOVLW 3AH
SUBWF SOU,W
BTFSS STATUS,C
GOTO LOW10_4 ;SOU<=39H则转
MOVLW 41H
SUBWF SOU,W
BTFSS STATUS,C
GOTO OVF ;SOU<41H则转
MOVLW 37H
SUBWF SOU,F
BCF STATUS,C ;未溢出
RETURN
LOW10_4 MOVLW 30H
SUBWF SOU,F
BCF STATUS,C ;未溢出
RETURN
OVF BSF STATUS,C ;溢出
RETURN
ENDIF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -