맨위로가기

GW 베이직

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

GW-BASIC은 1980년대 마이크로소프트에서 개발한 BASIC 프로그래밍 언어의 인터프리터 버전이다. MBASIC 5.x를 기반으로 IBM PC 하드웨어 기능을 추가했으며, `WHILE...WEND` 루프, 최대 40자 길이의 변수 이름, `OPTION BASE` 문 등을 지원한다. GW-BASIC은 `PEEK`/`POKE` 문을 사용하지 않는 BASIC-80 프로그램을 실행할 수 있으며, IBM PC의 사운드, 그래픽 기능을 활용한다. 명칭 'GW'는 'Gee-Whiz', '그래픽 및 윈도우', '게이츠, 윌리엄' 등 다양한 설이 존재한다.

더 읽어볼만한 페이지

  • 1983년 개발된 프로그래밍 언어 - Occam
    Occam은 1980년대에 개발된 동시성 프로그래밍 언어이며, 들여쓰기와 채널을 통한 통신을 특징으로 하며, `SEQ`, `PAR`, `ALT` 등의 명령어를 사용하고 여러 버전으로 발전했다.
  • 1983년 개발된 프로그래밍 언어 - C++
    C++는 비야네 스트롭스트룹이 개발한 다중 패러다임 프로그래밍 언어로, C를 기반으로 객체 지향 프로그래밍과 제네릭 프로그래밍을 지원하며 다양한 분야에 사용되고, 꾸준한 표준 업데이트를 통해 기능이 확장되었지만 복잡한 문법으로 높은 학습 곡선을 가진다.
  • 베이직 인터프리터 - 비주얼 베이직
    비주얼 베이직은 1991년 마이크로소프트에서 출시된 GUI 기반 응용 프로그램 개발에 강점을 가진 프로그래밍 언어이며, 윈도우용 응용 프로그램 및 데이터베이스 조작 프로그램 개발에 주로 사용되었고, 2005년 표준 지원이 중단되었다.
  • 베이직 인터프리터 - 큐베이직
    큐베이직은 GW-BASIC을 대체하기 위해 개발된 퀵베이직 컴파일러 기반의 인터프리터로, MS-DOS, 윈도우, IBM PC DOS 등에서 사용되었으며, 4개의 예제 프로그램과 이스터 에그를 제공한다.
  • 마이크로소프트 베이직 - 비주얼 베이직
    비주얼 베이직은 1991년 마이크로소프트에서 출시된 GUI 기반 응용 프로그램 개발에 강점을 가진 프로그래밍 언어이며, 윈도우용 응용 프로그램 및 데이터베이스 조작 프로그램 개발에 주로 사용되었고, 2005년 표준 지원이 중단되었다.
  • 마이크로소프트 베이직 - 알테어 베이직
    알테어 베이직은 빌 게이츠와 폴 앨런이 알테어 8800 컴퓨터를 위해 개발한 BASIC 인터프리터로, 마이크로소프트의 초기 성공에 기여하고 소프트웨어 저작권 논쟁을 촉발했으며 MS-DOS로 전환될 때까지 핵심 사업으로 남았다.
GW 베이직 - [IT 관련 정보]에 관한 문서
기본 정보
GW-BASIC 3.23
GW-BASIC 3.23
개발 연도1983년
개발자마이크로소프트
최신 버전3.23
최신 버전 출시일1988년
영향을 받은 언어IBM 카세트 베이직
IBM 디스크 베이직
IBM BASICA
영향을 준 언어QBasic
QuickBasic
MSX 베이직
운영 체제도스
라이선스독점 소프트웨어
라이선스 상세MIT 라이선스 (v1.0)
웹사이트마이크로소프트 GW-BASIC 오픈 소스 발표

2. 기능

