如下:РPAUSE: CALL DIS ;调用显示子程序Р MOV DX,MY8255_C ;C口低4位为输入Р IN AL,DX ;读入C口的最低位的状态Р TEST AL,01H ;0000 0001BР JNZ PAUSE ;最低位为1暂停倒计时РRESET1: MOV DX,MY8255_C ;C口低4位为输入Р IN AL,DXР TEST AL,02H ;0000 0010BР JNZ RESET2 ;第2位置1后执行RESET2Р DEC TIME ;减1倒计时Р MOV CL,TIME Р CMP CL,0FFH Р;当从初始值减到0后继续减1则值为0FFH,说明计数结束Р JNZ DISPY ;倒计时未到0,继续倒计时Р JMP OUTPUT1 ;跳到流水灯点亮Р;重新开始倒计时РRESET2: JMP SHURUРLED灯点亮程序模块Р当程序运行至倒计时结束的语句时启动点亮LED灯程序。A口连接LED显示单元的D15~D8,通过A口送入的数据控制LED灯的点亮情况。Р程序代码如下:РOUTPUT1: PUSH CX ;点亮流水灯,流水灯0灭1亮Р MOV CX,7 ;循环计数初值Р MOV LA,80H ;流水灯从左往右依次点亮РP4: MOV AL,LAР MOV DX,MY8255_AР OUT DX,AL ;通过A口输出控制LED点亮Р CALL DALLYР ROR AL,1 ;不进位的循环右移Р MOV LA,ALР LOOP P4Р MOV CX,8Р MOV LB,01H ;流水灯从右往左依次点亮РP5: MOV AL,LBР MOV DX,MY8255_AР OUT DX,ALР CALL DALLYР ROL AL,1 ;不进位的循环左移Р MOV LB,ALР LOOP P5Р JMP prompt ;流水灯显示结束跳转到prompt