¡@²Ä¤³¹ ¹ê²{¶¥¬q¡G²Å¦¡¤åÅ骺²Õ¦¨¤¸¯À ¡]Elements of Forth Style¡^¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¼g±o¤£¦nªº²Å¦¡µ{¦¡¡A¦³¤H»¡¬Ý°_¨Ó¹³"³q¹L©U§£À½À£¾÷ªºµ{¦¡½X"¡C¤£¿ù¡A¨º¬O¦]¬° ²Å¦¡¦b¼¶¼gÀ³¥Îµ{¦¡ªº¤èªk¤W¤¹³\§ó¦hªº¦Û¥Ñ¡CµM¦Ó¡AY¯à²Ó¤ß¦a¹B¥Î¨}¦n²Å¦¡¤åÅ餤 ªº³o¨Ç¤¸¯À¡A«h¨º¥÷¦Û¥Ñ¤]¯àÅý§Ú̦³¾÷·|¼g¥X¥iŪ©Ê°ª¡B¤S®e©öºûÅ@ªºµ{¦¡½X¡C ¥»³¹n²`¤J±´°Q²Å¦¡¦b"¼g½X"¡]coding¡^¤Wªº¤@¨Ç¬ù©w¡]convention¡^¡A¨ä¤¤¥]¬A¡G µ{¦¡¦Cªíªº²Õ´¡]Listing organization¡^ ¹õªº°t¸m¡A¶¡¹j¤ÎÁY±Æ¡]Indentation¡^ µù¸Ñ ©R¦W §Ú§Æ±æ¯à±ÀÂˤ@¥÷¡u©ñ½Ñ¤Ñ¤U¬Ò¬°·Ç¡vªº¬ù©wµ¹¨C¤@Ó¤H¡C¤£©¯ªº¬O¡A³o¼Ëªº¤@¥÷ ²M³æ¡A¦b«Ü¦h±¡ªp¤U¤£¨£±o³£¬O¾A¥Îªº¡C¥»³¹±N³\¦h¼s³Q±Ä¥Îªº¬ù©w©MÓ¤Hªº°¾¦n´| ¦X¦b¤@°_¡A¨Ãªþ¤W¨ä¥¦ªº¨£¸Ñ©M³o¨Ç°¾¦nªº²z¥Ñ¡C´«¥y¸Ü»¡¡G : ´£¥Ü »ùÈ µûÂ_ ;
¯S§On·PÁÂKim
Harris¥ý¥Í¡C¥»³¹©Ò´£¨ìªº¬ù©w¡A¦h¥b¬O¥Ñ¥L©Ò«ØÄ³ªº¡C§ó·PÁÂ¥L ¦b¹ïÀu¨}²Å¦¡¤åÅ骺¤@¨Ç¤À§Á¬Ýªk¤W¡AÁæ¦Ó¤£±Ë¦a©Ò§@ªº²Î¤@¾ã¦Xªº°^Äm¡C ²Õ´¨}¦nªº®Ñ¡A¥²©w¦³©w¸q²M´·ªº³¹¸`¡A¤Î¤@¥÷§¹¾ãªº¥Ø¿ý¡A¨Ï§A¯à¤@²´«K¬Ý¥X ¥þ®Ñªº²Õ´¡C¤@¥»²Õ´¨}¦nªº®Ñ¡A¤ñ¸û®e©öŪ¡C¤@¥»²Õ´¤£¨}ªº®Ñ«hÃøÀ´¡A¤é«á¬d¾\¸ê®Æ ¤]·|«Ü§xÃø¡C ³oºØ¨}¦n²Õ´ªº»Ý¨D¡A¤]¦P¼Ë¾A¥Î¦bµ{¦¡ªº¦Cªí¤W¡C¨}¦nªº²Õ´¯A¤Î¤U¦C¤T¤è±¡G
1. ©î¸Ñ¡]Decomposition¡^ 2.
²Õ¦X¡]Composition¡^ 3. ÀɮפÀ°Ï
¥¿¦p§Ú̩Ҩ£¡A¤@Óµ{¦¡¦Cªíªº²Õ´¡AÀ³¸Ó¹ïÀ³µÛÀ³¥Îµ{¦¡©î¸Ñ¦Ó¦¨ªºµü¶°¡C¤@¯ë¦Ó¨¥¡A
³o¨Çµü¶°À³¸Ó¨Ì·Ó"¨Ï¥Î¤W"ªº¶¶§Ç¡A¨Ì¦¸±Æ¦C¡C"³Q¨Ï¥Î"ªºµü¶°À³¸Ó±Æ¦b"¨Ï¥Î"¥¦ªºµü¶° ¤§«e¡C
¤jÅé¤W¡Aµ{¦¡¦Cªí¤¤ªº¤¸¯ÀÀ³¸Ó«ö·Ó¥¦Ìªº½ÆÂø«×¨Ó½s²Õ¡A³Ì½ÆÂøªºªF¦è¥X²{¦b³Ì«á
±¡C¨Æ±¡³Ì¦n¯à³Q¦w±Æ¨ì¤@ºØµ{«×¡A¨Ï§A¯à°÷ªÅµÛ³Ì«áªº¤@¨Ç¹õ¤£¥Î¡]¤]´N¬O¡A¤£n¸ü¤J
¥¦Ì¡^¡A¤´µM¯à¦³Ó¦Û¨¬ªº¡B¯à°÷¶]ªº¥¿±`ªºÀ³¥Îµ{¦¡¡A¥u¬O¯Ê¤Ö¤@¨Ç³Ì°ª¯Åªº¥\¯à¦Ó¤w
¡C¡]͵ù¡G¶Ç²Î¤Wªº²Å¦¡¨t²Î¡A¨äì©lµ{¦¡³£Àx¦s¦b¤@ºØ¥H1K¦r¤¸¬°³æ¦ìªº"¾"¤¤¡A¦Ó¤£ ¬O¤@¯ë®æ¦¡ªº¤å¦rÀÉ¡C¡^ ¦b²Ä¤T³¹¤¤¡A§Ṳ́w¸g¥R¥÷¦a°Q½×¤F©î¸ÑªºÃÀ³N¡C
²Õ¦X¬O±N¦UÓ³æ¥ó´|¦X¦b¤@°_¡A¥H²£¥Í¤@Ó¾ãÅé¡C¨}¦nªº²Õ¦X¥¿¦p¦P¨}¦nªº©î¸Ñ¡A¤]»Ý n¦UºØ§Þ¥©¡C ²Å¦¡²{¦æªº¬ù©w¤§¤@¬O¡Aì©l½X¡]source code¡^³Q¦s©ñ¦b"¹õ"¡]screen¡^¤¤¡A¥¦ ¬O¤@Ó1¥a¦r¤¸ªºÀx¦s³æ¤¸¡C¡]¦¹³B©Ò»¡ªº"¹õ"«Y«ü±M¨Ñì©l½X©Ò¨Ï¥Îªº¤@Ӱ϶ô¡^¡C ¦b²Å¦¡¤¤¡AY¯¬O³æ¯Â¦a±N¨C¤@¹õ¦ê±µ°_¨Ó¡AÅý¾ãÓµ{¦¡ªº¦Cªí¬Ý°_¨Ó¹³¤@¥»ªø¦êªº§é Å|¦¡¤â¥U¡A³oÁöµM¿ì±o¨ì¡A¦ý«o¤£¬OÓ¦n¤èªk¡C¤Ï¦Ó¡G
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¤@ÓÀ³¥Îµ{¦¡¥i¯à§t¦³¡G ¹õ¡]screens ¡^¡G²Å¦¡ì©l½Xªº³Ì¤pÀx¦s³æ¦ì µü¶°¡]lexicons¡^¡G¥]§t¤@¨ì¤T¹õ¡A¯à°÷¹ê²{¤@Ó¤¸¥ó ³¹¸`¡]chapters¡^¡G¤@¨t¦C¬ÛÃöªºµü¶° ¸ü¤J¹õ¡]load screens¡^¡GÃþ¦ü¤@ӥؿý¡A¯à±N³¹¸`«ö¾A·íªº¦¸§Ç¸ü¤J ¹Ï 5-1 À³¥Îµ{¦¡ªº¸ü¤J¹õ¤§¤@¨Ò
Screen # 1 07/09/83
\ QTF+ Load Screen
: RELEASE# ." 2.01" ;
9 LOAD \ compiler tools, language primitives
12 LOAD \ video primitives
21 LOAD \ editor
39 LOAD \ line display
48 LOAD \ formatter
69 LOAD \ box
81 LOAD \ deferring
90 LOAD \ framing
96 LOAD \ labels, figures, tables
102 LOAD \ table of contents generator
¹Ï5-1¬°¤@ÓÀ³¥Îµ{¦¡¸ü¤J¹õªº¨Ò¤l¡C¥Ñ©ó¥¦³Q¦w±Æ¦b²Ä¤@¹õ¡A§A¥i¥HÁä¤J¤U¦¡¥H±N¾ãÓÀ³¥Îµ{¦¡¸ü¤J¡G
1 LOAD
³o¹õ¤¤ªº¦UÓ©R¥O·|±NÀ³¥Îµ{¦¡ªº¦UÓ³¹¸`¸ü¤J¡CÄ´¦p¡A²Ä12¹õ§Y¬°µøÀW°ò¤¸³o¤@³¹ªº¸ü¤J¹õ¡C ¸õ¹L¡]Skip¡^©R¥O ¦³¨âÓ©R¥O¡A¥i¥H¨Ï¤@¹õ¤¤¦óªÌ¸Ó¸ü¤J¡B¦óªÌ¸Ó©¿²¤ªº±±¨îÅܱo®e©ö¨Ç¡C¥¦Ì¬O¡G \
\S
¡y\¡zŪ§@"skip-line"¡]¸õ¦æ¡^¡C¥¦·|¨Ï²Å¦¡¸Ñ;¹¸õ¹L³o¦æ¤¤¦b¥¦¥kÃ䪺¥þ³¡¤å ¥y¡C¡]¡y\¡z¬OӲŦ¡¦r¡A¥¦ªº¥ª¥k¥²¶·¦³ªÅ®æ°µ¤À¹j¡^¡C¥¦¹B§@®É¨Ã¤£»Ýn¬É²Å¸¹ ¡]delimiter¡^¡C¦b¹Ï5-1¤¤¡A§A¯à¨£¨ì¡y\¡zªº¨âºØ¨Ï¥Î¤è¦¡¡G¥Î¨Ó°_©l³o¤@¹õªºµù¸Ñ¦æ ¡]²Ä0¦æ¡^¡A¥H¤Î¦U¦æªºµù¸Ñ --·í¥kÃ䤣¦A¥X²{µ{¦¡½X®É¡C ¦b´ú¸Õ®É¡A¡y\¡z¤]±`³Q¥Î¨Ó±N¡u§t¦³¬A¸¹ªº¦W¦r©Îµù¸Ñ¡vªº¤@¨Ç¦æ¼È®É¦a"µù¸Ñ"±¼ ¡C¨Ò¦p¡AÂǵۤU±¨âÓ¡y\¡z ¡A¥i¥H¨Ï¡yNUTATE¡z³oÓ¦rªº©w¸q§K©ó³Q½sĶ¡A¤]§K°£ ¤F·í¾D¹J¨ì¦æ¤¤ªº¥k¬A©·®É¡A©Ò²£¥Íªº§xÂZ¡G \ : NUTATE ( x y z --)
\ SWAP ROT (GET) ;
¡y\S¡zŪ§@"skip-screen"¡]¸õ¹õ¡^¡C¥¦·|¨Ï²Å¦¡¸Ñ;¹¸õ¹L¥¦©Ò¦bªº¨º¤@¹õ¤¤¡A¦b¥¦ ¤§«áªº©Ò¦³ªF¦è¡C ¦³Ãö¡y\¡z¤Î¡y\S¡zªº©w¸q½Ð°Ñ¦Òªþ¿ýC ¡C
¹Ï 5-2 ³¹¸`¸ü¤J¹õ¤§¤@¨Ò Screen # 100
\ GRAPHICS Chapter load 07/11/83
1 FH LOAD \ dot-drawing primitive
1 FH 3 FH THRU \ line-drawing primitives
4 FH 7 FH THRU \ scaling, rotation
8 FH LOAD \ box
9 FH 11 FH THRU \ circle
CORNER \ initialize relative position to low-left corner
¹Ï5-2©Ò¥Ü¬°¤@¼Ð·Çªº³¹¸`¸ü¤J¹õ¡C¦¹¹õ©Ò¸ü¤Jªº¹õ¸¹³£¬O¬Û¹ïªº¡A³o»PÀ³¥Îµ{¦¡ªº¸ü¤J¹õ¤¤©Ò¥Îªº¤£¦P¡A¦b¨º¸Ì¨Ï¥Îªº¬Oµ´¹ï¹õ¸¹¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¹ê²{¬Û¹ï¸ü¤Jªº¤è¦¡¦³¨âºØ¡C³Ì±`¥Î¨ìªº¦r¬O¡G : +LOAD ( offset -- ) BLK @ + LOAD ;
~FB7BX1BB1;¤Î~I;
: +THRU ( lo-offset hi-offset --) 1+ SWAP DO I +LOAD LOOP ;
¨Ì§Ú¦Û¤vªº¤è¦¡¡A¥u»Ýn¥Î³æ¤@Ó¦r¡yFH¡z¡C¡]§Ú»{¬°¥¦¬O¤@ºØ¸û¦nªº¤À¸Ñ¡A¨ä©w¸q½Ð °Ñ¾\ªþ¿ýC ¡^¡C ¤ù»y 1 FH LOAD À³Åª§@"1 From Here LOAD"¡]·N«ü¡G±q¦¹³Bºâ°_ªº²Ä¤@¹õ¶}©l¸ü¤J¡^¡A¨ä§@¥Î»P ¡y1 +LOAD¡z¬Û¦P¡C¦P¼Ëªº¡A 2 FH 5 FH THRU À³Åª§@"2 From Here, 5 From here THRU" ¡C ¦³¨Çµ{¦¡³]p®v¦b¨C¤@³¹ªº°_©l³B³£¨Ï¥Î¤@Ó³ÈÀw¦r¡]dummy word¡^¡A¨Ò¦p¡G : VIDEO-IO ; ¨Ã¥B¦bÀ³¥Îµ{¦¡¸ü¤J¹õ¤¤¡A¸Ó³¹ªº¸ü¤J©R¥O³Bµù¸ÑµÛ¦C¥X³oÓ¦W¦r¡C³o¼Ë´N®e³\¯à¿ï¾Ü ©Ê¦a"§Ñ±¼"¥ô¦ó³¹¸`¡A¦A«·s¥Ñ¨º¤@ÂI°_¸ü¤J¡A¦Ó¤£¥²¶O¨Æªº¥h¬d¾\¨º¤@Ó³¹¸`ªº¤º®e¡C ¦b¤@³¹¶}ÀYªº¤@¨Ç¹õ¤¤¡A³q±`³Q¥Î¨Ó©w¸q¦¹³¹¸`¤¤¦@¦P¨Ï¥ÎªºÅܼơB±`¼Æ¡B¤Î¸ê®Æµ² ºc¡C±µ¤U¨Ó¤~¬Oµü¶°¡A¨ÌµÛ"¨Ï¥Î¤W"ªº¶¶§Ç¸ü¤J¡C³¹¸`¸ü¤J¹õªº³Ì«á¤@¦æ³q±`·|©I¥s©Ò »Ýnªºªì©l©R¥O¡]initialization command¡^¡C¡]͵ù¡G¦ý¬O¦bTURNKEYªº¨t²Î¤¤¡Aªì ©l©R¥O¥²»Ý¦bµ{¦¡°õ¦æ«á¤~¶i¦æ¡A¦Ó¤£¬O¦b¸ü¤J®É¶i¦æ¡C¡^ ¬Y¨Ç«Ü¦b·N¤åÅ骺²Å¦¡¼g§@ªÌ¡AÁ`³ßÅw¥H¤@½g"«e¨¥"¶}©l¡C¨ä¤¤¥H¥±`ªº¥Î»y¨Ó°Q ½×¸Ó³¹¤¤¤¸¥óªº¹B§@ì²z¡C¹Ï5-3¬O³oÃþ«e¨¥ªº¤@¨Ò¡A¨ä¤¤¥Ü½dMoore²£«~¤½¥q©Òn¨Dªº ®æ¦¡¡C ¹Ï5-3 Moore²£«~¤½¥q¹ï³¹¸`«e¨¥ªº³W®æ CAHPTER 5 -- ORIGIN/DESTINATION -- MULTILOOP BIT ROUTINES
DOCUMENTS -- CONSOLE STRUCTURE CONFIGURATION
DESIGN SPECITICATION
SECTIONS -- 3.2.7.5.4.1.2.8
3.2.7.5.4.1.2.10
ABSTRACT -- File control types E M T Q and R can all
originate from a Regional Satellite or a
Data Survey Satellite. These routines allow
the operator to determine whether the control
originated from a Regional Satellite or not.
CHAPTER NOTES -- Whether or not a point originates from
a Reginal Satellite is determined by
the Regional bit in BITS, as follows:
1 = Regional Satellite
2 = Data Survey Satellite
For the location of the Regional bit
in BITS, see the Design Specification
Section - 3.2.7.5.4.1.2.10
HISTORY -- ..... ...
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
§Ú·|¶¥¼h¦¡¦a«Øºc§ÚªºÀ³¥Î¡A¦ý¨Ã¤£¤@©w·|¥Î¦P¼Ëªº¤è¦¡«Øºc§Úªºµ{¦¡¦Cªí¡C§Úªºµ{¦¡¦Cªí³£¬O¥H¬Û·íÃP´²ªº¤è¦¡²Õ´¦Ó¦¨¡A¨Ã¤£¬O°ò¤¸¦r¡]primitives¡^¦b«eªº¨ººØ¶¥¯ÅÆ[©À¡C --> ¹ï THRU ½Í°_"¬Û¹ï¸ü¤J"ªº°ÝÃD¡A¦³¤@ºØ¬Û·í¬y¦æªº¤èªk³Q¥Î¨Ó¸ü¤J¤@¨t¦C³sÄòªº¹õ¡A¨ä¤¤©Ò ¥Îªº¦r¬O¡y-->¡z¡]Ū§@"next block" ¡^¡C¦¹¦r·|¨Ï¸Ñ;¹¥ß§Y°±¤î¹ï·í«eªº¹õªº½sĶ¡A ¨Ã¶}©l½sͤU¤@¹õ¡C Y§Aªº¨t²Î´£¨Ñ³oºØ¡y-->¡z¡A§A´N¥²¶·¦b§Aªº³¹¸`¸ü¤J¹õ¤¤¿ï¾Ü¡An¨Ï¥Î¡yTHRU¡z ©R¥O¨Ó¸ü¤J¤@¨t¦Cªº¹õ©O¡H©ÎªÌÂǵۡy-->¡z±N©Ò¦³ªº¹õ³s±µ°_¨Ó¡A¦Ó¶È¶È¥h¸ü¤J³o¤@¨t ¦Cªº²Ä¤@¹õ¡C¡]§A¤£¯à¨âªÌ³£¥Î¡F³o¼Ë·|¨Ï¤j³¡¥÷¹õ³£³Q¸ü¤J¨â¦¸©Î¨â¦¸¥H¤W¡C¡^ ½bÀYªº¦n³B¬O¡G¦pªG§An¦b³o¨t¦Cªº¹õ¤¤§ïÅܨ䤤¤@Ó¹õªº¤º®e¡AµM«á¦A¸ü¤J³o ¤@¹õ¡A³o¨t¦C¤¤¸ò¦b¥¦«á±ªº¨ä¾l¹õ¤]·|¦Û°Ê¦a³Q¸ü¤J¡C§A¥Î¤£µÛª¾¹D³Ì«á¤@¹õ¦b ¨ºùØ¡C ¦ý³o¤]¬O½bÀYÃøÄñªº¤@±¡G¸ü¤Jµ{§Ç¤@¥¹¶}©l¡A§A´NµLªk±N¥¦°±¤U¡C¬°¤Fn³æ¿W¦a ´ú¸Õ¨ä¤¤¤@¹õ¡A§A©Î³\·|½s¤J¤@¤j°ï¤£¬Û¤zªº¹õ¡C Åý§Ú̹ï³oÂI°µÓ¤ÀªR¡C§Ṵ́²³]¡A¦b¹ï¨º¤@¹õ°µ§¹¤F¥²»Ýªº×§ï¤§«á¡A§A¥i¯à·| °µ¤U¦Cªº¤T¥ó¨Æ±¡¤§¤@¡G 1. ¶È¶È¸ü¤J¸Ó¹õ¡A¥h´ú¸Õק諸³¡¥÷¡C 2. ¸ü¤J¸Ó¹õ©Ò¦bªº¾ãÓ¤@³¹¡C 3. ¸ü¤J¾ãÓÀ³¥Îµ{¦¡ªº¨ä¾l³¡¥÷¡C
¡yTHRU¡zªº¨Ï¥Î¦ü¥G¯àµ¹§A³Ì¤jªº±±¨îÅv¡C
¦³¤H»{¬°¡A½bÀY¬O¬°¤F¨º¸ó¥X¤F¹õªº©³¬Éªº¨ººØ©w¸q¦Ó³]ªº¡C¨ä¹ê¡A½bÀY¬O½s͍ººØ
¸ó¶V¤F¤@Ó¥H¤Wªº¹õªº«_¸¹©w¸qªº°ß¤@¿ìªk¡A¦]¬°¡y-->¡z¬OÓ"¥ß§Y¦r"¡CµM¦Ó¡AÅý¤@Ó
«_¸¹©w¸q¸ó¥X¹õªº©³¬É¡A´Nµ´¤£·|¬O¤@Ó¦n¤åÅé¡C¡]¥¦Ì¥Ã»·¤£¸Ó¦³¨º»òªø¡I¡^ ±q¥t¤@¤è±¬Ý¡A¦b¨Ï¥Î²Õ¦X»y¨¥©w¸qªº¼¶¼g¤¤¡A¤@Ó·¥ºÝ½ÆÂø¦Ó¤S¨ã°õ¦æ³t«×»Ý¨D
ªº©w¸q´N«Ü¥i¯àn¦û¾ÚµÛ´XÓ³sÄòªº¹õ¡C¦ý§Y¨Ï¬O³oºØ±¡ªp¡A¥¿±`ªº¡yLOAD¡z¤]¤w¨¬¥HÀ³
¥I¡A¦]¬°½sͤ@Ó²Õ¦X»y¨¥©w¸q®É¡A¨t²Î¨Ã¥¼¶i¤J½sĶ¼Ò¦¡¡A¦]¦¹¤]´N¤£»Ýn"¥ß§Y¦r" ªºÀ°§U¡C ¬Y¨Ç²Å¦¡·~ªÌ¹ª§j¡An¥H¤£©wªø«×¡B¨ú¤F¦W¦rªº¤å¦rÀɨÓÀx¦sì©l½X¡A¨è·N¦a¥h¼Ò¥é ¶Ç²Î½s;¹¤Î½s¿è¾¹ªº°µªk¡C³oºØ°µªk±N·|¤éÁÍ´¶¹M¡A¦ý¨ä¥Î³~«o»áȱo°Óºe¡C ¤£¿ù¡A¯à§K°£¹ï¹õªºªÅ¶¡¤£¨¬ªº¼~¼{©TµM¬O¦n¨Æ¡A¦ý¬O¦b¤@Ó¨ü¨îªº°Ï°ì¤¤®Ñ¼g µ{¦¡ªº¤£«K¡A«o¯à³Q¡u«O¦³¹ïÓ§Oªºµ{¦¡°Ï¶ô¡]discrete chunks of code¡^ªº±±¨îÅv¡v ©Ò¸ÉÀv¡C¦bÀ³¥Îµ{¦¡ªºµo®i¤¤¡A§Aªá¶O¦b"¸ü¤J"ªº®É¶¡¡A»·¤ñ§A¥Î¦b«·s¦w±Æ¹õªº¤º®e ¤W¡A¦h±o¤Ó¦h¤F¡C "µLªø"ªºÀɮפ¹³\º©¤£¸g¤ß¡BÂø¶ÃµL³¹ªº«ä·Q¤Î©å¦Hªº¤À¸Ñ§@ªk¡C©w¸q·|·UÁͤ¾ªø ¡A¦]¬°¦A¤]¨S¦³¨º1K°Ï¶ôªºÃ¦¬É¬ù§ô¡C³oºØ¶É¦V·|ÁÍ©ó¼g¥X¤@Ó20KªºÀɮסA¬Æ¦Ü§óÁV¡G ¤@Ó20Kªº©w¸q¡C ¤]³\¤@ºØ¸û¨Îªº§´¨ó¬O¡G¤@Ó¥HÀɮ׬°°ò¦ªº¨t²Î¡A¥¦¤¹³\±_¦¡ªº¸ü¤J¡A¦P®É¤]¹ªÀy ¨Ï¥Î«D±`¤pªºÀɮסC³q±`¡A¶V¦³¸gÅ窺²Å¦¡µ{¦¡³]p®v¡A¶V¤£¤Ó·|¨Ï¥Îªø«×¶W¹L¹L5K¦Ü 10KªºÀɮסC©Ò¥H¡A¤S¦³¤°»ò¦n³B©O¡H ±¹ï³oºØª§Ä³©Êªº°ÝÃD¡A¦³¤H·|»¡¡G¡u°O¤@Ó¦W¦rÁ`¤ñ°O¼Æ¦r®e©ö¹À¡C¡vY ªG¯u¦p¦¹¡A¨º»ò¦ó¤£±N¨º¨Ç°Ï¶ôªº½s¸¹¥ý©w¸q¬°±`¼Æ¡AÄ´¦p¡G 90 CONSTANT FRAMING µM«án¸ü¤J"Framing"ªº³¹¸`®É¡A´NÁä¤J FRAMING LOAD ©ÎªÌ¡An¦C¥X¸Ó³¹¸`ªº¸ü¤J¹õªº¤º®e®É¡A´NÁä¤J FRAMING LIST
¡]¦b³¹¸`¦WºÙªº§ÀºÝ¥["ING"¤]¬O¤@ºØ¬ù©w¡C¡^
·íµM¡AY·Q±N¥H¹õ¬°°ò¦ªº¤è¦¡©Ò¤Þµoªº¤£«K´î¨ì³Ì§C¡A§A»Ýn¤@¨Ç¨}¦nªº¤u¨ã¡A ¥]¬A¯à°÷Åý§A«Ü®e©ö¦a±Nì©l½X±q¤@¹õ·h¨ì¥t¤@¹õªº½s¿è©R¥O¡F¤]¥]¬A¤@¨Ç¯à±N¤@¸s¹õ
¦bµ{¦¡¦Cªí¤¤«e«á²¾°Êªº©R¥O¡C n±o¨ì²Õ´¨}¦nªºµ{¦¡¦Cªí¡A³Ì«á¤@Ó«ÂI¯A¤Î¨ìÀɮפº³¡¨Ï¥Î¤Wªº¦w±Æ --¤°»ò ¸ê®Æ¸Ó©ñ¨ìÀɮפWªº¤°»ò¦ì¸m¡C³oºØ¼Ð·Ç¥²¶·¨Ì¦UÓ¤u¼t¡B¦U³¡ªù©Î¦UÓµ{¦¡³]p®v¡A µø¨ä¤u§@ªº©Ê½è¤£¦P¦Óq©w¡C ¹Ï 5-4 ¬Y³¡ªùªºÀɮפÀ°Ï°µªk Screen 0 is the title screen, showing the name of the
application, the current release number, and primary author
.¥»¤åg2
Screen 1 is the application-load block
.¥»¤åg2
Screen 2 is reserved for possible continuation from Screen 1
.¥»¤åg2
Screen 4 and 5 contain system messages
.¥»¤åg2
Screen 9 thru 29 incorporate general utilities needed
in, but not restricted to, this application
.¥»¤åg2
Screen 30 begins the application screens
¹Ï 5-4Åã¥Ü¤@Ө嫬³¡ªùªºÀɮפÀ°Ï°µªk¡C 77 TRIAD
§A´N·|±o¨ì¥]¬A75, 76, ¤Î77¤T¹õªº¤@¶¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¿ï¥ó¡]electives¡^¡G¯à¿ï¾Ü©Ê¦a¥[¤Jªº¥\¯à²Õ¥ó
²Å¦¡ªº¨t²Î¼t°Ó¦³Ó°ÝÃD¡C¦pªG¥ḺN«È¤á©Ò´Á±æªº¨C¤@Ó©R¥O
--½Ñ¦p±±¨îø¹Ï¾÷ ¡B¦Cªí¾÷¡B©Î¨ä¥¦¶gÃä³]³Æ©Ò¥Îªº¦r-- ³£¥]§t¨ì¥L̪º¨t²Î¤¤¡A¨t²Î´N·|¦Y±¼¹q¸£°O¾Ð
®e¶qªº¥b¼Æ¥H¤W¡A³Ñ¾lªºªÅ¶¡´N¤£¨¬¥HÅý¯u¥¿¦b·Nªºµ{¦¡³]p®v¦b½s¼gÀ³¥Îµ{¦¡®É¬I ®i¨¤â¡C
¸Ñ¨Mªº¿ìªk¬OÅý¼t°Ó¯´£¨Ñ¤@Ó°©¬[¡A°µ¬°¤@ºØ¨Æ¥ý½sͦnªº®Ö¤ß¡CÃB¥~ªº¦nªF¦è «h¥Hì©l½Xªº§Î¦¡¨ÑÀ³µ¹¨Ï¥ÎªÌ¡C³oºØ¿ìªk®e³\µ{¦¡³]p®v¬D¿ï¨º¨Ç¥L¯u¥¿»Ýnªº¯S
®í¥\¯à¡C ³oºØ¥Ñ¨Ï¥ÎªÌ¸ü¤Jªº±`¦¡ºÙ¬°"¿ï¥ó"¡CÂù¾ã¼Æ¹Bºâ¡A¤é´Á®É¶¡ªº¤ä´©¡A±ø¥ó¤ÀªK ¡]CASE¡^±Ôz¥H¤Î DOER/MAKE
ªº«Øºc¡]«á¤å±N¦³¥æ¥N¡^³£¬O²Å¦¡¨t²ÎÀ³¸Ó¥H¿ï¥ó¤è¦¡ ´£¨Ñªº¥\¯à¤§¤@¡C ¥»³¹±N°Q½×¹õ¡]source screen¡^ªº°t¸m¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
µù¸Ñ¦æ¬J¥i¦b¹õ¤¤§@¬°¼ÐÃD¡A¤S¥i°µ¬°Àɮפ¤ªº¡yINDEX¡z¦æ¡C¥¦À³¸Ó´yz¥X¸Ó¹õªº¥Øªº ¡A¦Ó«D¦C¥X¦¹¹õ¤¤©Ò©w¸qªº¦r¡C µù¸Ñ¦æ¦Ü¤Ön§t¦³¦¹¤@¹õªº¦WºÙ¡C¦b¤j«¬ªºÀ³¥Îµ{¦¡¤¤¡A§A¥i¯à±N³¹¸`¤Î¹õªº¦WºÙ ¤@¨Ö¯Ç¤J¡CY¦¹¹õ¬O¹ê²{¬YÓµü¶°ªº¤@¸s¹õ¤¤ªº¤@Ó¡A§A¤]À³¸Ó¦w±Æ¤@Ó"¶¸¹"¡]page number¡^¡C ¥k¤W¨¤¬O¯d§@"ñ³¹"¡]stamp¡^¤§³B¡C"ñ³¹"À³¸Ó¥]¬A³Ìªñ¤@¦¸ªº×ª©¤é´Á¡CY§@ªÌ ¬O¦ó¤H¤]¬O«nªº¡A¥Lªº©m¦W¦rº¡]¤TÓ^¤å¦r¥À¡A±Æ©ó¤é´Á¥ª¤è¡^¤]À³¥]¬A¦b¤º¡F ¨Ò¦p¡G ( Chapter name Screen Name -- pg # JPJ 06/10/83) ¬Y¨Ç²Å¦¡½s¿è¾¹¥u»Ý«ö¤@ÓÁä¡A´N¯à´À§Añ³¹§¹²¦¡C ¥Nªí¤é´Áªº¤@¯ë§Î¦¡¦p¤U¡G mm-dd-yy ¨Ò¦p1984¦~2¤ë6¤éÀ³¼g¬° 02-06-84 ³vº¥¬y¦æªº¥t¤@ºØ¼gªk¬O ddMmmyy ¨ä¤¤ªºMmm¬°¤ë¥÷¤TÓ¦r¥ÀÁY¼g¡A¨Ò¦p 22oct84 ¤W¦¡Áö¤ñ¤U¦¡¦h´XÓ¦r¥À 10-22-84 «o¥iÁ×§K¤é´Á»P¤ë¥÷ªº²V²c¡C Y§Aªº¨t²Î¤¤¦³¡y\¡z³oÓ¦r¡A§A¥i¥H±Nµù¸Ñ¦æ¼g¦¨¡G \ Chapter name Screen Name -- pg.# JPJ 06/10/83 ¹ï©Ò¦³ªºµù¸Ñ¦Ó¨¥¡A¨Ï¥Î¤p¼g¦r¥À©Î¤j¤p¼g²V¥Î§¡¥i¡C ¬°¤F¨Ï¡yINDEX¡z©R¥O¯à©ÜÅS§ó¦h¦³ÃöÀ³¥Îµ{¦¡¹õªº½s²Õ±¡§Î¡A¿ìªk¬O¦b¤@Óµü¶°ªº ³sÄò¹õ¤¤¡A±N¨äµù¸Ñ¦æªº°_©lÂIÁY±Æ¡]indent¡^¤T®æ¡C¹Ï5-5©Ò¥Ü«Y¥Ñ¡yINDEX¡z©Ò²£¥Íªº ¦Cªíªº¤@³¡¥÷¡A¨ä¤¤¡A³sÄò¹õªºµù¸Ñ¦æ¤w³Q«á²¾¤T®æ¡C ¹Ï5-5 INDEXªº¿é¥X¡A¨ÃÅã¥ÜÁY±Æ«áªºµù¸Ñ¦æ 90 \ Graphics Chapter load JPJ 06/10/83
91 \ Dot-drawing primitives JPJ O6/10/83
92 \ Line-drawing primitives JPJ O6/11/83
93 \ Line-drawing primitives JPJ O6/10/83
94 \ Line-drawing primitives JPJ O9/02/83
95 \ Scaling, rotation JPJ O6/10/83
96 \ Scaling, rotation JPJ O2/19/84
97 \ Scaling, rotation JPJ O2/19/84
98 \ Scaling, rotation JPJ O2/19/84
99 \ Boxes JPJ O6/10/83
100 \ Circles JPJ O6/10/83
101 \ Circles JPJ O6/10/83
102 \ Circles JPJ O6/10/83
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¦H¡G : ARRIVING ." HELLO" ; : DEPARTING ." GOODBYE" ; Àu¡G : ARRIVING ." HELLO" ;
: DEPARTING ." GOODBYE" ;
³oÓ¬ù©w¤è«K©ó¦bµ{¦¡¦Cªí¤¤§ä¥X¬YÓ©w¸q¡C¡]·í©w¸qªºªø«×¶W¹L¤@¦æ®É¡A¤U¤@ ¦æªº°_©l¥²¶·«á²¾¡C¡^ ÅܼƤα`¼Æ¤]À³¸Ó¬O¨C¦æ¤@Ó©w¸q¡C¡]°Ñ¾\ªþ¿ýE¡A¨}¦nµù¸Ñªº¤åÅé¡^³o¼Ë´N¯à¯d ¤UªÅ¶¡¨Ñµù¸Ñ¨Ï¥Î¡C¨Ò¥~ªº±¡ªp¬O©w¸q¤@²Õ"®a±Ú¦r"ªº®ÉÔ¡]¥Ñ¦P¤@Ó©w¸q¦r©Ò©w¸q ¥X¡^¡A¥¦Ì¤£»ÝnÓ§Oªºµù¸Ñ¡C 0 HUE BLACK 1 HUE BLUE 2 HUE GREEN
3 HUE CYAN 4 HUE RED 5 HUE MAGENTA
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¦b²Ä¤@½ü¡]pass¡^ªº¼g§@¤¤¡A¨C¤@¹õ¤£n¨Ï¥Î¶W¹L¤@¥bªºªÅ¶¡¡C¡u¤ÏÂЧ@¬°¡v»Ý n§A¥ý¼g¥XÀ³¥Îµ{¦¡¤¸¥óªº°©¬[¤jºõ¡AµM«á¦A¤ÏÂЦa¤£Â_²K¥[¦Ù¦×¡Aª½¨ì©Ò¦³ªº»Ý¨D ³£³Qº¡¨¬¬°¤î¡C³q±`¡A³o·N¨ýµÛ§An¹ï¥Ø«e¦s¦bªº¹õ¡A¥[¤J·sªº©R¥O¡A©Î¥[¤J¨Ò¥~ª¬ªpªº ³B²z¡C¡]¦³®É¡A¦ý¾÷·|¤£¦h¡A¤@¦¸·sªº¤ÏÂЧ@¬°¡A©Î³\·|µo²{µ{¦¡½X¥i¥H³Q²¤Æ¡F©Î³\·| µo²{¡A¬Y¤@Ác½Æªº±¡ªp¹ê»Ú¤W¬OÄÝ©ó¥t¤@Ó¤¸¥ó¡AÀ³¸Ó±N¥¦¤À¸Ñ¥X¨Ó¡A²¾¨ì¥t¤@¹õ¤¤¡C¡^ Y¦b³Ìªì´N¯d¦³¾l¦a¡A´N·|¨Ïº¸«áªº²K¥[¦æ°Ê¸û¬°´r§Ö¡C¦³¤@¦ìµ{¦¡³]p®v«ØÄ³¡A ¦b²Ä¤@½ü¤¤¡AÀ³¸Ó¨Ïµ{¦¡½X¥u¦û¦³¤@¹õªº20-40¢H¡A¯d¤U80-60¢HªºªÅ¥Õ[1]¡C ¤£n¦b¦UÓ©w¸q¤§¶¡¯d¤UªÅ¦æ¡C¦ý¦b¨â¸s©w¸q¤§¶¡¯d¤UªÅ¦æ«h¬O¦X²zªº¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w §Y¨Ï§A¦³¤TÓ¥H16¶i¨î¼g¥Xªº³sÄòªº¹õ¡A¦b¦UÓ¹õªº°_ÀY¡A§A¤´À³±N¡yBASE¡z¡]°ò©³ ¡^³]©w¬°¡yHEX¡z¡A¨Ã¦b¹õ©³¦A³]¦^¡yDECIMAL¡z¡C¦¹¤@¬ù©wªº¥Dn¥Øªº¬O¬°¤F½T«O¦b´ú ¸Õ®É¡A¦UÓ¹õ¥i¥HÓ§Oªº¸ü¤J¡A¦Ó¤£P§Ë¶Ã¨Æ±¡¡C¦P®É¦b§A¾\Ūµ{¦¡¦Cªí®É¡A¤]¯à½T©w ¡G°£«D¦b¹õ¤¤¯S§O«ü©ú¬O¦b¡yHEX¡z¤§¤U¡A§_«h¼ÆÈ¤@«ß³£¬O10¶i¨îªº¡C ¦³¨Ç¼t°Ó±N³o¶µ³W©wÂX®iªº§ó»·¡C¥L̨䣦b¹õ©³±N¡yBASE¡zÂà¦^10¶i¨î¡A¦Ó ¬O±N¥¦³]©w¦¨»P¶i¤J³o¹õ®Éªº¶i¦ì¨î¬Û¦P¡C³oºØ¯S§Oªº«OÃÒ¥i¥H¥Î¤U¦C¤è¦¡¹F¦¨¡G BASE @ HEX \ save original BASE on stack
0A2 CONSTANT BELLS
0A4 CONSTANT WHISTLES
... etc. ...
BASE ! \ restore it
¦³®É¡A¤@Ӥ޼ƥi¥H±q¤@¹õ¶Ç°e¨ì¤U¤@¹õ¡C¨Ò¦p¦b¤@Ó¸ó¶V¦hÓ¹õªº²Õ¦X»y¨¥©w¸q ¤¤¡A¥Ñ¡yBEGIN¡z©Î¡yIF¡z©Ò¶Ç¦^ªºÈ¡A©ÎªÌ±q¬YÓ©w¸q¦r¶Ç°e¨ì¥t¤@Ó©w¸q¦rªº¦a§} ¡]°Ñ¾\¥»®Ñ²Ä¤»³¹¤¤¡A"½sĶ®É°Ïªº¤À¸Ñ"¤@³¹¡^¡C¦b³oºØª¬ªp¤U¡A³Ì¦n±N¡yBASE¡zªºÈÀx ¦s¦bªð¦^°ïÅ|¤W¡A¨Ò¦p¡G BASE @ >R HEX
... etc. ...
R> BASE !
¦³¤H±N³oºØ§@ªk·í§@¬O¤@ºØ¬Fµ¦¡A¨Ã¨Ï¥Î¦b¡yBASE¡z¥i¯à§ïÅܪº¥ô¦ó¹õ¤W¡A³o¼Ë¥LÌ´N ¦A¤]¤£¥²¬°¥¦·Ð¤ß¤F¡C
Moore¹ç¥i±N¡yLOAD¡z©w¸q¬°¡G¦b¸ü¤J¤§«á¡A¦Û°Ê©I¥s¡yDECIMAL¡z¡C³oºØ°µªk²¤Æ¤F ¹õªº¤º®e¡A¦]¬°§A¤£¥²¦A¶O¤ß¦a¥h«³]¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¥»®Ñ¤¤ªº¨Ò¤l¡A¨Ï¥ÎµÛ¤j¦h¼Æ¤H³£±µ¨üªº¶¡¹j»PÁY±ÆªºÅéµô¬ù©w¡CªÅ®æY¯à³Q«ê·íªº ¨Ï¥Î¡A¥iŪ©Ê´N¯à¤j¤jªº¼W±j¡C¦bì©lµ{¦¡¹õ¤¤¯d¥X¨ÇªÅ®æ¡A°£¤F¥Î±¼¤@¨ÇºÏºÐªÅ¶¡¥~¡A µ´µL®`³B --¤Ï¥¿¥¦«Ü«K©y¡C ¹ï©ó¨º¨Ç°¾·R¥Õ¯È¶Â¦r¬ù©wªº¤H¡Aªí5-1¬O¤@¨Ç«ü¤Þªº¦Cªí¡C¡]¦ý½Ð°O¦í¡A²Å¦¡ªº ¸Ñ;¹¬O¤£¦b¥G¶¡¹j»PÁY±Æªº¡C¡^ ªí 5-1 ÁY±Æ¤Î¶¡¹jªº«ü¤Þ
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ©w¸q»P©w¸q¤§¶¡¤£n¯dªÅ¦æ¡A°£«D¬O¬°¤F¤À¹j¨â¸s¤£¦Pªº©w¸q®É¡C
Ææ±`¨£ªº¥t¤@¨Ç¬ù©wn¨D¦b¦W¦r»Pµù¸Ñ¤§¶¡ªÅ1®æ¡Aµù¸Ñ»P©w¸q¤§¶¡ªÅ3®æ¡C§ó¦Û
¥Ñªº°µªk¬O¦bµù¸Ñªº«e«á³£ªÅ¥X3®æ¡C¤£½×»Õ¤U¿ï¥Îªº¬O¦óºØ¬ù©w¡A°È¥²«O«ù¥Îªk ¤Wªº¤@³e©Ê¡A¤£nÅܨÓÅÜ¥h¡C ¨C¦æªº³Ì«áÀ³¸Ó¬OӪťաA°£«D¬O¡G a) ©µÄò¨ì¤U¤@¦æªº¦r¦ê¡]quoted string¡^¡A©Î b) µù¸Ñªºµ²§À ¤@Ó¥H¡y\¡z¬°°_©lªºµù¸Ñ¥i¤@ª½©µÄò¨ì¦æ§À¡C¦P¼Ëªº¡A¤@Ó¥H¡y(¡z¬°°_©lªºµù¸Ñ¡A ¥¦ªºµ²§ô¥k¬A¸¹¥i¥H¬O¦b¤@¦æªº³Ì¥½ºÝ¡C ¤U±¬O±`¨£ªº¶¡¹j»PÁY±Æ¤Wªº¿ù»~¡G ¦H¡]¦W¦r»P¨Åé¨S¦³¤À¶}¡^¡G : PUSH HEAVE HO ; Àu¡G : PUSH HEAVE HO ; ¦H¡]©µÄòªº¦æ¨S¦³ÁY±Æ3®æ¡^¡G : RIDDANCE ( thing-never-to-darken-again -- )
DARKEN NEVER AGAIN ;
Àu¡G : RIDDANCE ( thing-never-to-darken-again -- )
DARKEN NEVER AGAIN ;
¦H¡]¤ù»y¨S¦³¤À¹j¡^¡G : GETTYSBURG 4 SCORE 7 YEARS + AGO ; Àu¡G : GETTYSBURG 4 SCORE 7 YEARS + AGO ;
¤ù»y¤À¹j¬OÄÝ©ó¥DÆ[¤WªºÃÀ³N¡F§Ú¤@ª½¬è¬ß¯à¦³¤@®M¦³¥Îªº¥¿¦¡³W«h¥X²{¡CµL½×¦p¦ó¡A §A¯nª`·N«O«ùµÛ¦³¨}¦nªº¥iŪ©Ê´N¹ï¤F¡C
µù¸Ñªº¾A·í»P§_¨ÆÃöºòn¡Cµù¸Ñ¦³¤ºØ«¬¦¡¡G°ïÅ|®ÄªGµù¸Ñ¡A¸ê®Æµ²ºcµù¸Ñ¡A¿é¤J ¦r¦êµù¸Ñ¡A¥Øªºµù¸Ñ¤Î±Ô¨Æµù¸Ñ¡C
¡u°ïÅ|®ÄªGµù¸Ñ¡v³Q¥Î¨ÓÅã¥Ü¥X³oÓ©w¸q©Ò®ø¯Óªº¡B¤Î©Ò¶Ç¦^ªº°ïÅ|¤Þ¼Æ¡C ¡u¸ê®Æµ²ºcµù¸Ñ¡v¥Î¨ÓÅã¥Ü¸ê®Æµ²ºc¤¤¦U¤¸¯Àªº¦ì¸m¤Î§t·N¡C¨Ò¦p¡A¤@Ó¥»¤å½w
½Ä°Ï¥i¯à¦b²Ä¤@Ó¦r¤¸³B¦s©ñµÛ¤@Óp¼ÆÈ¡]count¡^¡A¦A±µµÛ63ÓÀx¦s¥»¤å¥Îªº¦r¤¸¡C
¡u¿é¤J¦r¦êµù¸Ñ¡v¥Î¨ÓÅã¥Ü³oÓ©w¸q±q¿é¤J¦r¦ê¤¤©Ò¬ß±æ¨£¨ìªº¬O¦óºØ¦r¦ê¡C¨Ò¦p ¦r¡yFORGET¡z¡A¥¦·|¨ì¦r¨å¤¤¥h§ä´M¿é¤J¦r¦ê¤¤ªº¤@Ó¦W¦r¡C
¡u¥Øªºµù¸Ñ¡v¬O¥H¾¨¥i¯à¤Öªº¤å¥y¡A¥h´yz¬Y¤@Ó©w¸q¬°¦ó³Q°µ¥X¨Ó¡C¦Ü©ó«ç»ò °µ¥X¨Óªº¡A´N¤£¬O³oÓµù¸Ñ©Òn»¡©úªº¤F¡C
¡u±Ô¨Æµù¸Ñ¡vY¥X²{¦b©w¸q¤¤¡A¬O¥Î¨Ó¸ÑÄÀ¥¿¦b¶i¦æ¤¤ªº¨Æ±¡¡C³q±`¬O³v¦æªº¸ÑÄÀ µÛ¡C±Ô¨Æµù¸Ñ¥u³Q¨Ï¥Î¦b"««ª½®æ¦¡"ªºµ{¦¡½X¤¤¡A³oÂI¦bµy«á·|¦³¥æ¥N¡C
µù¸Ñ³q±`¥H¤p¼g¦r¥À¼g¥X¡A¥H«K»Pì©lµ{¦¡½X¦³©Ò°Ï§O¡C¡]²Å¦¡¦r¦h¥b¬O¥H¤j¼g¦r¥À ©R¦Wªº¡A¤p¼g¦r¥À°¸º¸¤]·|¦b¯S¨Ò¤¤¨Ï¥Î¡C¡^
¤U±¦U¸`¡A§ÚÌ·|±N¤Wz¦U«¬µù¸Ñªº¼Ð·Ç¤Æ®æ¦¡°µ¤@ÓÁ`µ²¡A¨ÃÁ|¥X¤@¨Ç¹ê¨Ò¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
©Ò¿×"°ïÅ|µù°Oªk"«Y«ü¡u¦p¦óªí¥Ü°ïÅ|¤W¦³¤°»ò¡vªº¦³Ãö¬ù©w¡C°ïÅ|ªºµù°O¦³¤TºØ §Î¦¡¡A§Y"°ïÅ|¹Ï¹³"¡A"°ïÅ|®ÄªG"¤Î"°ïÅ|®ÄªGªºµù¸Ñ"¡C °ïÅ|¹Ï¹³¬O¥Î¨Ó«ü¥X¦b¬Y¤@®É¨è¡A®Ú¾Ú¹ï¦¹©w¸qªº¤F¸Ñ¡AÀ³¸Ó·|¥X²{¦b°ïÅ|¤Wªº¶µ ¥Ø¡C³o¨Ç¶µ¥Ø¨Ì§Ç±q¥ª¨ì¥k¦C¥X¡A³Ì¥k¶µ¥Nªí°ïÅ|ªº³»ºÝ¡A¥ª¶µ¥Nªí¸û§Cªº¦ì¸m¡C ¨Ò¦p¡A°ïÅ|¹Ï¹³ n1 n2 «ü¥X°ïÅ|¤W¦³¨âÓ¼ÆÈ¡A¨ä¤¤n2¦b¶µºÝ¡]³Ì±`³Q¦s¨úªº¦ì¸m¡^¡C ³o¤]¬O§AÁä¤J³o¨Ç¼ÆÈªº¶¶§Ç¡F¨Ò¦p¡AYn1¬°100 ¡An2¬°5000¡A§A·|Áä¤J 100 5000 ¨Ó±N³o¨Ç¼ÆÈ¥¿½T¦a©ñ¨ì°ïÅ|¤W¡C °ïÅ|¹Ï¹³¥i¥H¨Ï¥ÎÁY¼g¡A¨Ò¦pn1¡A©Î§¹¾ã«÷¥Xªº¦r¨Ó»¡©ú¡C¤ñ¸û±`¥Îªº¬OÁY¼g¡C ªí5-2©Ò¦Cªº¬O¤@¨Ç¼Ð·ÇªºÁY¼g¡C¤£½×¨Ï¥Î¨ººØ¤è¦¡¡A¦U°ïÅ|¶µ¥Ø¤§¶¡À³¸Ó¯d¦³¤@ªÅ®æ¡C Y¤@Ó°ïÅ|¶µ¥Ø»Ýn¥H¤ù»y¨Ó´yz¡]¦p"address of latest link"¡^¡A¤ù»y¤¤©Ò¥Î ªº¦rÀ³¸Ó¥H³s¦r²Å¸¹¬Û±µ¡C¨Ò¦p°ïÅ|¹Ï¹³¡G address current-count max-count Åã¥Ü°ïÅ|¤W¦³¤TÓ¤¸¯À¡C ¡@ °ïÅ|®ÄªG¡]Stack effect¡^ ¤@Ó"°ïÅ|®ÄªG"¥]§t¨âÓ°ïÅ|¹Ï¹³¡G¤@Ó¬O³Q©w¸q©Ò¨Ï¥Î¡]®ø¯Ó±¼¡^ªº¨º¨Ç¶µ ¥Ø¡F¥t¤@Ó¬O³Q©w¸q©Ò¶Ç¦^ªº¨º¨Ç¶µ¥Ø¡C¨º"¤§«e"¡]before¡^ªº¹Ï¹³¥ý¥X²{¡A¨ä«á¸ò µÛ¨âÓ³s¦r²Å¸¹¡AµM«á¬°"¤§«á"¡]after¡^ªº¹Ï¹³¡C ¨Ò¦p²Å¦¡ªº¥[ªk¹Bºâ¤l¡y+¡z¡A¨ä°ïÅ|®ÄªG¬° n n -- sum ¡y+¡z¥Î±¼¨âӤ޼ơA¨Ã¶Ç¦^¥¦Ìªº©M¡C ½Ð°O¦í¡A°ïÅ|®ÄªG¶È¶È¬O´yz¥X°ïÅ|¹B§@ªº"²bµ²ªG"¡C¨ä¥¦¤@¨Ç¦s¯d¦b³o¨Ç¶µ¥Ø¤§ ¤U¡A»P³oÓ©w¸qµLÃöªº°ïÅ|¶µ¥Ø¡A«h¤£¥²Åã¥Ü¥X¡F¦P¼Ëªº¡A¦b³oÓ¦rªº°õ¦æ¤¤¡A·|¥X²{ ¦Ó¤S®ø¥¢ªº¶µ¥Ø¤]¤£¥²³QÅã¥Ü¥X¡C ³Q¥Î¨ì¡A¦ý«o¥½³Q§ïÅܪº¿é¤J¤Þ¼Æ¡A¤]À³¸Ón«½Æ¥X²{¦b¹Ï¹³¤¤¡F ¨Ò¦p¡G 3rd 2nd top-input -- 3rd 2nd top-output ¤Ï¹L¨Ó»¡¡AY§ïÅܤF¥ô¦ó¤Þ¼Æ¡A°ïÅ|ªºµù¸Ñ´N¥²¶·¨Ï¥Î¤@Ó¤£¦Pªº´yz²Å¸¹¡G n1 -- n2
n -- n'
°ïÅ|®ÄªGªºµù¸Ñ¡]Stack effect comment¡^ ¤@Ó"°ïÅ|®ÄªGªºµù¸Ñ"¬O¥X²{¦bì©lµ{¦¡½X¤¤¡A¥Ñ¤p¬A¸¹³ò°_ªº¤@Ó°ïÅ|®ÄªG¡C ¤U±¬O¡yCOUNT¡z¤@¦rªº°ïÅ|®ÄªGµù¸Ñ¡G ( address-of-counted-string -- address-of-text count ) ©Î ( 'counted-string -- 'text count) ¡]·í¡yCOUNT¡z¤@¦r°õ¦æ«á¡A"count" ´N·|³Q¯d¦b°ïÅ|ªº³»ºÝ¡C¡^ Y¤@Ó©w¸q¦b°ïÅ|¤W¨S¦³²£¥Í®ÄªG¡]¤]´N¬O»¡¡A¤£½×©w¸qªº¤º³¡µo¥Í¦óµ¥¤j¨Æ¡A ¨Ï¥ÎªÌ¨Ã¥½¬dı¨ì¡C¡^¡A¥¦´N¤£»Ýn°ïÅ|®ÄªGªºµù¸Ñ¡G : BAKE COOKIES OVEN ! ; ©ÎªÌ¡A§A¥i¥H¨Ï¥Î¤@ӪŪº°ïÅ|µù¸Ñ¡A¨Ò¦p : BAKE ( -- ) COOKIES OVEN ! ; ¨Ó±j½Õ³oÓ¦r¹ï¥~¦bªº¥@¬É¡A¨Ã¨S¦³¨Ï¥Î©Î²£¥Í¥ô¦óªº°ïÅ|¤Þ¼Æ¡C Y¤@Ó©w¸q¥u®ø¯Ó±¼¤@¨Ç°ïÅ|¤Þ¼Æ¡A«o¥¼¶Ç¦^¥ô¦ó¤Þ¼Æ¡AÂù³s¦r²Å¸¹«h¥i¦³¥iµL¡C ¨Ò¦p¡A ( address count -- ) ¥i¥H³Q²¤Æ¦¨ ( address count )
¡]͵ù¡G¦ý¬O«áªÌªº°µªk¯Ê¤Ö¤@P©Ê¡A¤]®e©ö²£¥Í§xÂZ¡C¡^
°ïÅ|ÁY¼gªº¼Ð·Ç ¦b°ïÅ|µù°O¤¤¨Ï¥ÎªºÁY¼g²Å¸¹À³¤O¨D¤@P¡Cªí5-2¦C¥X±`¥ÎÁY¼g¡C¡]¦¹ªí±N¦bªþ¿ýE¤¤ ¦A²{¡C¡^¨ä¤¤©Ò¿×"³æªø«×"¡B"Âùªø«×"µ¥³N»y¬O«ü¤@Ó¯S©wªº²Å¦¡¨t²Î¤¤"M¤¸"¡]cell¡^ ªºªø«×¡C¡]Y¨t²Î¨Ï¥Î16¦ì¤¸ªºM¤¸¡A«h"n"¥Nªí¤@Ó16¦ì¤¸ªº¼ÆÈ¡FY¨t²Î¨Ï¥Î32¦ì¤¸ ªºM¤¸¡A«h"n"¥Nªí¤@Ó32¦ì¤¸ªº¼ÆÈ¡C¡^ ªí 5-2 °ïÅ|µù¸ÑªºÁY¼g
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ºX¼Ðªºµù°Oªk ªí5-2¤¤Åã¥Ü¤TºØªí¥Ü¥¬¤óºX¼Ð¡]boolean flag¡^ªº¤è¦¡¡C¬°¤F»¡©ú¡A¤U±¬O¦P¤@Ó ¦r¡yTEXT¡zªº°ïÅ|µù¸Ñªº¤TºØª©¥»¡G ( a1 u a2 -- ?)
( a1 u a2 -- t=no-match)
( a1 u a2 -- f=match)
¸ò¦b"t"¤Î"f"¤§«áªºµ¥¸¹¡Aªí¥Ü°õ¦æ«áºX¼Ð©Ò¥Nªíªºµ²ªG¡C²Ä¤GºØ¼gªk¤¤ªº¥kÃäÀ³Åª¦¨ "true means no
match."¡]ºX¼Ð¬°¯u®É¡Aªí¥Ü¨S¦³§k¦Xªº¤å¦r¦s¦b¡^¡C ¬Y¨Ç©w¸q¦b¤£¦P±¡ªp¤U·|²£¥Í¤£¦Pªº°ïÅ|®ÄªG¡C Y°ïÅ|¤Wªº¤Þ¼Æ¼Æ¥Ø¦b¦UºØª¬ªp¤U³£«O«ù¤£ÅÜ¡A¦Ó¤Þ¼Æ¥»¨«o·|ÅÜ¡A§A¥i¥H¥Î««ª½½u¡]|¡^¨Óªí¥Ü"©ÎªÌ"ªº·N«ä¡C¤U±ªº°ïÅ|®ÄªGµù¸Ñ¬O´yz¤@Ó¦r¡A¥¦¥i¯à·|¶Ç¦^¤@ÓÀÉ®× ªº¦a§}¡]Y§ä¨ì©ÒnªºÀɮס^¡A¤]¥i¯à¶Ç¦^¤@Ó¹s¡]ªí¥ÜÀɮרS§ä¨ì¡^¡G ( -- address | 0=undefined-file) Y¬Y¤@Ó°ïÅ|¹Ï¹³¤¤ªº¤Þ¼Æ¼Æ¥Ø¬O¥iÅܪº --¤£½×¦b"¤§«e"©Î"¤§«á"ªº¹Ï¹³¤¤ --§A´N ¥²¶·¨Ï¥ÎÂù³s¦r²Å¸¹¡A¨Ã¥B¥H | ²Å¸¹¤À¶}¡A±N¨âºØª©¥»ªº¥þ³¡°ïÅ|¹Ï¹³³£¼g¥X¨Ó¡C ¨Ò¦p¡G -FIND ( -- apf len t=found | -- f=not-found ) ¦¹µù¸ÑÅã¥Ü¡GY¯à´MÀò©Ònªº¦r¡A«h¦³¤TӤ޼Ʒ|³Q¶Ç¦^¡]¯uºX¼Ð¦b³»ºÝ¡^¡F¤£µM¡A «h¥u¦³¤@Ó°²ºX¼Ð³Q¶Ç¦^¡C °ª¿³ªº¸Ü¡A§A¥i¥H±N¾ãÓ°ïÅ|®ÄªG¼g¨â¦¸¡C¦pªG¬O¼g¦b¦P¤@¦æ¤¤¡A«h¶¡¹j¤TӪŮæ¡G ?DUP \ if zero:( n -- n) if non-zero:( n -- n n) ©Î««ª½¦¡ªº¦C¥X¡G -FIND \ found:( -- apf len t )
\ not-found:( -- f )
¡@ ¸ê®Æµ²ºcªºµù¸Ñ
¸ê®Æµ²ºcµù¸Ñ¬O¥Î¨Ó´yz¸ê®Æµ²ºc¤¤ªº¤¸¯À¡C¨Ò¦p¡A¤U±¬O¦WºÙ¬°¡y|INSERT¡zªº ´¡¤J½w½Ä¾¹¡]insert buffer¡^ªº©w¸q¡G CREATE |INSERT 64 ALLOT \ { 1# | 63text }
¨ä¤¤ªº¤j¬A¸¹¥Î¨Óªí¥Ü³oºØµù¸Ñªº¶}©l»Pµ²§ô¡F««ª½½u§@¬°µ²ºc¤¤¦U¤¸¯Àªº¤À¹j²Å¸¹¡A ¼Æ¦r¥Nªí¨C¤@¤¸¯À©Ò¦û¦³ªºªº¦r¤¸¼Æ¡C¦b¤W±ªºµù¸Ñ¤¤¡A²Ä¤@¦r¤¸¬O¤@Óp¼ÆÈ¡A¨ä«á¸ò µÛ63Ó¦r¤¸ªº¥»¤å¡C "¦ì¤¸ªºµù¸Ñ"»P¸ê®Æµ²ºcµù¸Ñ¨Ï¥Îªº®æ¦¡¬Û¦P¡A¥¦¥Î¨Ó´yz¬Y¤@¦ì¤¸²Õ¡]©ÎM¤¸¡^ ¤¤¦UӦ줸ªº·N¸q¡C¤U±ªº¦ì¤¸µù¸Ñ { 1busy? | 1acknowledge? | 2x | 6input-device | 6output-device }
´yz¬Y¤@³q«HÀW¹Dªºª¬ºA¼È¦s¾¹¡]16¦ì¤¸¡^ªº®æ¦¡¡C³Ì«eªº¨â¦ì¤¸¬°ºX¼Ð¡A¸òµÛ¨âÓ ¥½³Q¨Ï¥Îªº¦ì¤¸¡A³Ì«á¬°¤@¹ï6¦ì¤¸ªºÄæ¦ì¡AÅã¥Ü¦¹¤@ÀW¹D©Ò³s±µªºI/Oª¬ºA¡C Y¦³¶W¹L¤@Ó¥H¤Wªº¸ê®Æµ²ºc¨Ï¥ÎµÛ¬Û¦Pªº¹Ï¼Ë¼Ò¦¡¡A§A¥u¶·¼g¥Xµù¸Ñ¤@¦¸¡]«Ü ¥i¯à¬O¼g¦b«e¨¥¤¤¡^¡A¨Ã¥I¤©¥¦¤@Ó¦WºÙ¥H«K¦b«áÄòªº¹õ¤¤¨Ï¥Î¡C¨Ò¦p¦b«e¨¥¤¤¡AYµ¹¤F ¤W±¨ººØ¦ì¤¸¹Ï¼Ë¤@Ó"status"ªº¦WºÙ¡A«h"status"´N¥i¥H³Q¥Î¦b°ïÅ|µù¸Ñ¤¤¡Aªí¥Ü³o¼Ë ªº¹Ï¼Ë¡G : STATUS? ( -- status) ... ; ¦pªG¤@Ó¡y2VARIABLE¡z¦sµÛ¤@ÓÂù¾ã¼ÆÈ¡A¨º»ò¥¦ªºµù¸Ñ´NÀ³¸Ó¬O¤@ӯ໡¥X¥¦¤º®eªº °ïÅ|¹Ï¹³¡G 2VARIABLE PRICE \ price-in-cents ¦pªG¤@Ó¡y2VARIABLE¡z§t¦³¤GÓ³æ¾ã¼Æªº¸ê®Æ¡]¦X¦b¤@°_«ê¦n¬OÓÂù¾ã¼Æ¡^¡A§A´N¸Ó ³o¼Ë¦a»¡©ú¥¦ªº°ïÅ|¹Ï¼Ë¡G 2VARIABLE MEASUREMENTS ( height weight ) ³o»P¡yMEASUREMENTS¡z¬O¸g¥Ñ¨Ï¥Î¡yCREATE¡z©Ò©w¸q¥X®Éªºµù¸Ñ¤è¦¡¤£¦P¡C CREATE MEASUREMENTS 4 ALLOT \ { 2weight | 2height }
¡]·í¨âºØz±Ô¦b¦r¨å¤¤²£¥Í¬Û¦Pªºµ²ªG®É¡A¡y2VARIABLE¡zªº¨Ï¥Î¡A·t¥ÜµÛ¥¦³q±`¬O³Q ¡y2@¡z»P¡y2!¡z¤G¦r©Ò¹B§@ --¦]¦¹§ÚÌ´N¨Ï¥Î°ïÅ|µù¸Ñ¡C¨ä¤¤°ª¦ìªº³¡¥÷¡]high-order part¡^¡A¤]´N¬O·|¥X²{¦b°ïÅ|³»ºÝªº¡A³Q¦C¦b¥kÃä¡C¡yCREATE¡zªº¨Ï¥Î¡A«o·t¥Ü¥¦ªºÈ ·|³Q¤À¶}µÛ¦s¨ú --¦]¦¹§ÚÌ¨Ï¥Î¸ê®Æµ²ºcªºµù¸Ñ¤è¦¡¡C¨ä¤¤²Ä0Ó¤¸¯À¦C¦b³Ì¥ª¤è¡C¡^
¿é¤J¦r¦êµù¸Ñ¬O¥Î¨Ó»¡©ú¡A¦³¤°»ò¦r©Î¦r¦ê¬OÀ³¸Ó¥X²{¦b¿é¤J¦r¦ê¤¤ªº¡Cªí5-3¦C¥X »¡©ú¿é¤J¦r¦ê¤Þ¼Æªº¥Î¦r¡C ªí5-3 ¿é¤J¦r¦êµù¸Ñªº¥Î¦r
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¿é¤J¦r¦êªºµù¸ÑÀ³¸Ó¥X²{¦b°ïÅ|µù¸Ñ¤§«e¡A¦Ó¥B¤£n³Q¥¦¦Û¤vªº¤@¹ï¬A¸¹®Ø°_¡A ¶È¦b«e«á¦U¯d¤TӪŮæ¡C¤U±§Y¬°¡y '¡z©w¸qªºµù¸Ñ¡F¿é¤J¦r¦êµù¸Ñ¥ý¥X²{¡AµM«á¬O°ïÅ| µù¸Ñ¡G : ' \ name ( -- a) §AY°¾·R¨Ï¥Î "(" ¡Aµù¸Ñªº¼gªk´NÅܦ¨¡G : ' ( name ( -- a) ±µ¨ü¦r¦êªº¿é¤J¡A¦³¤TºØ¤£¦Pªº±¡ªp¡C¬°Á×§K²V²c¡A¥¦Ìªº»¡ªk¬O¡G ¡E ·j´M¡]Scanning-for¡^¡G¦V«e§ä´M¿é¤J¦r¦ê¤¤ªº¬Y¤@Ó¦r©Î¼ÆÈ¡A¨Ò¦p¦b¡y '¡z ªº±¡ªp¡F©Î¬O§ä¤@ӬɲŸ¹¡A¨Ò¦p¦b¡y."¡z¤Î¡y.(¡z°õ¦æ®É¡C ¡E ´Á±æ¡]Expecting¡^¡G¦bµ¥«ÝµÛ¡C¨Ò¦p¡yEXPECT¡z¤Î¡yKEY¡z¤G¦r´N¬O¦bµ¥«Ý¿é ¤J¡C ¡E »{¬°¡]Presuming¡^¡G¦b¥¿±`±¡ªp¤U¡A¬Y¨ÇªF¦èÀ³¸Ó·|¸òµÛ¥X²{¡C¨Ò¦p¡y:¡z ·|·j´M¨ºÓn³Q©w¸qªº¦WºÙ¡A¨Ã¥B"»{¬°"¥¦ªº©w¸q·|¸òµÛ¥X²{¡C
¿é¤J¦r¦êªºµù¸Ñ¶È¾A¥Î©ó·í¿é¤J¦r¦ê»Ýn³Q"·j´M"®É¡A¤~¬O«ê·íªº¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¥Øªºµù¸ÑÀ³¸Ó«O«ù¦b³Ì¤pªºª¬ºA --µ´¤£n¶W¹L¤@¦æ¡C¨Ò¦p¡G : COLD \ restore system to start condition
... ;
¥t¤@¤è±¡A¤@Ó¦rªº¥Øªº¡A¸g±`¥iÂǥѥ¦¦Û¤vªº°ïÅ|µù¸Ñ¡A¤©¥H´yz¥X¨Ó¡C§A«ÜÃø ·|¦³¬J»Ýn¤@Ó°ïÅ|µù¸Ñ¡A¤S»Ýn¤@ӥتºµù¸Ñªº±¡ªp¡C¨Ò¦p¡G : SPACES ( #--) ... ; ©Î : SPACES ( #spaces-to-type -- ) ... ; ³oÓ©w¸q·|±N°ïÅ|³»ºÝªº°Ñ¼Æ¬Ý§@¬Oªí¥Ü»Ýn¦L¥XªºªÅ®æ¼Æ¥Ø¡C : ELEMENT ( element# -- 'element) 2* TABLE + ; ³oÓ©w¸q±N¤@Ó¯Á¤ÞÈ¡]·|³Q¥Î±¼¡^¡AÂà´«¬°¤@Óªí®æ¤¤³Q¥¦©Ò«üµÛªº¤¸¯Àªº¦a§}¡A ¦Ó³oÓªí®æ¬O¥Ñ2Ó¦r¤¸ªº¤¸¯À©Ò²Õ¦¨ªº¡C : PAD ( -- 'scratch-pad) HERE 80 + ; ³oÓ©w¸q¶Ç¦^¤@Ó°O¾ÐÅé¼È¦s°Ïªº¦a§}¡C ¦³®É¡A¥iŪ©Ê¥i¥HÂǵۦP®É°O¸ü¨âºØ«¬¦¡ªºµù¸Ñ¦Ó¤j¬°¼W±j¡C¦b³oºØ±¡§Î¤U¡A¥Øªºµù ¸ÑÀ³¥X²{¦b«á±¡C¨Ò¦p¡G : BLOCK ( n -- a) \ ensure block n in buffer at a
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¨Ò¦p¡G : GET \ name ( -- a) get first match Y¦³»Ýn¡A§A¤]¥i±N¥Øªºµù¸Ñ¼g¦b²Ä¤G¦æ¡G : WORD \ name ( c -- a)
\ scan for string deliimt'd by "c"; leave at a
... ;
©w¸q¦rªºµù¸Ñ¡]Comments for Defining Words¡^ ¤@Ó¡u©w¸q¦r¡vªº©w¸q²o¯A¨ì¤GºØ¦æ¬°¡]behavior¡^¡G ¤@¬O·í¥¦¦b©w¸q¥¦ªº"«Ä¤l"®Éªº¦æ¬°¡]½sͮɰÏ(compiler-time)ªº¦æ¬°¡^¡A ¥H¤Î ³oӫĤlªº¦æ¬°¡]°õ¦æ®É°Ï(run-time)ªº¦æ¬°¡^¡C ³o¤GºØ¦æ¬°¥²¶·¤À¶}¨Óµù¸Ñ¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¨Ò¦p¡G : CONSTANT ( n-- ) CREATE ,
DOES> ( -- n) @ ;
°õ¦æ®É°Ï¡]«Ä¤l¡^ªº¦æ¬°ªº°ïÅ|®ÄªGµù¸Ñ¡AÀ³¸ÓÅã¥Ü¥X³oӫĤl±N¨Ó¦b°õ¦æ®Éªº°ïÅ|ªº "²b"®ÄªG¡C¦]¦¹¡A¥¦¨Ã¤£¥]§t¥Ñ¡yDOES>¡z©Ò¶Ç¦^ªº¦a§}¡A§Y¨Ï¬O·í³o¬q½X¦b°õ¦æ®É¡A ³oÓ¦a§}½T¹ê¦a·|¸g¥Ñ°ïÅ|¶Ç¨Ó¡C ¦H¡]°õ¦æ®É°Ïµù¸Ñ§t¦³apf ¡^¡G : ARRAY \ name ( #cells -- )
CREATE 2* ALLOT
DOES> ( i apf -- 'cell) SWAP 2* + ;
Àu¡G : ARRAY \ name ( #cells -- )
CREATE 2* ALLOT
DOES> ( i -- 'cell) SWAP 2* + ;
¸g¥Ñ¡yARRAY¡z©Ò©w¸q¥Xªº¦r¡]¥¦ªº«Ä¤l¡^³£·|¦³¤U±ªº°ïÅ|®ÄªG¡G ( i -- 'cell) §Y¨Ï¤@Ó©w¸q¦r¨Ã¥¼³Q«ü¬£¦³¡u°õ¦æ®É°Ï¦æ¬°¡v¡A³oӦ欰¤´µM¦s¦b¡A¥¦¥i¥H³Qµù¸Ñ¬°¡G : VARIABLE ( name ( -- ) CREATE 2 ALLOT ;
\ DOES> ( -- adr )
½sͦrªºµù¸Ñ¡]Comments for Compiling Words¡^ ´N¦p¦P¡u©w¸q¦r¡v¤@¼Ë¡A¤j¦h¼Æªº¡u½sͦr¡v¤]²o¯A¨ì¨âºØ¦æ¬°¡G 1. ·í³oÓ½sͦr¥X²{¦b¤@Ó©w¸q¤¤¡A¦Ó³oÓ©w¸q¥¿¦b³Q½sĶ®Éªº¦æ¬°¡C 2. ·í§t¦³³oÓ½sͦrªº©w¸q³Q°õ¦æ®É¡A³oÓ½sͦrªº¦æ¬°¡C ¦P¼Ë¦a¡A§Ṳ́]¥²¶·¹ï³o¨âºØ¦æ¬°¤À§O°µµù¸Ñ¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¨Ò¦p¡G : IF ( ? -- ) ...
\ Compile: ( -- address-of-unresolved-branch)
... ; IMMEDIATE
¦b¼g½sͦrªºµù¸Ñ®É¡A²Ä¤@Óµù¸Ñ¬O¥Î¨Ó´yz°õ¦æ®É°Ïªº¦æ¬°¡A³q±`ªí¥Ü¥¦³Q"¨Ï¥Î"®É ªº"»yªk"¡C²Ä¤GÓµù¸Ñ¬O´yz¸Ó¦r¦b³Q½sͮɡA°µ¤F¨Ç¤°»ò¨Æ¡]³oÂI¹ï¨Ï¥ÎªÌ¬O¤ñ¸û¤£ «nªº¡^¡C ¥t¤@Ó¨Ò¤l¡G : ABORT" ( ? -- )
\ Compile: text" ( -- )
¦³®É¡A·í¤@Ó½sͦr¦b¤@Ó«_¸¹©w¸q¤§¥~³Q©I¥s®É¡A¥¦¥i¯à·|ªí²{¥X¤£¤@¼Ëªº¦æ¬°¡C³o Ãþ¦r¡]¬O«ÜÃø¦ø«Jªº¡^»Ýn¤TÓµù¸Ñ¡C¨Ò¦p¡G : ASCII ( -- c)
\ Compile: c ( -- )
\ Interpret: c ( -- )
... ; IMMEDIATE
¥»®Ñªþ¿ýE¤¤¦³³oÃþµù¸Ñªº¼gªk¥i¨Ñ°Ñ¦Ò¡C
µù¸Ñªº¥Øªº¡A¦b¨Ïµ{¦¡½XªºÅªªÌ®e©ö¬Ý¥X¥¿¦b¶i¦æªº¬O¤°»ò¨Æ¡C¦ý¬O¡A»Ýn¦h¤Öµù¸Ñ¤~ °÷¡Hn¨M©w¤°»ò¼Ë¤ô¥ªºµù¸Ñ¤~¯àº¡¨¬»Ýn¡A§A¥²¶·°Ý¦Û¤v¨âÓ°ÝÃD¡G ½Ö·|¨ÓŪ§Úªºµ{¦¡½X¡H §Ú¨º¨Ç©w¸qªº¥iŪ©Ê¦p¦ó¡H µù¸Ñªº¤åÅé¡]styles¡^°ò¥»¤W¦³¨âºØ¥i¨Ñ¿ï¾Ü¡C²Ä¤@ºØºÙ¬°"««ª½®æ¦¡"¡A¨ä¤¤¥]§t¹ï ¹Lµ{ªº³v¨B±Ôz¡A´N¹³¬O°µ¤F«Ü¦nªºµù¸Ñªº²Õ¦X»y¨¥µ{¦¡¦Cªí¡C³oºØ³v¨B±ø¦Cªºµù¸ÑºÙ ¬°"±Ô¨Æ¦¡ªºµù¸Ñ"¡C \ CRC Checksum
: ACCUMULATE ( oldcrc char -- newcrc)
256 * \ shift char to hi-order byte
XOR \ & xor into previous crc
8 0 DO \ then for eight repetitions,
DUP 0< IF \ if hi-order bit is "1"
16386 XOR \ xor it with mask and
DUP + \ shift it left one place
1+ \ set lo-order bit to "1"
ELSE \ otherwise, i.e. hi-order bit is "0"
DUP + \ shift it left one place
THEN
LOOP ; \ complete the loop
¥t¤@ºØ¤£¦bµ{¦¡½Xªº¤ù»y¤§¶¡ÂIºó³o¨Ç±Ô¨Æ¦¡µù¸Ñªº«¬ºAºÙ¬°"¤ô¥®æ¦¡"¡C : ACCUMULATE ( oldcrc char -- newcrc)
256 * XOR 8 0 DO DUP 0< IF
16386 XOR DUP + 1+ ELSE DUP + THEN LOOP ;
««ª½®æ¦¡¾A¥Î©ó¤@¤j²Õµ{¦¡³]p®v¦@¦P¼¶¼g¤ÎºûÅ@¤@ÓÀ³¥Îµ{¦¡ªº±¡ªp¡C¤@¯ë¦Ó¨¥¡A ¦b³o¼Ëªº¤@²Õ¤H¤¤¡A¦³´XÓ¸ê²Lªº³]p®vt³d¦¸nªº×¥¿¤u§@¡C¦b³o¼ËªºÀô¹Ò¤U¡A¶O ¤@µf¤ß¤O©Ò°µªºµù¸ÑÁ`·|¸`¬Ù¤U¤j¶qªº®É¶¡¡A¨Ã¥BÁ×§K¤£¤Öªº§xµ~¡CMoore²£·~¤½¥qªº Johnson»¡¡G¡u·íºû×µ{¦¡½X®É¡A§A³q±`¥u·|¹ï¨ä¤¤ªº¤@¤p¬q¦³¿³½ì¡A¼g¦b¨º¨àªº¸ê°T ¶V¦h¡A¾¨§Ö×´_ªº¾÷·|¤]´N¶V¤j¡C¡v ¥H¤U¬°¸Ó¤½¥qn¨D²Å¦¡µ{¦¡³]p®v¿í¦u¡A¥B»á¦Xn»âªº³W«h¡C 1. ¨Ï¥Î««ª½®æ¦¡¡Cµù¸Ñ¼g¦bì©l½Xªº¥k¤è¡C¦³»Ýn®É¡A¤]¥i¥H±µÄò¨ì¤U¤@¦æ¡C 2. µù¸Ñ©Ò¥Îªº¦r¼ÆÀ³¸Ó¤ñì©l½X¦h¡C¡]³oÓ¤½¥q¹ªÀy¨Ï¥Î¸ûªøªº¡B¯à¥R¤À´yz·N«ä ªº¦W¦r¡^ 3. ¥ô¦ó±ø¥óµ²ºcªº¦r¡B©ÎÀ³¥Îµ{¦¡ªº¦r¡AÀ³¸Ó¤À¶}¼g¦b¥t¤@¦æ¡C"¾¸µ¦r"¥i¥H»EÃl ¦b¤@°_¡C¦b±_¦¡ªº±ø¥ó¥y¤¤¥²¶·¨Ï¥ÎÁY±Æ¡C¡]͵ù¡G¦b²Å¦¡ªº®Ö¤ß¦r¤¤¡A¦³¨Ç¦r ·|§«Ãªµ{¦¡ªº¥iŪ©Ê¡A¦p°ïÅ|¾Þ§@ªºDUP¡BDROPµ¥µ¥¡A¥¦Ì¬Ý¨Ó´N¹³¬O"¾¸µ"¡^ ¦ý¬O¡A³oºØ®æ¦¡¤]¦³¨äY¤z§xÃø¡C¦Ü¤Ö¡A³v¨B±Ôzªºµù¸Ñ¤è¦¡«Ü¶O®É¡A§Y¨Ï§A¨Ï¥Î¤@ Ó¬Û·í¦n¥Îªº½s¿è¾¹¤]¬O¦p¦¹¡C¥Í²£¤O·|¨ü¨ì¼vÅT¡A¤×¨ä¬O·í§A°±¤U¨Ó¼gµù¸Ñ¦Ó¥´Â_¤F §Aªº«ä¸ô®É¡C ¦P®É¡A§A¤]n¤p¤ßÁlÁl¦a½T«Oµù¸Ñªº§ó·s¡C±`¦³ªº±¡§Î¬O¡Aµ{¦¡½X³Q×§ï¤F¡A×¥¿ ªºª©¥»¤]¸g¹L´ú¸Õ¡A×¥¿ªº³¡¥÷¤]ªº½T¯à¤u§@ --¦ý¬Oµ{¦¡³]p®v«o§Ñ¤F¥h×§ïµù¸Ñ¡Cµù ¸Ñ¶V¦h¡A¥¦Ì´N¶V¦³¥i¯à¬O¿ùªº¡C¦pªG¥¦Ì¬O¿ùªº¡A¨º¥i¤ñ¨S¦³µù¸ÑÁÙnÁV¡C ¦pªGp¹ºªºt³d¤H¯à°÷¶O¤ß¦aÀˬd¥H½T«Oµù¸Ñªº¥¿½T©Ê¡A¨º»ò°ÝÃDÁÙ¬O¥i¥H¸Ñ¨Mªº¡C ³Ì«á¡A³v¨Bµù¸Ñªº§@ªk·|µ¹¤H¤@ºØµê°²ªº¦w¥þ·P¡C§O¥H¬°¨C¦æ³£¦³¤@Óµù¸Ñ¡A´Nªí¥Ü ³oÓÀ³¥Îµ{¦¡ªºµù¸Ñ´N¬O¦nªº¡C³v¨Bµù¸Ñ¨Ã¤£·|«ü¥X¤@Ó©w¸q¹B§@ªººëµØ¡C¨Ò¦p¡A©Ò¨Ï ¥ÎªºÀˬdȺtºâªk¡]checksum algorithm¡^I«áªº·Qªk¬O¤°»ò¡H½Ö¤S¯à±q¥¦ªº±Ô¨Æ¦¡µù ¸Ñ¤¤¬Ý¥X¤°»ò¨Ó¡H n·Q§´·íªº´yz¤@Ó¤wª¾µ{§ÇªºªÈµ²¹Lµ{¡A³q±`»Ýn³\¦h¬q¸¨¡A¦Ó«D³æ¤@Ó¤ù»y´N ¯à¦¨¨Æ¡C³oÃþªº´yzÀ³¸ÓÂkÄݦb¸É§U¤å¥ó©Î³¹¸`ªº«e¨¥¤¤¡C ºJ¶}³o¨Çĵ§i¤£´£¡A¤´¦³³\¦h¤½¥qµo²{««ª½¦¡ªºµù¸Ñ¬O¥²nªº¡C·íµM¡A¤@Óè¶}©l ±Ä¥Î²Å¦¡ªº¤u§@¤p²ÕÀ³¸Ón¥h½Õ¾A¥¦¡A´N¦p¦P¥ô¦ó¤@Ó¤j«¬ªº¤u§@¤p²Õ¤@¼Ë¡C ¤ô¥®æ¦¡¤S¦p¦ó¡H©Î³\³o¬OÓÃÀ³N¹ï¹ê»Úªº¸ÜÃD¡A¦ý¬O§Ú§Ô¤£¦ín¬°¤ô¥ªº®æ¦¡ÅG Å@¡C¥¦¦P¼Ë¦a¦³®Ä¡A¬Æ¦Ü¦³¨Ç¤è±§ó³Ç¥X¡C ¦pªG²Å¦¡µ{¦¡½X¼g±o¨ì®a¡A´N¤£·|¦³§t½kÅ¢²Î¤§³B¡C³o·N«ä¬O»¡¡G ¡E ¤ä´©ªºµü¶°¦³¨}¦n³]pªº»yªk ¡E °ïÅ|ªº¿é¤J¿é¥X§¡¤wµù¸Ñ ¡E ¥Øªº¤]°µ¤Fµù¸Ñ¡]¦pªG±q¦W¦r©Î°ïÅ|µù¸Ñ³£¤£¯à²M´·ªº»¡©ú®É¡^ ¡E ©w¸q³£¤£¤Óªø ¡E ¶Ç°e¨ì³æ¤@Ó©w¸qªº°ïÅ|¤Þ¼Æ³£¤£¦h¡]°Ñ¾\²Ä¤C³¹¤¤"¦X¥GÅéµôªº°ïÅ|"¡^ µL½×¦p¦ó¡A²Å¦¡»P¨ä¥¦»y¨¥ªº½T¬O¤£¦Pªº¡C³v¨Bµù¸Ñªº§@ªk¡A¤£¹L¬O¥Î¨Ó´£°ªµ{¦¡¥i Ū©Êªº¤@¨Ç¨Æª«¤§¤@¦Ó¤w¡C ²Ó¿°¼¶¼gªº²Å¦¡µ{¦¡½X¦³¦p¸Öºq¡A¨ä©Ò§t¦³ªººë½T·N¸q¡A¬Oµ{¦¡³]p®v©M¾÷¾¹¤GªÌ ³£®e©ö¾\Ūªº¡C§Aªº¥Ø¼ÐÀ³¸Ó¬O¡G¼¶¼g¤£»Ýµù¸Ñªºµ{¦¡½X¡A§Y¨Ï§A¨M©wn¬°¥¦Ì°µµù¸Ñ¡C ³]p§AªºÀ³¥Îµ{¦¡®É¡AnÅýµ{¦¡½X --¦Ó«Dµù¸Ñ-- ªí¹F¥X§Aªº·Qªk¡C ¦pªG§A¦¨¥\¤F¡A¨º§A´NÂ\²æ¤F¹L«×µù¸ÑªºªÈÄñ¡A¿²©ó¨¥Â²·N¸ð¡A¤FµL¥Ê¸¯ªº¹Ò¬É¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¤£©¯ªº¬O¡A§Y¨Ï³Ì¦nªºµ{¦¡³]p®v¡A¤@¥¹¾D¹J¨ì¥æ¨÷´ÁªºÀ£¤O¡A¤]·|¼g¥XY¨S¦³µù ¸Ñ´NÃø¥H¾\Ūªºµ{¦¡½X¡CY§A¬O¼gµ¹¦Û¤v¥Îªº¡A©Î¬O¼gµ¹¤@¨Ç"§A¯à¥Î¤fÀY·¾³q"ªº¤H¡A ¤ô¥®æ¦¡¬O³Ì²z·Qªº¡C§_«h¡A§A¥u¦n¦Ò¼{««ª½®æ¦¡¡C
°£¤F¹ï¼Æ¾Çªº¶Ý¦n¥~¡AY¯à½T¹ê¦a´x´¤¦Û¤vªº¥À»y¡A¹ï¤@¦ì³Ó¥ôªºµ{¦¡³]p®v¦Ó¨¥¡A ¤£³×¬O¸U³e®a°]¡C--¡]Edsger W. Dijkstra±Ð±Â[3]¡^ §ÚÌ´¿¸g°Q½×¹L¡A¥H¦W¦r¨Ó¶H¼x·§©À¤Î¨Æª«³o¥ó¨Æ¡A¦bÀ³¥Îµ{¦¡¤¤ªº«n©Ê¡C©R¦W¤wÅÜ ¦¨³]p¹Lµ{¤¤ªº«n³¡¥÷¡C ·s¶i¤HûÁ`·|©¿²¤¦W¦rªº«n©Ê¡A¥LÌ»{¬°¡u²¦³º¡A¹q¸£´N¬O¹q¸£¡A¥¦¨Ã¤£¦b ¥G§Ú¿ï¥Îªº¬O¤°»ò¦W¦r¡C¡v ¦ý¬O°ÝÃD¬O¡A§A¦b¥G¡C¦nªº¦W¦r¹ï¥iŪ©Ê¬O«Ü«nªº¡C¬Æ¦Ü©ó¡A©I¥s¤@Ó¡u³æ¤@Ó ¦rªº´yz¡v¡]one-word description¡^³oºØ¤ß´¼¤WªºÁëÁå¡A¯à¦b§Aªº²z¸Ñ¤O¤W²£¥Í¤@ºØ ³sÂê¤ÏÀ³¡AÅý§A¤F¸Ñ¨ºÓ¹êÅé¸Ó°µ¤°»ò¡A¤£¸Ó°µ¤°»ò¡C ¥H¤U¬O¤@¨Ç¿ï¾Ü¦n¦W¦r©Ò¥Îªº³W«h¡G
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¤@Ó©w¸q¥²¶·¹ï¥~±ªº©I¥sªÌÁôÂð_¥¦¦b¹ê²{¤Wªº½ÆÂø«×¡C¦P¼Ëªº¡A¤@Ó¦W¦r¤]¥²¶· ±Nµ{§Ç¤Wªº²Ó¸`ÁôÂð_¨Ó¡A¯ªí²{¥X¨ä¥~»ª»P²b®ÄªG¨Ó¡]net effect¡^¡C ¨Ò¦p¡A²Å¦¡¦r¡yALLOT¡z¡]°t¸m¡^¶È¶È¬O¼W¥[¤F¦r¨åªº«ü¼ÐÈ¡]¦b¤j¦h¼Æªº¨t²Î¤¤¡A «ü¼Ðªº¦W¦r¥s°µ¡yDP¡z©Î¡yH¡z¡^¡C¦ý¬O¡yALLOT¡z³oÓ¦W¦r¤ñ¡yDP +!¡z³oÓ¤ù»y¦n¡A¦] ¬°¨Ï¥ÎªÌ©Ò·Qnªº¤£¹L¬O«O¯dªÅ¶¡¡A¦Ó¤£¬O¥h¼W¥[¤@Ó«ü¼ÐªºÈ¡C ¦b1983¦~ªº¼Ð·Ç¤¤¡A²Å¦¡±Ä¥Î¡yCMOVE>¡z¥h¥N´Àì¨Ó¨ã¦³¦P¼Ë¥\¯àªº¡y<CMOVE¡z¡C ³oÓ¹B§@³B²z¤F¡u¦V«e¡v«þ¨©¨ì¤@¬q«Å|ªº°O¾Ð°Ï¤Wªº°ÝÃD¡C³o¬O¸g¥Ñ¥ý²¾°Ê³Ì°ª ¦ì§}ªº¤º®e¡A¦A¨Ì§Ç¡u¦V«á¡v³B²z¸û§Cªº¦a§}¡A¨Ó§¹¦¨¡C¦b·s¦W¦r¤¤¡A"°µ¤°»ò"¤¤ªº ¡u¦V«e¡v¡]¥H²Å¸¹ > ¨Óªí¥Ü¡^¨ú¥N¤F"¦p¦ó°µ"¤¤ªº¡u¦V«á¡v¡]²Å¸¹ <¡^¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ±j¦Ó¦³¤Oªº°Ê¦]¦b©ó«ê·íªº¦r¡C¨C·í§Ú̱q®Ñ³ø¤¤¯AÂy¨ì«D±`«ê·íªº¦r¡A°¿©¿¤§¶¡©Ò ·P¨ü¨ìªº®ÄªG¡A¬JÄݦ×Åé¤]Äݺ믫¡A§Ö¦p°{¹q¡C¡]°¨§J¦R·Å¡^ ¥¿½Tªº¦r»P¨º¬Ý¦ü¥¿½Tªº¦r¬O¦³°Ï§Oªº¡A´N¹³¤Ñ¤Wªº°{¹q©M¿Ã¤õÂΪº·L¥ú¡C ¡]°¨§J¦R·Å¡^ ¦æÅU¨¥¡F¨¥ÅU¦æ¡C¡]²ï¤h¤ñ¨È¼@§@¡A«¢¹Ú¹p¯S²Ä¤T¹õ¡C¡^ Henry Laxen¡A¤@¦ì²Å¦¡ªºÅU°Ý¤Î§@®a¡A»{¬°¡A²Å¦¡³Ì«nªº¤@¶µµo®i¤u¨ãÀ³¸Ó¬O¤@ ¥»¦nÃã¨å[4]¡C ¦³®ÉÔ§A¬°¤@Ó©w¸q«ä¯Á¤@Ó«ê·íªº¦W¦r¡A¦ý¬OÁ`¥O§A·Pı¤£§´¡C´XÓ¤ë¹L¥h¤F¡A §A¤~µoı§¤¥¢¨}¾÷¡C´N¥H²Ä¥|³¹¤¤ªºÃ¹°¨¼Æ¦r°ÝÃD¬°¨Ò¡A¨ä¤¤¦³Ó¦r¬O¥Î¨Ó³B²z¨Ò¥~ª¬ ªpªº¡G¤]´N¬O³B²z¤ñ¤U¤@ӲŸ¹È¤Ö1ªº¨º¨Ç¼Æ¦rªº±¡ªp¡C§Ú²Ä¤@¦¸¬O¿ï¾Ü¡u4-or-9¡v¡C ¨º¯u¬OÃø¬Ý¡C¦ýµ¥§Ú·Q¨ì¥Î¡uALMOST¡v³oÓ¦W¦r®É¡A¤w¸g¹L¤F«Ü¤[«Ü¤[¤F¡C ¤j¦hªºFIG²Å¦¡ª©¥»ªº¨t²Î¡A³£¦³¡yVLIST¡z³oÓ¦r¡C¥¦¥Î¨Ó±N²{¦æÃã·J¤¤ªº¦rªº¦W ºÙ¦C¥X¡C¦n¦h¦~¥H«á¡A²×©ó¦³¤H»{ÃѨì¡Aì¨Ó¡yWORDS¡z³oÓ¦rÁÙ§ó¬°§´·í¨Ç¡C¥¦¤£¦ý°á °_¨Ó¤f·P¦n¡A»P¨º¨ÇÃã·J¦WºÙ¦X°_¨Ó¥Î¡A¤]§ó¬°¶¶ºZ¡C¨Ò¦p¡G EDITOR WORDS ©Î ASSEMBLER WORDS ¥t¤@¤è±¡AMoore¤]«ü¥X¡A¤£«ê·íªº¦W¦r¥i¥H¤@ÅܦӦ¨¬°¨¾¤î°½¿sªºÂ²³æ§Þ¥©¡C·í§A¢¤£ ±o¤w¡A«Dn¤½§G§Aªºì©l½X®É¡A¬°¤F¦w¥þ¡A¤j¥i¥H¬G·N¦a¥h¿ï¾Ü¤@¨Ç»~¾Éªº¦WºÙ¡A¨Ï§Aªº µ{¦¡½XÅܱo«D±`ÃøÅª¡C·íµM¡A×§ï¤]´NÅܱo¤£¥i¯à¤F¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w §A±¹ï¤@Ó©w¸q¡A«o¤£ª¾¹D¸Ó¥s¥¦¤°»ò¡C·Q·Q³oÓ¦r¦b¤å¥y¤¤±N¦p¦ó¦a³Q¨Ï¥Î¡C¨Ò¦p¡G SHUTTER OPEN
¹ï©ón¥Î¨Ó³]©w¤@Ó¦W¬°¡ySHUTTER¡zªº~BB2;I/O¦a§}¤¤ªº¤@Ӧ줸¦Ó¨¥¡A¡yOPEN¡z¬O
Ó«ê·íªº¦W¦r¡C
3 BUTTON DOES IGNITION
¡yDOES¡z±N¡yIGNITION¡z¥H¦V¶qªº§Î¦¡¶ñ¤J¬Y¤@Ó¥\¯àªí¡]function table¡^¤¤¡A
¥H«K·í²Ä¤T¸¹«ö§á³Q«ö¤U®É¡A¡yIGNITION¡zªº¥\¯à¯à±o¥H°õ¦æ¡C¡yDOES¡z³o¦W¦r¬O
Ó¦n¿ï¾Ü¡C
SAY HELLO
¡ySAY¡z¬OÓ§¹¬üªº¿ï¾Ü¡C¥¦¥H¦V¶qªº¤è¦¡±N¡yHELLO¡z°e¨ì¤@Ó°õ¦æÅܼƤ¤¡C
¡]·í§Ú²Ä¤@¦¸¬°~BB2;"STARTING FORTH"¤@®Ñ¼g¥X¦¹¨Ò®É¡A§ÚºÙ¥¦¬°¡yVERSION¡z¡C
Moore¾\Ū§Úªº¤â½Z«á¡A«ØÄ³§Ú¥Î¡ySAY¡z¡C¨ºªº½T¦n¦h¤F¡C¡^
I'M HARRY
¡yI'M¡z³oÓ¦r¤ñ°_±`¨£ªº¡yLOGON HARRY¡z¡yLOGIN HARRY¡z©Î¡ySESSION HARRY¡z
¦ü¥G¦ÛµM±o¦h¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
§Ú°Q¹½¡yLOGON¡z³oÓ¦r¡C^¤å¤¤¨S¨ººØ¦r¡C§Ú·í®É¥¿¦b§ä¤@Ó¯àªí¹F"I'M.... "¥y
¤lªº¤@Ó¦r¡C¥¦¬OÓ¦ÛµMªº¦r¡C§Ú¤£¹L¬O¦b¸ó¨B®É¸I¥©½ð¨ì¤F¥¦¡CÁöµM¤¤¶¡¨º¤@ÂI ¤£¤ÓÅ鱡A¦ý¥¦«oµ¹¤H¥¿½Tªº·Pı¡C
©Ò¦³³o¨Ç¤p¤£ÂIªº¦r³£¬O±o¨ì¨º¤@Án"ªü«¢¡I"¤ÏÀ³ªº±d²ø¤j¹D¡C¦pªG§A¬ß±æªº¬OÓ ¥¿½Tªº¦r¡A«ÜÅãµM¦a¡A¥¦´N¬O¨ºÓ¥¿½Tªº¦r¡C
¦pªG§A©Òª¾¹DªºÃã·J«Ü¥R¸Î¡A¨º§A´N¬O¦b¤@Ó¯à°÷¿ï¾Ü¥¿½T¦rªº¸û¦n¦ì¤l¤W¡C ¥t¤@ÓMoore©Ò³ßÅwªº¦r¬O¡yTH¡z¡A¨º¬O¥L¥Î¨Ó°µ°}¦C¯Á¤Þªº¦r¡C¨Ò¦p¤U±ªº¤ù»y 5 TH ·|¶Ç¦^°}¦C¤¤²Ä¤Ó¡]fifth ¡^¤¸¯Àªº¦a§}¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¦b¤@¥»Âø»x¤W¡A§Ú´¿Åª¨ì¤@¥÷²Å¦¡µ{¦¡½X¡A¨º¦ì§@ªÌ¦ü¥G¬O¨£¤£±o¥Àµ¦r¥À¡A¨Ò¦p ¡yDSPL-BFR¡z¡A¨º¬O"DISPLAY BUFFER"ªº·N«ä¡A¬Ý°_¨Ó²´·úµo»Ä¡C¦³ªº§@ªÌ¦ü¥G°g«H¤TÓ ¦r¥À´N¯à¨ÏºÉ¤Ñ¤UÅ]³Nªº¤âªk¡A¨Ò¦p LENGTH ·n¨¤@ÅܦӦ¨ LEN ¡C³o¨Ç§@ªk³£¤Ï¬M ¥X¤[»·¦~¥N¤¤ªº¤@¨Ç·Qªk¡C ²Å¦¡¦rÀ³¸Ó¬On§¹¥þ«÷¥X¨Óªº¡CÁä¤J INITIALIZE ©Î TERMINAL ©Î BUFFER ¡A¤ß¸Ì n·P¨ìź¶Æ¡C³o¨Ç¤~¬O§A©Ònªí¹Fªº¡C ¨Ï¥ÎÁY¼g®É³ÌÁVªº¨Æ´N¬O¡A§A§Ñ¤F·íªì¬O¦p¦óÁY¼gªº¡A¨ì©³¬O DSPL ÁÙ¬O DSPLY ¡H ¥t¤@Ó°ÝÃD¬OÁY¼g¦³Ãª¥iŪ©Ê¡C¥ô¦ó¼¶¼gµ{¦¡¥Îªº»y¨¥¡A´Nºâ§A¤£±N¼gµ{¦¡ªº§xÃø ºâ¦b¤º¡A´N¤w¸g¬O°÷ÃøÅªªº¤F¡C ·íµMÁÙ¬O¦³¨Ç¨Ò¥~¡A¨Ò¦p¡G 1. µ{¦¡½X¤¤³Q·¥«×ÀWÁc¨Ï¥Îªº¦r¡C²Å¦¡¤¤¡Aªº½T¦³¤@¤p¼¼³Ì±`¥Î¨ìªº©R¥O¡A¥¦Ì¨Ï ¥Î´Xªñ©óµL¹ê½è§t·Nªº¦W¦r¡G : ; @ ! . , ¦ý³oºØ¦r¤Ö¤§¤S¤Ö¡A¦Ó«o¤S¨º»òÀWÁc¦a³Q¨Ï¥ÎµÛ¡A³£´X¥GÅܦ¨¦ÑªB¤Í¤F¡C©Ò¥H¡A ¦b¥¿±`ª¬ªp¤U¡A§Úµ´¤£·|Áä¤J DEFINE END-DEFINITION FETCH STORE PRINT COMPILE# ¡]¦³½ìªº¬O¡A³o¨Ç²Å¸¹¦h¥b¦b^¤å¤¤¨S¦³¤Ï¸q¦r¡C§Ų́ϥÎ"«_¸¹©w¸q"³oºØ ¤ù»y¡A¨º¬O¦]¬°¨S§Oªº³N»y¦n¥Î¡F§ÚÌ»¡"³r¤J¤@Ó¼ÆÈ¨ì¦r¨å¤¤"¡]comma a number into the dictionary¡^¡A¨º¬O¦]¬°¥¦ªº½T¤£¬O¦b½sͤ@ӼƦr¡Fªp¥B¡A ¤]§ä¤£¨ì§Oªº³N»y¦n¥Î¡C¡^ 2. ²×ºÝ¾÷ªº§@·~¤Hû¸g±`¥Î¨Ó±±¨î§@·~ªº¨º¨Ç¦r¡C³o¨Ç¦rÀ³¸Ó¥H³æ¤@Ó¦r¥À©I¥s¡A ´N¦p¦P¤@¨Ç®M¸ËÀ³¥Îµ{¦¡¤¤©Ò¥Îªº"¼öÁä"¡]Hot-key¡^¤@¯ë¡C 3. ¬Y¨Ç¦r¡A¥Ñ©ó¤j®a©Ò¼ô±xªº¥Îªk¡A·t¥Ü¥¦Ì¬O³QÁY¼gªº¡C²Å¦¡²Õ;¹ªº§U¾Ð²Å¸¹ ´N¬OӨ嫬¡C¥¦Ì³£²Å¦X´¹¤ù»s³y°Ó©Ò«ØÄ³ªº§U¾Ð²Å¸¹¡A¦Ó³o¨Ç³£¬OÁY¼gªº¦r ¡]¨Ò¦p JMP ¤Î MOV µ¥¡^¡C §A©Ò¥Îªº¦W¦rÀ³¸Ó³£¬O¥i¥Hµoµªº¡F¤£µM¡Aµ¥§An©M®Ç¤H¤fÀY°Q½×µ{¦¡®É¡A«K·|«á ®¬¤£¤w¡C¦pªG¦WºÙ¬OӲŸ¹¡A§A´N¸Óµo©ú¥X¤@ºØ«÷µªk¨Ó¡]¨Ò¦p >R nŪ"to->"¡F¦Ó R> ´NnŪ"r-from"µ¥µ¥¡^¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¤@Ó¬O¤Tµ¸`ªº¦r¡A¥t¤@Ó¬O³æµ¸`ªº¦r¡A¨âªÌY³£¯àªí¹F¥X¬Û¦Pªº·N¸q¡A§A´N¸Ó¿ï¾Ü ¨ºµu¤pªÌ¡CBRIGHT ¤ñ°_ INTENSE ¨Ó¡A´N¬OÓ¸û¦nªº¦W¦r¡CENABLE ¤ñ ACTIVATE ¦n¡F ¦Ó GO¡ARUN ¡A©Î ON «o§ó¦n¡C µu¦rÁä¤J®É¤]¤è«K¡C¥¦Ì¦bì©l½X¤W¤]¸`¬ÙªÅ¶¡¡C¦Ó³Ì«nªº¬O¡A¥¦Ì¨Ï§Aªºµ{¦¡ ½X²M¼ä¦Ó¤S²M¯Ü¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¦b²Å¦¡ªÀ¹Î¤¤¡Aµ{¦¡¼g§@©Ò¥Îªº¤åÅé¬O¬Û·í¤À§Áªº¡C¬Y¤H¨Ï¥Î³s¦r²Å¸¹±N³\¦h^¤å ¦r³s¬°¤@Ó¦r¡A¥Hªí¹F³oÓ¦rn°µªº¬O¤°»ò¡C§A±N¤@¤j°ï¦rªøªø¦a¦ê±µ¦b¤@°_¡A
´N±o¨ì¬YºØ¥iŪªºªF¦è¡C ¦ý§Ú·|¥ß¨èÃhºÃ¡Aµ{¦¡³]pªÌ¬O§_·Q¹L¸Ó±N³o¨Ç¦r¥´´²¶}¨Ó¡A¤À§O¦a¬°¨CÓ¦r¤U
©w¸q¡C¨º¤£¬O¸g±`³£¯à¿ì±o¨ìªº¡A¤]¤£¬O¸g±`·|¬O¦³¯q³Bªº¡C¦ý§ÚÁ`ÃhºÃ¡A³s¦r²Å ¸¹²Õ¦¨ªº¦r¬O§_¤w±N¨âºØ·§©ÀÅÍ©M¦b¤@°_¡C ½Ð¤ñ¸û¤U±¦P¤@¥ó¨Æªº¨âºØµ¦²¤¡G ENABLE-LEFT-MOTOR LEFT MOTOR ON
ENABLE-RIGHT-MOTOR RIGHT MOTOR ON
DISABLE-LEFT-MOTOR LEFT MOTOR OFF
DISABLE-RIGHT-MOTOR RIGHT MOTOR OFF
ENABLE-LEFT-SOLENOID LEFT SOLENOID ON
ENABLE-RIGHT-SOLENOID RIGHT SOLENOID ON
DISABLE-LEFT-SOLENOID LEFT SOLENOID OFF
DISABLE-RIGHT-SOLENOID RIGHT SOLENOID OFF
¥ª¦Cªº»yªk¥²¶·¥Î¨ì¦r¨å¤¤ªº8Ó¦r¡F¥k¦C»yªk¶È»Ý6Ó --¦Ó¥B¨ä¤¤¤@¨Ç¦r¡AÁÙ«Ü ¥i¯à·|¦bÀ³¥Îµ{¦¡ªº¨ä¥¦³¡¥÷¦A³Q¨Ï¥Î¨ì¡C¦pªG§A¦P®ÉÁÙ¦³¤@Ó¡yMIDDLE¡zªº°¨¹F¤Î ¹qºÏ»Ö¡A§A´N¶È¶È»Ýn7Ó¦r¨Ó´yz¥X16ºØ²Õ¦X¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¤p¤ß¨º¨Ç¥Î¼Æ¦r¶}ÀY©Îµ²§Àªº¦WºÙ¡A¨Ò¦p 1CHANNEL¡A2CHANNEL¡A3CHANNELµ¥µ¥¡C ¹³³oºØ¦W¦r¸ò¼Æ¦r®¹¦b¤@°_ªº±¡§Î¡A«Ü¥i¯à¬O©å¦H¤À¸Ñªº¼xÔ¡C¨ä¥Çªº¸o¹L»P³s¦r ²Å¸¹¬Û¦P¡A¯¬O³o®É»Ýn³Q¤À¸Ñ¥Xªº¬O¼ÆÈ¦Ó«D¦r¡C¤W¦C¦WºÙªº¸û¨Î¤À¸Ñ§@ªk¬O 1 CHANNEL
2 CHANNEL
3 CHANNEL
¦b³oºØ±¡§Î¤U¡A¤TÓ¦r·n¨¤@ÅܦÓÁY´î¬°¤@Ó¦r¡C ³q±`¡A¦W¦r»P¼Æ¦r¬Û®¹´Nªí¥Ü§t²Vªº©R¦W¡C¦b¤W¨Ò¤¤¡A©Î³\¬°¤Fn¯à°÷Åã¥Ü¥XÀW¹D ªº¥Øªº¡A¦Ó»Ýn¨Ï¥Î¦hÓ¦W¦r¨Ó´yz¡C¨Ò¦p VOICE , TELEMETRY , GUITAR
§Ú̦b¤U¤@³¹"¦]¦¡¤À¸Ñ"¤¤¡A±N¹ï³o¨Ç·§©À¦A¤©¥H¥Ó½×¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¦b´M¨Dµu¦Ó¦³·N¸qªº¦W¦rªº¹Lµ{¤¤¡A²Å¦¡µ{¦¡³]p®v¤w¸g±Ä¥Î¤F¬Y¨Ç©R¦W¤èªkªº ¬ù©w¡Cªþ¿ýE¤¤¦C¥X¤F¦h¦~¨Ó³°Äòµo®i¥Xªº³Ì¦³¥Îªº¬ù©w¡C ³oºØ©R¦W¬ù©wªº«Â¤O¥i¥Ñ¡y.¡zªº¨Ï¥Î¬°¨Ò¡C¥¦ªí¥Ü"¦L¥X"©Î"Åã¥Ü"ªº·N «ä¡C²Å¦¡¥»¨´N¨Ï¥Î . D. U.R ¨Óªí¥Ü¤£¦P«¬ºA¼ÆÈªº¤£¦P¦L¥X®æ¦¡¡C³o¨Ç¬ù©w¦P¼Ë¦a¤]¾A¥Î¦bÀ³¥Îµ{¦¡¤¤¡C¦pªG§A¦³ Ó¥s°µ¡yDATE¡zªºÅܼơA¦Ó§A§Æ±æ¦³Ó¦r¨ÓÅã¥Ü¥¦¡A´N¥Î¤U±ªº¦W¦r .DATE ª`·N¡GÀݥΦrÀY©Î¦r§À·|¨Ï¦rÁத£³ô¡AÃø¥H¾\Ū¡C¤£n³¥¤ß«k«k¡A·Q¥u¥Î¤@Ó ¦W¦r´N±N¨ºÓ¦rªº¤@¤Á§@¬°´yzªº¤@²M¤G·¡¡C²¦³º¡A¦W¦r¥u¬O¤@ӲŸ¹¡A¤£¬Oµ{¦¡½Xªº ³t¹ÄÑ¡C¬Ý¬Ý¤U¦C¦óªÌŪ¨Ó¸û¦³¤f·P¡H Oedipus complex ¡]¥ì©³©¬´µÅÊ¥À±¡µ² --ĶªÌµù¡^ ¡]¥¦¨Ã¥¼±a¦³¥ÍÀߪº§t·N¡^¡A©Î subconscious-attachment-to-parent-of-opposite-sex complex ©Î³\¬O«eªÌ§a¡A§Y¨Ï¥¦°²©w§A¤w¸gª¾¹D¨º¤@ÄÕÀ¸¡C
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¨Ò¦p¤U±ªº¤ù»y ... DONE IF CLOSE THEN ... ©M¤U±ªº¤ù»y¤@¼Ëªº¥iŪ ... DONE? IF CLOSE THEN ... ¨Ã¥B¦P¼Ëªº²M´·¡C¦]¦¹«eªÌ´N§ó¨üÅwªï¡A°£«D§ÚÌ»Ýn¥t¤@Ó¥s°µ¡yDONE¡zªº¦r¡]¤]³\ §@¬°¤@ÓºX¼Ð¨Ï¥Î¡^¡C ¤U±¬O©R¦Wªº³Ì«á¤@Ó´£¥Ü¡G
¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w
¨Ò¦p¡A¼g¦¨ 0ADD ³o¼Ë¡A¤£n¼g ADD¡C
¦P®É¡A¤£n«ü±æ§Aªº²Å¦¡¨t²Î¤@©w·|¿í¦u«ezªº¬ù©w¡C¨º¨Ç¬ù©w¬On¨Ï¥Î¦b§AªºÀ³ ¥Îµ{¦¡¤¤ªº¡C
²Å¦¡¬O¥Ñ¤@¸s¨Ï¥ÎªÌ¦h¦~¨Ó©Ò³Ð³y¤Î²b¤Æ¦Ó¥Xªº¡A¥ḺN²Å¦¡¬Ý§@¬O©è¹F²×ÂIªº¤@ ºØ¤â¬q¦Ó¨Ï¥ÎµÛ¥¦¡C¦b¨º¬q·³¤ë¤¤¡An¨D©Ò¦³©R¦Wªº¼Ð·Ç³£¤w¯Ç¤J¨ºÓ¥¿¦b¦¨ªø¤Î§ïÅܤ¤
ªº¤u¨ã¡A¬O¬J¤£¦X²z¤]¤£¥i¯àªº¡C ¦ý¬O¡AY²Å¦¡¬O¸g¥Ñ¤@Ó©eû·|ªº³]p¦Ó½Ï¥Íªº¡]´N¦p¨ä¥Lªº¹q¸£»y¨¥¡^¡A§ÚÌ«o ¤S¤£·|³o¼Ë¦a³ß·R¦o¤F¡C ¬°¤F¨Ï§Aªºµ{¦¡½X§ó¨ã¥iŪ©Ê¡A³oùØÁÙ¦³³Ì«áªº¤@¨Ç«ØÄ³¡C¡]©Ò¦³ªº©w¸q³£¦bªþ¿ýC¤¤ ¡^ ¦b¤j³¡¥÷ªºÀ³¥Îµ{¦¡¤¤¡A¤@Ó¦³µÛ·¥°ª¨»ùªº±`¼Æ´N¬O¡yBL¡z¡]ªÅ®æªºASCIIÈ¡^¡C ¡yASCII¡z³oÓ¦r¥Dn¬O¨Ï¥Î¦b«_¸¹©w¸q¤¤¡A¥¦Åý§A¤£¥²¥h°O¦í¤@Ó¦r¥ÀªºASCIIÈ´N ¯à¨Ï¥Î¥¦Ì¡C¨Ò¦p¡A§A¤£¥²¼g¡G : ( 41 WORD DROP ; IMMEDIATE ¨ä¤¤41¬O¥k¬A©·ªºASCIIÈ¡A§A¥i¥H¼g¡G : ( ASCII ) WORD DROP ; IMMEDIATE ¡yTRUE¡z¤Î¡yFALSE¡z³o¨âÓ¦r¦¨Âù¦¨¹ï¡A¥¦Ì¦bÀ³¥I¥¬¤óÅÞ¿è®É¡A¥i¥H¼W¥[µ{¦¡½X ªº¥iŪ©Ê¡C¦³¤F³o¨Ç¤§«á¡A§A´N¯à¼g¥X¤U¦Cªº¤ù»y TRUE 'STAMP? ! ¥h³]©w¤@ÓºX¼Ð¡A©Î FALSE 'STAMP? ! ¥h²M°£¥¦¡C ¡]§Ú´¿¤@«×¨Ï¥Î T ¤Î F ¡A¦ý¬O¦]¬°³o¨Ç¦r¥Î¨ìªº¾÷·|·¥¬°¦³¡A§Ú²{¦bÂà¦Óª`·N¨ì ÁY¼gªº¸T§Ò¤W¡C¡^ §@¬°À³¥Îµ{¦¡ªº¤@³¡¥÷¡]ˤ£¤@©w¬O§Aªº²Å¦¡¨t²Îªº¤@³¡¥÷¡^¡A§A¥i¥H±aµÛ¦¹¤@·§©À ¦V«e¦A¦h¸ó¤@¨B¡A¨Ã°µ¥X¤U±ªº©w¸q¡G : ON ( a--) TRUE SWAP ! ;
: OFF ( a--) FALSE SWAP ! ;
³o¨Ç¦r®e³\§A¼g¥X¡G 'STAMP? ON ©Î 'STAMP? OFF ¨ä¥¦¥Î¦b³o¨Ç©w¸q¤Wªº¦W¦r¥]¬A SET ¤Î RESET ¡AÁöµM SET ¤Î RESET ¤j¦h¼Æ¬O ¥Î¦b¦ì¤¸¾B¸n¡]bit mask¡^ªº¹B§@¤W¡A¥Î¨Ó³B²zÓ§Oªº¦ì¤¸¡C ¥t¤@Ó±`¥Îªº¦r¬O¡yWITHIN¡z¡A¥¦¨M©w¬YÓȬO§_¦b¥t¥~¨âÓȤ§¶¡¡C¨ä»yªk¬°¡G n lo hi WITHIN ¨ä¤¤¡An ¬O¨ü´úÈ¡Alo ¤Î hi ªí¥Ü½d³ò¡CY n ¤j©ó©Îµ¥©ó lo¡A¥B¤p©ó hi ®É¡A ¡yWITHIN¡z·|¶Ç¦^¤@Ó¯u¡C³oºØ¤£§t¤Wªº°µªk¬O¬°¤F»P¡yDO LOOP¡zªº»yªk¬Û·í¡C Moore±ÀÂË¡yUNDER+¡z³oÓ¦r¡CYn¥[¤@ÓȨì°ïÅ|³»ºÝªº¤U¤@ӰѼƤW¡A¥¦·|«Ü ºÞ¥Î¡C¥Î°ª¶¥©w¸q¨Ó¹ê²{®É´N¬O¡G : UNDER+ ( a b c -- a+c b ) ROT + SWAP ;
µ²»y¡G
µ{¦¡ªº¥iºûשʻÝn¥iŪ©ÊªºÀ°§U¡C¥»³¹¦CÁ|¤F³\¦h³~®|¡A¥H¨Ïì©l½XÅܱo§ó ¬°¥iŪ¡C§Ṳ́]´¿¦Û§Ú´Á³\¡An¨Ïµ{¦¡½X¾¨¥i¯à¦a°µ¨ì¦Û§Ú»¡©ú¡C¨ä¤¤ªº§Þ¥©¥]¬A
µ{¦¡¦Cªíªº²Õ´¡B¶¡¹j¤ÎÁY±Æ¡Bµù¸Ñ¡B©R¦W¡B¥H¤Î¥i¥H¼W¶i²M´·«×ªº¯S§O²Å¸¹¡C §Ú̯²³æ¦a´£¨ì¤FÃö©ó»²§U©Ê¤å¥ó¡A¨º¬O«ü°£¤Fµ{¦¡¦Cªí¤§¥~ªº¨ä¥¦ªF¦è¡C¥»®Ñ
±N¤£¦A¶i¤@¨Bªº°Q½×³o¨Ç¡A¦ý¥¦Ì¤´µM¬O§¹¾ã³nÅéµo®i¹Lµ{¤¤¤£¥i©Î¯Êªº¤@³¡¥÷¡C °Ñ¦Ò¸ê®Æ 1. Gregory Stevenson, "Documentation Priorities," 1981 FORMAL Conference Proceedings, p. 401. 2. Joanne Lee, "Quality Assurance in a FORTH Enviroment," (Appendix A,) 1981 FORMAL Proceedings, p. 363. 3. Edsger W. Dijkstra, Selected Writings on Computing: A Personal Perspective, New York, Springer Verlag, Inc., 1982. 4. Henry Laxen, "Choosing Names," FORTH Dimensions, Vol. 4, No. 4, FORTH Interest Group. ¡@ |