pコードマシンとは、プロセッサの一種であるが、ハードウェアではなくソフトウェアで、すなわちエミュレータや仮想機械のようなインタプリタ型のプログラムで実装されることを目的としたものであり、p-code と呼ばれる中間コードを解釈実行する。この用語は、そのような仕様一般を指すこともあるが、多くの仕様はそれぞれ個々の名称を持っている。特にUCSD Pascalの p-Machine を指すことが多い。「p」の意味については、Pascal処理系の場合はPascalの頭文字ともされるが、他言語の場合はpseudo(マイクロソフトのサポート情報を参照)やportable[1]などとされる。 このコンセプトは1966年ごろ、BCPLのO-code(英語版)やニクラウス・ヴィルトのEuler(英語版)のPとして実装されたのが最初であるが、pコード (p-code) と呼ばれるようになったのは1970年代初