QuickBASIC

Microsoft QuickBASIC（マイクロソフト クイックベーシック）は、マイクロソフトが開発した統合開発環境。また、そこで用いられるプログラミング言語。Microsoft Visual Basicの前身でもある。MS-DOS版とMacintosh版がある。

MS-DOS版の開発環境はMS-DOS上での動作ながら非常に高機能で、かつ文字ベースでGUIをエミュレートしていたため視覚的に操作できた。

 歴史 
QuickBASICの最初のバージョンは1985年にIBM PC用にリリースされた。1986年にリリースされたVersion 2.0で統合開発環境（IDE）を搭載。Version 3.0でコプロセッサやdo-loop文に対応。Version 4.0でソースコード入力画面での文法チェックやブレークポイント機能などが追加された。1988年にはMacintosh II向けのQuickBASICがリリースされた。

日本では1988年にQuickBASIC Version 4.2がPC-9800シリーズとAXシリーズ向けに発売された。また、日本IBMと富士通がそれぞれ自社のプラットフォーム向けに発売している。

QuickBASIC単体の最終バージョンは1988年（日本では1989年）にリリースされたVersion 4.5だが、OS/2アプリケーションの開発が可能な上位製品のMicrosoft BASIC Professional Development SystemでQuickBASIC上位互換の開発環境「QuickBASIC Extended Version」(QBX) が搭載されており、1990年10月（日本では1991年6月）にリリースされたVersion 7.1まで使われた。

1992年（日本では1993年）にはイベント駆動型プログラミングを容易にしたMicrosoft Visual Basic Programming System for MS-DOSがリリースされ、QuickBASICのソースコードは容易に移植できた。これが最初で最後のMS-DOS版となり、Windows版Visual Basicと言語の仕様に互換性はない。

 開発環境 
 コンパイラ・インタプリタ 
コンパイラは、実行ファイルのサイズが小さいランタイム版、実行が高速な独立版のバイナリをそれぞれ生成することができた。
インタプリタ実行の場合、後述するデバッガを利用することができた。
複数のソースファイルの分割コンパイル、リンクができた。プロジェクトの作成にも対応していた。

 エディタ 
 ソースコードの入力中に文法エラーを検出して指摘する機能があった。
 テキストの範囲指定、コピー、ペースト、検索、置換、インデント調整など豊富な編集機能があった。
 サブルーチン単位で画面に表示して編集することができた。
 ソースファイルの読み込み及び保存は、テキスト形式に加えN88-BASICのバイナリ形式でも行えた(PC-9801版のみ)。

 オンラインヘルプ 
 ソースコードの編集を中断せずに、オンラインヘルプを閲覧することができた。
   CALL mdreceived(path&, &HFF, 22, 1, 84, db1(1), ret3%)

 デバッガ 
主に以下のような機能があった。
 ブレークポイント
 ステップ実行
 ウォッチ(変数や式の値の確認)

 言語 
GW-BASIC以前のMicrosoft BASICに比べ、ローカル変数や構造体など構造化に対応して機能が大きく拡張されている。

 データ型 
 整数
 (単精度および倍精度)浮動小数点
 文字列
 (多次元)配列
 構造体

 変数 
グローバル変数とローカル変数、スタティック変数とC言語で言うauto変数があった。

 制御構造 
 ループ 
 for
 while ... wend
 do ... loop
最後の do ... loop がもっとも柔軟に書ける形式である。

 do while 条件
     ...
 loop do until 条件
     ...
 loop do
     ...
 loop while 条件 do
     ...
 loop until 条件

 分岐 
 一行if
 if 条件 then 真のとき else 偽のとき
 複数行if
 if 条件 then
    真のとき
 else
    偽のとき
 end if
 select caseC言語のswitch文に似ているが、整数以外の値も使用でき、範囲などの条件を記述することもできた。

 関数・サブルーチン 
 サブルーチンを記述することができた。値を返す場合は関数、値を返さない場合はサブルーチンであった。
 C言語のreturnに相当する Exit Sub ・ Exit Function ステートメントがそれぞれあった。
 再帰呼び出しが可能だった。

 割り込み処理 
以下のようなタイミングで割り込み処理を行うことができた。
 エラー発生
 キー押下
 タイマー
 音楽演奏バッファ

エラーに対する割り込み処理を行った場合、resumeステートメントで元の処理を再開することもできた。

 関連項目 

 FreeBASIC

 脚注 

 外部リンク 
 QB64

Category:BASICインタプリタ
Category:BASICコンパイラ
Category:廃止されたマイクロソフトの開発ツール
Category:マイクロソフトのプログラミング言語
Category:1985年のソフトウェア