Parallele Programmabläufe: R S
|
|
|
- Erna Meinhardt
- vor 9 Jahren
- Abrufe
Transkript
1 REFERAT
2 Parallele Programmabläufe: R S Einführung 2.Synchronisation 2.1.Monitor-Konzept 2.2.Rendez-vous-Konzept 2.3.Bolt-Synchronisation 3.Behandlung Ausnahmesituationen
3 1.Einführung: Im Bereich der Prozßtechnik ist es oft erforderlich,daß zur Lösung eines Anwenderproblems parallele Abläufe notwendig sind. Daher stellen Programmiersprachen für diesen Bereich, wie PEARL oder Industrial Real-Time Fortran, spezielle Sprachelemente zur Vereinbarung, zum Aufrufen und zur Ablaufbeeinflussung von Prozessen bereit. Als Beispiel die Programmiersprache ADA: Jeder Prozeß wird wird ineiner umfassenden Programmiereinheit vereinbart (z.b.:unterprogramm, anderer Prozeß). Diese Programmiereinheit heißt Vorgänger (bzw. Vaterprozeß) des Prozesses. Werden im Vereinbarungsteil mehrere Prozesse vereinbart, so werden diese, auch zum Rumpf des Vorgängers, parallel Ausgeführt und als Geschwisterprozesse bezeichnet. Wenn ein Vorgänger aktiviert wird, werden alle Prozesse die in seinem Deklarationsteil vereinbart wurden ebenfalls gestartet. Die Abarbeitung der Befehle innerhalb eines Prozesses erfolgt sequentiell. Ein Prozeß ist beendet, wenn seine Anweisungsfolge abgearbeitet ist oder er von außen beendet wurde. Ein Vorgänger ist erst dann beendet, wenn seine eigene Anweisungsfolge und alle im Deklarations vereinbarten Prozesse abgearbeitet wurden. Dies ist eine Möglichkeit, Prozesse und ihre Verwaltung zu definiere. In manchen anderen Sprachen ist es zusätzlich zum Beispiel auch möglich, einzelne Anweisungen zur parallelen (kollateralen) Abarbeitung freizugeben. z.b.: ALGOL 68: (x:=7,y:=a,z:=1750) Die in der Klammerstehenden und durch Komma getrenten Anweisungen können (müssen aber nicht!) parallel ausgeführt werden. Prozesse können genauso wie Prozeduren mit Parametern vereinbart und aufgerufen werden, es gilt auch meist die Blockstruktur für sie.
4 2.Synchronisation: Bei Programmiersprachen wurden verschiedene Konzepte eingeführt, mit denen der Programmierer seine parallelen Prozesse, die asynchron zueinander ablaufen, auf mehr oder weniger eindeutige, sichere Weise synchronisieren kann. Die Konzepte sind teilweise erst bei wenigen Sprachen eingebunden, und wird auf diesem Teilgebiet der Informatik besonders im Bezug auf verteilte Systeme noch geforscht und weiterentwickelt. Das Semaphor- Konzept ist am meisten verbreitet, da es auch relativ einfach einzubinden ist. 2.1.Monitor-Konzept: Das Konzept wurde von P. Brinch-Hansen und C. Hoare entwickelt. Ein Monitor besteht aus dem von ihm zu verwaltenden Daten und nach außen bekannten Zugriffsprozeduren. Auf seine Daten kann nur innerhalb des Monitors zugegriffen werden, der damit eine Art abstrakter Datentyp realisiert. Wenn ein Monitor oder ein Prozeß von einem anderen Prozeß aufgerufen wird, wird der Monitor quasi ein Bestandteil des Prozesses und kann somit nicht mehr von anderen Prozessen Aufgerufen werden. Damit ist das Prinzip des gegenseitigen Ausschlusses bei der Behandlung gemeinsamer Ressourcen gewährleistet. Eine Monitorprozedur kann aus Sicherheitsgründen nicht rekursiv aufgerufen werden. Das folgende Beispiel zeigt die Verwaltng eines Puffers, der von einem "Erzeuger-Prozeß" mit Zeichen gefüllt und von einem Drucker-Treiber geleert wird. Der Monitor garantiert, daß nie gleichzeitig von beiden Prozessen auf den Puffer zugegriffen wird. Das Monitor-Konzept ist u.a. in den Sprachen MODULA und CONCURRENT PASCAL realisiert.
5 2.2 Rendez-vous-Konzept: Beim Monitor-Konzept wurde der Monitor bzw. aufgerufene Prozeß Teil des aufrufenden Prozesses. Beim Rendez-vous-Konzept kann die aufgerufene Prozedur in einem anderen Prozeß liegen, der parallel zum aufrufendem Prozeß abläuft. Es gelten folgene Einschränkungen: - Solald ein Prozeß ein Rendez-vous anmeldet wird dieser unterbrochen bis der aufgerufenen Prozeß zum Rendez-vous bereit ist. Dies kann sofort, später, aber auch nie der Fall sein. - Ein Prozeß, der von einem anderen Prozeß einen Aufruf erwartet, muß dies als Anweisung enthalten. Er wird dann bis asynchron bzw. parallel zu anderen Prozessen bis zu dieser Anweisung ausgeführt. Liegt ein Aufruf von einem anderen Prozeß vor, wird in der Abarbeitung des Prozesses fortgefahren, andernfalls wird der Prozeß solange ausgestzt, bis ein Aufruf erfolgt. Dadurch wird gewährleistet, daß beide Prozesse unabhängig voneinander Arbeiten bis das Rendez-vous an einer definierten Stelle Eintritt und nach Aufruf der Prozedur wieder unabhängig weiterarbeiten. Dieses Konzept wurde z.b. in ADA realisiert und eignet sich im Gegensatz zum Monitor-Konzept auch für verteilte Systeme.
6 2.2. Bolt-Synchronisation: Die bisherigen Systeme enthielten einen synchronisierten, aber exklusiven Zugriff auf die angeforderte Prozedur bzw. den Programmabshnitt. Die Bolt-Synchronisation kommt dann zur Anwendung, wenn exklusiver mit nicht exklusivem Zugriff konkurriert. Die Bolt-Synchronisation wurde in PEARL realisiert. Ein Bolt wird dadurch deklariert, daß angegeben wird, wiviele nicht-exclusive Belegungen möglich sind. Es gibt dann vier Operationen auf die Bolt-Variable: 1.Nicht-Exclusivanforderung: Ihr wird stattgegeben, wenn keine Exklusivanforderung höherer Priorität ansteht oder die Maximalbelegung noch nicht erreicht wurde. 2.Freigabe der Nicht-Exclusivanforderung 3.Exclusivanforderung 4.Freigabe der Exclusivanforderung Beispiel: Die Belegung einer Startbahn auf einem kleinem Flughafen: Die Startbahn kann einerseits zum Rollen benutzt werden (dann kann auch mehrere Flugzeuge gleichzeitig auf der Rollbahn sein, nicht-exclusivbelegung), aber auch zum Starten (Exclusivbelegung). Es können max. 2 Flugzeuge gleichzeitig zur Startbahn Rollen. Die vier Operationen auf die Bolt-Variable im Beispiel: 1.Nicht-Exclusivanforderung: Ein Flugzeug fordert die Startbahn zum Rollen an. 2.Freigabe der Nicht-Exclusivanforderung: Im Beispiel wäre dies das Verlassen der Startbahn nach dem Rollen zum Halteort. 3.Exclusivanforderung:
7 Im Beispiel ist dies die Belegung zum Starten. 4.Freigabe der Exclusivanforderung: Erfolgt im Beispiel nach dem Flugzeugstart. 3.Behandlung Ausnahmesituationen: Unter einer Ausnahmesituation sei hier das durch eine Ausnahmebedingung verursachte Unterbrechen der normalen Programmausführung verstanden. Eine Ausnahmesituation kann sein: - eine datenabhängige Fehlersituation (Division durch Null bzw. eine zu kleine Zahl) - bestimmte gerätetechnische oder zeitliche Bedingungen (falsch eingestellte Datenraten oder Synchronisationskonflikte) Normalerweise reagiert das Laufzeitsystem bzw. Betriebssystem automatisch auf die Ausnahmesituation, indem es die Ausnahmesituatuion behebt oder das Programm terminiert. Meistens hat der Programmier aber keinen Einfluß auf die Systemreaktion. Neuere Sprachen enthalten Sprachkonstrukte zur Behandlung von Ausnahmesituationen (Industrial-Real-Time- BASIC,PL/1,ADA,PEARL,usw.). Bei einem Programm zur zyklischen Bearbeitung einer Fertigungsaufgabe darf ein Laufzeitfehler nicht zur Termination des Anwenderprogramms führen. Es sollte vorher versucht werden, einen Aufsetzpunkt für eine normale Programmfortführung zu finden oder das Programm definiert zu terminieren. Zwei Arten von Ausnahmebedingunge: 1. Vom System her vorgegebene, wohldefinierte Bedingungen, die vom Programmieren mittels fest vereinbarter Kennungen oder Namen angegeben werden. 2. Der Programmierer definiert durch logische Ausdrücke die Ausnahmesituatuin selbst (DURATION>5)
8 In PEARL kann die erste Art von Ausnahmebedingungen des Systems angesprochen werden (OVERFLOW,ENDOFFILE). Sobald eine Ausnahmebdingung erfüllt ist, wird ein bestimmter Programmabschnitt ausgeführt. Der nach Eintreten der Ausnahmebedingung aufgerufene Programmblock (Handler) kann aus einer Anweisung, einem Block oder einem speziellen Unterprogramm bestehen. Die Zuordnung eines Handlers zur Ausnahmebdingung kann dynamisch im Programm oder statisch bei der Vereinbarung des Handlers erfolgen. Letzteres ist in PEARL der Fall. In PEARL kann beliebig zw. Systemreaktionen (Kennung SYS) und dem vom Anwender programmierten Handler gewechselt werden. Fragen: 1. Nenne vier Möglichkeiten zur Synchronisation von parallelen Prozessen Semaphor-Konzept Monitor-Konzept Rendez-vous-Konzept Bolt-Synchronisation 2. Nenne den Unterschied zw. dem Monitor-Konzept und dem Rendez-vous-Konzept Monitor-Konzept: Wird beim Aufruf ein Teil des aufrufenden Prozesses Rendez-vous-Konzept: Hier kann die aufgerufene Prozedur in einem anderen Prozeß liegen, der parallel zum aufrufenden Prozeß abläuft. 3. Nenne einige Programmiersprachen für Parallele Programmabläufe PEARL Industrial Real-Time FORTRAN
9 ADA ALGOL 68 MODULA CONCURRENT PASCAL Industrial-Real-Time BASIC PL/1
Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )
Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Übung 5: Semaphoren
Universität Stuttgart Prof. Dr.-Ing. Dr. h. c. P. Göhner Aufgabe 5.1: Übung 5: Semaphoren Semaphor-Operationen In Bild 5.1.1 ist die Anordnung von Semaphor-Operationen am Anfang und am e der asks A,B,C
III.1 Prinzipien der funktionalen Programmierung - 1 -
1. Prinzipien der funktionalen Programmierung 2. Deklarationen 3. Ausdrücke 4. Muster (Patterns) 5. Typen und Datenstrukturen 6. Funktionale Programmiertechniken III.1 Prinzipien der funktionalen Programmierung
Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung
Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung Sommersemester 2005 Uni Erlangen Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebsysteme Tarek Gasmi [email protected]
Makro. Operationsendeerkennung. in TrainController (TC) - Version 8.xx / Gold -
in TrainController (TC) - Version 8.xx / Gold - TrainController ist ein Produkt und registrierter Name der Fa. Freiwald Software, Egmating. AICHBAUERNWEG 1, D - 83224 GRASSAU (CHIEMSEE / ACHENTAL), TEL.
Einstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung
Vorlesung Programmieren
Vorlesung Programmieren Speicherverwaltung und Parameterübergabe Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Gültigkeitsbereich von
Monitore. Klicken bearbeiten
Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition
Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil
MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches
TURBO PASCAL VERSION 5.5
Jörg Lange TURBO PASCAL VERSION 5.5 / Hüthig Buch Verlag Heidelberg 7 Inhaltsverzeichnis 1. DasTURBO-Pascal-System 13 1.1 Starten des TURBO-Pascal-Systems 13 1.2 DasTURBO-Pascal-Menue-System 17 1.3 DasF)ILE-Menue
Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil
MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches
Betriebssysteme 1. Thomas Kolarz. Folie 1
Folie 1 Betriebssysteme I - Inhalt 0. Einführung, Geschichte und Überblick 1. Prozesse und Threads (die AbstrakFon der CPU) 2. Speicherverwaltung (die AbstrakFon des Arbeitsspeichers) 3. Dateisysteme (die
Gliederung. n Teil I: Einleitung und Grundbegriffe. n Teil II: Imperative und objektorientierte Programmierung
Gliederung n Teil I: Einleitung und Grundbegriffe l 1. Organisatorisches l 2. Grundlagen von Programmiersprachen n Teil II: Imperative und objektorientierte Programmierung l 1. Grundelemente der Programmierung
Erzeuger-Verbraucher-Problem
Erzeuger-Verbraucher-Problem Hier: Puffer der Größe 1, Erzeuger, Verbraucher Zwei Semaphore werden eingesetzt, um zwischen Threads "Ereignisse zu melden" Man kann Semaphore auch verwenden, um Ereignisse
Javakurs für Anfänger
Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue
Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss
Arrays FTI 41 2005-09-09 Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss z.b. Dim Werte(x) As Single. Wobei
ALGOL 68 im Aspekt einer modernen Programmiersprache???
ALGOL 68 im Aspekt einer modernen Programmiersprache??? General-purpose-Programmiersprache: Ein sehr wichtiges Kriterium ist die Möglichkeit, alle Algorithmen (=Lösungsverfahren) in einer Programmiersprache
INHALTSVERZEICHNIS. 1 Strukturierte Datentypen. 1.1 String. 1.2 Array (Feld) 1.3 Record. 1.4 Set. 2. Erweiterungen in Pascal
INHALTSVERZEICHNIS 1 Strukturierte Datentypen 1.1 String 1.2 Array (Feld) 1.3 Record 1.4 Set 2. Erweiterungen in Pascal 2.1 Prozeduren und Funktionen 2.1.1 Prozeduren 2.1.2. Funktionen 2.2. File 2.3. Pointer
3. Methodik der Programmerstellung
3. Methodik der Programmerstellung 3.1 Vorgehen 3.2 Programmerstellung 3.2.1 Konventionen 3.2.2 Schlüsselwörter und Bezeichner 3.2.3 Fehlertypen 3.2.4 Programmierstil 3.3 Formaler Aufbau eines Pascal-Programms
Einführung in die Programmierung für NF. Übung
Einführung in die Programmierung für NF Übung 03 06.11.2013 Inhalt Methoden in Java Gültigkeitsbereiche EBNF Einführung in die Programmierung für NF Übung 03 2 Methoden in Java In Methoden werden Ausdrücke
Info B VL 16: Monitore und Semaphoren
Info B VL 16: Monitore und Semaphoren Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 16: Monitore und
4.2 Programmiersprache C
4.2.1. Elementare Datentypen (signed) int, unsigned int, (signed) short (int), unsigned short (int), (signed) long (int), unsigned long (int) Elementare Datentypen für ganze Zahlen mit oder ohne Vorzeichen.
Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen
6. Funktionen, Parameterübergabe
6. Funktionen, Parameterübergabe GPS-6-1 Themen dieses Kapitels: Begriffe zu Funktionen und Aufrufen Parameterübergabearten call-by-value, call-by-reference, call-by-value-and-result in verschiedenen Sprachen
(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?
SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone
1.3 Geschichte der Programmiersprachen
50er Jahre erste Definition höherer Programmiersprachen Effizienz maßgebliches Designziel FORTRAN (Backus) als Sprache für wissenschaftliches Rechnen (komplexe Berechnungen, einfachen Daten), Arrays, Schleifen,
Einstieg in die Informatik mit Java
1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung
Einstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
1953/54 (USA) PS FORTRAN (FORmula TRANslating system) 1958/60 (Europa) ALGOL (ALGOrithmic Language)
4. Zur Struktur der PS PASCAL 4.1. Einleitende Bemerkungen 1953/54 (USA) PS FORTRAN (FORmula TRANslating system) 1958/60 (Europa) ALGOL (ALGOrithmic Language) Anfang 60er (USA) COBOL (Commercial Business
Leser-Schreiber-Realisierung mit Semaphoren
Leser-Schreiber-Realisierung mit Semaphoren Reader: down(semwriter); down(semcounter); rcounter++; up(semwriter); read(); down(semcounter); rcounter--; Writer: Problem: down(semwriter); Busy Waiting siehe
Programmiersprachen. Organisation und Einführung. Berthold Hoffmann. Studiengang Informatik Universität Bremen
Organisation und Einführung Studiengang Informatik Universität Bremen Sommersemester 2010 (Vorlesung am Montag, der 12. April 2010) (Montag, der 12. April 2008) 1 Vorstellung 2 Organisation 3 Einführung
Parallele Prozesse. Prozeß wartet
Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:
2 Eine einfache Programmiersprache
2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir
Programmentwurf Prof. Metzler
Programmentwurf 13.05.2014 Prof. Metzler 1 Programmiersprachen Assembler problemorientierte Sprache C anwendungsorientierte Sprache Basic Kommandosprachen 13.05.2014 Prof. Metzler 2 Assemblersprache Die
Master-Thread führt Programm aus, bis durch die Direktive
OpenMP seit 1998 Standard (www.openmp.org) für die Shared-Memory Programmierung; (Prä-)Compiler für viele Systeme kommerziell oder frei (z.b. Omni von phase.hpcc.jp/omni) verfügbar Idee: automatische Generierung
2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen
Variablen Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Variablen dienen zur Speicherung von Daten. Um Variablen
Programmiersprachen und Übersetzer
Programmiersprachen und Übersetzer Sommersemester 2009 5. April 2009 Vorteile bei der Verwendung höherer Programmiersprachen Vorteile bei der Verwendung höherer Programmiersprachen 1. Einfache Notation
JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
Was machen wir heute? Betriebssysteme Tutorium 3. Organisatorisches. Prozesskontrollblock (PCB) Programmieraufgaben. Frage 3.1.a
Was machen wir heute? Betriebssysteme Tutorium 3 Philipp Kirchhofer [email protected] http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1
Taschenrechner Version 6.1
Taschenrechner Version 6.1 Wie kann ich ein Programmteil 10 mal wiederholen? Start i := 1 FOR i := 1 TO 10 DO Eingabe Berechnung Ausgabe BLOCK i:= i+1 i
Erstes Leser-Schreiber-Problem
Erstes Leser-Schreiber-Problem Szenario: mehrere Leser und mehrere Schreiber gemeinsamer Datenbereich Schreiber haben exklusiven Zugriff Leser können parallel zugreifen (natürlich nur, wenn kein Schreiber
P. P. Bothner W.-M. Kähler. Einführung in die Programmiersprache APL
P. P. Bothner W.-M. Kähler Einführung in die Programmiersprache APL ----Programmiersprachen ------------- Einführung in ALGOL 68 von H. Feldmann Einführung in die Programmiersprache Pascal von K.-H. Becker
Die Programmiersprache C
Die Programmiersprache C höhere Programmiersprache (mit einigen assemblerähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,
6. Unterprogramme 6-1
6. Unterprogramme 6.1 Prozeduren und Funktionen 6.2 Deklaration und Aufruf 6.3 Call-by-Value / Call-by-Reference 6.4 Standardfunktionen in C 6.5 Gültigkeitsbereich von Namen 6.6 Rekursion 6. Unterprogramme
(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)
Anweisungen Eine Anweisung ist eine in einer beliebigen Programmiersprache abgefaßte Arbeitsvorschrift für einen Computer. Jedes Programm besteht aus einer bestimmten Anzahl von Anweisungen. Wir unterscheiden
Konzepte der Programmiersprachen
Konzepte der Programmiersprachen Sommersemester 2010 4. Übungsblatt Besprechung am 9. Juli 2010 http://www.iste.uni-stuttgart.de/ps/lehre/ss2010/v_konzepte/ Aufgabe 4.1: Klassen in C ++ Das folgende C
Programmierkonzepte in
Programmierkonzepte in Inhaltsverzeichnis Programmierkonzept Seite Anweisung... 3 Sequenz... 3 Schleife... 4 Bedingung... 5 Ereignis... 6 Unterprogramm... 7 Parameter... 8 Variable... 9 Boolesche Algebra
Programmierkurs II. C und Assembler
Programmierkurs II C und Assembler Prof. Dr. Wolfgang Effelsberg Universität Mannheim Sommersemester 2003 1-1 Inhalt Teil I: Die Programmiersprache C 2. Datentypen und Deklarationen 3. Operatoren und Ausdrücke
Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.
Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit
Java Methoden. Informatik 1 für Nebenfachstudierende Grundmodul. Kai-Steffen Hielscher Folienversion: 1. Februar 2017
Informatik 1 für Nebenfachstudierende Grundmodul Java Methoden Kai-Steffen Hielscher Folienversion: 1. Februar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht Kapitel 3 - Java
Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf
Unterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
Programmierkonzepte in
Programmierkonzepte in Inhaltsverzeichnis Programmierkonzept Seite Anweisung 3 Sequenz 3 Schleife 4 Bedingung 5 Ereignis 6 Unterprogramm 7 Parameter 8 Variable 9 Boolesche Algebra I 10 Boolesche Algebra
2. JAVA-Programmierung. Informatik II für Verkehrsingenieure
2. JAVA-Programmierung Informatik II für Verkehrsingenieure Problem-Algorithmus-Umsetzung Problemstellung Algorithmus Umsetzung 2 Beispiele für Algorithmen 3 Definitionsversuch Algorithmus Anleitung, wie
1.) Behandlung von Laufzeitfehlern in Visual Basic
1.) Behandlung von Laufzeitfehlern in Visual Basic Laufzeitfehler sind Fehler, die während der Programmausführung (Laufzeit) auftritt. Laufzeitfehler werden in der Regel nicht direkt durch den Programmcode,
Wie kann man die Korrektheit reaktiver Systeme gewährleisten?
Korrektheit durch modulare Konstruktion Wie kann man die Korrektheit reaktiver Systeme gewährleisten? Ansatz: Durch systematische Konstruktion (Schlagwort: strukturierte Programmierung für parallele Programmiersprachen)
Einstieg in die Informatik mit Java
1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,
Definitionen/Vorarbeit zum Thema Java
Definitionen/Vorarbeit zum Thema Java Programmiersprachen: System von Wörtern und Symbolen, die zur Formulierung von Programmen für die elektronische Datenverarbeitung verwendet werden. Arten: z.b. Javascript
Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3
Programmieren mit Java Modul 3 Arrays Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Eindimensionale Arrays 3 2.1 Arrays deklarieren.............................. 3 2.2 Arrays erzeugen................................
Software Entwicklung 1. Rekursion. Beispiel: Fibonacci-Folge I. Motivation. Annette Bieniusa / Arnd Poetzsch-Heffter
Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter AG Softech FB Informatik TU Kaiserslautern Rekursion Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 27 Motivation Beispiel: Fibonacci-Folge
Programmiertechnik Kontrollstrukturen
Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
Programmierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
