Bild 1‑1 Der Prozessor bearbeitet eine Anweisung des Programms

Werbung
Arbeitsspeicher des Rechners
Anweisung
Anweisung
1
2
3
Anweisung
...
Anweisung
Prozessor des Rechners
Anweisung
Anweisung
Bild 1-1 Der Prozessor bearbeitet eine Anweisung des Programms nach der anderen
nur 1 Eingang
Anweisung
nur 1 Ausgang
Anweisung
ein zweiter Ausgang
bzw. Eingang ist
nicht möglich
Anweisung
Bild 1-2 single entry und single exit bei der Sequenz
Bild 1-3 Sinnbild für Verarbeitungsschritt
Blockname
Bild 1-4 Sinnbild für Block
Name des Hauptprogramms
Lokaler Verarbeitungsschritt 1
Unterprogramm_A
Lokaler Verarbeitungsschritt 2
Lokaler Verarbeitungsschritt 3
Bild 1-5 Struktogramm für ein Hauptprogramm
Hauptprogramm
einlesen
verarbeiten
ausgeben
Bild 1-6 Hierarchiediagramm eines Programmes
einlesen
Daten von Tastatur einlesen
Daten auf Platte speichern
wird in Schritt 2
verfeinert
wird in Schritt 2
verfeinert
solange keine 0 gelesen wird
Bild 1-7 Schrittweise Verfeinerung: Schritt 1
einlesen
Verfeinerung von
„Daten von Tastatur
einlesen“
Zur Eingabe auffordern
Zahl einlesen
Verfeinerung von
„Daten auf Platte
speichern“
solange keine 0 gelesen wird
Bild 1-8 Schrittweise Verfeinerung: Schritt 2
V1
V2
Bild 1-9 Nassi-Shneiderman-Diagramm für die Sequenz
Boolescher
Ausdruck
TRUE
V1
FALSE
V2
Bild 1-10 Struktogramm für die einfache Alternative
Bedingung
TRUE
V1
Bild 1-11 Struktogramm für die bedingte Verarbeitung
c1
Arithmetischer
Ausdruck
c2
....
V1
V2
cn-1
Vn-1
cn
Vn
Bild 1-12 Struktogramm für die mehrfache Alternative
Solange Bedingung
V
Bild 1-13 Struktogramm der Wiederholung mit
vorausgehender Bedingungsprüfung
V
Solange Bedingung TRUE
Bild 1-14 Struktogramm der Wiederholung mit
nachfolgender Bedingungsprüfung
V
Bild 1-15 Struktogramm der Wiederholung ohne Bedingungsprüfung
BREAK
Bild 1-16 Abbruchanweisung
V1
Bedingung
TRUE
FALSE
BREAK
V2
Bild 1-17 Struktogramm einer Schleife ohne Wiederholungsprüfung mit Abbruchbedingung
Euklid’scherAlgorithmus
Initialisiere x und y
Solange x ungleich y
x kleiner als y
TRUE
FALSE
y=y-x
x=x-y
x ist größter gemeinsamer Teiler
Bild 1-18 Struktogramm des Euklid’schen Algorithmus
Wort
||||
||||||
||||
Zwischenraum
Bild 1-19 Erkennen von Wörtern
ablauffähiges Programm
main()
SUB1()
SUB2()
.
.
.
selbst geschriebene Funktionen
SUBn()
Bibliotheksfunktionen /
Laufzeitsystem
globale Variablen
Stack
Heap
Bild 1-20 Adressraum eines ablauffähigen Programms
Quellprogramm
MAIN.C, SUB1.C
und SUB2.C
auf Platte
MAIN.C
SUB1.C
Benutzte IncludeDateien
SUB2.C
Compiler
Laufzeitsystem
MAIN.OBJ,
SUB1.OBJ und
SUB2.OBJ
auf Platte
Objectcode
MAIN.OBJ SUB1.OBJ SUB2.OBJ
Aufgerufene
LibraryFunktionen
Fehlerfunktionen,
Speicherverwaltungsroutinen, etc.
Linker
BEISPIEL.EXE
auf Platte
BEISPIEL.EXE
Ablauffähiger Objectcode
(ausführbares Programm)
Lader
BEISPIEL.EXE im
Arbeitsspeicher
BEISPIEL.EXE
Ausführbares Programm im
Arbeitsspeicher
Bild 1-21 Ablauf und Erzeugnisse beim Kompilieren, Binden und Laden
Bild 1-22 Variable im Arbeitsspeicher
INT_MIN
INT_MAX
.... -1 0 1 2 ....
Bereich des Typs int
Bild 1-23 int-Zahlen
FORTRAN
BASIC
BLISS
BCPL
ALGOL60
ALGOL68
SIMULA
COBOL
Pascal
PL/I
C
Smalltalk
Concurrent
Pascal
Modula
Ada
C++
Java
C#
Bild 1-24 C in der Verwandtschaftstafel einiger höherer Programmiersprachen
Sicht
sichtbar
Abstraktionsschicht
verborgen
Detailschicht
Bild 1-25 Durch Abstraktion wird Unwesentliches verborgen
Sicht
sichtbar
Ausdrücke
verborgen
Maschinenregister
Abstraktionsschicht
Detailschicht
Bild 1-26 Verbergen der Maschinenregister
Sicht
Konstrukte der
Strukturierten Programmierung
sichtbar
verborgen
GOTOs und Sprungmarken
Abstraktionsschicht
Detailschicht
Bild 1-27 Verbergen der GOTOs und Sprungmarken
Sichtbarer Teil des ADT:
Aufrufschnittstellen der
Operationen
Unsichtbarer Teil des ADT:
Repräsentation des Typs
Implementierung der Operationen
Bild 1-28 Verbergen der Implementierung eines abstrakten Datentyps
Sicht
sichtbar
verborgen
Klasse als Datentyp
Aufrufschnittstelle der Methoden Abstraktionsschicht
nach außen sichtbar
Daten und Anweisungen
sind verborgen
Detailschicht
Bild 1-29 Verbergen von Daten und Anweisungen
Herunterladen