Program Segment Prefix
aus Wikipedia, der freien Enzyklopädie
Als program segment prefix bezeichnet man die ersten 256 Byte einer .exe oder .com Datei (siehe MS-DOS). Die erste Hälfte des PSP beinhaltet verschiedene Hilfsinformationen für das Betriebssystem. In der zweiten Hälfte befindet sich die Kommandozeile (command tail, ohne den eigentlichen Programmaufruf). Mit Hilfe der Längenangabe an der Adresse DS:0080h kann ein Computerprogramm zu Beginn die Programmparameter ab Adresse DS:0081h aus dem PSP lesen.
Die Struktur im Detail:
Offset 00 – 01 INT 20h (Softwareinterrupt) –Befehl zur Beendigung des Programmes 02 – 03 Segmentadresse des ersten vom Programm nicht mehr belegten Paragraphen (16-Byte-Blöcke) 05 – 09 FAR-Call zum Softwareinterrupt 21 h 0A – 0D Kopie von Softwareinterrupt-Vektor 22h , Beendigungsadresse 0E – 11 Kopie von Softwareinterrupt-Vektor 23h , Adresse für Ctrl-Break 12 – 15 Kopie von Softwareinterrupt-Vektor 24h , Adresse für fatale Fehler 2C – 2D Programmumgebungsadresse ( Segment ) des aktuellen Umgebungsblocks (Environment) 50 – 52 enthält INT 21 h, RETF; durch FAR CALL dahin können DOS-Funktionsaufrufe erfolgen 5C – 6B File Control Block (FCB) des ersten Parameters der Kommandozeile 6C – 7B FCB des zweiten Parameters 80 Längenangabe der Kommandozeile /oder DTA (Disk Transfer Area) 81 – FF Parameterbereich, enthält alle Zeichen, die auf der Kommandozeile nach dem Kommandonamen eingegeben wurden.