GW-BASIC은 다음과 같은 기능을 가지고 있다.


  • `WHILE...WEND` 루프[6]
  • 최대 40자 길이의 변수 이름[6]
  • 배열 변수의 시작 인덱스를 0 또는 1로 설정하는 `OPTION BASE` 문[6]
  • 동적 문자열 공간 할당[6]
  • 쉼표와 같은 필드 구분 문자를 무시할 수 있는 `LINE INPUT`[6]
  • 기계어 루틴을 실행하기 위한 `CALL` 문[6]
  • `CHAIN` 및 `MERGE` 명령어[6]
  • 토큰화된 바이너리 형식 또는 ASCII 텍스트 형식으로 프로그램 저장 가능[6]
  • 매개변수 없이 `RND` 함수 실행 가능[7]
  • `LIST`되지 않도록 프로그램 "보호" 가능[7]
  • `COS`, `SIN`, `ATN`과 같은 수학 및 삼각 함수에 배정밀도 숫자 사용 가능 (시작 시 `/D` 매개변수 필요)[7]
  • 구조적 프로그래밍 지원 부족[7]
  • `IF`/`THEN`/`ELSE` 조건문은 한 줄에 작성[7]
  • `WHILE`/`WEND` 문은 여러 줄 그룹화 가능[7]
  • 함수는 단일 줄 `DEF FNf(x)=` 문으로 정의[7]
  • 변수 이름 끝 문자로 데이터 유형 지정 (예: `A$`는 문자열, `A%`는 정수)[7]
  • `DEFINT`, `DEFSTR` 등으로 변수 그룹의 기본 유형 설정 가능[7]
  • 선언되지 않은 변수의 기본 유형은 단정밀도 부동 소수점(32비트 MBF)[7]
  • 조이스틱 및 광선 펜 입력 장치 사용 가능[7]
  • 파일과 COM 포트에서 읽고 쓰기, 포트 이벤트 트래핑 가능[7]
  • 카세트 테이프 포트 인터페이스 미지원[7]
  • `PLAY` 문으로 간단한 음악 재생 (예: `PLAY "edcdeeL2edfedL4c"`)[7]
  • `SOUND` 문으로 PC 스피커를 통해 단일 채널 삐 소리와 휘파람 출력 가능[7]
  • Tandy 1000용 GW-BASIC은 `SOUND` 및 `PLAY` 명령에 대해 최대 3개 사운드 채널 허용[7]

3. 명칭

"GW"가 무엇을 의미하는지에 대한 몇 가지 이론이 있다. 마이크로소프트의 BASIC 컴파일러 라인 표준을 개발한 초기 직원인 그레그 휘튼은 빌 게이츠가 GW-BASIC이라는 이름을 선택했다고 말한다. 휘튼은 이를 지휘즈 베이직(Gee-Whiz BASIC)이라고 부르며 게이츠가 자신의 이름을 따서 프로그램 이름을 지었는지 여부는 확실하지 않다고 한다.[8] 마이크로소프트 프레스의 마이크로소프트 사용자 설명서에서도 지휘즈 베이직(Gee-Whiz BASIC) 이름으로 참조된다. 수많은 그래픽스 명령으로 인해 지휘즈(Gee-Whiz)라는 애칭이 붙었을 수도 있다.[8] 이니셜의 기원에 대한 다른 일반적인 이론으로는 "그래픽 및 윈도우", "게이츠, 윌리엄"(당시 마이크로소프트 사장), 또는 "게이츠-휘튼"(프로그램의 두 주요 설계자) 등이 있다.[9][10]

4. 헬로 월드 예제

gwbasic

10 PRINT "Hello, World!"

RUN

```

이 코드는 GW 베이직에서 "Hello, World!"를 출력하는 간단한 예제이다.

참조

[1] 웹사이트 GW-BASIC http://www.geocities[...] 2009-11-10
[2] 웹사이트 GWBASIC Games & Other Programs http://peyre.sqweebs[...] 2009-11-10
[3] 서적 Endless Loop: The History of the BASIC Programming Language SE Books 2017
[4] 웹사이트 Microsoft BASIC version information http://www.emsps.com[...] 2008-06-12
[5] 뉴스 Microsoft Open-Sources GW-BASIC https://devblogs.mic[...] Microsoft 2020-05-22
[6] 웹사이트 GW-BASIC Documentation and Utilities http://www.xs4all.nl[...]
[7] 웹사이트 GW-BASIC User's Guide http://www.xs4all.nl[...] 2008-06-28
[8] 웹사이트 GW-BASIC https://web.archive.[...] 2005-04-13
[9] 웹사이트 Linux Dictionary:G http://www.tldp.org/[...] 2008-06-28
[10] 웹사이트 GW-BASIC https://web.archive.[...] 2005-04-13



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com