]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/contribs/assembly/freescale/doc/aurei.txt
branch for universe
[helm.git] / matita / contribs / assembly / freescale / doc / aurei.txt
diff --git a/matita/contribs/assembly/freescale/doc/aurei.txt b/matita/contribs/assembly/freescale/doc/aurei.txt
new file mode 100644 (file)
index 0000000..dc62cf6
--- /dev/null
@@ -0,0 +1,235 @@
+\r
+static unsigned int result[16]={ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 };\r
+\r
+void main(void)\r
+{\r
+unsigned int res_pos=0,tested_num=0,divisor=0;\r
+unsigned long int acc=0;\r
+\r
+for(tested_num=1;tested_num<2;tested_num++)\r
+ {\r
+ for(acc=0,divisor=1;divisor<tested_num;divisor++)\r
+  {\r
+  if(!(tested_num%divisor))\r
+   { acc+=divisor; }\r
+  }\r
\r
+ if(acc==tested_num)\r
+  { result[res_pos++]=tested_num; }\r
+ }\r
+}\r
+\r
+NUMERI AUREI: Somma divisori(x)=x\r
+Fino a 0xFFFF sono\r
+6/28/496/8128\r
+\r
+ 1000: 545 -> 156.295.006          : stima di complessita' che dovrebbe essere\r
+  500: 545 ->  27.863.083          : T(n)=O(a+b*(n^3)) ma e' veramente enorme!\r
+  250: 545 ->   4.916.615          :\r
+  100: 545 ->     826.150          :\r
+   50: 545 ->     218.243 (213878) : 217698=64+217634 : /117649= 1,8\r
+   25: 545 ->      58.798 ( 57858) :  58253=64+ 58189 : / 13824= 4,2\r
+   10: 545 ->      10.212 ( 10127) :   9667=64+  9603 : /   729=13,2\r
+    5: 545 ->       2.789 (  2789) :   2244=64+  2180 : /    64=34,1\r
+    4: 545 ->       1.760 (  1765) :   1220=64+  1156 : /    27=42,8\r
+    3: 545 ->       1.136 (  1142) :    597=64+   533 : /    8 =66,6\r
+    2: 545 ->         661 (   664) :    119=64+    55 : /    1 =55\r
+    1: 545 ->         609 (   601) :        64        :\r
+\r
+word result[16] = 0x0100\r
+\r
+A: 0x00 HX: 0x1A00 PC: 0x18C0 SP: 0x0165 Z:1\r
+A: 0x00 HX: num    PC: 0x1941 SP: 0x0165 Z:1\r
+\r
+18C0 95          TSX\r
+18C1 6F 09       CLR 9,X\r
+18C3 6F 08       CLR 8,X\r
+18C5 AD 7D       BSR *+127 ; 1944\r
+18C7 9E FF 01    STHX 1,SP\r
+18CA AD 78       BSR *+122 ; 1944\r
+18CC 9E FF 07    STHX 7,SP\r
+18CF 20 38       BRA *+58\r
+18D1 9E FE 01    LDHX 1,SP\r
+18D4 89          PSHX\r
+18D5 8B          PSHH\r
+18D6 9E FE 09    LDHX 9,SP\r
+18D9 CD 1A 0D    JSR 0X1A0D\r
+18DC A7 02       AIS #2\r
+18DE 65 00 00    CPHX #0X0000\r
+18E1 26 1F       BNE *+33 ; 1902\r
+18E3 95          TSX\r
+18E4 E6 07       LDA 7,X\r
+18E6 EE 06       LDX 6,X\r
+18E8 87          PSHA\r
+18E9 89          PSHX\r
+18EA 4F          CLRA\r
+18EB 87          PSHA\r
+18EC 87          PSHA\r
+18ED 95          TSX\r
+18EE 89          PSHX\r
+18EF 8B          PSHH\r
+18F0 AF 06       AIX #6\r
+18F2 89          PSHX\r
+18F3 8B          PSHH\r
+18F4 9E FE 03    LDHX 3,SP\r
+18F7 CD 1A 1D    JSR 0X1A1D\r
+18FA 95          TSX\r
+18FB AF 0C       AIX #12\r
+18FD CD 1A 23    JSR 0X1A23\r
+1900 A7 06       AIS #6\r
+1902 95          TSX\r
+1903 6C 07       INC 7,X\r
+1905 26 02       BNE *+4 ; 1909\r
+1907 6C 06       INC 6,X\r
+1909 9E FE 01    LDHX 1,SP\r
+190C 9E F3 07    CPHX 7,SP\r
+190F 22 C0       BHI *-62 ; 18D1\r
+1911 9E F3 05    CPHX 5,SP\r
+1914 26 1D       BNE *+31 ; 1933\r
+1916 9E FE 03    LDHX 3,SP\r
+1919 26 18       BNE *+26 ; 1933\r
+191B 9E FE 09    LDHX 9,SP\r
+191E 89          PSHX\r
+191F AF 01       AIX #1\r
+1921 9E FF 0A    STHX 10,SP\r
+1924 88          PULX\r
+1925 58          LSLX\r
+1926 9E E6 02    LDA 2,SP\r
+1929 8C          CLRH\r
+192A D7 01 01    STA 257,X\r
+192D 9E E6 01    LDA 1,SP\r
+1930 D7 01 00    STA 256,X\r
+1933 95          TSX\r
+1934 6C 01       INC 1,X\r
+1936 26 01       BNE *+3 ; 1939\r
+1938 7C          INC ,X\r
+1939 9E FE 01    LDHX 1,SP\r
+193C 65 00 19    CPHX #0X0019\r
+193F 25 89       BCS *-117 ; 18CA\r
+\r
+1941-1943 STOP\r
+\r
+1944 5F          CLRX\r
+1945 8C          CLRH\r
+1946 9E FF 07    STHX 7,SP\r
+1949 8C          CLRH\r
+194A 9E FF 05    STHX 5,SP\r
+194D 5C          INCX\r
+194E 81          RTS\r
+194F E6 03       LDA 3,X\r
+1951 87          PSHA\r
+1952 E6 02       LDA 2,X\r
+1954 87          PSHA\r
+1955 9E AE       LDHX ,X\r
+1957 89          PSHX\r
+1958 8B          PSHH\r
+1959 9E FE 07    LDHX 7,SP\r
+195C E6 03       LDA 3,X\r
+195E 9E E7 11    STA 17,SP\r
+1961 E6 02       LDA 2,X\r
+1963 9E E7 10    STA 16,SP\r
+1966 9E AE       LDHX ,X\r
+1968 9E FF 0E    STHX 14,SP\r
+196B 9E FE 05    LDHX 5,SP\r
+196E FC          JMP ,X\r
+196F 87          PSHA\r
+1970 89          PSHX\r
+1971 8B          PSHH\r
+1972 89          PSHX\r
+1973 8B          PSHH\r
+1974 9E FE 06    LDHX 6,SP\r
+1977 89          PSHX\r
+1978 8B          PSHH\r
+1979 9E FE 0A    LDHX 10,SP\r
+197C 9E FF 08    STHX 8,SP\r
+197F 9E FE 0C    LDHX 12,SP\r
+1982 CC 19 4F    JMP 0X194F\r
+1985 9E 6D 04    TST 4,SP\r
+1988 26 1A       BNE *+28 ; 19A4\r
+198A 95          TSX\r
+198B E6 07       LDA 7,X\r
+198D EE 04       LDX 4,X\r
+198F 8C          CLRH\r
+1990 52          DIV\r
+1991 9E E7 04    STA 4,SP\r
+1994 9E E6 09    LDA 9,SP\r
+1997 52          DIV\r
+1998 9E E7 05    STA 5,SP\r
+199B 9E 6F 08    CLR 8,SP\r
+199E 8B          PSHH\r
+199F 86          PULA\r
+19A0 9E E7 09    STA 9,SP\r
+19A3 81          RTS\r
+19A4 4F          CLRA\r
+19A5 87          PSHA\r
+19A6 AE 08       LDX #0X08\r
+19A8 98          CLC\r
+19A9 9E 69 0A    ROL 10,SP\r
+19AC 9E 69 09    ROL 9,SP\r
+19AF 9E 69 01    ROL 1,SP\r
+19B2 9E E6 05    LDA 5,SP\r
+19B5 9E E1 01    CMP 1,SP\r
+19B8 22 1D       BHI *+31 ; 19D7\r
+19BA 26 08       BNE *+10 ; 19C4\r
+19BC 9E E6 06    LDA 6,SP\r
+19BF 9E E1 09    CMP 9,SP\r
+19C2 22 13       BHI *+21 ; 19D7\r
+19C4 9E E6 09    LDA 9,SP\r
+19C7 9E E0 06    SUB 6,SP\r
+19CA 9E E7 09    STA 9,SP\r
+19CD 9E E6 01    LDA 1,SP\r
+19D0 9E E2 05    SBC 5,SP\r
+19D3 9E E7 01    STA 1,SP\r
+19D6 99          SEC\r
+19D7 5B D0       DBNZX *-46 ; 19A9\r
+19D9 9E E6 0A    LDA 10,SP\r
+19DC 49          ROLA\r
+19DD 9E E7 06    STA 6,SP\r
+19E0 9E E6 09    LDA 9,SP\r
+19E3 9E E7 0A    STA 10,SP\r
+19E6 86          PULA\r
+19E7 9E E7 08    STA 8,SP\r
+19EA 9E 6F 04    CLR 4,SP\r
+19ED 81          RTS\r
+19EE 95          TSX\r
+19EF E6 12       LDA 18,X\r
+19F1 EB 05       ADD 5,X\r
+19F3 E7 12       STA 18,X\r
+19F5 E6 11       LDA 17,X\r
+19F7 E9 04       ADC 4,X\r
+19F9 E7 11       STA 17,X\r
+19FB E6 10       LDA 16,X\r
+19FD E9 03       ADC 3,X\r
+19FF E7 10       STA 16,X\r
+1A01 E6 0F       LDA 15,X\r
+1A03 E9 02       ADC 2,X\r
+1A05 E7 0F       STA 15,X\r
+1A07 A7 0A       AIS #10\r
+1A09 8A          PULH\r
+1A0A 88          PULX\r
+1A0B 86          PULA\r
+1A0C 81          RTS\r
+1A0D A7 FE       AIS #-2\r
+1A0F 9E FF 01    STHX 1,SP\r
+1A12 87          PSHA\r
+1A13 CD 19 85    JSR 0X1985\r
+1A16 86          PULA\r
+1A17 A7 02       AIS #2\r
+1A19 9E FE 03    LDHX 3,SP\r
+1A1C 81          RTS\r
+1A1D CD 19 6F    JSR 0X196F\r
+1A20 CD 19 EE    JSR 0X19EE\r
+1A23 87          PSHA\r
+1A24 9E E6 04    LDA 4,SP\r
+1A27 F7          STA ,X\r
+1A28 9E E6 05    LDA 5,SP\r
+1A2B E7 01       STA 1,X\r
+1A2D 9E E6 06    LDA 6,SP\r
+1A30 E7 02       STA 2,X\r
+1A32 9E E6 07    LDA 7,SP\r
+1A35 E7 03       STA 3,X\r
+1A37 86          PULA\r
+1A38 8A          PULH\r
+1A39 88          PULX\r
+1A3A A7 A4       AIS #4\r
+1A3C FC          JMP ,X\r