知識ベース

整数BASIC

Steve Wozniakによって書かれたInteger BASICは、Apple Iおよび元のApple IIコンピューターのBASICインタープリターです。もともとカセットで入手可能で、1977年のリリース時に元のApple IIコンピュータのROMに含まれていたこの製品は、初期の多くの家庭用コンピュータ所有者が使用したBASICの最初のバージョンでした。

この言語は整数を使用した数学のみをサポートし、浮動小数点のサポートはありませんでした。整数を使用すると、時代のほとんどのBASICに見られる6バイトまたは9バイトの浮動小数点形式よりも高速に読み取りおよび処理できる、はるかにコンパクトな16ビット形式で数値を格納できました。ただし、これは汎用言語としての適用性を制限していました。

整数BASICは、1979年にApple II PlusからApplesoft BASICを支持して段階的に廃止されました。これは、Microsoft BASICのライセンスされたが修正されたバージョンで、整数BASICにない浮動小数点サポートが含まれていました。

歴史

スティーブウォズニアックは、1960年代後半にカリフォルニアの高校のタイムシェアリングコンピューター端末でBASICコンピューター言語を初めて使用しました。 1970年代にHomebrew Computer Clubのメンバーとして101 BASIC Computer Gamesを読み、彼が設計したどのコンピューターでも、本のゲームをプレイし、Hewlett-Packard(HP )。ウォズニアックは、ビル・ゲイツがIntel 8080マイクロプロセッサ用にAltair BASICを書いたことを知っており、MOS Technology 6502用に最初に書くことを望んでいました。

ウォズニアックは後に彼の言語を「主にゲームと教育用途向け」と表現した。 BASICでの彼の唯一の経験は、高校でタイムシェアリングシステムを使用し、他のシステムにアクセスできない数日間でした。ウォズニアックは、「GAME BASIC」と呼ばれる言語を紙に書き、6502マシンコードに手書きで組み立てる必要がありました。コンピューター言語の記述方法に関するトレーニングを受けずに、彼はHPの経験を生かして、スタックマシンを実装して式を解釈しました。

Wozniakは以前、仕事から借りたHP BASICマニュアルを研究していましたが、HPのバージョンの言語の構文がDEC BASIC、 101 BASIC Computer Gamesの言語、Altair BASICとはまったく異なることを知りませんでした。時間を節約するため、そしてゲームとロジックシミュレーションでは整数演算が重視されていたため、ウォズニアックはGAME BASICから浮動小数点ルーチンを削除しました。彼のインタプリタは、「16ビット整数」計算のみを実装します。

Wozniakは以前、ハードウェアでAtariのBreakoutを開発していました。彼はBASICでゲームを実装したいと考えていたため、WozniakはApple IIコンピューターの設計中に、現在のInteger BASICという名前の言語にカラーグラフィック、ゲームパドル、およびサウンドのサポートを追加しました。 (言語には4K RAMが必要だったため、Apple IIの最小メモリにした。)Wozniakは、コンピューターとBrick OutをSteve Jobsに見せながら、ソースを変更するだけで、ゲームで使用する色をすばやく変更できることを示したコード。ウォズは後に「ソフトウェアはハードウェアよりもはるかに柔軟性が高い」ことを証明し、ジョブズは「今では誰もがハードウェアで設計しなくてもアーケードゲームを作成できる」ことを認識したと書いています。

Wozniakは、Homebrew Computer Clubの会議でBrick Outのデモを行いました。彼は後にそれを「私の人生で最も満足のいく日だ。それは私にとって大きな一歩のように思えた。ハードウェアアーケードゲームを設計した後、BASICでプログラムできることで世界が変わることを知った」。

開発

整数BASIC ROMには、アセンブリ言語プログラムを作成およびデバッグするためのマシンコードモニター、「ミニアセンブラー」、および逆アセンブラー、およびSWEET16と呼ばれる16ビットバイトコード言語のインタープリターも含まれていました。 Wozniakは、モニターをApple IIの最初のプログラムとして手作業で組み立て、それを使用してInteger BASICを作成しました。