下面一段程序:
JB Fg_Set2,L_KDNum10
JB Fg_UserSet2,L_KDNum11
SJMP L_KDNum1
L_KDNum10: MOV A,RB_KeyNumber
XRL A,@R1
JZ L_KDNum20
SETB Fg_SetErro1
L_KDNum20: INC R1
SJMP L_KDNum1
L_KDNum11: MOV A,RB_KeyNumber
XRL A,@R1
JZ L_KDNum21
SETB Fg_SetErro2
L_KDNum21: INC R1
L_KDNum1: JB Fg_Set1,L_KDNum30
JB Fg_UserSet1,L_KDNum30
SJMP L_KDNum3
L_KDNum30: MOV @R1,RB_KeyNumber
INC R1
L_KDNum3: MOV RB_KeyTemp8,RB_KeyTemp7
MOV RB_KeyTemp7,RB_KeyTemp6
MOV RB_KeyTemp6,RB_KeyTemp5
MOV RB_KeyTemp5,RB_KeyTemp4
MOV RB_KeyTemp4,RB_KeyTemp3
MOV RB_KeyTemp3,RB_KeyTemp2
MOV RB_KeyTemp2,RB_KeyTemp1
MOV RB_KeyTemp1,RB_KeyNumber
INC RB_NumKeyCount
MOV A,RB_KeyTemp8
SWAP A
ORL A,RB_KeyTemp7
MOV RB_Temp4,A
MOV A,RB_KeyTemp6
SWAP A
ORL A,RB_KeyTemp5
MOV RB_Temp3,A
MOV A,RB_KeyTemp4
SWAP A
ORL A,RB_KeyTemp3
MOV RB_Temp2,A
MOV A,RB_KeyTemp2
SWAP A
ORL A,RB_KeyTemp1
MOV RB_Temp1,A
主要作用就是检测设置密码时两次输入是否一致,我在后面的程序中有用到Fg_SetErro2、Fg_SetErro1进行判断是否出错,可是验证时即使是前后输入一致的情况下也会给错误提示,已经验证是这两个标志位的问题(不进行比较判断则程序正常),但是又是必须进行判断的,我实在找不出有什么问题,也不知道如何修改,卡在这两天了,不知如何下手,请高手指点啊~~~