UCSD Pascal

UCSD Pascal（UCSD パスカル）は、1978年にカリフォルニア大学サンディエゴ校(UCSD)のが教育用に開発したPascal処理系である。

CPUの異なるパーソナルコンピュータ上で動作するために、P-Machineと呼ばれる仮想マシンを使用する。コンパイラはプログラムをそれぞれのCPU用の機械語に翻訳するのではなく、P-Machineの機械語であるP-Codeに翻訳する。そのため、P-Codeの仮想マシンを実装すればどのようなパーソナルコンピュータ上でも実行可能であった。またUCSD PascalはPascalコンパイラだけでなく、スクリーンエディタやデバッガ、ファイル管理を含む統合開発環境として実装され、後にp-Systemというオペレーティングシステムに発展した。これらの開発環境の殆どすべてはPascalで書かれていたので、容易に異なる環境向けに移植できた。通常、仮想マシンはインタプリタとして実装された（P-Codeインタプリタ）。また、特に処理速度が必要な場合のために、P-Codeから実際のCPUの機械語に変換するネイティブコードコンパイラが提供される場合もあった。

P-Machineは典型的なスタックマシンで、様々な処理を主にスタック上で行うアーキテクチャを持っていた。後にP-Codeをハードウエアで直接実行するPASCALマイクロエンジン(英語版)と呼ばれるCPUと、それを利用したパーソナルコンピュータが製造された。このCPUはDECのLSI-11用マルチチップCPUセットを流用し、P-Codeを解釈するマイクロコードを実装したもので、今日ハードディスク製造で著名なWestern Digital社が開発した。

初期のコンピュータロールプレイングゲーム"Wizardry"はApple II上のApple Pascal(UCSD Pascal)で書かれていた。

UCSD Pascalが実装されたコンピュータの例 
 Apple IIシリーズ
 タンディ・ラジオシャック TRS-80シリーズ
 IBM PC, PC/AT
 Terak 8510/a（LSI-11ベース）
 PC-8000シリーズ、PC-8800シリーズ、PC-9800シリーズ

関連項目 
 UCSD p-System

コンパイラ
Pascal
仮想機械
1978年のソフトウェア