2009년 10월 14일 수요일

[ MS-DOS - QBasic ] BASICA와의 차이 ,지원되지 않는 중심어




< BASICA와의 차이 >
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

다음 중심어들은 QBasic에서 조금씩 달리 사용되어집니다.

BSAVE, BLOAD BSAVE와 BLOAD 명령문은 카세트 장치를 지원하지 않고,
메모리 위치도 다를 수 있습니다.

CALL ABSOLUTE BASICA로 호출한 어셈블리 언어 프로그램은 문자열 인수를
사용할 경우 QBasic에 맞게 바꿔야 합니다. 이 경우
4바이트로 되는데 2바이트는 문자열 길이를 다음 2바이트는
문자열의 주소를 나타냅니다.

CHAIN QBasic에서는 CHAIN 명령 사용시 줄번호를 지정할 수 없고,
또한 ALL, MERGE, 또는 DELETE 옵션을 지원하지 않습니다.

COMMON, DECLARE COMMON과 DECLARE 명령문 앞에 수행가능한
명령문을 둘 수 없습니다.

DEF형 변수에 !, #, &, $, 또는 %가 없는 경우, 가장 최근에 사용된
DEF형 명령문을 사용합니다. 예를들면, 다음 BASICA
프로그램에서 변수 IFLAG의 형은 정수에서 단정도 수로
바뀌게 됩니다.

10 DEFINT I
20 PRINT IFLAG
30 DEFSNG I
40 GOTO 20

변수가 프로그램에서 일단 이용되면, 그 변수의 형은 변할
수없습니다.

DIM BASICA에서 사용되는 배열들은 프로그램이 실행되는 동안
기억장소가 할당되지만, QBasic은 DIM을 이용하여 배열을
동적 또는 정적으로 선언할 수 있습니다.

DRAW, PLAY BASICA의 명령문자열 내에 있는 변수나 명령문자열은
QBasic에서 사용할 수 있도록 VARPTR$ 함수를 이용해서
바꿔줘야 합니다.

BASICA 명령문 QBasic에서 사용할 수 있는 형태
 
DRAW "X명령문자열" DRAW "X" + VARPTR$ (명령문자열)
DRAW "TA = angle" DRAW "TA =" + VARPTR$(angle)

EOF BASICA 프로그램에서 EOF(0)는 입력파일의 끝에서 참을
돌려주지만, QBasic에서는 입력파일의 끝을 지나 그 다음
레코드를 읽은 후 참을 돌려줍니다. 예를들면, 다음
프로그램은 BASICA에서는 실행되지만 QBasic에서는
"파일에 더 이상의 데이터가 없습니다."라는 오류 메시지가
나옵니다.

5 WHILE NOT EOF(0)
10 LINE INPUT ; A$
15 WEND

FIELD BASICA에서 CLOSE나 RESET 명령문으로 랜덤접근 파일을
닫으면, FIELD로 할당된 변수들은 GET 명령문으로 가장
최근에 할당한 값을 유지하게 됩니다. QBasic에서 모든
항목 변수들은 크기가 없는 문자열로 바뀝니다.





<지원되지 않는 중심어>
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

다음의 퀵베이직 중심어들은 QBasic에서 지원되지 않습니다.


ALIAS EVENT LOCAL SETMEM
BYVAL $INCLUDE SADD SIGNAL
CDECL Int86 Interrupt UEVENT
COMMAND$ Int86X InterruptX


다음의 GW-BASIC/BASICA 중심어들은 QBasic에서 지원되지 않습니다.


AUTO EDIT MERGE RENUM
CONT LIST MOTOR SAVE
DEF USR LLIST NEW USR
DELETE LOAD



댓글 없음:

댓글 쓰기

팔로어

프로필

내 사진
심심해서 만들어봐요. .xp,2003,vista,win7/ .server,client,suNet/ .bbs,suNetProtocol/