Microsoft BASIC
Microsoft BASIC(マイクロソフト ベーシック)とは、マイクロソフトが開発・販売する、BASICの実装(処理系)である。
概要
マイクロソフトの基盤を築いた製品である。 最初に登場したのは1975年、Altair BASICとしてであり、ホビースト向けマイクロコンピュータMITS Altair 8800用の最初のBASIC(最初のプログラミング言語)であった。
Altair BASIC インタプリタは、マイクロソフト社を設立したポール・アレンとビル・ゲイツ(および Monte Davidoff からの手伝い)が開発した。開発には自製の8080ソフトウェアエミュレータをミニコンピュータ PDP-10 上で動作させて使用した。紙テープの形で販売され、初期バージョンは 4Kバイトのメモリを使用した。拡張した8Kバイトバージョンは、いろいろなプラットフォームに移植された。BASIC-80(8080/85とZ80)、BASIC-68 (MC6800)、BASIC-69 (MC6809)、6502-BASIC(困ったことに 8K ROM チップが一般的だった時代に 9KB になってしまった)、そして 16ビットの BASIC-86 (8086/8088)である。これはMicrosoft BASICの実行ランタイムが仮想マシンのエミュレータとしての側面が強かったため、多彩なプラットフォーム展開を可能にしていたことによるものである。その反面、エミュレータに近い動作であるため、実行速度の面では特定環境に依存した独自実装BASICに及ばないという問題も抱えていた。
Altair BASICでの成功の後、Microsoft BASIC は儲かるソフトウェアライセンスビジネスの基盤となっていく。1970年代から(特に)1980年代にかけて、様々なホームコンピュータやパーソナルコンピュータに移植され、拡張されていった。オリジナルのAltair BASIC とは対照的に、多くのパソコン用のBASICはROMに格納され、マシンの電源を入れると"READY.
"(または"Ok
")のプロンプトを表示して直ちに使えるようになっている。つまり、Microsoft BASIC とその派生品は初歩的なオペレーティングシステム (OS) の目に見える主要な部分を担っていた。
文字列変数や文字列編集関数が使用できる版では、メモリ管理でガベージコレクション(GC)が発生するような方式であるため(リストのようなデータ構造は無いので、一般のGCのようにマーク等はしない)、長いときには数分間止まる。
Microsoft BASIC の派生品
- Altair BASIC : MITS Altair 8800 および他の S-100 コンピュータ)
- Amiga BASIC : コモドール Amiga ファミリ)
- Applesoft BASIC : (Apple II ファミリ)
- Atari Microsoft BASIC I/II : (Atari 8ビット・コンピュータ)
- BASICA : ("BASIC Advanced") (PC-DOS, IBM PC上)
- Color BASIC : (TRS-80 Color Computer)
- Commodore BASIC : (コモドール 8ビットファミリ, コモドール64など)
- Extended Color BASIC : (TRS-80 Color Computer および Dragon 32/64)
- F-BASIC : (富士通 FMシリーズ)
- GW-BASIC : (BASICA for MS-DOS, on PC 互換機)
- Hu-BASIC : (シャープ X1シリーズ/MZシリーズ)
- BASIC-M25 : (MZ-2500用)
- IBM Cassette BASIC : (PC-DOS, 元祖IBM PC用)
- Microsoft Level III BASIC : (タンディ・ラジオシャック TRS-80)
- MBASIC : (CP/M, on 8080/85 および Z80 ベースのコンピュータ)
- MS BASIC for Macintosh : (Mac OS on Apple Macintosh)
- MSX-BASIC : (MSX)
- N-BASIC : (NEC PC-8000シリーズ/PC-8800シリーズ/初期のPC-9800シリーズ)
- N60-BASIC : (NEC PC-6000シリーズ/PC-6600シリーズ)
- N82-BASIC : (NEC PC-8200シリーズ)
- N88-BASIC : (NEC PC-8800シリーズ/PC-9800シリーズ)
- QBasic : (PC-DOS/MS-DOS on IBM PC および互換機)
- QuickBASIC : (同上)
- TRS-80 Level II BASIC : (タンディ・ラジオシャック TRS-80)
- Microsoft Visual Basic : (MS Windows on IBM PC および互換機)
- WordBasic : (Visual Basic for Applicationsの前身) (同上)