Kapitel 6
Höhere Programmiersprachen:
|
programm HP | ||||
var A, B: integer; (1)procedure P ( I: integer ): integer; |
||||
var H: integer; begin (2) |
||||
if I <= 0 | ||||
then return 0 else H := 1 + P ( I - 1 ); (3)(4) return H; |
||||
end; | ||||
begin | ||||
read ( A ); B := P ( A ); (5)(6) write ( B ); | ||||
end. |
Konturmodell - Maschine:
Maschine zur Ausführung von Maschinensprachprogrammen:- Maschine für höhere Sprache H: Programmiersystem für H - Mit M Programmiersystem für H bilden Programmiersystem für H: Editor für H-Programme: Abb. 6-2: Die Maschine
Lader und Binder: (Linker) Binden: statisches Binden dynamisches Binden ________________ COM/ActiveX Java => Komponenten Testhilfeprogramme Betriebssytem Maschine M Interpretierer Übersetzer / Compilierer Compilieren: - vorab - Just in Time Laufzeitsysteme / Libraries Zwischensprachen EARLY-Diagramme Algorithmus A in Sprache S
Interpretierer für H Übersetzer:
H->M+BSÜbersetzer:
H->M+LZS+BS
Laufzeitsystem LZS BinderTab. 6-1
Maschine mit Sprache M Algorithmus A in Sprache S mit Eingabe I und Ausgabe O Übersetzer von S1 nach S3 in M Übersetzer; Cross-Übersetzer: Interpretierer folgende Themen: - Daten - Ausdrücke - Prozeduren Daten - Variablen
var A:integer; B:char; R:real; V:record I:integer; B:set of {1..15}; end; F:array[0..3]of integer; type H=record suc:printer to H; Con:integer; end; var P:printer to H; begin P:new(H); P^.Con:=5; P^.Succ:=new(H); ... dispose; ... end. |
dP=-21 dF=-19 ddF(i)=i*2 dV=-11 ddF=0 ddB=2 dR=-7 dB=-3 dA=-2 |
![]() Abb. 6-3: Keller + Heap |