📄 tmp.lst
字号:
843 06E5 51 WEST_3_A2: PUSH CX
844 06E6 BF 0000s MOV DI,SEG DAT2
845 06E9 8E C7 MOV ES,DI
846 06EB BD 0032r MOV BP,OFFSET DAT2
847 06EE B0 00 MOV AL,00H
848 06F0 8A 1E 00F1r MOV BL,WHITE
849 06F4 B4 13 MOV AH,13H
850 06F6 B9 0001 MOV CX,01H
851 06F9 CD 10 INT 10H
852 06FB FE 06 00F9r INC LEFT_COL
853 06FF 59 POP CX
854 0700 E2 00 LOOP R_W3
Turbo Assembler Version 4.1 06/01/11 16:25:37 Page 16
F:\工程文件\Fasm\交通灯\tmp.ASM
855 0702 5B R_W3: POP BX
856 0703 88 1E 00F9r MOV LEFT_COL,BL
857 0707 5B POP BX
858 0708 88 1E 00F8r MOV LEFT_ROW ,BL
859 070C C3 RET
860 070D WEST3 ENDP
861 ;************************************* EAST3
862 070D EAST3 PROC NEAR
863 070D 8A 1E 00FAr MOV BL,RIGHT_ROW
864 0711 53 PUSH BX
865 0712 8A 1E 00FBr MOV BL,RIGHT_COL
866 0716 53 PUSH BX
867 0717 B4 02 EAST_3: MOV AH,02H
868 0719 8A 36 00FAr MOV DH,RIGHT_ROW
869 071D 8A 16 00FBr MOV DL,RIGHT_COL
870 0721 B7 00 MOV BH,00H
871 0723 CD 10 INT 10H
872 0725 83 F9 03 CMP CX,03H
873 0728 74 0A JZ EAST_3_A1
874 072A 83 F9 02 CMP CX,02H
875 072D 74 22 JZ EAST_3_A3
876 072F 83 F9 01 CMP CX,01H
877 0732 74 3A JZ EAST_3_A2
878 0734 51 EAST_3_A1: PUSH CX
879 0735 BF 0000s MOV DI,SEG DAT2
880 0738 8E C7 MOV ES,DI
881 073A BD 0032r MOV BP,OFFSET DAT2
882 073D B0 00 MOV AL,00H
883 073F 8A 1E 00F1r MOV BL,WHITE
884 0743 B4 13 MOV AH,13H
885 0745 B9 0001 MOV CX,01H
886 0748 CD 10 INT 10H
887 074A FE 06 00FBr INC RIGHT_COL
888 074E 59 POP CX
889 074F E2 C6 LOOP EAST_3
890 0751 51 EAST_3_A3: PUSH CX
891 0752 BF 0000s MOV DI,SEG DAT2
892 0755 8E C7 MOV ES,DI
893 0757 BD 0032r MOV BP,OFFSET DAT2
894 075A B0 00 MOV AL,00H
895 075C 8A 1E 00F3r MOV BL,YELLOW
896 0760 B4 13 MOV AH,13H
897 0762 B9 0001 MOV CX,01H
898 0765 CD 10 INT 10H
899 0767 FE 06 00FBr INC RIGHT_COL
900 076B 59 POP CX
901 076C E2 A9 LOOP EAST_3
902 076E 51 EAST_3_A2: PUSH CX
903 076F BF 0000s MOV DI,SEG DAT2
904 0772 8E C7 MOV ES,DI
905 0774 BD 0032r MOV BP,OFFSET DAT2
906 0777 B0 00 MOV AL,00H
907 0779 8A 1E 00F1r MOV BL,WHITE
908 077D B4 13 MOV AH,13H
909 077F B9 0001 MOV CX,01H
910 0782 CD 10 INT 10H
911 0784 FE 06 00FBr INC RIGHT_COL
Turbo Assembler Version 4.1 06/01/11 16:25:37 Page 17
F:\工程文件\Fasm\交通灯\tmp.ASM
912 0788 59 POP CX
913 0789 E2 00 LOOP R_E3
914 078B 5B R_E3: POP BX
915 078C 88 1E 00FBr MOV RIGHT_COL,BL
916 0790 5B POP BX
917 0791 88 1E 00FAr MOV RIGHT_ROW ,BL
918 0795 C3 RET
919 0796 EAST3 ENDP
920 0796 MOD3 ENDP
921 ;****************************************************延时子程序 及键盘控制1
922 0796 DELAY1 PROC NEAR
923 0796 50 PUSH AX
924 0797 53 PUSH BX
925 0798 51 PUSH CX
926 0799 52 PUSH DX
927 079A C6 06 00FCr 00 MAIN1: MOV INTFLAG,0
928 079F C6 06 00FDr 12 MOV COUNT ,18
929 07A4 A0 0104r MOV AL,NS
930 07A7 A2 00FEr MOV SECOND ,AL
931 07AA B4 35 MOV AH,35H ;读取中断向量
932 07AC B0 08 MOV AL,08H
933 07AE CD 21 INT 21H
934 07B0 89 1E 0101r MOV OLD_OFF,BX
935 07B4 8C 06 00FFr MOV OLD_SEG,ES
936 07B8 E4 21 IN AL,21H
937 07BA A2 0103r MOV OLD_MSK,AL
938 07BD B4 02 MOV AH,02H
939 07BF B6 06 MOV DH,06
940 07C1 B2 19 MOV DL,25
941 07C3 B7 00 MOV BH,00H
942 07C5 CD 10 INT 10H
943 07C7 FA CLI ;设置中断向量
944 07C8 1E PUSH DS
945 07C9 B4 25 MOV AH,25H
946 07CB B0 08 MOV AL,08H
947 07CD BA 0000s MOV DX,SEG INTERRUPT2
948 07D0 8E DA MOV DS,DX
949 07D2 BA 0B37r MOV DX,OFFSET INTERRUPT2
950 07D5 CD 21 INT 21H
951 07D7 1F POP DS
952 07D8 A0 0103r MOV AL,OLD_MSK
953 07DB 24 FE AND AL,11111110B
954 07DD FB STI
955 07DE B4 0B MAINLOOP1: MOV AH,0BH ;test keyboard
956 07E0 CD 21 INT 21H
957 07E2 3C 00 CMP AL,00H
958 07E4 74 56 JE CHK_INT1
959 07E6 B4 08 MOV AH,08H ;get key
960 07E8 CD 21 INT 21H
961 07EA 3C 72 CMP AL,72H ;'r'
962 07EC 74 13 JZ RESTOR1
963 07EE 3C 63 CMP AL,63H ;'c'
964 07F0 74 14 JZ CFG_NS1
965 07F2 3C 64 CMP AL,64H ;'d'
966 07F4 74 16 JZ CFG_WE1
967 07F6 3C 6E CMP AL,6EH ;'n'
968 07F8 74 17 JZ CFG_N1
Turbo Assembler Version 4.1 06/01/11 16:25:37 Page 18
F:\工程文件\Fasm\交通灯\tmp.ASM
969 07FA 3C 1B CMP AL,1BH ;'ESC'
970 07FC 75 3E JNE CHK_INT1
971 07FE EB 17 90 JMP QUIT1
972 0801 E8 0098 RESTOR1: CALL RESTORE1
973 0804 EB 94 JMP MAIN1
974 0806 E8 009C CFG_NS1: CALL CFIG_NS1
975 0809 EB 31 90 JMP CHK_INT1
976 080C E8 00D7 CFG_WE1: CALL CFIG_WE1
977 080F EB 89 JMP MAIN1
978 0811 E8 0113 CFG_N1: CALL CFIG_N1
979 0814 EB 26 90 JMP CHK_INT1
980 0817 FA QUIT1: CLI
981 0818 1E PUSH DS
982 0819 06 PUSH ES
983 081A 8C D8 MOV AX,DS
984 081C 8E C0 MOV ES,AX
985 081E B4 25 MOV AH,25H
986 0820 B0 08 MOV AL,08H
987 0822 26: 8B 16 00FFr MOV DX,ES:OLD_SEG
988 0827 8E DA MOV DS,DX
989 0829 26: 8B 16 0101r MOV DX,ES:OLD_OFF
990 082E CD 21 INT 21H
991 0830 07 POP ES
992 0831 1F POP DS
993 0832 A0 0103r MOV AL,OLD_MSK
994 0835 E6 21 OUT 21H,AL
995 0837 FB STI
996 0838 B4 4C MOV AH,4CH ;exit
997 083A CD 21 INT 21H
998 083C 80 3E 00FCr 00 CHK_INT1: CMP INTFLAG,0 ;计数18次,则减一秒
999 0841 74 9B JE MAINLOOP1
1000 0843 C6 06 00FCr 00 MOV INTFLAG,0
1001 0848 FE 0E 00FDr DEC COUNT
1002 084C 75 90 JNE MAINLOOP1
1003 084E C6 06 00FDr 12 MOV COUNT,18
1004 0853 A0 00FEr MOV AL,SECOND
1005 0856 FE C8 DEC AL
1006 0858 2F DAS
1007 0859 A2 00FEr MOV SECOND,AL
1008 085C 80 3E 00FEr 00 CMP SECOND,0 ;等于0则返回
1009 0861 77 03 JA REFRESH1
1010 0863 EB 32 90 JMP STOP1
1011 0866 B4 02 REFRESH1: MOV AH,02H ;转成ASC 并输出
1012 0868 B6 05 MOV DH,05
1013 086A B2 19 MOV DL,25
1014 086C B7 00 MOV BH,00H
1015 086E CD 10 INT 10H
1016 0870 8A 36 00FEr MOV DH,SECOND
1017 0874 8A D6 MOV DL,DH
1018 0876 80 E2 F0 AND DL,11110000B
1019 0879 B1 04 MOV CL,04
1020 087B D2 EA SHR DL,CL
1021 087D 80 CA 30 OR DL,30H
1022 0880 B4 0E MOV AH,0EH
1023 0882 8A C2 MOV AL,DL
1024 0884 CD 10 INT 10H
1025 0886 8A D6 MOV DL,DH
Turbo Assembler Version 4.1 06/01/11 16:25:37 Page 19
F:\工程文件\Fasm\交通灯\tmp.ASM
1026 0888 80 E2 0F AND DL,00001111B
1027 088B 80 CA 30 OR DL,30H
1028 088E B4 0E MOV AH,0EH
1029 0890 8A C2 MOV AL,DL
1030 0892 CD 10 INT 10H
1031 0894 E9 FF47 JMP MAINLOOP1
1032 0897 5A STOP1: POP DX
1033 0898 59 POP CX
1034 0899 5B POP BX
1035 089A 58 POP AX
1036 089B C3 RET
1037 089C DELAY1 ENDP
1038 089C RESTORE1 PROC NEAR ;复位
1039 089C B0 20 MOV AL,20H
1040 089E A2 0105r MOV WE,AL
1041 08A1 A2 0104r MOV NS,AL
1042 08A4 C3 RET
1043 08A5 RESTORE1 ENDP
1044 08A5 CFIG_NS1 PROC NEAR ;数据输入 ASC转BCD
1045 08A5 50 PUSH AX
1046 08A6 53 PUSH BX
1047 08A7 51 PUSH CX
1048 08A8 52 PUSH DX
1049 08A9 B4 02 MOV AH,02H
1050 08AB B6 11 MOV DH,17
1051 08AD B2 0A MOV DL,10
1052 08AF B7 00 MOV BH,00H
1053 08B1 CD 10 INT 10H
1054 08B3 B4 09 MOV AH,09H
1055 08B5 BA 005Fr MOV DX,OFFSET DAT5
1056 08B8 CD 21 INT 21H
1057 08BA B4 01 MOV AH,01H
1058 08BC CD 21 INT 21H
1059 08BE 2C 30 SUB AL,30H
1060 08C0 2F DAS
1061 08C1 D0 E0 D0 E0 D0 E0 D0+ SHL AL,4
1062 E0
1063 08C9 8A F8 MOV BH,AL
1064 08CB 80 E7 F0 AND BH,11110000B
1065 08CE B4 01 MOV AH,01H
1066 08D0 CD 21 INT 21H
1067 08D2 2C 30 SUB AL,30H
1068 08D4 2F DAS
1069 08D5 8A D8 MOV BL,AL
1070 08D7 80 E3 0F AND BL,00001111B
1071 08DA 02 DF ADD BL,BH
1072 08DC 27 DAA
1073 08DD 88 1E 0105r MOV WE,BL
1074 08E1 5A POP DX
1075 08E2 59 POP CX
1076 08E3 5B POP BX
1077 08E4 58 POP AX
1078 08E5 C3 RET
1079 08E6 CFIG_NS1 ENDP
1080 08E6 CFIG_WE1 PROC NEAR ;数据输入 ASC转BCD
1081 08E6 50 PUSH AX
1082 08E7 53 PUSH BX
Turbo Assembler Version 4.1 06/01/11 16:25:37 Page 20
F:\工程文件\Fasm\交通灯\tmp.ASM
1083 08E8 51 PUSH CX
1084 08E9 52 PUSH DX
1085 08EA B4 02 MOV AH,02H
1086 08EC B6 11 MOV DH,17
1087 08EE B2 0A MOV DL,10
1088 08F0 B7 00 MOV BH,00H
1089 08F2 CD 10 INT 10H
1090 08F4 B4 09 MOV AH,09H
1091 08F6 BA 005Fr MOV DX,OFFSET DAT5
1092 08F9 CD 21 INT 21H
1093 08FB B4 01 MOV AH,01H
1094 08FD CD 21 INT 21H
1095 08FF 2C 30 SUB AL,30H
1096 0901 2F DAS
1097 0902 D0 E0 D0 E0 D0 E0 D0+ SHL AL,4
1098 E0
1099 090A 8A F8 MOV BH,AL
1100 090C 80 E7 F0 AND BH,11110000B
1101 090F B4 01 MOV AH,01H
1102 0911 CD 21 INT 21H
1103 0913 2C 30 SUB AL,30H
1104 0915 2F DAS
1105 0916 8A D8 MOV BL,AL
1106 0918 80 E3 0F AND BL,00001111B
1107 091B 02 DF ADD BL,BH
1108 091D 27 DAA
1109 091E 88 1E 0104r MOV NS,BL
1110 0922 5A POP DX
1111 0923 59 POP CX
1112 0924 5B POP BX
1113 0925 58 POP AX
1114 0926 C3 RET
1115 0927 CFIG_WE1 ENDP
1116 0927 CFIG_N1 PROC NEAR
1117 0927 50 PUSH AX
1118 0928 53 PUSH BX
1119 0929 80 3E 0108r 00 CMP N3,0
1120 092E 74 03 JZ M11
1121 0930 EB 14 90 JMP M21
1122 0933 8A 1E 0106r M11: MOV BL,N1
1123 0937 88 1E 00F2r MOV WHIT, BL
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -