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

📄 old

📁 早期freebsd实现
💻
📖 第 1 页 / 共 3 页
字号:
   120  	halfsolution[1, halfindex] := pair1;   121  	halfsolution[2, halfindex] := pair2;   122  	halfsolution[3, halfindex] := pair3;   123  	halfsolution[4, halfindex] := pair4;   124  	halfindex := halfindex + 1;	patch 1814 1822 1822	BEG:28	0  1828	CASE4	0  1832	CASE4	1  1836	CASE2	119 1838		"listsolution" 1852	LINO:120 1854	LV:2	-568  1858	RV4:2	-12  1862	INX4:1	1 30  1868	RV1:4	-17  1872	RANG2:1	3  1876	AS21 1878	LINO:121 1880	LV:2	-568  1884	CON1:30 1886	ADD24 1888	RV4:2	-12  1892	INX4:1	1 30  1898	RV1:4	-18  1902	RANG2:1	3  1906	AS21 1908	LINO:122 1910	LV:2	-568  1914	CON1:60 1916	ADD24 1918	RV4:2	-12  1922	INX4:1	1 30  1928	RV1:4	-19  1932	RANG2:1	3  1936	AS21 1938	LINO:123 1940	LV:2	-568  1944	CON1:90 1946	ADD24 1948	RV4:2	-12  1952	INX4:1	1 30  1958	RV1:4	-20  1962	RANG2:1	3  1966	AS21 1968	LINO:124 1970	LV:2	-12  1974	RV4:2	-12  1978	CON1:1 1980	ADD24 1982	AS4 1984	END	patch 1822 0   125  end;   127  begin   128  	halfindex := 1;   129  	for pair1 := one2 to five6 do   130  	for pair2 := one2 to five6 do   131  	for pair3 := one2 to five6 do   132  	for pair4 := one2 to five6 do   133  		if two222(pair1, pair2, pair3, pair4) then   134  			listsolution;   135  	if halfindex <= 2 then   136  	begin   137  		nosolutions := true;   138  		goto 1;   139  	end;	patch 1456 1986 1986	BEG:24	0  1992	CASE4	0  1996	CASE4	1  2000	CASE2	127 2002		"find2222" 2012	LINO	128  2016	LV:2	-12  2020	CON1:1 2022	AS24 2024	LINO	129  2028	LV:4	-24  2032	CON1:1 2034	AS24 2036	LV:4	-28  2040	CON1:3 2042	AS24 2044	RV4:4	-24  2048	RV4:4	-28  2052	REL4	LE 2054	IF	-2  2058	LV:4	-29  2062	RV4:4	-28  2066	RANG42:1	3  2070	AS41 2072	LV:4	-29  2076	RV4:4	-24  2080	RANG42:1	3  2084	AS41 2086	LV:4	-17  2090	RV14:4	-29  2094	AS41 2096	LINO	130  2100	LV:4	-36  2104	CON1:1 2106	AS24 2108	LV:4	-40  2112	CON1:3 2114	AS24 2116	RV4:4	-36  2120	RV4:4	-40  2124	REL4	LE 2126	IF	-2  2130	LV:4	-41  2134	RV4:4	-40  2138	RANG42:1	3  2142	AS41 2144	LV:4	-41  2148	RV4:4	-36  2152	RANG42:1	3  2156	AS41 2158	LV:4	-18  2162	RV14:4	-41  2166	AS41 2168	LINO	131  2172	LV:4	-48  2176	CON1:1 2178	AS24 2180	LV:4	-52  2184	CON1:3 2186	AS24 2188	RV4:4	-48  2192	RV4:4	-52  2196	REL4	LE 2198	IF	-2  2202	LV:4	-53  2206	RV4:4	-52  2210	RANG42:1	3  2214	AS41 2216	LV:4	-53  2220	RV4:4	-48  2224	RANG42:1	3  2228	AS41 2230	LV:4	-19  2234	RV14:4	-53  2238	AS41 2240	LINO	132  2244	LV:4	-60  2248	CON1:1 2250	AS24 2252	LV:4	-64  2256	CON1:3 2258	AS24 2260	RV4:4	-60  2264	RV4:4	-64  2268	REL4	LE 2270	IF	-2  2274	LV:4	-65  2278	RV4:4	-64  2282	RANG42:1	3  2286	AS41 2288	LV:4	-65  2292	RV4:4	-60  2296	RANG42:1	3  2300	AS41 2302	LV:4	-20  2306	RV14:4	-65  2310	AS41 2312	LINO	133  2316	PUSH:-4 2318	RV1:4	-29  2322	RANG2:1	3  2326	RV1:4	-41  2330	RANG2:1	3  2334	RV1:4	-53  2338	RANG2:1	3  2342	RV1:4	-65  2346	RANG2:1	3  2350	CALL:2	1462  2356	IF	-2  2360	LINO	134  2364	CALL:2	1814 	patch 2356 12 2370	LINO	132  2374	RV4:4	-64  2378	LV:4	-65  2382	FOR1U:-82	patch 2270 112 2384	LINO	131  2388	RV4:4	-52  2392	LV:4	-53  2396	FOR1U	-170 	patch 2198 200 2400	LINO	130  2404	RV4:4	-40  2408	LV:4	-41  2412	FOR1U	-258 	patch 2126 288 2416	LINO	129  2420	RV4:4	-28  2424	LV:4	-29  2428	FOR1U	-346 	patch 2054 376 2432	LINO	135  2436	RV4:2	-12  2440	CON1:2 2442	REL24	LE 2444	IF	-2  2448	LINO	137  2452	LV:2	-1  2456	CON1:1 2458	RSNG2:1 2460	AS21 2462	LINO	138  2466	TRA4	6 	patch 2444 26 2472	END	patch 1986 68   140  end; 2474	TRA4	2474    142  procedure simultaneous;   143  var   144  	done: Boolean;   145  begin   146  	nosolutions := false;   147  	pointr := 0;   148  	done := false;   149  	repeat   150  		pointr := pointr + 1;   151  		repeat   152  			index := succ(pointr);   153  			if (halfsolution[1, pointr]<>halfsolution[1,index]) and   154  			   (halfsolution[2, pointr]<>halfsolution[2,index]) and   155  			   (halfsolution[3, pointr]<>halfsolution[3,index]) and   156  			   (halfsolution[4, pointr]<>halfsolution[4,index]) then   157  				done := true else   158  				index := index + 1;   159  		until done or (index = pred(halfindex));   160  	until done or (pointr = halfindex);   161  	if pointr = halfindex then   162  	begin   163  		nosolutions := true;   164  		goto 1;   165  	end;	patch 2474 2482 2482	BEG:28	0  2488	CASE4	0  2492	CASE4	1  2496	CASE2	145 2498		"simultaneous" 2512	LINO	146  2516	LV:2	-1  2520	CON1 2522	RSNG2:1 2524	AS21 2526	LINO	147  2530	LV:2	-16  2534	CON1 2536	AS24 2538	LINO	148  2542	LV:4	-1  2546	CON1 2548	RSNG2:1 2550	AS21 2552	LINO	150  2556	LV:2	-16  2560	RV4:2	-16  2564	CON1:1 2566	ADD24 2568	AS4 2570	LINO	152  2574	LV:2	-8  2578	RV4:2	-16  2582	SUCC4	-2147483648 	2147483647  2592	AS4 2594	LINO	153  2598	LV:2	-568  2602	RV4:2	-16  2606	INX4:1	1 30  2612	IND1 2614	LV:2	-568  2618	RV4:2	-8  2622	INX4:1	1 30  2628	IND1 2630	REL2	NE 2632	LV:2	-568  2636	CON1:30 2638	ADD24 2640	RV4:2	-16  2644	INX4:1	1 30  2650	IND1 2652	LV:2	-568  2656	CON1:30 2658	ADD24 2660	RV4:2	-8  2664	INX4:1	1 30  2670	IND1 2672	REL2	NE 2674	AND 2676	LV:2	-568  2680	CON1:60 2682	ADD24 2684	RV4:2	-16  2688	INX4:1	1 30  2694	IND1 2696	LV:2	-568  2700	CON1:60 2702	ADD24 2704	RV4:2	-8  2708	INX4:1	1 30  2714	IND1 2716	REL2	NE 2718	AND 2720	LV:2	-568  2724	CON1:90 2726	ADD24 2728	RV4:2	-16  2732	INX4:1	1 30  2738	IND1 2740	LV:2	-568  2744	CON1:90 2746	ADD24 2748	RV4:2	-8  2752	INX4:1	1 30  2758	IND1 2760	REL2	NE 2762	AND 2764	IF	-2  2768	LINO	157  2772	LV:4	-1  2776	CON1:1 2778	RSNG2:1 2780	AS21 2782	TRA	-2 	patch 2764 20 2786	LINO	158  2790	LV:2	-8  2794	RV4:2	-8  2798	CON1:1 2800	ADD24 2802	AS4	patch 2782 20 2804	RV1:4	-1  2808	RV4:2	-8  2812	RV4:2	-12  2816	PRED4	-2147483648 	2147483647  2826	REL4	EQ 2828	OR 2830	IF	-262  2834	RV1:4	-1  2838	RV4:2	-16  2842	RV4:2	-12  2846	REL4	EQ 2848	OR 2850	IF	-300  2854	LINO	161  2858	RV4:2	-16  2862	RV4:2	-12  2866	REL4	EQ 2868	IF	-2  2872	LINO	163  2876	LV:2	-1  2880	CON1:1 2882	RSNG2:1 2884	AS21 2886	LINO	164  2890	TRA4	6 	patch 2868 26 2896	END	patch 2482 4   166  end; 2898	TRA4	2898    168  procedure rearrange;   169  var   170  	box: blockno;   171  	a, b: pair; 2904	TRA4	2904    173  procedure put(a, b: pair);   174  var   175  	old1, new1, old2, new2: face;   176  	save1, save2: alfa; 2910	TRA4	2910    178  procedure oldpair(c: pair);   179  begin   180  	case c of   181  	one2:   182  		begin   183  			old1 := front;   184  			old2 := back;   185  		end;   186  	three4:   187  		begin   188  			old1 := top;   189  			old2 := bottom;   190  		end;   191  	five6:   192  		begin   193  			old1 := left;   194  			old2 := right;   195  		end   196  	end;	patch 2910 2918 2918	BEG:22	0  2924	CASE4	4  2928	CASE4	1  2932	CASE2	179 2934		"oldpair" 2942	LINO	180  2946	RV1:9	33  2950	CASE1OP:3 2952	.=.+6 2958	CASE1	1 2959	CASE1	2 2960	CASE1	3 2962	TRA	-2 	patch 2950 14 2966	LINO	183  2970	LV:6	-1  2974	CON1:1 2976	RANG2:1	6  2980	AS21 2982	LINO	184  2986	LV:6	-3  2990	CON1:2 2992	RANG2:1	6  2996	AS21 2998	TRA	-38 	patch 2952 50 3002	LINO	188  3006	LV:6	-1  3010	CON1:3 3012	RANG2:1	6  3016	AS21 3018	LINO	189  3022	LV:6	-3  3026	CON1:4 3028	RANG2:1	6  3032	AS21 3034	TRA	-74 	patch 2954 86 3038	LINO	193  3042	LV:6	-1  3046	CON1:5 3048	RANG2:1	6  3052	AS21 3054	LINO	194  3058	LV:6	-3  3062	CON1:6 3064	RANG2:1	6  3068	AS21 3070	TRA	-110 	patch 2962 110 3074	END	patch 2918 0   197  end; 3076	TRA4	3076    198  procedure newpair(d: pair);   199  begin   200  	oldpair(b);   201  	new1 := old1;   202  	new2 := old2;	patch 3076 3082 3082	BEG:22	0  3088	CASE4	4  3092	CASE4	1  3096	CASE2	199 3098		"newpair" 3106	LINO	200  3110	RV1:7	33  3114	RANG2:1	3  3118	CALL:3	2910  3124	LINO	201  3128	LV:6	-2  3132	RV1:6	-1  3136	RANG2:1	6  3140	AS21 3142	LINO	202  3146	LV:6	-4  3150	RV1:6	-3  3154	RANG2:1	6  3158	AS21   203  end;In procedure newpair:  w - variable d is never used 3160	END	patch 3082 0   205  begin   206  	newpair(b);   207  	oldpair(a);   208  	save1 := datas[box, new1];   209  	datas[box, new1] := datas[box, old1];   210  	datas[box, old1] := save1;   211  	save2 := datas[box, new2];   212  	datas[box, new2] := datas[box, old2];   213  	datas[box, old2] := save2;	patch 2904 3162 3162	BEG:18	0  3168	CASE4	8  3172	CASE4	1  3176	CASE2	205 3178		"put" 3182	LINO	206  3186	RV1:7	33  3190	RANG2:1	3  3194	CALL:3	3076  3200	LINO	207  3204	RV1:7	37  3208	RANG2:1	3  3212	CALL:3	2910  3218	LINO	208  3222	LV:6	-16  3226	LV:2	-256  3230	RV1:4	-1  3234	INX2:60	1 4  3240	RV1:6	-2  3244	INX2:10	1 6  3250	IND:10 3252	AS:10 3254	LINO	209  3258	LV:2	-256  3262	RV1:4	-1  3266	INX2:60	1 4  3272	RV1:6	-2  3276	INX2:10	1 6  3282	LV:2	-256  3286	RV1:4	-1  3290	INX2:60	1 4  3296	RV1:6	-1  3300	INX2:10	1 6  3306	IND:10 3308	AS:10 3310	LINO	210  3314	LV:2	-256  3318	RV1:4	-1  3322	INX2:60	1 4  3328	RV1:6	-1  3332	INX2:10	1 6  3338	RV:6	-16 10  3344	AS:10 3346	LINO	211  3350	LV:6	-28  3354	LV:2	-256  3358	RV1:4	-1  3362	INX2:60	1 4  3368	RV1:6	-4  3372	INX2:10	1 6  3378	IND:10 3380	AS:10 3382	LINO	212  3386	LV:2	-256  3390	RV1:4	-1  3394	INX2:60	1 4  3400	RV1:6	-4  3404	INX2:10	1 6  3410	LV:2	-256  3414	RV1:4	-1  3418	INX2:60	1 4  3424	RV1:6	-3  3428	INX2:10	1 6  3434	IND:10 3436	AS:10 3438	LINO	213  3442	LV:2	-256  3446	RV1:4	-1  3450	INX2:60	1 4  3456	RV1:6	-3  3460	INX2:10	1 6  3466	RV:6	-28 10  3472	AS:10 3474	END	patch 3162 28   214  end;   216  begin   217  	for box := 1 to 4 do   218  	begin   219  		a := halfsolution[box, pointr];   220  		b := halfsolution[box, index];   221  		if (a=one2) and (b=five6) then   222  			put(five6, three4) else   223  		begin   224  			if a = three4 then   225  			begin   226  				if b = one2 then   227  				begin   228  					put(one2, five6);   229  					put(three4, one2);   230  					put(five6, three4);   231  				end else   232  				begin   233  					put(three4, one2);   234  					put(five6, three4);   235  				end   236  			end else   237  			if b = one2 then   238  			begin   239  				put(one2, three4);   240  				put(five6, one2);   241  			end else   242  				put(five6, one2);   243  		end;   244  	end;	patch 2898 3478 3478	BEG:24	0  3484	CASE4	0  3488	CASE4	1  3492	CASE2	216 3494		"rearrange" 3504	LINO	217  3508	LV:4	-8  3512	CON1:1 3514	AS24 3516	LV:4	-12  3520	CON1:4 3522	AS24 3524	RV4:4	-8  3528	RV4:4	-12  3532	REL4	LE 3534	IF	-2  3538	LV:4	-13  3542	RV4:4	-12  3546	RANG42:1	4  3550	AS41 3552	LV:4	-13  3556	RV4:4	-8  3560	RANG42:1	4  3564	AS41 3566	LV:4	-1  3570	RV14:4	-13  3574	AS41 3576	LINO	219  3580	LV:4	-2  3584	LV:2	-568  3588	RV1:4	-13  3592	INX2:30	1 4  3598	RV4:2	-16  3602	INX4:1	1 30  3608	IND1 3610	RANG2:1	3  3614	AS21 3616	LINO	220  3620	LV:4	-3  3624	LV:2	-568  3628	RV1:4	-13  3632	INX2:30	1 4  3638	RV4:2	-8  3642	INX4:1	1 30  3648	IND1 3650	RANG2:1	3  3654	AS21 3656	LINO	221  3660	RV1:4	-2  3664	CON1:1 3666	REL2	EQ 3668	RV1:4	-3  3672	CON1:3 3674	REL2	EQ 3676	AND 3678	IF	-2  3682	LINO	222  3686	CON1:3 3688	RANG2:1	3  3692	CON1:2 3694	RANG2:1	3  3698	CALL:2	2904  3704	TRA	-2 	patch 3678 28 3708	LINO	224  3712	RV1:4	-2  3716	CON1:2 3718	REL2	EQ 3720	IF	-2  3724	LINO	226  3728	RV1:4	-3  3732	CON1:1

⌨️ 快捷键说明

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