一个汇编的移位问题,大家看一下怎么回事!
这是一个中断服务程序
JISHU: CLR EA
MOV C,25H.0
MOV P1.5,C
MOV C,2AH.3;***1***
MOV P1.4,C
CPL C
MOV 25H.0,C
SETB P1.6
CPL P1.7
START1: ACALL DY40MS
AJMP MAIN
BB1: SETB 2AH.0
AJMP BB2
MAIN: JB P1.0,BB1
CLR 2AH.0
BB2: MOV A,2AH
RL A
MOV 2AH,A
CLR P1.4
CLR P1.5
CLR P1.6
SETB EA
RETI
按说从2AH.0移位到2AH.3需要这样中断三次后才能完成;如果把***1***处改为2AH.4那么P1.4需要中断四次才获得第一次中断时2AH.0的状态. 可是无论是改为2AH.5还是2AH.2都是中断两次后就把状态送到了P1.4
请问大家,我这个程序错在哪里! 谢谢!
发表时间:2003年3月18日22:57:30