📄 processor.asm
字号:
ORG 0000H
AJMP PROCESSOR
ORG 0030H
;*****************************************************************
;数据处理子程序
PROCESSOR: MOV A,50H ;50H存放地址标志
SUBB A,#254 ;比较地址标志Ra>=254?
JC IDDATA ;否(小于)则跳转(CY=1有借位,则小于254)
MOV A,R3 ;R3(Ri)命令标志
CJNE A,#01H,PROCE_1 ;R3=01?不等则跳转
LCALL REGISTER ;调报到子程序
AJMP PROCE_END ;返回
PROCE_1: CJNE A,#02H,PROCE_2 ;R3=02?不等则跳转
LCALL FLOOR ;调发言子程序
AJMP PROCE_END ;返回
PROCE_2: CJNE A,#03H,PROCE_ERR ;R3=03?不等则跳转
LCALL VOTER ;调表决子程序
AJMP PROCE_END ;返回
IDDATA: SUBB A,R2 ;比较是否为本机地址(R2存放本机地址)
JNZ PROCE_ERR ;不是则跳转
SETB P2.2
AJMP PROCE_END ;返回
IDDATA_1: CJNE A,#08,PROCE_ERR ;R3=08?不等则跳转
SETB P1.5 ;允许发言
CLR P2.1
CLR P2.2
AJMP PROCE_END ;返回
PROCE_ERR: MOV P2,#00H ;出错处理(LED灯全亮)
PROCE_END: RET
;***********************************************************************
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -