]> matita.cs.unibo.it Git - helm.git/blob - matita/contribs/assembly/freescale/doc/aurei.txt
matita 0.5.1 tagged
[helm.git] / matita / contribs / assembly / freescale / doc / aurei.txt
1 \r
2 static unsigned int result[16]={ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 };\r
3 \r
4 void main(void)\r
5 {\r
6 unsigned int res_pos=0,tested_num=0,divisor=0;\r
7 unsigned long int acc=0;\r
8 \r
9 for(tested_num=1;tested_num<2;tested_num++)\r
10  {\r
11  for(acc=0,divisor=1;divisor<tested_num;divisor++)\r
12   {\r
13   if(!(tested_num%divisor))\r
14    { acc+=divisor; }\r
15   }\r
16  \r
17  if(acc==tested_num)\r
18   { result[res_pos++]=tested_num; }\r
19  }\r
20 }\r
21 \r
22 NUMERI AUREI: Somma divisori(x)=x\r
23 Fino a 0xFFFF sono\r
24 6/28/496/8128\r
25 \r
26  1000: 545 -> 156.295.006          : stima di complessita' che dovrebbe essere\r
27   500: 545 ->  27.863.083          : T(n)=O(a+b*(n^3)) ma e' veramente enorme!\r
28   250: 545 ->   4.916.615          :\r
29   100: 545 ->     826.150          :\r
30    50: 545 ->     218.243 (213878) : 217698=64+217634 : /117649= 1,8\r
31    25: 545 ->      58.798 ( 57858) :  58253=64+ 58189 : / 13824= 4,2\r
32    10: 545 ->      10.212 ( 10127) :   9667=64+  9603 : /   729=13,2\r
33     5: 545 ->       2.789 (  2789) :   2244=64+  2180 : /    64=34,1\r
34     4: 545 ->       1.760 (  1765) :   1220=64+  1156 : /    27=42,8\r
35     3: 545 ->       1.136 (  1142) :    597=64+   533 : /    8 =66,6\r
36     2: 545 ->         661 (   664) :    119=64+    55 : /    1 =55\r
37     1: 545 ->         609 (   601) :        64        :\r
38 \r
39 word result[16] = 0x0100\r
40 \r
41 A: 0x00 HX: 0x1A00 PC: 0x18C0 SP: 0x0165 Z:1\r
42 A: 0x00 HX: num    PC: 0x1941 SP: 0x0165 Z:1\r
43 \r
44 18C0 95          TSX\r
45 18C1 6F 09       CLR 9,X\r
46 18C3 6F 08       CLR 8,X\r
47 18C5 AD 7D       BSR *+127 ; 1944\r
48 18C7 9E FF 01    STHX 1,SP\r
49 18CA AD 78       BSR *+122 ; 1944\r
50 18CC 9E FF 07    STHX 7,SP\r
51 18CF 20 38       BRA *+58\r
52 18D1 9E FE 01    LDHX 1,SP\r
53 18D4 89          PSHX\r
54 18D5 8B          PSHH\r
55 18D6 9E FE 09    LDHX 9,SP\r
56 18D9 CD 1A 0D    JSR 0X1A0D\r
57 18DC A7 02       AIS #2\r
58 18DE 65 00 00    CPHX #0X0000\r
59 18E1 26 1F       BNE *+33 ; 1902\r
60 18E3 95          TSX\r
61 18E4 E6 07       LDA 7,X\r
62 18E6 EE 06       LDX 6,X\r
63 18E8 87          PSHA\r
64 18E9 89          PSHX\r
65 18EA 4F          CLRA\r
66 18EB 87          PSHA\r
67 18EC 87          PSHA\r
68 18ED 95          TSX\r
69 18EE 89          PSHX\r
70 18EF 8B          PSHH\r
71 18F0 AF 06       AIX #6\r
72 18F2 89          PSHX\r
73 18F3 8B          PSHH\r
74 18F4 9E FE 03    LDHX 3,SP\r
75 18F7 CD 1A 1D    JSR 0X1A1D\r
76 18FA 95          TSX\r
77 18FB AF 0C       AIX #12\r
78 18FD CD 1A 23    JSR 0X1A23\r
79 1900 A7 06       AIS #6\r
80 1902 95          TSX\r
81 1903 6C 07       INC 7,X\r
82 1905 26 02       BNE *+4 ; 1909\r
83 1907 6C 06       INC 6,X\r
84 1909 9E FE 01    LDHX 1,SP\r
85 190C 9E F3 07    CPHX 7,SP\r
86 190F 22 C0       BHI *-62 ; 18D1\r
87 1911 9E F3 05    CPHX 5,SP\r
88 1914 26 1D       BNE *+31 ; 1933\r
89 1916 9E FE 03    LDHX 3,SP\r
90 1919 26 18       BNE *+26 ; 1933\r
91 191B 9E FE 09    LDHX 9,SP\r
92 191E 89          PSHX\r
93 191F AF 01       AIX #1\r
94 1921 9E FF 0A    STHX 10,SP\r
95 1924 88          PULX\r
96 1925 58          LSLX\r
97 1926 9E E6 02    LDA 2,SP\r
98 1929 8C          CLRH\r
99 192A D7 01 01    STA 257,X\r
100 192D 9E E6 01    LDA 1,SP\r
101 1930 D7 01 00    STA 256,X\r
102 1933 95          TSX\r
103 1934 6C 01       INC 1,X\r
104 1936 26 01       BNE *+3 ; 1939\r
105 1938 7C          INC ,X\r
106 1939 9E FE 01    LDHX 1,SP\r
107 193C 65 00 19    CPHX #0X0019\r
108 193F 25 89       BCS *-117 ; 18CA\r
109 \r
110 1941-1943 STOP\r
111 \r
112 1944 5F          CLRX\r
113 1945 8C          CLRH\r
114 1946 9E FF 07    STHX 7,SP\r
115 1949 8C          CLRH\r
116 194A 9E FF 05    STHX 5,SP\r
117 194D 5C          INCX\r
118 194E 81          RTS\r
119 194F E6 03       LDA 3,X\r
120 1951 87          PSHA\r
121 1952 E6 02       LDA 2,X\r
122 1954 87          PSHA\r
123 1955 9E AE       LDHX ,X\r
124 1957 89          PSHX\r
125 1958 8B          PSHH\r
126 1959 9E FE 07    LDHX 7,SP\r
127 195C E6 03       LDA 3,X\r
128 195E 9E E7 11    STA 17,SP\r
129 1961 E6 02       LDA 2,X\r
130 1963 9E E7 10    STA 16,SP\r
131 1966 9E AE       LDHX ,X\r
132 1968 9E FF 0E    STHX 14,SP\r
133 196B 9E FE 05    LDHX 5,SP\r
134 196E FC          JMP ,X\r
135 196F 87          PSHA\r
136 1970 89          PSHX\r
137 1971 8B          PSHH\r
138 1972 89          PSHX\r
139 1973 8B          PSHH\r
140 1974 9E FE 06    LDHX 6,SP\r
141 1977 89          PSHX\r
142 1978 8B          PSHH\r
143 1979 9E FE 0A    LDHX 10,SP\r
144 197C 9E FF 08    STHX 8,SP\r
145 197F 9E FE 0C    LDHX 12,SP\r
146 1982 CC 19 4F    JMP 0X194F\r
147 1985 9E 6D 04    TST 4,SP\r
148 1988 26 1A       BNE *+28 ; 19A4\r
149 198A 95          TSX\r
150 198B E6 07       LDA 7,X\r
151 198D EE 04       LDX 4,X\r
152 198F 8C          CLRH\r
153 1990 52          DIV\r
154 1991 9E E7 04    STA 4,SP\r
155 1994 9E E6 09    LDA 9,SP\r
156 1997 52          DIV\r
157 1998 9E E7 05    STA 5,SP\r
158 199B 9E 6F 08    CLR 8,SP\r
159 199E 8B          PSHH\r
160 199F 86          PULA\r
161 19A0 9E E7 09    STA 9,SP\r
162 19A3 81          RTS\r
163 19A4 4F          CLRA\r
164 19A5 87          PSHA\r
165 19A6 AE 08       LDX #0X08\r
166 19A8 98          CLC\r
167 19A9 9E 69 0A    ROL 10,SP\r
168 19AC 9E 69 09    ROL 9,SP\r
169 19AF 9E 69 01    ROL 1,SP\r
170 19B2 9E E6 05    LDA 5,SP\r
171 19B5 9E E1 01    CMP 1,SP\r
172 19B8 22 1D       BHI *+31 ; 19D7\r
173 19BA 26 08       BNE *+10 ; 19C4\r
174 19BC 9E E6 06    LDA 6,SP\r
175 19BF 9E E1 09    CMP 9,SP\r
176 19C2 22 13       BHI *+21 ; 19D7\r
177 19C4 9E E6 09    LDA 9,SP\r
178 19C7 9E E0 06    SUB 6,SP\r
179 19CA 9E E7 09    STA 9,SP\r
180 19CD 9E E6 01    LDA 1,SP\r
181 19D0 9E E2 05    SBC 5,SP\r
182 19D3 9E E7 01    STA 1,SP\r
183 19D6 99          SEC\r
184 19D7 5B D0       DBNZX *-46 ; 19A9\r
185 19D9 9E E6 0A    LDA 10,SP\r
186 19DC 49          ROLA\r
187 19DD 9E E7 06    STA 6,SP\r
188 19E0 9E E6 09    LDA 9,SP\r
189 19E3 9E E7 0A    STA 10,SP\r
190 19E6 86          PULA\r
191 19E7 9E E7 08    STA 8,SP\r
192 19EA 9E 6F 04    CLR 4,SP\r
193 19ED 81          RTS\r
194 19EE 95          TSX\r
195 19EF E6 12       LDA 18,X\r
196 19F1 EB 05       ADD 5,X\r
197 19F3 E7 12       STA 18,X\r
198 19F5 E6 11       LDA 17,X\r
199 19F7 E9 04       ADC 4,X\r
200 19F9 E7 11       STA 17,X\r
201 19FB E6 10       LDA 16,X\r
202 19FD E9 03       ADC 3,X\r
203 19FF E7 10       STA 16,X\r
204 1A01 E6 0F       LDA 15,X\r
205 1A03 E9 02       ADC 2,X\r
206 1A05 E7 0F       STA 15,X\r
207 1A07 A7 0A       AIS #10\r
208 1A09 8A          PULH\r
209 1A0A 88          PULX\r
210 1A0B 86          PULA\r
211 1A0C 81          RTS\r
212 1A0D A7 FE       AIS #-2\r
213 1A0F 9E FF 01    STHX 1,SP\r
214 1A12 87          PSHA\r
215 1A13 CD 19 85    JSR 0X1985\r
216 1A16 86          PULA\r
217 1A17 A7 02       AIS #2\r
218 1A19 9E FE 03    LDHX 3,SP\r
219 1A1C 81          RTS\r
220 1A1D CD 19 6F    JSR 0X196F\r
221 1A20 CD 19 EE    JSR 0X19EE\r
222 1A23 87          PSHA\r
223 1A24 9E E6 04    LDA 4,SP\r
224 1A27 F7          STA ,X\r
225 1A28 9E E6 05    LDA 5,SP\r
226 1A2B E7 01       STA 1,X\r
227 1A2D 9E E6 06    LDA 6,SP\r
228 1A30 E7 02       STA 2,X\r
229 1A32 9E E6 07    LDA 7,SP\r
230 1A35 E7 03       STA 3,X\r
231 1A37 86          PULA\r
232 1A38 8A          PULH\r
233 1A39 88          PULX\r
234 1A3A A7 A4       AIS #4\r
235 1A3C FC          JMP ,X\r