WikiDer > P-Code

P-Code

P-Code ist ein Zwischencode für die Programmiersprache Pascal.Frühe Implementierungen von Pascal übersetzten Pascal-Code in eine maschinenunabhängige P-Code-Darstellung. Diese Zwischenform wurde dann von einem für eine Computerarchitektur spezifischen Programm interpretiert. Dadurch ist nur dieses kompakte Dolmetscher an unterschiedliche Architekturen angepasst. Der Nachteil war, dass die Programme aufgrund der zusätzlichen Interpretationsebene viel langsamer wurden. Spätere Pascal-Compiler generierten daher direkt nativen Code in dem Maschinensprache des Zentralprozessor. Diese Programme könnten viel schneller ausgeführt werden.

Java und .NET

Nach vielen Jahren des Schweigens wurde die Idee eines maschinenunabhängigen Zwischencodes wieder aufgegriffen. Das Java virtuelle Maschine und der .GERADEPlattform von Microsoft basieren auf dem gleichen Prinzip. Die alten Nachteile der langsameren Verarbeitung scheinen beseitigt zu sein, zum einen weil die Prozessoren um den Faktor 4000 schneller geworden sind (in der P-Code-Zeit, a 6502Prozessor auf 1 MHz häufig), zum anderen, weil sowohl Java als auch .Net den maschinenunabhängigen Code nicht interpretieren, sondern zuerst vorkompilieren.