⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 postfixvalume.asl

📁 这是用台湾KingB 8位单片机开发的科学计算器程序
💻 ASL
📖 第 1 页 / 共 5 页
字号:
07BB                998 .P3dataToZ:
+                   999 		
07BB F5 7B         1000 		lda0	.PsValDP
07BD FC 21         1001 		sta	DP		
07BF F3 02         1002 		lda	#02h
07C1 FC 28         1003 		sta	PP		
07C3 F2            1004 		lda	i
07C4 FC 21         1005 		sta	DP				
07C6               1006 .GetP3ToZ::		
07C6 F3 03         1007 		lda	#03h
07C8 FC 28         1008 		sta	PP
07CA F2            1009 		lda	i
07CB F9 00         1010 		sta0	SignZ		
07CD 18            1011 		incdp		
07CE F2            1012 		lda	i
07CF F9 00         1013 		sta0	PointZ				
07D1 F3 00         1014 		lda	#0h
07D3 FE            1015 		sta	i		
07D4 18            1016 		incdp
07D5 F2            1017 		lda	i
07D6 F9 00         1018 		sta0	OperandZ
07D8 F3 00         1019 		lda	#0h
07DA FE            1020 		sta	i
07DB 18            1021 		incdp
07DC F2            1022 		lda	i
07DD F9 01         1023 		sta0	OperandZ+1
07DF F3 00         1024 		lda	#0h
07E1 FE            1025 		sta	i
07E2 18            1026 		incdp
07E3 F2            1027 		lda	i
07E4 F9 02         1028 		sta0	OperandZ+2
07E6 F3 00         1029 		lda	#0h
07E8 FE            1030 		sta	i
07E9 18            1031 		incdp
07EA F2            1032 		lda	i
07EB F9 03         1033 		sta0	OperandZ+3
07ED F3 00         1034 		lda	#0h
07EF FE            1035 		sta	i
07F0 18            1036 		incdp
07F1 F2            1037 		lda	i
07F2 F9 04         1038 		sta0	OperandZ+4
07F4 F3 00         1039 		lda	#0h
07F6 FE            1040 		sta	i
07F7 18            1041 		incdp
07F8 F2            1042 		lda	i
07F9 F9 05         1043 		sta0	OperandZ+5
07FB F3 00         1044 		lda	#0h
07FD FE            1045 		sta	i
07FE 18            1046 		incdp
07FF F2            1047 		lda	i
0800 F9 06         1048 		sta0	OperandZ+6
0802 F3 00         1049 		lda	#0h
0804 FE            1050 		sta	i
0805 F3 00         1051 		lda	#0h
0807 F9 07         1052 		sta0	OperandZ+7
0809 20 00 00      1053 		call	CheckOutData		
080C 24            1054 		ret	
+                  1055 						
+                  1056 ;-------------------------------------------		
080D               1057 .StoResult:	
+                  1058 		
080D F5 7D         1059 		lda0	.P3DP
080F A7 A4         1060 		cmpe	#0a4h			;0dfh
0811 04 08 47      1061 		brc	.StackError
0814 F5 7D         1062 		lda0	.P3DP
0816 FC 21         1063 		sta	DP
0818 F3 03         1064 		lda	#03h
081A FC 28         1065 		sta	PP
081C F5 00         1066 		lda0	SignZ
081E FE            1067 		sta	i
081F 18            1068 		incdp
0820 F5 00         1069 		lda0	PointZ
0822 FE            1070 		sta	i
0823 18            1071 		incdp
0824 F5 00         1072 		lda0	OperandZ
0826 FE            1073 		sta	i
0827 18            1074 		incdp
0828 F5 01         1075 		lda0	OperandZ+1
082A FE            1076 		sta	i
082B 18            1077 		incdp
082C F5 02         1078 		lda0	OperandZ+2
082E FE            1079 		sta	i
082F 18            1080 		incdp
0830 F5 03         1081 		lda0	OperandZ+3
0832 FE            1082 		sta	i
0833 18            1083 		incdp
0834 F5 04         1084 		lda0	OperandZ+4
0836 FE            1085 		sta	i
0837 18            1086 		incdp
0838 F5 05         1087 		lda0	OperandZ+5
083A FE            1088 		sta	i	
083B 18            1089 		incdp
083C F5 06         1090 		lda0	OperandZ+6
083E FE            1091 		sta	i
083F 18            1092 		incdp
0840 F0 21         1093 		lda	DP
0842 F9 7D         1094 		sta0	.P3DP
0844 02 08 4B      1095 		br	.EndStoResult
0847               1096 .StackError:
0847 F3 03         1097 		lda	#03h
0849 F9 00         1098 		sta0	ErrorFlag			
084B               1099 .EndStoResult:
084B 24            1100 		ret				
+                  1101 ;-------------------------------------------
084C               1102 .PushSkData::
084C F3 03         1103 		lda	#03h
084E FC 28         1104 		sta	PP
0850 F3 00         1105 		lda	#0h
0852 FC 21         1106 		sta	DP
0854 F9 00         1107 		sta0	Temp2
0856 F3 50         1108 		lda	#50h
0858 FE            1109 		sta	i
0859 18            1110 		incdp
085A F0 21         1111 		lda	DP
085C F9 00         1112 		sta0	Temp2							
085E F3 50         1113 		lda	#50h
0860 F9 00         1114 		sta0	Temp1
0862               1115 .SearchPS:		
0862 F5 00         1116 		lda0	Temp1
0864 FC 21         1117 		sta	DP
0866 F3 02         1118 		lda	#02h
0868 FC 28         1119 		sta	PP
086A F2            1120 		lda	i
086B A7 EE         1121 		cmpe	#0eeh
086D 06 08 98      1122 		brz	.EndPushSkData
0870 A7 FF         1123 		cmpe	#0ffh
0872 06 08 82      1124 		brz	.StoDataDP
0875 A7 FE         1125 		cmpe	#0feh
0877 06 08 82      1126 		brz	.StoDataDP
087A 18            1127 		incdp
087B F0 21         1128 		lda	DP
087D F9 00         1129 		sta0	Temp1
087F 02 08 62      1130 		br	.SearchPS			
0882               1131 .StoDataDP:		
0882 20 08 99      1132 		call	.JumpOFF
0885 F3 03         1133 		lda	#03h
0887 FC 28         1134 		sta	PP
0889 F5 00         1135 		lda0	Temp2
088B FC 21         1136 		sta	DP
088D F5 00         1137 		lda0	Temp1		
088F FE            1138 		sta	i			
0890 F5 00         1139 		lda0	Temp2
0892 1F            1140 		inca
0893 F9 00         1141 		sta0	Temp2		
0895 02 08 62      1142 		br	.SearchPS
0898               1143 .EndPushSkData::
+                  1144 
0898 24            1145 		ret			
+                  1146 ;-------------------------------------------
0899               1147 .JumpOFF:
0899 F3 02         1148 		lda	#02h
089B FC 28         1149 		sta	PP
089D F5 00         1150 		lda0	Temp1
089F 1F            1151 		inca
08A0 F9 00         1152 		sta0	Temp1
08A2 FC 21         1153 		sta	DP	
08A4 F2            1154 		lda	i	
08A5 A7 EE         1155 		cmpe	#0eeh
08A7 06 08 B2      1156 		brz	.EndSetDP
08AA A7 FF         1157 		cmpe	#0ffh
08AC 07 08 B2      1158 		brnz	.EndSetDP				
08AF 02 08 99      1159 		br	.JumpOFF
08B2               1160 .EndSetDP:	
+                  1161 		 
+                  1162  							
08B2 24            1163 		ret					
+                  1164 ;-------------------------------------------			
08B3               1165 .SaveToZ::
08B3 20 00 00      1166 		call	.ClrZ
08B6 F3 00         1167 		lda	#0h
08B8 F9 00         1168 		sta0	.PFlag
08BA F9 00         1169 		sta0	.Buf2
08BC F9 00         1170 		sta0	.NumCnt
08BE F9 00         1171 		sta0	.ZeroFlag
08C0 F9 00         1172 		sta0	.PointFlag
+                  1173 		
08C2 F3 00         1174 		lda	#0h
08C4 FC 28         1175 		sta	PP		
08C6 F3 00         1176 		lda 	#OperandZ
08C8 F9 00         1177 		sta0	.STDP
+                  1178 			
08CA               1179 .Num2OPC:	
08CA F3 02         1180 		lda	#02h
08CC FC 28         1181 		sta	PP
08CE F5 7B         1182 		lda0	.PsValDP
08D0 FC 21         1183 		sta	DP
08D2 F2            1184 		lda	i		
08D3 F9 00         1185 		sta0	.DataBuf 			
08D5 A7 FF         1186 		cmpe	#0ffh
08D7 06 09 F0      1187 		brz	.SetOPdata
08DA A7 C3         1188 		cmpe	#0c3h
08DC 06 09 F0      1189 		brz	.SetOPdata
08DF A7 EE         1190 		cmpe	#0eeh
08E1 06 09 F0      1191 		brz	.SetOPdata
08E4 A7 A0         1192 		cmpe	#0a0h
08E6 06 09 BA      1193 		brz	.CntPoint		
08E9               1194 .StartSavenum:
08E9 F5 00         1195 		lda0	.Buf2
08EB A7 01         1196 		cmpe	#01h
08ED 06 08 FB      1197 		brz	.SaveInput	
08F0 F5 00         1198 		lda0	.DataBuf
08F2 A7 00         1199 		cmpe	#0h
08F4 06 09 AB      1200 		brz	.NextInput
08F7 F3 01         1201 		lda	#01h		
08F9 F9 00         1202 		sta0	.Buf2		
08FB               1203 .SaveInput:							
08FB F5 00         1204 		lda0	.PFlag
08FD CB 0F         1205 		anda	#0fh
08FF A7 00         1206 		cmpe	#0h
0901 06 09 58      1207 		brz	.NumIsL
0904               1208 .NumIsR:		
0904 F5 00         1209 		lda0	.NumCnt
0906 A7 0F         1210 		cmpe	#0fh
0908 04 09 D7      1211 		brc	.AddPSDP		
090B F3 00         1212 		lda	#0h
090D FC 28         1213 		sta	PP
090F F5 00         1214 		lda0	.STDP
0911 FC 21         1215 		sta	DP
0913 F2            1216 		lda	i
0914 F9 01         1217 		sta0	.DataBuf+1
0916 D9 00         1218 		ora	.DataBuf		 
0918 F9 01         1219 		sta0	.DataBuf+1				
091A A7 00         1220 		cmpe	#0h
091C 07 09 2D      1221 		brnz	.NextDTr
091F F5 00         1222 		lda0	.Buf2
0921 A7 01         1223 		cmpe	#01h
0923 07 09 AB      1224 		brnz	.NextInput
0926 F5 00         1225 		lda0	.ZeroFlag
0928 A7 00         1226 		cmpe	#0h
092A 06 09 44      1227 		brz	.NextDPr
092D               1228 .NextDTr:	
092D F5 01         1229 		lda0	.DataBuf+1	
092F FE            1230 		sta	i
0930 F3 01         1231 		lda	#01h
0932 F9 00         1232 		sta0	.ZeroFlag
0934 F5 00         1233 		lda0	.NumCnt
0936 1F            1234 		inca
0937 F9 00         1235 		sta0	.NumCnt		
0939 F5 00         1236 		lda0	.STDP
093B 1F            1237 		inca
093C F9 00         1238 		sta0	.STDP
093E F5 00         1239 		lda0	.PFlag
0940 CB F0         1240 		anda	#0f0h
0942 F9 00         1241 		sta0	.PFlag
0944               1242 .NextDPr:		
0944 F5 7B         1243 		lda0	.PsValDP
0946 1F            1244 		inca
0947 F9 7B         1245 		sta0	.PsValDP
0949 F5 00         1246 		lda0	.PointFlag
094B A7 01         1247 		cmpe	#01h
094D 07 08 CA      1248 		brnz	.Num2OPC
0950 F5 00         1249 		lda0	PointZ
0952 1F            1250 		inca
0953 F9 00         1251 		sta0	PointZ
0955 02 08 CA      1252 		br	.Num2OPC		
0958               1253 .NumIsL:
0958 F5 00         1254 		lda0	.NumCnt
095A A7 0F         1255 		cmpe	#0fh
095C 04 09 D7      1256 		brc	.AddPSDP
095F F5 00         1257 		lda0	.DataBuf 
0961 20 00 00      1258 		call	.SftLeft
0964 F3 00         1259 		lda	#0h
0966 FC 28         1260 		sta	PP
0968 F5 00         1261 		lda0	.STDP
096A FC 21         1262 		sta	DP
096C F2            1263 		lda	i
096D F9 01         1264 		sta0	.DataBuf+1
096F D9 00         1265 		ora	.DataBuf 
0971 F9 01         1266 		sta0	.DataBuf+1
0973 A7 00         1267 		cmpe	#0h
0975 07 09 86      1268 		brnz	.NextDTl
0978 F5 00         1269 		lda0	.Buf2
097A A7 01         1270 		cmpe	#01h
097C 07 09 AB      1271 		brnz	.NextInput
097F F5 00         1272 		lda0	.ZeroFlag
0981 A7 00         1273 		cmpe	#0h
0983 06 09 97      1274 		brz	.NextDPl
0986               1275 .NextDTl:	
0986 F5 01         1276 		lda0	.DataBuf+1	
0988 FE            1277 		sta	i 		
0989 F3 01         1278 		lda	#01h
098B F9 00         1279 		sta0	.ZeroFlag
098D F5 00         1280 		lda0	.NumCnt
098F 1F            1281 		inca
0990 F9 00         1282 		sta0	.NumCnt
0992 F5 00         1283 		lda0	.PFlag
0994 1F            1284 		inca
0995 F9 00         1285 		sta0	.PFlag	
0997               1286 .NextDPl:		
0997 F5 7B         1287 		lda0	.PsValDP
0999 1F            1288 		inca
099A F9 7B         1289 		sta0	.PsValDP	
099C F5 00         1290 		lda0	.PointFlag
099E A7 01         1291 		cmpe	#01h 
09A0 07 08 CA      1292 		brnz	.Num2OPC
09A3 F5 00         1293 		lda0	PointZ
09A5 1F            1294 		inca
09A6 F9 00         1295 		sta0	PointZ	
09A8 02 08 CA      1296 		br	.Num2OPC	
09AB               1297 .NextInput:
09AB F5 00         1298 		lda0	.Buf2
09AD A7 01         1299 		cmpe	#01h
09AF 06 08 FB      1300 		brz	.SaveInput
09B2 F5 7B         1301 		lda0	.PsValDP
09B4 1F            1302 		inca
09B5 F9 7B         1303 		sta0	.PsValDP
09B7 02 08 CA      1304 		br	.Num2OPC
+                  1305 ;-------------------------------------------		
09BA               1306 .CntPoint:					
09BA F5 7B         1307 		lda0	.PsValDP
09BC 1F            1308 		inca
09BD F9 7B         1309 		sta0	.PsValDP
09BF F5 00         1310 		lda0	.PointFlag			
09C1 1F            1311 		inca
09C2 F9 00         1312 		sta0	.PointFlag
09C4 F3 01         1313 		lda	#01h
09C6 F9 00         1314 		sta0	.Buf2
09C8 02 08 CA      1315 		br	.Num2OPC
09CB               1316 .ChangSign:
09CB F3 01         1317 		lda  	#01h		
09CD F9 00         1318 		sta0	SignZ		
09CF F5 7B         1319 		lda0	.PsValDP
09D1 1F            1320 		inca
09D2 F9 7B         1321 		sta0	.PsValDP	
09D4 02 08 CA      1322 		br	.Num2OPC
09D7               1323 .AddPSDP:
09D7 F5 7B         1324 		lda0	.PsValDP
09D9 1F            1325 		inca
09DA F9 7B         1326 		sta0	.PsValDP
09DC F5 00         1327 		lda0	.NumCnt
09DE 1F            1328 		inca
09DF F9 00         1329 		sta0	.NumCnt
09E1 F5 00         1330 		lda0	.PointFlag

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -