T.STRINGS
FILE INFORMATION
FILENAME(S): T.STRINGS
FILE TYPE(S): PRG
FILE SIZE: 7K
FIRST SEEN: 2025-11-30 18:05:25
APPEARS ON: 2 disk(s)
FILE HASH
8e82c28e92d00529642c46bd09e76ce51fc0cd4517d3abdb9e0ec4e4b275f69a
FOUND ON DISKS (2 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| LOADSTAR 66 S 1 | T.STRINGS | PRG | Xii | 24 | 4 | DOWNLOAD FILE |
| LOADSTAR 66 S 1 | T.STRINGS | PRG | Sailor, Ganheden | 24 | 4 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 00 80 5E 55 3A 5A 45 52 4F 0D 20 20 20 20 20 20 |..^U:ZERO. | 00000010: 20 20 20 20 C2 D9 D4 C5 D3 3A 20 D3 D4 D2 C9 CE | .....: .....| 00000020: C7 20 D3 D0 C5 C5 C4 0D 0D 20 20 20 20 20 20 20 |. ....... | 00000030: 20 20 20 20 20 42 59 20 CD 41 55 52 49 43 45 20 | BY .AURICE | 00000040: CA 4F 4E 45 53 0D 0D 20 20 20 20 CF 4E 20 CC CF |.ONES.. .N ..| 00000050: C1 C4 D3 D4 C1 D2 20 23 36 35 20 C9 20 44 45 53 |...... #65 . DES| 00000060: 43 52 49 42 45 44 20 48 4F 57 0D 41 52 52 41 59 |CRIBED HOW.ARRAY| 00000070: 20 56 41 52 49 41 42 4C 45 53 20 41 4E 44 20 53 | VARIABLES AND S| 00000080: 49 4D 50 4C 45 20 56 41 52 49 41 42 4C 45 53 0D |IMPLE VARIABLES.| 00000090: 57 45 52 45 20 53 54 4F 52 45 44 2E 20 20 C9 4E |WERE STORED. .N| 000000A0: 20 54 48 45 20 43 41 53 45 20 4F 46 20 53 54 52 | THE CASE OF STR| 000000B0: 49 4E 47 0D 56 41 52 49 41 42 4C 45 53 20 4F 4E |ING.VARIABLES ON| 000000C0: 4C 59 20 54 48 45 20 4E 41 4D 45 2C 20 4C 45 4E |LY THE NAME, LEN| 000000D0: 47 54 48 2C 20 41 4E 44 0D 54 57 4F 20 50 4F 49 |GTH, AND.TWO POI| 000000E0: 4E 54 45 52 53 20 41 52 45 20 53 54 4F 52 45 44 |NTERS ARE STORED| 000000F0: 2E 20 20 D4 48 45 0D 50 4F 49 4E 54 45 52 53 20 |. .HE.POINTERS | 00000100: 53 48 4F 57 20 57 48 45 52 45 20 54 48 45 20 53 |SHOW WHERE THE S| 00000110: 54 52 49 4E 47 20 49 53 0D 53 54 4F 52 45 44 2E |TRING IS.STORED.| 00000120: 20 20 D4 48 45 20 41 43 54 55 41 4C 20 53 54 52 | .HE ACTUAL STR| 00000130: 49 4E 47 53 20 41 52 45 0D 53 54 4F 52 45 44 20 |INGS ARE.STORED | 00000140: 45 49 54 48 45 52 20 49 4E 20 54 48 45 20 43 4F |EITHER IN THE CO| 00000150: 44 45 20 4F 52 20 41 54 20 54 48 45 0D 54 4F 50 |DE OR AT THE.TOP| 00000160: 20 4F 46 20 C2 C1 D3 C9 C3 20 D2 C1 CD 2C 20 45 | OF ..... ..., E| 00000170: 58 54 45 4E 44 49 4E 47 20 44 4F 57 4E 57 41 52 |XTENDING DOWNWAR| 00000180: 44 2E 0D D4 48 49 53 20 4C 41 54 54 45 52 20 4D |D...HIS LATTER M| 00000190: 45 54 48 4F 44 20 4F 46 20 53 54 4F 52 41 47 45 |ETHOD OF STORAGE| 000001A0: 20 4C 45 41 44 53 20 54 4F 0D 54 48 45 20 54 4F | LEADS TO.THE TO| 000001B0: 50 49 43 20 4F 46 20 47 41 52 42 41 47 45 20 43 |PIC OF GARBAGE C| 000001C0: 4F 4C 4C 45 43 54 49 4F 4E 2E 0D 0D 0D 0D 0D 20 |OLLECTION...... | 000001D0: 20 20 20 C9 46 20 54 48 45 20 53 54 52 49 4E 47 | .F THE STRING| 000001E0: 20 41 50 50 45 41 52 53 20 49 4E 20 54 48 45 20 | APPEARS IN THE | 000001F0: 43 4F 44 45 2C 0D 54 48 45 20 50 4F 49 4E 54 45 |CODE,.THE POINTE| 00000200: 52 53 20 57 49 4C 4C 20 50 4F 49 4E 54 20 49 4E |RS WILL POINT IN| 00000210: 54 4F 20 54 48 45 20 43 4F 44 45 2C 0D 41 4E 44 |TO THE CODE,.AND| 00000220: 20 4E 4F 20 4E 45 57 20 4D 45 4D 4F 52 59 20 57 | NO NEW MEMORY W| 00000230: 49 4C 4C 20 42 45 20 4E 45 45 44 45 44 2E 0D D3 |ILL BE NEEDED...| 00000240: 54 52 49 4E 47 53 20 43 52 45 41 54 45 44 20 42 |TRINGS CREATED B| 00000250: 59 20 53 54 41 54 45 4D 45 4E 54 53 20 53 55 43 |Y STATEMENTS SUC| 00000260: 48 20 41 53 0D C1 24 3D 22 D4 48 49 53 20 49 53 |H AS..$=".HIS IS| 00000270: 20 41 20 53 54 52 49 4E 47 22 20 41 4E 44 20 53 | A STRING" AND S| 00000280: 54 52 49 4E 47 53 0D 52 45 41 44 20 46 52 4F 4D |TRINGS.READ FROM| 00000290: 20 44 41 54 41 20 53 54 41 54 45 4D 45 4E 54 53 | DATA STATEMENTS| 000002A0: 20 57 49 4C 4C 20 42 45 0D 53 54 4F 52 45 44 20 | WILL BE.STORED | 000002B0: 54 48 49 53 20 57 41 59 2E 0D 0D 20 20 20 20 D3 |THIS WAY... .| 000002C0: 54 52 49 4E 47 53 20 49 4E 54 52 4F 44 55 43 45 |TRINGS INTRODUCE| 000002D0: 44 20 49 4E 54 4F 20 54 48 45 0D 50 52 4F 47 52 |D INTO THE.PROGR| 000002E0: 41 4D 20 42 59 20 C7 C5 D4 2C 20 D3 D4 D2 24 2C |AM BY ..., ...$,| 000002F0: 20 4F 52 20 42 59 0D 43 41 4C 43 55 4C 41 54 49 | OR BY.CALCULATI| 00000300: 4F 4E 2C 20 53 55 43 48 20 41 53 20 C1 24 3D C3 |ON, SUCH AS .$=.| 00000310: 24 2B C4 24 2C 20 41 52 45 0D 53 54 4F 52 45 44 |$+.$, ARE.STORED| 00000320: 20 41 54 20 54 48 45 20 54 4F 50 20 4F 46 20 C2 | AT THE TOP OF .| 00000330: C1 D3 C9 C3 20 D2 C1 CD 2E 20 20 C5 41 43 48 0D |.... .... .ACH.| 00000340: 53 55 43 43 45 53 53 49 56 45 20 53 54 52 49 4E |SUCCESSIVE STRIN| 00000350: 47 20 49 53 20 53 54 4F 52 45 44 20 49 4E 20 54 |G IS STORED IN T| 00000360: 48 45 0D 46 49 52 53 54 20 46 52 45 45 20 41 52 |HE.FIRST FREE AR| 00000370: 45 41 20 43 4F 4E 54 41 49 4E 49 4E 47 20 45 4E |EA CONTAINING EN| 00000380: 4F 55 47 48 20 52 4F 4F 4D 0D 46 4F 52 20 54 48 |OUGH ROOM.FOR TH| 00000390: 45 20 45 4E 54 49 52 45 20 53 54 52 49 4E 47 2E |E ENTIRE STRING.| 000003A0: 20 20 D4 48 49 53 20 50 52 4F 43 45 53 53 0D 43 | .HIS PROCESS.C| 000003B0: 4F 4E 54 49 4E 55 45 53 20 55 4E 54 49 4C 20 54 |ONTINUES UNTIL T| 000003C0: 48 45 20 43 4F 4D 50 55 54 45 52 20 46 49 4E 44 |HE COMPUTER FIND| 000003D0: 53 0D 54 48 41 54 20 54 48 45 20 53 50 41 43 45 |S.THAT THE SPACE| 000003E0: 20 42 45 54 57 45 45 4E 20 54 48 45 20 4C 41 53 | BETWEEN THE LAS| 000003F0: 54 20 53 54 52 49 4E 47 0D 41 4E 44 20 54 48 45 |T STRING.AND THE| 00000400: 20 54 4F 50 20 4F 46 20 41 52 52 41 59 53 20 49 | TOP OF ARRAYS I| 00000410: 53 20 54 4F 4F 20 53 4D 41 4C 4C 20 46 4F 52 0D |S TOO SMALL FOR.| 00000420: 54 48 45 20 43 55 52 52 45 4E 54 20 53 54 52 49 |THE CURRENT STRI| 00000430: 4E 47 2E 0D 20 20 20 20 D7 48 45 4E 20 54 48 49 |NG.. .HEN THI| 00000440: 53 20 48 41 50 50 45 4E 53 2C 20 54 48 45 20 47 |S HAPPENS, THE G| 00000450: 41 52 42 41 47 45 0D 43 4F 4C 4C 45 43 54 49 4F |ARBAGE.COLLECTIO| 00000460: 4E 20 52 4F 55 54 49 4E 45 20 41 54 54 45 4D 50 |N ROUTINE ATTEMP| 00000470: 54 53 20 54 4F 0D 52 45 4F 52 47 41 4E 49 5A 45 |TS TO.REORGANIZE| 00000480: 20 54 48 45 20 53 50 41 43 45 20 41 42 4F 56 45 | THE SPACE ABOVE| 00000490: 20 41 52 52 41 59 53 2E 0D 0D 20 20 20 20 D4 4F | ARRAYS... .O| 000004A0: 20 53 45 45 20 57 48 59 20 49 54 20 4D 41 59 20 | SEE WHY IT MAY | 000004B0: 42 45 20 50 4F 53 53 49 42 4C 45 20 54 4F 0D 52 |BE POSSIBLE TO.R| 000004C0: 45 4F 52 47 41 4E 49 5A 45 20 54 48 45 20 53 50 |EORGANIZE THE SP| 000004D0: 41 43 45 20 57 49 54 48 4F 55 54 20 4C 4F 53 49 |ACE WITHOUT LOSI| 000004E0: 4E 47 0D 56 41 52 49 41 42 4C 45 53 2C 20 43 4F |NG.VARIABLES, CO| 000004F0: 4E 53 49 44 45 52 20 41 20 50 52 4F 47 52 41 4D |NSIDER A PROGRAM| 00000500: 20 57 48 49 43 48 0D 55 53 45 53 20 C1 24 20 41 | WHICH.USES .$ A| 00000510: 4E 44 20 C2 24 20 4F 56 45 52 20 41 4E 44 20 4F |ND .$ OVER AND O| 00000520: 56 45 52 2E 20 20 D3 55 50 50 4F 53 45 0D 54 48 |VER. .UPPOSE.TH| 00000530: 41 54 20 45 41 43 48 20 49 53 20 53 54 4F 52 45 |AT EACH IS STORE| 00000540: 44 20 49 4E 20 48 49 47 48 20 4D 45 4D 4F 52 59 |D IN HIGH MEMORY| 00000550: 20 41 4E 44 0D 45 41 43 48 20 54 41 4B 45 53 20 | AND.EACH TAKES | 00000560: 4F 4E 20 54 48 45 53 45 20 56 41 4C 55 45 53 20 |ON THESE VALUES | 00000570: 49 4E 20 54 48 49 53 0D 4F 52 44 45 52 3A 20 C1 |IN THIS.ORDER: .| 00000580: 24 20 49 53 22 C3 C1 D4 22 2C 20 C1 24 20 49 53 |$ IS"...", .$ IS| 00000590: 20 22 C2 C9 D2 C4 22 2C 20 C2 24 20 49 53 0D 22 | "....", .$ IS."| 000005A0: CE D5 CD C2 C5 D2 22 20 41 4E 44 20 46 49 4E 41 |......" AND FINA| 000005B0: 4C 4C 59 20 C2 24 20 49 53 20 22 CC C5 D4 D4 C5 |LLY .$ IS ".....| 000005C0: D2 2E 22 0D D4 48 45 20 54 4F 50 20 4F 46 20 4D |.."..HE TOP OF M| 000005D0: 45 4D 4F 52 59 20 57 49 4C 4C 20 4E 4F 57 20 43 |EMORY WILL NOW C| 000005E0: 4F 4E 54 41 49 4E 3A 0D 0D 20 20 20 20 20 CC C5 |ONTAIN:.. ..| 000005F0: D4 D4 C5 D2 CE D5 CD C2 C5 D2 C2 C9 D2 C4 C3 C1 |................| 00000600: D4 0D 0D 0D 0D 0D 0D 20 20 20 20 C9 46 20 54 48 |....... .F TH| 00000610: 45 20 47 41 52 42 41 47 45 20 43 4F 4C 4C 45 43 |E GARBAGE COLLEC| 00000620: 54 49 4F 4E 20 52 4F 55 54 49 4E 45 0D 49 53 20 |TION ROUTINE.IS | 00000630: 55 53 45 44 2C 20 54 48 45 20 43 4F 4D 50 55 54 |USED, THE COMPUT| 00000640: 45 52 20 57 49 4C 4C 20 4C 4F 4F 4B 20 41 54 20 |ER WILL LOOK AT | 00000650: 54 48 45 0D 50 4F 49 4E 54 45 52 53 20 4F 46 20 |THE.POINTERS OF | 00000660: 41 4C 4C 20 56 41 52 49 41 42 4C 45 53 20 41 4E |ALL VARIABLES AN| 00000670: 44 20 53 45 4C 45 43 54 0D 54 48 45 20 4F 4E 45 |D SELECT.THE ONE| 00000680: 20 4E 45 41 52 45 53 54 20 54 48 45 20 54 4F 50 | NEAREST THE TOP| 00000690: 20 4F 46 20 D2 C1 CD 2E 20 20 C9 4E 0D 54 48 49 | OF .... .N.THI| 000006A0: 53 20 43 41 53 45 2C 20 49 54 20 49 53 20 C1 24 |S CASE, IT IS .$| 000006B0: 20 41 4E 44 20 54 48 45 20 50 4F 49 4E 54 45 52 | AND THE POINTER| 000006C0: 53 0D 49 4E 44 49 43 41 54 45 20 54 48 45 20 53 |S.INDICATE THE S| 000006D0: 54 41 52 54 20 4F 46 20 C2 C9 D2 C4 2C 20 54 48 |TART OF ...., TH| 000006E0: 45 0D 43 55 52 52 45 4E 54 20 56 41 4C 55 45 20 |E.CURRENT VALUE | 000006F0: 4F 46 20 C1 24 2E 20 20 D3 49 4E 43 45 20 54 48 |OF .$. .INCE TH| 00000700: 49 53 20 49 53 0D 54 48 45 20 48 49 47 48 45 53 |IS IS.THE HIGHES| 00000710: 54 20 41 44 44 52 45 53 53 20 46 4F 55 4E 44 2C |T ADDRESS FOUND,| 00000720: 20 41 4E 59 20 53 54 52 49 4E 47 0D 41 42 4F 56 | ANY STRING.ABOV| 00000730: 45 20 48 45 52 45 20 49 53 20 4E 4F 20 4C 4F 4E |E HERE IS NO LON| 00000740: 47 45 52 20 4E 45 45 44 45 44 20 53 4F 20 54 48 |GER NEEDED SO TH| 00000750: 45 0D 43 4F 4D 50 55 54 45 52 20 4D 4F 56 45 53 |E.COMPUTER MOVES| 00000760: 20 C2 C9 D2 C4 20 54 4F 20 54 48 45 20 54 4F 50 | .... TO THE TOP| 00000770: 20 41 4E 44 20 54 48 45 0D 4D 45 4D 4F 52 59 20 | AND THE.MEMORY | 00000780: 4E 4F 57 20 43 4F 4E 54 41 49 4E 53 3A 0D 0D 20 |NOW CONTAINS:.. | 00000790: 20 20 20 20 CC C5 D4 D4 C5 D2 CE D5 CD C2 C5 D2 | ............| 000007A0: C2 C9 D2 C2 C9 D2 C4 0D 0D 0D 0D 0D 0D 0D 20 20 |.............. | 000007B0: 20 20 D4 48 45 20 52 4F 55 54 49 4E 45 20 4E 4F | .HE ROUTINE NO| 000007C0: 57 20 4C 4F 4F 4B 53 20 54 48 52 4F 55 47 48 20 |W LOOKS THROUGH | 000007D0: 54 48 45 0D 45 4E 54 49 52 45 20 4C 49 53 54 20 |THE.ENTIRE LIST | 000007E0: 41 47 41 49 4E 2C 20 44 45 43 49 44 49 4E 47 20 |AGAIN, DECIDING | 000007F0: 57 48 49 43 48 0D 50 4F 49 4E 54 45 52 20 50 4F |WHICH.POINTER PO| 00000800: 49 4E 54 53 20 54 4F 20 4E 45 58 54 20 48 49 47 |INTS TO NEXT HIG| 00000810: 48 45 53 54 20 4D 45 4D 4F 52 59 0D 4C 4F 43 41 |HEST MEMORY.LOCA| 00000820: 54 49 4F 4E 2E 20 20 C9 4E 20 4F 55 52 20 45 58 |TION. .N OUR EX| 00000830: 41 4D 50 4C 45 20 54 48 45 52 45 20 49 53 0D 4F |AMPLE THERE IS.O| 00000840: 4E 4C 59 20 4F 4E 45 20 53 54 52 49 4E 47 20 4C |NLY ONE STRING L| 00000850: 45 46 54 2C 20 C2 24 2E 20 20 D4 48 45 20 43 55 |EFT, .$. .HE CU| 00000860: 52 52 45 4E 54 0D 56 41 4C 55 45 20 4F 46 20 C2 |RRENT.VALUE OF .| 00000870: 24 20 49 53 20 CC C5 D4 D4 C5 D2 2C 20 53 4F 20 |$ IS ......, SO | 00000880: 54 48 49 53 20 49 53 0D 4D 4F 56 45 44 20 54 4F |THIS IS.MOVED TO| 00000890: 20 54 48 45 20 4E 45 58 54 20 53 50 41 43 45 20 | THE NEXT SPACE | 000008A0: 41 46 54 45 52 20 54 48 45 20 4E 45 57 0D 50 4F |AFTER THE NEW.PO| 000008B0: 53 49 54 49 4F 4E 20 4F 46 20 C1 24 20 41 4E 44 |SITION OF .$ AND| 000008C0: 20 54 48 45 20 4D 45 4D 4F 52 59 20 4C 4F 4F 4B | THE MEMORY LOOK| 000008D0: 53 0D 4C 49 4B 45 20 54 48 49 53 3A 0D 0D 20 20 |S.LIKE THIS:.. | 000008E0: 20 20 20 CC C5 D4 D4 C5 D2 CE D5 CD CC C5 D4 D4 | .............| 000008F0: C5 D2 C2 C9 D2 C4 0D 0D 20 20 20 20 D4 48 45 20 |........ .HE | 00000900: 50 4F 49 4E 54 45 52 20 57 48 49 43 48 20 49 4E |POINTER WHICH IN| 00000910: 44 49 43 41 54 45 53 20 54 48 45 0D 42 4F 54 54 |DICATES THE.BOTT| 00000920: 4F 4D 20 4F 46 20 53 54 52 49 4E 47 53 20 49 53 |OM OF STRINGS IS| 00000930: 20 4E 4F 57 20 53 45 54 20 54 4F 20 54 48 45 0D | NOW SET TO THE.| 00000940: 53 50 41 43 45 20 57 48 45 52 45 20 54 48 45 20 |SPACE WHERE THE | 00000950: 4E 45 57 4C 59 20 50 4C 41 43 45 44 20 CC C5 D4 |NEWLY PLACED ...| 00000960: D4 C5 D2 0D 53 54 41 52 54 53 2E 20 20 D4 48 45 |....STARTS. .HE| 00000970: 20 4F 4C 44 20 56 41 4C 55 45 53 20 41 52 45 20 | OLD VALUES ARE | 00000980: 4E 4F 54 20 45 52 41 53 45 44 0D 42 55 54 20 57 |NOT ERASED.BUT W| 00000990: 49 4C 4C 20 42 45 20 4F 56 45 52 57 52 49 54 54 |ILL BE OVERWRITT| 000009A0: 45 4E 20 42 59 20 54 48 45 20 4E 45 58 54 0D 53 |EN BY THE NEXT.S| 000009B0: 54 52 49 4E 47 2E 0D 0D 20 20 20 20 D3 49 4D 50 |TRING... .IMP| 000009C0: 4C 45 20 45 4E 4F 55 47 48 2C 20 42 55 54 20 49 |LE ENOUGH, BUT I| 000009D0: 46 20 54 48 45 20 4E 55 4D 42 45 52 0D 4F 46 20 |F THE NUMBER.OF | 000009E0: 56 41 52 49 41 42 4C 45 53 20 49 53 20 4C 41 52 |VARIABLES IS LAR| 000009F0: 47 45 2C 20 54 48 45 20 50 52 4F 43 45 53 53 20 |GE, THE PROCESS | 00000A00: 43 41 4E 0D 42 45 20 54 49 4D 45 20 43 4F 4E 53 |CAN.BE TIME CONS| 00000A10: 55 4D 49 4E 47 2E 20 20 D3 49 4E 43 45 20 54 48 |UMING. .INCE TH| 00000A20: 45 20 53 49 4D 50 4C 45 0D 56 41 52 49 41 42 4C |E SIMPLE.VARIABL| 00000A30: 45 53 20 41 4E 44 20 54 48 45 20 41 52 52 41 59 |ES AND THE ARRAY| 00000A40: 20 56 41 52 49 41 42 4C 45 53 20 4D 41 59 0D 43 | VARIABLES MAY.C| 00000A50: 4F 4E 54 41 49 4E 20 53 54 52 49 4E 47 53 2C 20 |ONTAIN STRINGS, | 00000A60: 41 4C 4C 20 4F 46 20 54 48 45 53 45 20 41 52 45 |ALL OF THESE ARE| 00000A70: 41 53 0D 4D 55 53 54 20 42 45 20 53 45 41 52 43 |AS.MUST BE SEARC| 00000A80: 48 45 44 20 43 4F 4D 50 4C 45 54 45 4C 59 20 C6 |HED COMPLETELY .| 00000A90: CF D2 20 C5 C1 C3 C8 0D D6 C1 D2 C9 C1 C2 CC C5 |.. .............| 00000AA0: 2E 20 20 C9 46 20 54 48 45 52 45 20 41 52 45 20 |. .F THERE ARE | 00000AB0: 31 30 30 20 56 41 52 49 41 42 4C 45 53 2C 0D 45 |100 VARIABLES,.E| 00000AC0: 41 43 48 20 57 49 4C 4C 20 42 45 20 4C 4F 4F 4B |ACH WILL BE LOOK| 00000AD0: 45 44 20 41 54 20 4D 41 4E 59 20 54 49 4D 45 53 |ED AT MANY TIMES| 00000AE0: 2C 20 41 4E 44 0D 4D 4F 52 45 20 54 49 4D 45 20 |, AND.MORE TIME | 00000AF0: 57 49 4C 4C 20 42 45 20 52 45 51 55 49 52 45 44 |WILL BE REQUIRED| 00000B00: 20 54 4F 20 4D 4F 56 45 0D 45 41 43 48 20 53 54 | TO MOVE.EACH ST| 00000B10: 52 49 4E 47 2E 0D 0D 20 20 20 20 CE 4F 54 49 43 |RING... .OTIC| 00000B20: 45 20 54 48 41 54 20 54 48 45 20 52 4F 55 54 49 |E THAT THE ROUTI| 00000B30: 4E 45 20 57 4F 52 4B 53 20 57 49 54 48 0D 50 4F |NE WORKS WITH.PO| 00000B40: 49 4E 54 45 52 53 20 41 4E 44 20 4C 45 4E 47 54 |INTERS AND LENGT| 00000B50: 48 20 4F 46 20 53 54 52 49 4E 47 20 55 4E 54 49 |H OF STRING UNTI| 00000B60: 4C 0D 54 48 45 20 41 43 54 55 41 4C 20 4D 4F 56 |L.THE ACTUAL MOV| 00000B70: 45 20 49 53 20 4D 41 44 45 2E 20 20 C5 56 45 4E |E IS MADE. .VEN| 00000B80: 20 54 48 45 4E 2C 0D 54 48 45 53 45 20 4E 55 4D | THEN,.THESE NUM| 00000B90: 42 45 52 53 20 41 4C 4C 4F 57 20 54 48 45 20 53 |BERS ALLOW THE S| 00000BA0: 54 52 49 4E 47 20 54 4F 20 42 45 0D 4D 4F 56 45 |TRING TO BE.MOVE| 00000BB0: 44 20 45 46 46 49 43 49 45 4E 54 4C 59 2C 20 53 |D EFFICIENTLY, S| 00000BC0: 49 4E 43 45 20 54 48 45 20 53 54 41 52 54 20 4F |INCE THE START O| 00000BD0: 46 0D 54 48 45 20 4E 45 57 20 4C 4F 43 41 54 49 |F.THE NEW LOCATI| 00000BE0: 4F 4E 20 49 53 20 45 41 53 49 4C 59 20 43 41 4C |ON IS EASILY CAL| 00000BF0: 43 55 4C 41 54 45 44 2E 0D 0D 20 20 20 20 D4 48 |CULATED... .H| 00000C00: 49 53 20 41 4C 53 4F 20 4D 45 41 4E 53 20 54 48 |IS ALSO MEANS TH| 00000C10: 41 54 20 54 48 45 20 41 43 54 55 41 4C 0D 4D 4F |AT THE ACTUAL.MO| 00000C20: 56 45 53 20 52 45 51 55 49 52 45 44 20 4F 4E 4C |VES REQUIRED ONL| 00000C30: 59 20 41 20 46 52 41 43 54 49 4F 4E 20 4F 46 20 |Y A FRACTION OF | 00000C40: 54 48 45 0D 54 49 4D 45 20 54 48 41 54 20 54 48 |THE.TIME THAT TH| 00000C50: 45 20 53 45 41 52 43 48 20 52 45 51 55 49 52 45 |E SEARCH REQUIRE| 00000C60: 53 20 57 48 45 4E 0D 54 48 45 20 4E 55 4D 42 45 |S WHEN.THE NUMBE| 00000C70: 52 20 4F 46 20 53 54 52 49 4E 47 53 20 49 53 20 |R OF STRINGS IS | 00000C80: 46 41 49 52 4C 59 0D 4C 41 52 47 45 2E 0D 0D 20 |FAIRLY.LARGE... | 00000C90: 20 20 20 D4 48 45 20 4C 45 4E 47 54 48 20 4F 46 | .HE LENGTH OF| 00000CA0: 20 53 54 52 49 4E 47 53 20 48 41 53 20 56 45 52 | STRINGS HAS VER| 00000CB0: 59 0D 4C 49 54 54 4C 45 20 45 46 46 45 43 54 20 |Y.LITTLE EFFECT | 00000CC0: 4F 4E 20 54 48 45 20 54 49 4D 45 20 52 45 51 55 |ON THE TIME REQU| 00000CD0: 49 52 45 44 20 46 4F 52 0D 47 41 52 42 41 47 45 |IRED FOR.GARBAGE| 00000CE0: 20 43 4F 4C 4C 45 43 54 49 4F 4E 2E 20 20 D4 48 | COLLECTION. .H| 00000CF0: 45 20 44 4F 4D 49 4E 41 54 49 4E 47 0D 46 41 43 |E DOMINATING.FAC| 00000D00: 54 4F 52 20 49 53 20 54 48 45 20 4E 55 4D 42 45 |TOR IS THE NUMBE| 00000D10: 52 20 4F 46 20 53 54 52 49 4E 47 53 20 53 54 4F |R OF STRINGS STO| 00000D20: 52 45 44 0D 41 42 4F 56 45 20 54 48 45 20 45 4E |RED.ABOVE THE EN| 00000D30: 44 20 4F 46 20 41 52 52 41 59 53 2E 20 20 D7 48 |D OF ARRAYS. .H| 00000D40: 45 4E 20 54 48 45 0D 53 45 41 52 43 48 20 49 53 |EN THE.SEARCH IS| 00000D50: 20 4D 41 44 45 2C 20 56 41 52 49 41 42 4C 45 53 | MADE, VARIABLES| 00000D60: 20 53 54 4F 52 45 44 20 49 4E 0D 54 48 45 20 43 | STORED IN.THE C| 00000D70: 4F 44 45 20 41 52 45 20 50 41 53 53 45 44 20 4F |ODE ARE PASSED O| 00000D80: 56 45 52 20 53 49 4E 43 45 20 54 48 45 59 0D 41 |VER SINCE THEY.A| 00000D90: 52 45 20 4E 45 56 45 52 20 4D 4F 56 45 44 2E 20 |RE NEVER MOVED. | 00000DA0: 20 D2 55 4E 20 54 48 45 20 44 45 4D 4F 20 46 4F | .UN THE DEMO FO| 00000DB0: 52 0D 45 56 49 44 45 4E 43 45 20 4F 46 20 54 48 |R.EVIDENCE OF TH| 00000DC0: 45 53 45 20 53 54 41 54 45 4D 45 4E 54 53 20 41 |ESE STATEMENTS A| 00000DD0: 4E 44 20 52 45 41 44 0D 54 48 45 20 54 45 58 54 |ND READ.THE TEXT| 00000DE0: 20 53 43 52 45 45 4E 53 20 46 4F 52 20 4D 4F 52 | SCREENS FOR MOR| 00000DF0: 45 0D 49 4E 46 4F 52 4D 41 54 49 4F 4E 2E 0D 0D |E.INFORMATION...| 00000E00: 0D 0D 20 20 20 20 D4 48 41 54 20 41 42 4F 55 54 |.. .HAT ABOUT| 00000E10: 20 44 4F 45 53 20 49 54 20 46 4F 52 20 54 48 45 | DOES IT FOR THE| 00000E20: 20 53 55 4D 4D 41 52 59 0D 4F 46 20 54 48 45 20 | SUMMARY.OF THE | 00000E30: 53 54 55 44 59 2C 20 53 4F 20 4E 4F 57 20 C9 20 |STUDY, SO NOW . | 00000E40: 57 49 4C 4C 20 43 4C 4F 53 45 20 57 49 54 48 0D |WILL CLOSE WITH.| 00000E50: 53 4F 4D 45 20 43 4F 4D 4D 45 4E 54 53 20 41 4E |SOME COMMENTS AN| 00000E60: 44 20 53 4F 4D 45 20 53 55 47 47 45 53 54 49 4F |D SOME SUGGESTIO| 00000E70: 4E 53 2E 0D 0D 20 20 20 20 D4 48 49 53 20 57 48 |NS... .HIS WH| 00000E80: 4F 4C 45 20 54 48 49 4E 47 20 57 41 53 20 50 52 |OLE THING WAS PR| 00000E90: 4F 4D 50 54 45 44 20 42 59 0D CA 45 46 46 20 CA |OMPTED BY..EFF .| 00000EA0: 4F 4E 45 53 27 53 20 C2 C1 D3 C9 C3 D3 20 41 52 |ONES'S ...... AR| 00000EB0: 54 49 43 4C 45 20 4F 4E 0D CC CF C1 C4 D3 D4 C1 |TICLE ON........| 00000EC0: D2 20 23 35 37 2C 20 41 4E 44 20 57 48 49 4C 45 |. #57, AND WHILE| 00000ED0: 20 41 20 46 45 57 20 4F 46 20 48 49 53 0D 52 45 | A FEW OF HIS.RE| 00000EE0: 4D 41 52 4B 53 20 4D 41 59 20 4E 45 45 44 20 54 |MARKS MAY NEED T| 00000EF0: 4F 20 42 45 20 51 55 41 4C 49 46 49 45 44 2C 20 |O BE QUALIFIED, | 00000F00: 48 49 53 0D 4D 41 49 4E 20 50 4F 49 4E 54 53 20 |HIS.MAIN POINTS | 00000F10: 41 52 45 20 57 45 4C 4C 20 50 52 4F 56 45 44 2E |ARE WELL PROVED.| 00000F20: 20 20 C1 20 46 45 57 0D 4A 49 46 46 49 45 53 20 | . FEW.JIFFIES | 00000F30: 48 45 52 45 20 41 4E 44 20 54 48 45 52 45 20 41 |HERE AND THERE A| 00000F40: 52 45 20 4F 46 20 4E 4F 0D 47 52 45 41 54 20 49 |RE OF NO.GREAT I| 00000F50: 4D 50 4F 52 54 2E 20 20 C1 20 46 45 57 20 4A 49 |MPORT. . FEW JI| 00000F60: 46 46 49 45 53 20 49 4E 20 45 41 43 48 0D 50 41 |FFIES IN EACH.PA| 00000F70: 52 54 20 4F 46 20 41 20 31 30 30 30 20 53 54 45 |RT OF A 1000 STE| 00000F80: 50 20 4C 4F 4F 50 20 41 52 45 20 56 45 52 59 0D |P LOOP ARE VERY.| 00000F90: 49 4D 50 4F 52 54 41 4E 54 2E 20 20 CD 4F 52 45 |IMPORTANT. .ORE| 00000FA0: 20 54 49 4D 45 20 49 53 20 47 41 49 4E 45 44 20 | TIME IS GAINED | 00000FB0: 42 59 0D 55 53 49 4E 47 20 53 48 4F 52 54 20 43 |BY.USING SHORT C| 00000FC0: 4F 44 45 20 41 4E 44 20 45 46 46 49 43 49 45 4E |ODE AND EFFICIEN| 00000FD0: 54 0D 41 4C 47 4F 52 49 54 48 4D 53 20 54 48 41 |T.ALGORITHMS THA| 00000FE0: 4E 20 42 59 20 41 54 54 45 4D 50 54 49 4E 47 20 |N BY ATTEMPTING | 00000FF0: 54 4F 0D 43 48 41 4E 47 45 20 4D 55 4C 54 49 50 |TO.CHANGE MULTIP| 00001000: 4C 59 20 54 4F 20 44 49 56 49 44 45 20 4F 52 20 |LY TO DIVIDE OR | 00001010: 53 4F 4D 45 0D 4F 54 48 45 52 20 53 55 43 48 20 |SOME.OTHER SUCH | 00001020: 44 4F 55 42 54 46 55 4C 20 53 43 48 45 4D 45 2E |DOUBTFUL SCHEME.| 00001030: 20 20 D7 4F 52 52 59 0D 4D 4F 52 45 20 41 42 4F | .ORRY.MORE ABO| 00001040: 55 54 20 54 48 45 20 42 49 47 20 50 49 43 54 55 |UT THE BIG PICTU| 00001050: 52 45 2E 0D 0D 20 20 20 20 C9 20 4E 4F 57 20 42 |RE... . NOW B| 00001060: 45 4C 49 45 56 45 20 54 48 41 54 20 47 41 52 42 |ELIEVE THAT GARB| 00001070: 41 47 45 0D 43 4F 4C 4C 45 43 54 49 4F 4E 20 48 |AGE.COLLECTION H| 00001080: 41 53 20 42 45 45 4E 20 42 41 44 4C 59 20 48 41 |AS BEEN BADLY HA| 00001090: 4E 44 4C 45 44 20 49 4E 0D 54 48 45 20 4C 49 54 |NDLED IN.THE LIT| 000010A0: 45 52 41 54 55 52 45 2E 20 20 D4 48 45 20 55 53 |ERATURE. .HE US| 000010B0: 55 41 4C 20 54 48 49 4E 47 20 48 41 53 0D 42 45 |UAL THING HAS.BE| 000010C0: 45 4E 20 54 4F 20 4D 41 4B 45 20 53 4F 4D 45 20 |EN TO MAKE SOME | 000010D0: 50 52 4F 4E 4F 55 4E 43 45 4D 45 4E 54 0D 57 49 |PRONOUNCEMENT.WI| 000010E0: 54 48 4F 55 54 20 41 4E 59 20 45 56 49 44 45 4E |THOUT ANY EVIDEN| 000010F0: 43 45 20 4F 52 20 45 58 50 4C 41 4E 41 54 49 4F |CE OR EXPLANATIO| 00001100: 4E 2E 0D CD 59 20 4F 50 49 4E 49 4F 4E 20 49 53 |N...Y OPINION IS| 00001110: 20 54 48 49 53 3A 20 C9 46 20 54 48 45 20 4E 55 | THIS: .F THE NU| 00001120: 4D 42 45 52 20 4F 46 0D 53 54 52 49 4E 47 53 20 |MBER OF.STRINGS | 00001130: 53 54 4F 52 45 44 20 41 54 20 54 48 45 20 54 4F |STORED AT THE TO| 00001140: 50 20 4F 46 20 4D 45 4D 4F 52 59 20 49 53 0D 52 |P OF MEMORY IS.R| 00001150: 45 4C 41 54 49 56 45 4C 59 20 53 4D 41 4C 4C 2C |ELATIVELY SMALL,| 00001160: 20 53 41 59 20 4C 45 53 53 20 54 48 41 4E 20 36 | SAY LESS THAN 6| 00001170: 30 2C 0D 53 45 52 49 4F 55 53 20 50 52 4F 42 4C |0,.SERIOUS PROBL| 00001180: 45 4D 53 20 57 49 54 48 20 47 41 52 42 41 47 45 |EMS WITH GARBAGE| 00001190: 0D 43 4F 4C 4C 45 43 54 49 4F 4E 20 57 49 4C 4C |.COLLECTION WILL| 000011A0: 20 4F 4E 4C 59 20 41 52 49 53 45 20 49 46 0D 41 | ONLY ARISE IF.A| 000011B0: 56 41 49 4C 41 42 4C 45 20 4D 45 4D 4F 52 59 20 |VAILABLE MEMORY | 000011C0: 49 53 20 53 4D 41 4C 4C 2E 20 20 D4 48 45 0D 50 |IS SMALL. .HE.P| 000011D0: 52 4F 42 4C 45 4D 2C 20 54 48 45 4E 2C 20 49 53 |ROBLEM, THEN, IS| 000011E0: 20 54 4F 20 53 54 52 49 4B 45 20 41 0D 42 41 4C | TO STRIKE A.BAL| 000011F0: 41 4E 43 45 2E 0D 0D 0D 0D 0D 0D 0D 20 20 20 20 |ANCE........ | 00001200: C9 20 53 55 53 50 45 43 54 20 54 48 45 52 45 20 |. SUSPECT THERE | 00001210: 41 52 45 20 4D 41 4E 59 0D 54 45 43 48 4E 49 51 |ARE MANY.TECHNIQ| 00001220: 55 45 53 20 54 48 41 54 20 4E 45 45 44 20 54 4F |UES THAT NEED TO| 00001230: 20 42 45 20 45 58 50 4C 4F 52 45 44 0D 41 4E 44 | BE EXPLORED.AND| 00001240: 20 44 49 53 43 55 53 53 45 44 2C 20 42 55 54 20 | DISCUSSED, BUT | 00001250: C9 20 41 4D 20 4E 4F 54 20 54 48 45 20 4F 4E 45 |. AM NOT THE ONE| 00001260: 20 54 4F 0D 44 4F 20 49 54 2E 20 20 C9 20 48 41 | TO.DO IT. . HA| 00001270: 44 20 41 20 4C 4F 54 20 4F 46 20 54 52 4F 55 42 |D A LOT OF TROUB| 00001280: 4C 45 0D 44 45 53 49 47 4E 49 4E 47 20 50 52 4F |LE.DESIGNING PRO| 00001290: 47 52 41 4D 53 20 54 4F 20 49 4C 4C 55 53 54 52 |GRAMS TO ILLUSTR| 000012A0: 41 54 45 20 54 48 45 0D 49 44 45 41 2E 20 20 D4 |ATE THE.IDEA. .| 000012B0: 48 45 20 4D 4F 44 49 46 49 45 44 20 C2 D9 D4 C5 |HE MODIFIED ....| 000012C0: D3 20 23 35 37 20 44 45 4D 4F 0D 54 48 41 54 20 |. #57 DEMO.THAT | 000012D0: C9 20 4D 45 4E 54 49 4F 4E 45 44 20 49 4E 20 D0 |. MENTIONED IN .| 000012E0: 41 52 54 20 C9 20 43 4F 4E 54 41 49 4E 45 44 0D |ART . CONTAINED.| 000012F0: 56 45 52 59 20 4C 4F 4E 47 20 28 41 42 4F 55 54 |VERY LONG (ABOUT| 00001300: 20 31 34 30 20 43 48 41 52 41 43 54 45 52 53 29 | 140 CHARACTERS)| 00001310: 0D 53 54 52 49 4E 47 53 20 41 4E 44 20 57 41 53 |.STRINGS AND WAS| 00001320: 20 43 4F 4E 53 54 41 4E 54 4C 59 20 47 45 4E 45 | CONSTANTLY GENE| 00001330: 52 41 54 49 4E 47 0D 4D 4F 52 45 2E 20 20 D9 45 |RATING.MORE. .E| 00001340: 54 2C 20 47 41 52 42 41 47 45 20 57 41 53 20 4F |T, GARBAGE WAS O| 00001350: 4E 4C 59 20 43 4F 4C 4C 45 43 54 45 44 0D 41 46 |NLY COLLECTED.AF| 00001360: 54 45 52 20 41 42 4F 55 54 20 53 49 58 20 48 41 |TER ABOUT SIX HA| 00001370: 4E 44 53 20 41 4E 44 20 52 45 51 55 49 52 45 44 |NDS AND REQUIRED| 00001380: 0D 41 42 4F 55 54 20 D3 C5 D6 C5 CE 20 CA C9 C6 |.ABOUT ..... ...| 00001390: C6 C9 C5 D3 2E 0D 0D 20 20 20 20 C5 4D 45 52 53 |....... .MERS| 000013A0: 4F 4E 20 53 41 49 44 2C 20 22 C6 45 41 52 20 41 |ON SAID, ".EAR A| 000013B0: 4C 57 41 59 53 20 53 50 52 49 4E 47 53 0D 46 52 |LWAYS SPRINGS.FR| 000013C0: 4F 4D 20 49 47 4E 4F 52 41 4E 43 45 2E 22 20 20 |OM IGNORANCE." | 000013D0: C3 4F 55 4C 44 20 49 54 20 42 45 20 54 48 41 54 |.OULD IT BE THAT| 000013E0: 20 48 45 0D 57 41 53 20 54 41 4C 4B 49 4E 47 20 | HE.WAS TALKING | 000013F0: 41 42 4F 55 54 20 46 45 41 52 20 4F 46 20 47 41 |ABOUT FEAR OF GA| 00001400: 52 42 41 47 45 0D 43 4F 4C 4C 45 43 54 49 4F 4E |RBAGE.COLLECTION| 00001410: 3F 0D 0D 0D 20 20 20 20 C9 54 20 53 45 45 4D 53 |?... .T SEEMS| 00001420: 20 4F 42 56 49 4F 55 53 20 54 48 41 54 20 54 48 | OBVIOUS THAT TH| 00001430: 45 20 53 50 45 45 44 0D 41 4E 44 20 4D 45 4D 4F |E SPEED.AND MEMO| 00001440: 52 59 20 55 53 41 47 45 20 41 52 45 20 43 4F 4E |RY USAGE ARE CON| 00001450: 4E 45 43 54 45 44 20 49 4E 20 4D 41 4E 59 0D 57 |NECTED IN MANY.W| 00001460: 41 59 53 20 41 4E 44 20 54 48 41 54 20 54 48 45 |AYS AND THAT THE| 00001470: 20 54 57 4F 20 4D 55 53 54 20 42 45 0D 43 4F 4E | TWO MUST BE.CON| 00001480: 53 49 44 45 52 45 44 20 54 4F 47 45 54 48 45 52 |SIDERED TOGETHER| 00001490: 2E 20 20 C9 20 4C 49 4B 45 20 48 45 41 56 49 4C |. . LIKE HEAVIL| 000014A0: 59 0D 44 4F 43 55 4D 45 4E 54 45 44 20 50 52 4F |Y.DOCUMENTED PRO| 000014B0: 47 52 41 4D 53 2C 20 41 4E 44 20 54 48 49 53 20 |GRAMS, AND THIS | 000014C0: 53 54 55 44 59 0D 53 48 4F 57 53 20 54 48 41 54 |STUDY.SHOWS THAT| 000014D0: 20 53 50 45 45 44 20 49 53 20 4E 4F 54 20 53 45 | SPEED IS NOT SE| 000014E0: 52 49 4F 55 53 4C 59 0D 41 46 46 45 43 54 45 44 |RIOUSLY.AFFECTED| 000014F0: 20 42 59 20 D2 C5 CD 20 53 54 41 54 45 4D 45 4E | BY ... STATEMEN| 00001500: 54 53 2C 20 55 4E 4C 45 53 53 0D 53 50 41 43 45 |TS, UNLESS.SPACE| 00001510: 20 49 53 20 41 20 50 52 4F 42 4C 45 4D 2E 0D 0D | IS A PROBLEM...| 00001520: 20 20 20 20 C9 4E 20 4F 52 44 45 52 20 54 4F 20 | .N ORDER TO | 00001530: 46 55 4C 4C 59 20 55 4E 44 45 52 53 54 41 4E 44 |FULLY UNDERSTAND| 00001540: 20 48 4F 57 0D C2 C1 D3 C9 C3 20 55 53 45 53 20 | HOW...... USES | 00001550: 4D 45 4D 4F 52 59 2C 20 4F 4E 45 20 4E 45 45 44 |MEMORY, ONE NEED| 00001560: 53 20 4D 55 43 48 20 4D 4F 52 45 0D 44 45 54 41 |S MUCH MORE.DETA| 00001570: 49 4C 20 54 48 41 4E 20 57 41 53 20 50 4F 53 53 |IL THAN WAS POSS| 00001580: 49 42 4C 45 20 48 45 52 45 2E 20 20 C9 0D 53 54 |IBLE HERE. ..ST| 00001590: 52 4F 4E 47 4C 59 20 53 55 47 47 45 53 54 20 54 |RONGLY SUGGEST T| 000015A0: 48 41 54 20 53 45 52 49 4F 55 53 0D 50 52 4F 47 |HAT SERIOUS.PROG| 000015B0: 52 41 4D 4D 45 52 53 20 4D 55 53 54 20 55 4E 44 |RAMMERS MUST UND| 000015C0: 45 52 53 54 41 4E 44 20 54 48 49 53 20 41 4E 44 |ERSTAND THIS AND| 000015D0: 0D 53 55 47 47 45 53 54 20 54 48 45 20 53 4F 55 |.SUGGEST THE SOU| 000015E0: 52 43 45 53 20 54 48 41 54 20 C9 20 4D 45 4E 54 |RCES THAT . MENT| 000015F0: 49 4F 4E 45 44 0D 49 4E 20 D0 41 52 54 20 C9 2E |IONED.IN .ART ..| 00001600: 0D 0D 0D 20 20 20 20 CE 55 4D 42 45 52 53 20 41 |... .UMBERS A| 00001610: 4E 44 20 53 54 52 49 4E 47 53 20 53 54 4F 52 45 |ND STRINGS STORE| 00001620: 44 20 42 59 0D 41 52 52 41 59 53 20 55 53 45 20 |D BY.ARRAYS USE | 00001630: 4C 45 53 53 20 53 50 41 43 45 20 41 4E 44 20 41 |LESS SPACE AND A| 00001640: 52 45 20 4D 4F 52 45 0D 51 55 49 43 4B 4C 59 20 |RE MORE.QUICKLY | 00001650: 4C 4F 43 41 54 45 44 20 54 48 41 4E 20 54 48 4F |LOCATED THAN THO| 00001660: 53 45 20 53 54 4F 52 45 44 20 42 59 0D 53 49 4D |SE STORED BY.SIM| 00001670: 50 4C 45 20 56 41 52 49 41 42 4C 45 53 2E 20 20 |PLE VARIABLES. | 00001680: C9 20 42 45 4C 49 45 56 45 20 54 48 41 54 20 49 |. BELIEVE THAT I| 00001690: 54 0D 49 53 20 4F 4E 4C 59 20 41 20 4D 41 54 54 |T.IS ONLY A MATT| 000016A0: 45 52 20 4F 46 20 48 41 42 49 54 20 54 48 41 54 |ER OF HABIT THAT| 000016B0: 20 53 4F 20 4D 41 4E 59 0D 53 49 4D 50 4C 45 20 | SO MANY.SIMPLE | 000016C0: 56 41 52 49 41 42 4C 45 53 20 41 52 45 20 46 4F |VARIABLES ARE FO| 000016D0: 55 4E 44 20 49 4E 20 54 48 45 0D 43 4F 44 45 2E |UND IN THE.CODE.| 000016E0: 20 20 D7 49 54 48 20 41 20 4C 49 54 54 4C 45 20 | .ITH A LITTLE | 000016F0: 41 54 54 49 54 55 44 45 0D 41 44 4A 55 53 54 4D |ATTITUDE.ADJUSTM| 00001700: 45 4E 54 2C 20 57 45 20 43 4F 55 4C 44 20 53 45 |ENT, WE COULD SE| 00001710: 45 20 54 48 49 53 20 43 48 41 4E 47 45 2E 0D C9 |E THIS CHANGE...| 00001720: 20 43 41 4E 4E 4F 54 20 53 45 45 20 41 4E 59 20 | CANNOT SEE ANY | 00001730: 44 49 46 46 49 43 55 4C 54 59 20 49 4E 0D 44 45 |DIFFICULTY IN.DE| 00001740: 43 4C 41 52 49 4E 47 20 C1 CC CC 20 56 41 52 49 |CLARING ... VARI| 00001750: 41 42 4C 45 53 20 45 41 52 4C 59 20 49 4E 20 54 |ABLES EARLY IN T| 00001760: 48 45 0D 50 52 4F 47 52 41 4D 20 4E 4F 52 20 57 |HE.PROGRAM NOR W| 00001770: 49 54 48 20 44 45 43 4C 41 52 49 4E 47 20 54 48 |ITH DECLARING TH| 00001780: 45 20 4D 4F 53 54 0D 48 45 41 56 49 4C 59 20 55 |E MOST.HEAVILY U| 00001790: 53 45 44 20 53 49 4D 50 4C 45 20 56 41 52 49 41 |SED SIMPLE VARIA| 000017A0: 42 4C 45 53 20 4E 45 41 52 20 54 48 45 0D 54 4F |BLES NEAR THE.TO| 000017B0: 50 20 4F 46 20 54 48 45 20 4C 49 53 54 2E 20 20 |P OF THE LIST. | 000017C0: C1 20 53 49 4D 50 4C 45 20 C4 C9 CD 0D 53 54 41 |. SIMPLE ....STA| 000017D0: 54 45 4D 45 4E 54 20 44 4F 45 53 20 49 54 20 41 |TEMENT DOES IT A| 000017E0: 4C 4C 2E 20 20 D4 48 45 52 45 27 53 0D 4E 4F 54 |LL. .HERE'S.NOT| 000017F0: 48 49 4E 47 20 57 52 4F 4E 47 20 57 49 54 48 20 |HING WRONG WITH | 00001800: 53 4F 4D 45 54 48 49 4E 47 20 4C 49 4B 45 0D 0D |SOMETHING LIKE..| 00001810: 31 30 30 20 C4 C9 CD C1 24 2C C9 2C CA 2C CB 2C |100 ....$,.,.,.,| 00001820: C2 24 2C C3 24 2C C2 2C C3 2C C4 2C D8 2C D9 2C |.$,.$,.,.,.,.,.,| 00001830: DA 0D 0D 41 54 20 54 48 45 20 42 45 47 49 4E 4E |...AT THE BEGINN| 00001840: 49 4E 47 20 4F 46 20 59 4F 55 52 20 50 52 4F 47 |ING OF YOUR PROG| 00001850: 52 41 4D 2E 0D 0D 20 20 20 20 CD 59 20 45 58 41 |RAM... .Y EXA| 00001860: 4D 49 4E 41 54 49 4F 4E 20 4F 46 20 43 4F 44 45 |MINATION OF CODE| 00001870: 20 48 41 53 20 53 48 4F 57 4E 0D 54 48 41 54 20 | HAS SHOWN.THAT | 00001880: 53 4F 4D 45 20 50 45 4F 50 4C 45 20 44 4F 20 41 |SOME PEOPLE DO A| 00001890: 20 47 4F 4F 44 20 4A 4F 42 20 4F 46 0D 4B 45 45 | GOOD JOB OF.KEE| 000018A0: 50 49 4E 47 20 54 48 45 20 4E 55 4D 42 45 52 20 |PING THE NUMBER | 000018B0: 4F 46 20 56 41 52 49 41 42 4C 45 53 20 53 4D 41 |OF VARIABLES SMA| 000018C0: 4C 4C 2C 0D 57 48 45 52 45 41 53 20 4F 54 48 45 |LL,.WHEREAS OTHE| 000018D0: 52 53 20 53 45 45 4D 20 54 4F 20 42 45 20 41 46 |RS SEEM TO BE AF| 000018E0: 52 41 49 44 20 54 4F 0D 52 45 55 53 45 20 56 41 |RAID TO.REUSE VA| 000018F0: 52 49 41 42 4C 45 53 20 41 54 20 41 4C 4C 2E 20 |RIABLES AT ALL. | 00001900: 20 C9 54 20 49 53 20 4E 4F 54 0D 44 49 46 46 49 | .T IS NOT.DIFFI| 00001910: 43 55 4C 54 20 54 4F 20 4B 4E 4F 57 20 57 48 45 |CULT TO KNOW WHE| 00001920: 4E 20 54 48 45 20 56 41 4C 55 45 0D 53 54 4F 52 |N THE VALUE.STOR| 00001930: 45 44 20 42 59 20 41 20 56 41 52 49 41 42 4C 45 |ED BY A VARIABLE| 00001940: 20 57 49 4C 4C 20 4E 4F 54 20 42 45 0D 4E 45 45 | WILL NOT BE.NEE| 00001950: 44 45 44 20 41 47 41 49 4E 2C 20 53 4F 20 54 48 |DED AGAIN, SO TH| 00001960: 41 54 20 54 48 45 20 56 41 52 49 41 42 4C 45 20 |AT THE VARIABLE | 00001970: 43 41 4E 0D 42 45 20 52 45 55 53 45 44 2E 0D 0D |CAN.BE REUSED...| 00001980: 20 20 20 20 C5 56 45 4E 20 54 48 4F 55 47 48 20 | .VEN THOUGH | 00001990: C9 20 53 50 45 4E 54 20 48 4F 55 52 53 20 57 41 |. SPENT HOURS WA| 000019A0: 49 54 49 4E 47 0D 46 4F 52 20 4C 4F 4E 47 20 4C |ITING.FOR LONG L| 000019B0: 4F 4F 50 53 20 54 4F 20 52 55 4E 2C 20 48 4F 55 |OOPS TO RUN, HOU| 000019C0: 52 53 20 44 45 53 49 47 4E 49 4E 47 0D 41 4E 44 |RS DESIGNING.AND| 000019D0: 20 52 45 56 49 53 49 4E 47 20 54 45 53 54 53 2C | REVISING TESTS,| 000019E0: 20 48 4F 55 52 53 20 52 45 41 44 49 4E 47 20 41 | HOURS READING A| 000019F0: 4E 44 0D 48 4F 55 52 53 20 45 56 41 4C 55 41 54 |ND.HOURS EVALUAT| 00001A00: 49 4E 47 2C 20 54 48 49 53 20 53 54 55 44 59 20 |ING, THIS STUDY | 00001A10: 48 41 53 20 42 45 45 4E 0D 47 52 41 54 49 46 59 |HAS BEEN.GRATIFY| 00001A20: 49 4E 47 2E 20 20 C9 20 42 45 4C 49 45 56 45 20 |ING. . BELIEVE | 00001A30: 54 48 41 54 20 C9 20 48 41 56 45 0D 4B 45 50 54 |THAT . HAVE.KEPT| 00001A40: 20 4D 59 20 4F 50 49 4E 49 4F 4E 53 20 54 4F 20 | MY OPINIONS TO | 00001A50: 41 20 4D 49 4E 49 4D 55 4D 20 41 4E 44 20 48 41 |A MINIMUM AND HA| 00001A60: 56 45 0D 50 52 4F 56 45 44 20 54 48 4F 53 45 20 |VE.PROVED THOSE | 00001A70: 54 48 49 4E 47 53 20 54 48 41 54 20 C9 20 48 41 |THINGS THAT . HA| 00001A80: 56 45 0D 43 4C 41 49 4D 45 44 2E 0D 0D 20 20 20 |VE.CLAIMED... | 00001A90: 20 C9 20 57 49 53 48 20 54 48 41 54 20 54 48 4F | . WISH THAT THO| 00001AA0: 53 45 20 57 48 4F 20 52 45 41 44 20 54 48 49 53 |SE WHO READ THIS| 00001AB0: 0D 43 4F 55 4C 44 20 4C 45 41 52 4E 20 41 53 20 |.COULD LEARN AS | 00001AC0: 4D 55 43 48 20 41 53 20 C9 20 44 49 44 2E 20 20 |MUCH AS . DID. | 00001AD0: C9 46 20 59 4F 55 0D 57 41 4E 54 20 54 4F 20 4C |.F YOU.WANT TO L| 00001AE0: 45 41 52 4E 20 53 4F 4D 45 54 48 49 4E 47 2C 20 |EARN SOMETHING, | 00001AF0: 54 52 59 20 54 4F 0D 46 49 47 55 52 45 20 4F 55 |TRY TO.FIGURE OU| 00001B00: 54 20 48 4F 57 20 54 4F 20 45 58 50 4C 41 49 4E |T HOW TO EXPLAIN| 00001B10: 20 49 54 20 54 4F 0D 53 4F 4D 45 4F 4E 45 20 45 | IT TO.SOMEONE E| 00001B20: 4C 53 45 2E 0D 0D C6 C5 CE C4 C5 D2 27 D3 20 CE |LSE.........'. .| 00001B30: CF D4 C5 3A 20 D2 49 47 48 54 20 59 4F 55 20 41 |...: .IGHT YOU A| 00001B40: 52 45 2C 0D CD 41 55 52 49 43 45 2E 20 20 C9 20 |RE,..AURICE. . | 00001B50: 4C 45 41 52 4E 45 44 20 51 55 49 54 45 20 41 20 |LEARNED QUITE A | 00001B60: 42 49 54 20 46 52 4F 4D 0D 59 4F 55 52 20 41 52 |BIT FROM.YOUR AR| 00001B70: 54 49 43 4C 45 53 20 41 4E 44 20 41 4D 20 4C 4F |TICLES AND AM LO| 00001B80: 4F 4B 49 4E 47 20 46 4F 52 57 41 52 44 0D 54 4F |OKING FORWARD.TO| 00001B90: 20 53 45 45 49 4E 47 20 4D 4F 52 45 20 49 4E 20 | SEEING MORE IN | 00001BA0: 54 48 45 20 4E 45 41 52 20 46 55 54 55 52 45 2E |THE NEAR FUTURE.| 00001BB0: 0D 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |.. | 00001BC0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001BD0: 20 20 20 CD CA 0D 20 20 20 20 20 20 20 20 20 2A | ... *| 00001BE0: 2A 2A 2A 20 C5 4E 44 20 4F 46 20 D4 45 58 54 20 |*** .ND OF .EXT | 00001BF0: 2A 2A 2A 2A 0D |****. |
..^U:ZERO. BYTES: STRING SPEED. . BY MAURICE JONES.. ON LO ADSTAR #65 I DESCRIBED HOW.ARRAY VARIABL ES AND SIMPLE VARIABLES.WERE STORED. IN THE CASE OF STRING.VARIABLES ONLY THE N AME, LENGTH, AND.TWO POINTERS ARE STORED . THE.POINTERS SHOW WHERE THE STRING IS .STORED. THE ACTUAL STRINGS ARE.STORED EITHER IN THE CODE OR AT THE.TOP OF BASI C RAM, EXTENDING DOWNWARD..THIS LATTER M ETHOD OF STORAGE LEADS TO.THE TOPIC OF G ARBAGE COLLECTION...... IF THE STRING APPEARS IN THE CODE,.THE POINTERS WILL POINT INTO THE CODE,.AND NO NEW MEMORY W ILL BE NEEDED..STRINGS CREATED BY STATEM ENTS SUCH AS.A$="THIS IS A STRING" AND S TRINGS.READ FROM DATA STATEMENTS WILL BE .STORED THIS WAY... STRINGS INTRODUCE D INTO THE.PROGRAM BY GET, STR$, OR BY.C ALCULATION, SUCH AS A$=C$+D$, ARE.STORED AT THE TOP OF BASIC RAM. EACH.SUCCESSI VE STRING IS STORED IN THE.FIRST FREE AR EA CONTAINING ENOUGH ROOM.FOR THE ENTIRE STRING. THIS PROCESS.CONTINUES UNTIL T HE COMPUTER FINDS.THAT THE SPACE BETWEEN THE LAST STRING.AND THE TOP OF ARRAYS I S TOO SMALL FOR.THE CURRENT STRING.. WHEN THIS HAPPENS, THE GARBAGE.COLLECTIO N ROUTINE ATTEMPTS TO.REORGANIZE THE SPA CE ABOVE ARRAYS... TO SEE WHY IT MAY BE POSSIBLE TO.REORGANIZE THE SPACE WITH OUT LOSING.VARIABLES, CONSIDER A PROGRAM WHICH.USES A$ AND B$ OVER AND OVER. SU PPOSE.THAT EACH IS STORED IN HIGH MEMORY AND.EACH TAKES ON THESE VALUES IN THIS. ORDER: A$ IS"CAT", A$ IS "BIRD", B$ IS." NUMBER" AND FINALLY B$ IS "LETTER.".THE TOP OF MEMORY WILL NOW CONTAIN:.. LE TTERNUMBERBIRDCAT...... IF THE GARBAG E COLLECTION ROUTINE.IS USED, THE COMPUT ER WILL LOOK AT THE.POINTERS OF ALL VARI ABLES AND SELECT.THE ONE NEAREST THE TOP OF RAM. IN.THIS CASE, IT IS A$ AND THE POINTERS.INDICATE THE START OF BIRD, TH E.CURRENT VALUE OF A$. SINCE THIS IS.TH E HIGHEST ADDRESS FOUND, ANY STRING.ABOV E HERE IS NO LONGER NEEDED SO THE.COMPUT ER MOVES BIRD TO THE TOP AND THE.MEMORY NOW CONTAINS:.. LETTERNUMBERBIRBIRD. ...... THE ROUTINE NOW LOOKS THROUGH THE.ENTIRE LIST AGAIN, DECIDING WHICH.PO INTER POINTS TO NEXT HIGHEST MEMORY.LOCA TION. IN OUR EXAMPLE THERE IS.ONLY ONE STRING LEFT, B$. THE CURRENT.VALUE OF B $ IS LETTER, SO THIS IS.MOVED TO THE NEX T SPACE AFTER THE NEW.POSITION OF A$ AND THE MEMORY LOOKS.LIKE THIS:.. LETTE RNUMLETTERBIRD.. THE POINTER WHICH IN DICATES THE.BOTTOM OF STRINGS IS NOW SET TO THE.SPACE WHERE THE NEWLY PLACED LET TER.STARTS. THE OLD VALUES ARE NOT ERAS ED.BUT WILL BE OVERWRITTEN BY THE NEXT.S TRING... SIMPLE ENOUGH, BUT IF THE NU MBER.OF VARIABLES IS LARGE, THE PROCESS CAN.BE TIME CONSUMING. SINCE THE SIMPLE .VARIABLES AND THE ARRAY VARIABLES MAY.C ONTAIN STRINGS, ALL OF THESE AREAS.MUST BE SEARCHED COMPLETELY FOR EACH.VARIABLE . IF THERE ARE 100 VARIABLES,.EACH WILL BE LOOKED AT MANY TIMES, AND.MORE TIME WILL BE REQUIRED TO MOVE.EACH STRING... NOTICE THAT THE ROUTINE WORKS WITH.PO INTERS AND LENGTH OF STRING UNTIL.THE AC TUAL MOVE IS MADE. EVEN THEN,.THESE NUM BERS ALLOW THE STRING TO BE.MOVED EFFICI ENTLY, SINCE THE START OF.THE NEW LOCATI ON IS EASILY CALCULATED... THIS ALSO MEANS THAT THE ACTUAL.MOVES REQUIRED ONL Y A FRACTION OF THE.TIME THAT THE SEARCH REQUIRES WHEN.THE NUMBER OF STRINGS IS FAIRLY.LARGE... THE LENGTH OF STRINGS HAS VERY.LITTLE EFFECT ON THE TIME REQU IRED FOR.GARBAGE COLLECTION. THE DOMINA TING.FACTOR IS THE NUMBER OF STRINGS STO RED.ABOVE THE END OF ARRAYS. WHEN THE.S EARCH IS MADE, VARIABLES STORED IN.THE C ODE ARE PASSED OVER SINCE THEY.ARE NEVER MOVED. RUN THE DEMO FOR.EVIDENCE OF TH ESE STATEMENTS AND READ.THE TEXT SCREENS FOR MORE.INFORMATION..... THAT ABOUT DOES IT FOR THE SUMMARY.OF THE STUDY, S O NOW I WILL CLOSE WITH.SOME COMMENTS AN D SOME SUGGESTIONS... THIS WHOLE THIN G WAS PROMPTED BY.JEFF JONES'S BASICS AR TICLE ON.LOADSTAR #57, AND WHILE A FEW O F HIS.REMARKS MAY NEED TO BE QUALIFIED, HIS.MAIN POINTS ARE WELL PROVED. A FEW. JIFFIES HERE AND THERE ARE OF NO.GREAT I MPORT. A FEW JIFFIES IN EACH.PART OF A 1000 STEP LOOP ARE VERY.IMPORTANT. MORE TIME IS GAINED BY.USING SHORT CODE AND EFFICIENT.ALGORITHMS THAN BY ATTEMPTING TO.CHANGE MULTIPLY TO DIVIDE OR SOME.OTH ER SUCH DOUBTFUL SCHEME. WORRY.MORE ABO UT THE BIG PICTURE... I NOW BELIEVE T HAT GARBAGE.COLLECTION HAS BEEN BADLY HA NDLED IN.THE LITERATURE. THE USUAL THIN G HAS.BEEN TO MAKE SOME PRONOUNCEMENT.WI THOUT ANY EVIDENCE OR EXPLANATION..MY OP INION IS THIS: IF THE NUMBER OF.STRINGS STORED AT THE TOP OF MEMORY IS.RELATIVEL Y SMALL, SAY LESS THAN 60,.SERIOUS PROBL EMS WITH GARBAGE.COLLECTION WILL ONLY AR ISE IF.AVAILABLE MEMORY IS SMALL. THE.P ROBLEM, THEN, IS TO STRIKE A.BALANCE.... .... I SUSPECT THERE ARE MANY.TECHNIQ UES THAT NEED TO BE EXPLORED.AND DISCUSS ED, BUT I AM NOT THE ONE TO.DO IT. I HA D A LOT OF TROUBLE.DESIGNING PROGRAMS TO ILLUSTRATE THE.IDEA. THE MODIFIED BYTE S #57 DEMO.THAT I MENTIONED IN PART I CO NTAINED.VERY LONG (ABOUT 140 CHARACTERS) .STRINGS AND WAS CONSTANTLY GENERATING.M ORE. YET, GARBAGE WAS ONLY COLLECTED.AF TER ABOUT SIX HANDS AND REQUIRED.ABOUT S EVEN JIFFIES... EMERSON SAID, "FEAR A LWAYS SPRINGS.FROM IGNORANCE." COULD IT BE THAT HE.WAS TALKING ABOUT FEAR OF GA RBAGE.COLLECTION?... IT SEEMS OBVIOUS THAT THE SPEED.AND MEMORY USAGE ARE CON NECTED IN MANY.WAYS AND THAT THE TWO MUS T BE.CONSIDERED TOGETHER. I LIKE HEAVIL Y.DOCUMENTED PROGRAMS, AND THIS STUDY.SH OWS THAT SPEED IS NOT SERIOUSLY.AFFECTED BY REM STATEMENTS, UNLESS.SPACE IS A PR OBLEM... IN ORDER TO FULLY UNDERSTAND HOW.BASIC USES MEMORY, ONE NEEDS MUCH M ORE.DETAIL THAN WAS POSSIBLE HERE. I.ST RONGLY SUGGEST THAT SERIOUS.PROGRAMMERS MUST UNDERSTAND THIS AND.SUGGEST THE SOU RCES THAT I MENTIONED.IN PART I.... N UMBERS AND STRINGS STORED BY.ARRAYS USE LESS SPACE AND ARE MORE.QUICKLY LOCATED THAN THOSE STORED BY.SIMPLE VARIABLES. I BELIEVE THAT IT.IS ONLY A MATTER OF HA BIT THAT SO MANY.SIMPLE VARIABLES ARE FO UND IN THE.CODE. WITH A LITTLE ATTITUDE .ADJUSTMENT, WE COULD SEE THIS CHANGE..I CANNOT SEE ANY DIFFICULTY IN.DECLARING ALL VARIABLES EARLY IN THE.PROGRAM NOR W ITH DECLARING THE MOST.HEAVILY USED SIMP LE VARIABLES NEAR THE.TOP OF THE LIST. A SIMPLE DIM.STATEMENT DOES IT ALL. THE RE'S.NOTHING WRONG WITH SOMETHING LIKE.. 100 DIMA$,I,J,K,B$,C$,B,C,D,X,Y,Z..AT TH E BEGINNING OF YOUR PROGRAM... MY EXA MINATION OF CODE HAS SHOWN.THAT SOME PEO PLE DO A GOOD JOB OF.KEEPING THE NUMBER OF VARIABLES SMALL,.WHEREAS OTHERS SEEM TO BE AFRAID TO.REUSE VARIABLES AT ALL. IT IS NOT.DIFFICULT TO KNOW WHEN THE VA LUE.STORED BY A VARIABLE WILL NOT BE.NEE DED AGAIN, SO THAT THE VARIABLE CAN.BE R EUSED... EVEN THOUGH I SPENT HOURS WA ITING.FOR LONG LOOPS TO RUN, HOURS DESIG NING.AND REVISING TESTS, HOURS READING A ND.HOURS EVALUATING, THIS STUDY HAS BEEN .GRATIFYING. I BELIEVE THAT I HAVE.KEPT MY OPINIONS TO A MINIMUM AND HAVE.PROVE D THOSE THINGS THAT I HAVE.CLAIMED... I WISH THAT THOSE WHO READ THIS.COULD L EARN AS MUCH AS I DID. IF YOU.WANT TO L EARN SOMETHING, TRY TO.FIGURE OUT HOW TO EXPLAIN IT TO.SOMEONE ELSE...FENDER'S N OTE: RIGHT YOU ARE,.MAURICE. I LEARNED QUITE A BIT FROM.YOUR ARTICLES AND AM LO OKING FORWARD.TO SEEING MORE IN THE NEAR FUTURE... MJ. **** END OF TEXT ****.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL