¡¡
¡¡
|
ºÎ·Ï 2 : ¡°APPLE-1¡± Basic Manual
List
ÇÁ·Î±×·¥ÀÇ Àüü ±¸¹®À» º¸±â À§ÇØ »ç¿ëÇÕ´Ï´Ù.
Run ÀÛ¼ºµÈ ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¶§ »ç¿ëÇÕ´Ï´Ù
ÇÁ·Î±×·¥ ½ÇÇàÀ» ÁߴܽÃų ¶§´Â ¾Æ¹« Ű³ª ´©¸£¸é µË´Ï´Ù.
ÀÌ ¶§ ȸ鿡´Â ¡° STOPPED AT X¡± ¶ó°í Ç¥½ÃµÇ´Âµ¥
ÀÌ ‹š X´Â ÇÁ·Î±×·¥ÀÇ Line Number ÀÔ´Ï´Ù
ÁÖÀÇ : Basic ÇÁ·Î±×·¥ÀÇ Áß´ÜÀº Ç×»ó ÇÁ·Î±×·¥ÀÇ Line Á¾·áÈÄ¿¡¸¸ °¡´ÉÇÕ´Ï´Ù.
¿¹¸¦ µé¾î 10 FOR I=1 TO 10 STP 0 : NEXT I ÀÎ ±¸¹®ÀÇ °æ¿ì
STEP ÀÌ 0 À̰í NEXT I °¡ ÀÖ¾î ÇØ´ç Line ÀÇ ±¸¹®ÀÌ Á¾·áµÉ ¼ö ¾ø½À´Ï´Ù.
µû¶ó¼ ÀÌ °æ¿ì ÇÁ·Î±×·¥À» Áß´Ü ½Ãų ¼ö ¾ø½À´Ï´Ù.
ÀÌ·± °æ¿ì Àû´çÈ÷ Áß´ÜÀÌ °¡´ÉÇϵµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù.
¾à¾î expr : ¼ö½Ä Ç¥Çö (expression)
var : numeric, array, string µîÀÇ À̸§
val : -32767 ¿¡¼ 32767 »çÀÌÀÇ ¼ö
¼öÀÇ ¹üÀ§ : -32767 ¿¡¼ 32767 »çÀÌÀÇ Á¤¼ö·Î¸¸ Ç¥ÇöµË´Ï´Ù.
¸¸¾à ¾î¶² °ªÀ̳ª ¼ö½ÄÀÇ °á°ú°¡ »ó±â ¹üÀ§¹ÛÀÇ °á°ú°¡ ³ª¿À¸é
¡°>32767¡± À̶ó´Â ¿¡·¯¸Þ½ÃÁö°¡ Ç¥½ÃµË´Ï´Ù.
º¯¼ö
Numeric simple variable
letter ȤÀº A, N,
letter+¼ýÀÚ A1, T6
Numeric array variable
letter ȤÀº N, T
letter+¼ýÀÚ B1, T4
Character string variable
letter+$ A$, N$
¼ö½ÄÀÇ Ç¥Çö ¼ö½Ä(expr) Àº ¼ö, º¯¼ö, ÇÔ¼ö¿Í °è»êÀÚ µîÀ¸·Î ±¸¼ºµÇ¸ç ÀÌ´Â °è»ê¿¡
ÀÇÇØ
ÇÑ °³ÀÇ °ªÀ¸·Î Ç¥ÇöµÇ¾î Áú ¼ö ÀÖ½À´Ï´Ù. °¡Àå °£´ÜÇÑ exprÀº ¼öÀÔ´Ï´Ù.
Operater ¿¬»êÀÚ ¹× ³ë¸®, ºñ±³¸¦ ³ªÅ¸³»´Â °ü·ÃÀÚ
-expr
expr * (-1)
NOT expr
expr ÀÌ 0ÀÌ¸é °ªÀº 1, expr ÀÌ 0ÀÌ ¾Æ´Ï¸é °ªÀÌ 0
expr * expr
°öÇϱâ
expr / expr
³ª´©±â
expr + expr
´õÇϱâ
expr ? expr
»©±â
expr = expr
expr = expr ÀÏ ¶§ 1
expr > expr
expr > expr ÀÏ ¶§ 1
expr < expr
expr < expr ÀÏ ¶§ 1
expr >= expr
expr >= expr ÀÏ ¶§ 1
expr <= expr
expr <= expr ÀÏ ¶§ 1
expr <> expr
expr <> expr ÀÏ ¶§ 1
expr # expr
expr <> expr ÀÏ ¶§ 1
expr AND expr µÎ expr Áß
Çϳª¶óµµ 0ÀÌ ¾Æ´Ò ‹š 1
expr OR expr µÎ
expr °¡ ¸ðµÎ 0ÀÌ ¾Æ´Ò ‹š 1
expr MOD expr ¾ÕÀÇ expr À» µÚÀÇ expr
·Î ³ª¿ì¾úÀ» °æ¿ì ³ª¸ÓÁö
ÇÔ¼ö
ABS(expr) expr ÀÇ Àý´ë°ªÀ» ÃëÇÔ
SGN(expr) expr ÀÇ ºÎÈ£. -1, 0, 1
PEEK(expr) expr °ú °°Àº address ÀÇ ¸Þ¸ð¸® À§Ä¡¿¡ ÀÖ´Â 10Áø¼ö °ª
RND(expr) expr ÀÌ ¾ç¼öÀ̸é 0°ú expr-1 »çÀÌÀÇ ·£´ýÀÇ Á¤¼ö
expr ÀÌ À½¼öÀ̸é 0°ú expr+1 »çÀÌÀÇ ·£´ýÀÇ Á¤¼ö
LEN(var$) var$ÀÇ º¯¼ö¿¡ ÇÒ´çµÇ¾î ÀÖ´Â ¹®ÀÚÀÇ °¹¼ö¸¦ ÃëÇÕ´Ï´Ù
Array Array ´Â °øÅëµÈ
º¯¼öÀ̸§À» °®´Â ÀÏ·ÃÀÇ º¯¼öÁý´ÜÀÔ´Ï´Ù.
ÀÌ ¾î·¹ÀÌÀÇ °¢ º¯¼ö´Â À̸§µÚ¿¡ ºÙ´Â °ýÈ£¾ÈÀÇ ¼ýÀÚ·Î Àνĵ˴ϴÙ.
¾î·¹ÀÌ À̸§ÀÌ AS ÀÌ¸é ¾î·¹ÀÌ´Â AS(1), AS(2),¡¦, AS(12) µîÀ¸·Î Ç¥½ÃµË´Ï´Ù.
¶ÇÇÑ AS(X) µîÀ¸·Î Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. AS(0) À̳ª AS)-8) µîÀº »ç¿ëÇÒ ¼ö ¾øÀ¸¸ç
¡°RANGE ERR¡± ·Î ¿¡·¯¸Þ¼¼Áö¸¦ Ç¥½ÃÇÕ´Ï´Ù.
¾î·¹ÀÌÀÇ ¼±¾ðÀº DIM ±¸¹®À» »ç¿ëÇÕ´Ï´Ù.
Srtings StringÀº ¹®ÀÚ, ¼ýÀÚ, ÀοëºÎÈ£¸¦ Á¦¿ÜÇÑ Æ¯¼ö¹®ÀÚ
µîÀ» Æ÷ÇÔÇÒ ¼ö ÀÖ´Â
ÀÏ·ÃÀÇ ¹®ÀÚ¿ÀÌ´Ù
Constant String Àº ÀοëºÎÈ£ ¾È¿¡ »ç¿ëÇÑ´Ù. ÀÌ ¹®ÀÚÇü½ÄÀÇ StringÀº
ÁÖ·Î PRINTsk INPUT ±¸¹®¿¡¼ »ç¿ëÇÕ´Ï´Ù
¿¹) 100 PRINT ¡°THIS IS A STRING LITERAL¡±
200 INPUT ¡°X=¡±, X
--> PRINT ±¸¹®¿¡¼ ÀοëºÎÈ£´Â ȸ鿡 Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù.
AppleBasic¿¡¼ STRING ±â´ÉÀº ´ÙÀ½°ú °°Àº ¿øÄ¢¿¡ µû¸¨´Ï´Ù
1) String º¯¼öÀ̸§ : LETTER$ , (Z$)
2) String ÀÇ ÃÖ´ë±æÀÌ´Â DIM ±¸¹®¿¡ ÀÇÇØ Á¤Àǵ˴ϴÙ.
DIM A$(20) : ¹®ÀÚ¿ÀÇ ±æÀ̰¡ 20ÀÚ¶ó´Â ÀǹÌÀ̸ç ÀÌ ±æÀÌ´Â 1¿¡¼
255³»ÀÇ °ªÀ» °®¾î¾ß ÇÑ´Ù.
¸¸¾à ÀÌ ¹üÀ§¸¦ ¹þ¾î³ª¸é ¡°RANGE ERR¡± ¸Þ½ÃÁö°¡ Ç¥½ÃµË´Ï´Ù
3) DIM ±¸¹®¿¡¼ ±æÀ̰¡ Á¤ÀǵÇÁö ¾ÊÀ¸¸é ±æÀÌ´Â 0 ÀÌ µË´Ï´Ù
4) String Àº ÃÖ´ë±æÀÌ¿Í °°°Å³ª ÀûÀº ¼öÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÕ´Ï´Ù
ÀÌ ÃÖ´ë±æÀ̸¦ ÃʰúÇÏ´Â ±¸¹®À» »ç¿ëÇÏ¸é ¡°STR OVFL ERR¡±
¸Þ½ÃÁö°¡ Ç¥½ÃµË´Ï´Ù.
SUBSTRINGS
String º¯¼ö¸¦ »ç¿ëÇÏ´Â ÇÁ·Î±×·¥±¸¹®¿¡¼ subscript¸¦ »ç¿ëÇØ¼ stringÀÇ ÀϺΠºÎºÐ
(SUBSTRING)À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Subscript ¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é String Àüü¸¦ »ç¿ëÇÏ°Ô µÇ°í
A$(2,5) ó·³ subscript ¸¦ »ç¿ëÇϸé
String ÀÇ ÀϺθ¦ ÂüÁ¶ÇÏ°Ô µË´Ï´Ù.
A$(I,J) ¿ª½Ã »ç¿ë °¡´ÉÇÏ¸ç ´Ù¸¥ ±¸¹®¿¡¼ I, J ¸¦ ÂüÁ¶ÇÏ¿© »ç¿ëÇϰÔ
µË´Ï´Ù.
¿¹½Ã) A$=¡°ABCDEFG¡±
PRINT A$ : ABCDEFG
PRINT A$(5) : EFG
PRINT A$(2,6) : BCDEF
PRINT A$(2,2) : B
I=4: J=5
PRINT A$(I,J) : EF
DESTRINATION STRING
DESTRINATION STRING Àº ´Ù¸¥ (source) STRING ¿¡ º¹»çµÇ´Â
STRING º¯¼öÀÔ´Ï´Ù.
¿¹¸¦ µé¾î A$(6)=B$ ¶ó´Â ±¸¹®À» º¼ ‹š
¡°=¡± ÀÇ ¿ÞÂÊ¿¡ ÀÖ´Â A$(6) À» DESTRINATION STRING À̶ó Çϰí
¡°=¡± ÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ´Â B$ À» SOURCE STRING À̶ó ÇÕ´Ï´Ù.
A$=B$ A$ Àüü°¡ B$¿¡ º¹»çµË´Ï´Ù.
A$(5)=B$ A$ÀÇ 5¹øÂ° ¹®ÀÚºÎÅÍ ½ÃÀÛÇØ¼ B$¿¡ º¹»çµË´Ï´Ù
A$(2,5)=B$ DESTINATION STRING¿¡¼ µÎ°³ÀÇ SUBSCRIPTDMS
»ç¿ëÀÌ ºÒ°¡ÇÕ´Ï´Ù
A$(5)=B$(3,8) SOURCE STRING ¿¡¼´Â SUBSCRIPTÀÇ Á¦ÇÑÀÌ
¾ø½À´Ï´Ù.
LEN(LENGTH) FUCTION
LEN ÇÔ¼ö´Â STRING º¯¼ö¿¡ ÇÒ´çµÇ¾î ÀÖ´Â ¹®ÀÚÀÇ °¹¼ö¿¡ ÇØ´çÇÏ´Â ¼ö¸¦
°á°ú·Î
¸®ÅÏÇÕ´Ï´Ù. ÀÌ LEN FunctionÀº string ÀÇ ±æÀ̸¦
¼·Î ¿¬°á½Ã۰íÀÚ ÇÒ °æ¿ì »ç¿ëÇÕ´Ï´Ù
¿¹½Ã) LEN(A$)
A$=(LEN(b$)+1)
IF A$(3,7)=B$(4,8) THEN ¡¦¡¦.
Basic Instruction
Basic¿¡´Â µÎ °¡ÁöÀÇ instruction ÀÌ ÀÖ´Ù. Command ¿Í
Statement ÀÔ´Ï´Ù.
Command ´Â ¡°return¡± À» key in ÇÏ¸é ¹Ù·Î ½ÇÇàµÇ¸ç ÇÁ·Î±×·¥ line
number ¸¦ °¡ÁöÁö
¾ÊÀ¸¸ç ÇÁ·Î±×·¥ÀÇ ÀϺΰ¡ ¾Æ´Õ´Ï´Ù
Statement ´Â ÇÁ·Î±×·¥ÀÇ ÀϺημ line number ¸¦ °¡Áö¸ç ÇÁ·Î±×·¥ÀÇ ½ÇÇàÁß¿¡
½ÇÇàµË´Ï´Ù.
¿©·¯°¡Áö Basic Instruction Àº command ¿Í statement µÎ °¡Áö
±â´ÉÀ¸·Î ¸ðµÎ µ¿ÀÛÇÕ´Ï´Ù.
¿¹½Ã) 10 PRINT A, B :
ÇÁ·Î±×·¥ÀÇ ÀϺημ ÇÁ·Î±×·¥ ½ÇÇàÁß¿¡
LINE NUMBER 10¿¡¼ A, B ÀÇ °á°ú¸¦ ȸ鿡 Ãâ·ÂÇÕ´Ï´Ù
PRINT A,B : ¡®RETURN¡¯ ÇÏ´Â ¼ø°£ Áï½Ã ÇöÀçÀÇ A,BÀÇ °ªÀ» ȸ鿡 Ãâ·ÂÇÕ´Ï´Ù
Command
Command ´Â ÇÁ·Î±×·¥ÀÇ ½ÃÀÛ, ½ÇÇà, ¼öÁ¤, °ËÅä Çϱâ À§ÇØ »ç¿ëÇÏ°Ô µË´Ï´Ù.
AUTO val1, val2 : ÇÁ·Î±×·¥ÀÇ
line number¸¦ ÀÚµ¿À¸·Î ºÎ¿©ÇÕ´Ï´Ù.
val1 = ½ÃÀÛ linr number °ª.
val2 = line number ÀÇ Áõ°¡ °£°Ý.
CLR : ¸ðµç º¯¼öÀÇ °ªÀ» 0 ·Î
ÃʱâÈÇÕ´Ï´Ù.
DEL val1, val2 : line number
val1 ¿¡¼ line number val2±îÁöÀÇ ÇÁ·Î±×·¥À» »èÁ¦ÇÕ´Ï´Ù
val1 ¸¸ »ç¿ëÇÏ´Â °æ¿ì, ÇØ´çÇÏ´Â line ¸¸ »èÁ¦µË´Ï´Ù.
LIST val1, val2 : line number val1 ¿¡¼
line number val2±îÁöÀÇ ÇÁ·Î±×·¥À» Ç¥½ÃÇÕ´Ï´Ù.
val1 ¸¸ »ç¿ëÇÏ´Â °æ¿ì, ÇØ´çÇÏ´Â line ¸¸ Ç¥½ÃµË´Ï´Ù.
val1 val2°¡ ¾øÀ» °æ¿ì Àüü ÇÁ·Î±×·¥À» ¸ñ·ÏÀ» Ç¥½ÃÇÕ´Ï´Ù.
RUN val1
: CLRÀ» ½ÇÇàÇÑ ÈÄ line number val1 ºÎÅÍ ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù
val1À» »ý·«Çϸé ÇÁ·Î±×·¥Àº °¡Àå ³·Àº ¹øÈ£ ¿¡¼ ½ÃÀÛÇÕ´Ï´Ù.
SCR
: ÇÁ·Î±×·¥ Àüü¸¦ »èÁ¦ÇÕ´Ï´Ù
HIMEM = (expr) : ½ÊÁø¼ö·Î,
»ç¿ëÀÚ ÇÁ·Î±×·¥¿¡ ´ëÇÑ ¸Þ¸ð¸® °æ°èÀÇ °íÁ¡À»
¼³Á¤ÇÕ´Ï´Ù. ÃʱâÈÇϸé 4096ÀÌ µË´Ï´Ù.
ÀÌ Command ¸¦ »ç¿ëÇϸé ÇöÀçÀÇ ÇÁ·Î±×·¥ÀÌ ±úÁý´Ï´Ù
LOMEM = (expr) : ½ÊÁø¼ö·Î, »ç¿ëÀÚ
ÇÁ·Î±×·¥¿¡ ´ëÇÑ ¸Þ¸ð¸® °æ°èÀÇ ÀúÁ¡¸¦
¼³Á¤ÇÕ´Ï´Ù. ÃʱâÈÇϸé 2,048ÀÌ µË´Ï´Ù.
ÀÌ Command ¸¦ »ç¿ëÇϸé ÇöÀçÀÇ ÇÁ·Î±×·¥ÀÌ ±úÁý´Ï´Ù
Statement
Basic¿¡¼ ÀÔ·Â ¶óÀο¡ Çϳª ÀÌ»óÀÇ ±¸¹®À» ÀÛ¼ºÇÒ °æ¿ì °¢
¹®ÀåÀº ÄÝ·Ð ( : ) À¸·Î
±¸ºÐÇØ¾ß ÇÕ´Ï´Ù.
¿ÞÂÊ¿¡ ¡°C¡± ¶ó°í Ç¥½ÃµÈ Statement ´Â Command ·Îµµ
»ç¿ë °¡´ÉÇÕ´Ï´Ù
C LET var=expr ÇÒ´ç ¿¬»êÀ̸ç LETÀº »ý·«ÀÌ
°¡´ÉÇÕ´Ï´Ù.
10 A=10
20 B=30
INPUT
I / O ÀåÄ¡¿¡¼ ¸Þ¸ð¸®·Î µ¥ÀÌÅ͸¦ ÀÔ·ÂÇÕ´Ï´Ù.
¹®ÀÚ¿ ÀÔ·ÂÀº ij¸®Áö ¸®ÅÏÀ¸·Î ±¸ºÐÇÕ´Ï´Ù.
"¹®ÀÚ¿" ÀοëºÎÈ£ ¾È¿¡ ÀÖ´Â ¹®ÀÚ¿À» »ç¿ëÇÕ´Ï´Ù
INPUT X, Y, Z(3)
INPUT "TEST",A
INPUT "Y or N?",A$
C PRINT
ÇöÀç Ä¿¼ À§Ä¡¿¡ º¯¼ö var³ª ¹®ÀÚ¿ º¯¼ö string Ãâ·ÂÇÕ´Ï´Ù.
10 PRINT Ll
20 PRINT Li, X2
30 PRINT "AMT=";DX
40 PRINT A$;B$;
50 PRINT
60 PRINT "HELLO"
70 PRINT 2+3
C TAB(EXPR)
expr ¸¸ÅÀÇ space¸¦ Ãâ·ÂÇÕ´Ï´Ù.
µû¶ó¼ Ä¿¼°¡ ±× ¸¸Å ¿À¸¥ÂÊÀ¸·Î À̵¿ÇÕ´Ï´Ù
10 A=20
20 PRINT A
30 TAB(10)
40 PRINT A
50 END
RUN
-> °á°ú : 20 20
FOR var1 TO
var2 STEP var3 FOR ÃʱⰪ,
TO ÃÖÁ¾°ª, STEP Áõ°¡°£°Ý
10 FOR A=0 TO 10 STEP 1
20 PRINT A
30 NEXT A
40 END
RUN
-> °á°ú : 0
1
......
9
10
-> ¿©±â¼ STEP 1 ÀÌ ¾øÀ¸¸é 1¾¿ Áõ°¡Çϸç NEXT°¡ ¾øÀ¸¸é 1¹ø¸¸ ½ÇÇàÇÕ´Ï´Ù.
NEXT
FOR¹®¿¡¼ ³¡°ª ±îÁö ·çÇÁ ½ÇÇà ÇÕ´Ï´Ù.
100 NEXT A
110 NEXT A, B
C IF(EXPR) THEN
expr ÀÌ »ç½ÇÀÌ¸é ´ÙÀ½ ±¸¹®À» ½ÇÇàÇÕ´Ï´Ù.
100 IF A>B THEN PRINT A
110 IF A=0 THEN GOSUB 200
C GOTO expr
line number expr ·Î Áï°¢ÀûÀ¸·Î À̵¿ÇÕ´Ï´Ù.
100 GOTO 50
110 GOT0 A
120 GOTO (A/B)+5
GOSUB expr
RETURN
line number expr À¸·Î À̵¿ÇÏ¿© ½ÇÇàÇÏ´Ù RETURN À» ¸¸³ª¸é
ÀÌÀü À§Ä¡·Î µ¹¾Æ¿Í ´ÙÀ½À» ½ÇÇàÇÕ´Ï´Ù
100 PRINT A
110 RETURN
200 PRINT B
210 GOSUB 100
220 GOSUB X
C DIM var1(expr1),
var2(expr2),¡¦., varn(exprn), ¹è¿ º¯¼ö¸¦ À§ÇÑ ¸Þ¸ð¸®¸¦
ÇÒ´çÇÕ´Ï´Ù
10 DIM A(10), B(15),¡¦.
20 DIM B$(20)
C REM text
ÇÁ·Î±×·¥ÀÇ ½ÇÇà¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê´Â lineÀÔ´Ï´Ù.
Text µîÀ¸·Î ÇÁ·Î±×·¥ À̸§, ³»¿ëÀ̳ª ÀÛ¼ºÀÚµîÀ» comment ¸¦ ´Þ¾Æ
³õ´Â ±â´ÉÀÔ´Ï´Ù.
10 REM DASH
20 PRINT A
END
ÇÁ·Î±×·¥ ÁßÁöÇϰųª Á¾·á½Ãŵ´Ï´Ù.
">" ÇÁ·ÒÇÁÆ®¸¦ ȸ鿡 Ç¥½Ã
C POKE expr1, expr2
expr1 °ú °°Àº ¸Þ¸ð¸® À§Ä¡¿¡ expr2¸¦ ÀúÀåÇÕ´Ï´Ù.
ÀÌ ¶§ expr2 ´Â ½ÊÁø¼ö·Î 0 ¿¡¼ 255 »çÀÌÀÇ °ªÀ̾î¾ß ÇÕ´Ï´Ù.
10 POKE 4,55
20 POKE -2048,55 (-2048 = D000(HEX)
C CALL expr
expr (½ÊÁø¼ö) ¿¡ ÇØ´çÇÏ´Â ¸Þ¸ð¸® À§Ä¡·Î À̵¿ÇÏ¿© ÇÁ·Î±×·¥À»
½ÇÇàÇÕ´Ï´Ù. ÁÖ·Î º°µµÀÇ ¾î»ùºí¸® ÇÁ·Î±×·¥°úÀÇ ¿¬°áµ¿ÀÛ½Ã
»ç¿ëÇϸç GOSUB °ú ¸¶Âù°¡Áö·Î RETURN À» ¸¸³ª¸é ÀÌÀü
À§Ä¡·Î µ¹¾Æ°¡ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÕ´Ï´Ù.
10 CALL 60
20 CALL A
-END- |