Fachseminar WS 2008/09

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Fachseminar WS 2008/09"

Transkript

1 Fachseminar WS 2008/09 Fachgebiet: Compilerbau Thema: Lexikalische Analyse (Scanner) Referent: Ali Sediq Betreuer: Prof. Dr. Helmut Weber 1

2 Inhaltsverzeichnis Lexikalische Analyse 1.0 Grundprobleme der lexikalischen Analyse 1.1 Lexikalische Analyse und Syntaxanalyse im Vergleich 1.2 Aufgabe des Scanners 1.3 Begriffe: Token, Lexem, Muster 1.4 Attribute für Token 1.5 Symboltabelle 1.6 Vorausschauende Analyse von Eingabezeichen (Look-Ahead) 1.7 Fehlerbehandlung der lexikalischen Analyse 1.8 Generierung von Scannern (Übergangsdiagramm, Automaten) 1.9 Implementierungsbeispiel anhand eine Übergangsdiagramm 2.0 Lexikalische Analyse von PL/0 als Beispiel 2

3 Grundproblem der lex. Analyse Grundproblem: Wie fassen wir einzelne Zeichen zu Eingabesymbolen zusammen? - Lexikalische Analyse ist ein klassischer Anwendungsbereich für die Automatentheorie. - Man könnte einen Automaten (Übergangsdiagramm) für ein bestimmtes Erkennungsproblem entwerfen. - Solch einen Automaten kann man leicht in ein entsprechendes Programm überführen? 3

4 Lexikalische Analyse und Syntaxanalyse im Vergleich Gründe warum die Analyse in die Phasen der lexikalischen u. syntaktischen Analyse unterteilt wird. - Vereinfachung des Entwurfs Die Trennung führt zu einem klareren Sprachentwurf. - Verbesserung der Effizienz des Compilers Ist der Scanner getrennt von den anderen Teilen der Kompilierung, kann er spezifischer und effizienter implementiert werden. Spezielle Puffertechniken zum lesen und verarbeiten von Symbolen können die Laufzeit eines Compilers beträchtlich beschleunigen. - Die Portabilität von Compilern wird verbessert. Besonderheiten des Eingabealphabets und andere spezifische eigenarten können auf den Scanner beschränkt werden 4

5 Aufgabe des Scanners - Die lexikalische Analyse bildet die erste Phase des Compilers. - Die Komponente die für die lexikalische Analyse zuständig ist, wird als Scanner bezeichnet. Hauptaufgabe besteht darin, Eingabezeichen zu lesen und als Ausgabe eine Folge von Symbolen (Token) zu erzeugen, die der Parser dann syntaktisch analysiert. 5

6 Aufgabe des Scanners - Eingabezeichen lesen und als Ausgabe eine Folge von Symbolen (Token) erzeugen, die der Parser syntaktisch analysiert. - entfernt syntaktisch überflüssige Zeichen wie mehrfache Zwischenräume (Leerzeichen), Tabulatorsprünge, Zeilenumbrüche, etc. - weist unzulässige Zeichen im Quellprogramm als Fehler zurück. -Symboltabelle während der lexikalischen Analyse aufbauen. 6

7 Token, Lexem, Muster Drei zusammengehörige aber unterschiedliche Begriffe. - Token: Ein Token ist ein paar aus einem Namen und einem optionalen Attributwert. Ein Token kann ein IDENTIFIER (pi,x5,zahl,..), KEYWORD (if, do,..), OPERATOR (+,-,=,...), NUMBER (101) etc. sein. Die Namen der Token sind die Eingabesymbole die der Parser bearbeitet. - Lexem: Ein Lexem ist eine Zeichenfolge im Quellprogramm. z.b. printf und score sind Lexeme für das Token IDENTIFIER. - Muster: Ist eine Regel zur Erzeugung von Lexemen, die ein bestimmtes Token der Quellsprache repräsentieren können. z.b. das Lexem (101) hätte den Token NUMBER und das dazugehörige Muster [0-9]+. 7

8 Token, Muster, Lexem In Zahlreichen Programmiersprachen deckt die folgende Tabelle die meisten Token ab. Muster Lexem ident assign ident op ident op num punct 8

9 Attribute für Token Problemdarstellung: Können mehrer Lexeme mit einem Muster übereinstimmen, muss der Scanner nachfolgenden Compilierphasen zusätzliche Informationen über das Lexem liefern. Bsp.: Das Muster [0-9]+ für das Token NUMBER passt sowohl auf 0 als auch auf 1. In dem Fall ist für den Codegenerator sehr wichtig, ob das Lexem 0 oder 1 gemeint ist. Deshalb wird an den Parser nicht nur der Tokenname sondern auch sein Attributwert übergeben. Bemerkung: Der Name des Tokens beeinflusst Entscheidungen während der Syntaxanalyse (Parser). Der Attributwert dagegen die Übersetzung von Tokens nach. 9

10 Attribute für Token Das wichtigste Beispiel ist das Token id (IDENTIFIER) mit dem einige Informationen (Attribute) verbunden sind. Der Token IDENTIFIER hat als Attribut: sein Lexem, sein Typ und die Stelle an der er zum ersten mal vorkommt. Attribute werden in der Symboltabelle festgehalten. Daher ist der Attributwert für einen IDENTIFIER ein Zeiger auf den betreffenden Symboltabelleneintrag. Bemerkung: OPERATOREN, SATZZEICHEN, SCHLÜSSELWÖRTER benötigen keine Attributwerte. 10

11 Symboltabelle Die Symboltabelle wird während der lexikalischen Analyse aufgebaut. Die Einträge in die Symboltabelle werden vom Scanner vorgenommen, aber die konkreten Attributwerte können erst während der semantischen Analyse bestimmt werden. Sprache-Pascal 11

12 Vorausschauende Analyse von Eingabezeichen (Look- Ahead) - Problem: Wann endet die Zeichenkette eines Lexem? Der Scanner kann nicht aufgrund einzelner Zeichen entscheiden, ob gerade ein Token eines Schlüsselwortes, Bezeichner, Konstante, etc. betrachtet wird. Er muss max. bis zum nächsten Trennzeichen (Zeilenumbruch, Leerzeichen) alle Zeichen sammeln und testen, ob dies mit meinem vorgegebenen Muster genügen. 12

13 Vorausschauende Analyse von Eingabezeichen (Look-Ahead) - Für die Analyse des Eingabestroms sind zwei Zeiger notwendig. - Der eine Zeige (aktuelle Zeiger) zeigt auf das zu analysierende Zeichen und der zweite Zeiger (Vorwärtszeiger) ist zu Beginn auch an der selben Stelle. - Er wandert aber zeichenweise den Eingabestrom entlang bis für das Lexem, das zwischen beide Zeiger steht, eine Übereinstimmung mit einem Muster festgestellt werden kann (bzw.wandert bis zum nächsten Leerzeichen.) - Das Token wird dann an den Parser weitergegeben - Nachdem dieser es verarbeitet hat, wird der akt. Zeiger auf den Vorwärtszeiger gesetzt. aktueller Zeiger vorwärts Zeiger 13

14 Fehlerbehandlung der lex. Analyse Da ein Scanner nur eine sehr beschränkte Sicht in einem Quellprogramm hat kann er nur wenige Fehler erkennen. Bsp.: fi (a == f (x)) Für denn Scanner ist nicht klar ob das Schlüsselwort if, oder fi ein Nichtdeklarierter Funktionsbezeichner gemeint ist. Resultat: Da fi ein gültiges Lexem für das Token id (Bezeichner) ist, wird das Token id an den Parser zurückgegeben. Fehler werden dann anderen Phasen des Compilers überlassen. 14

15 Generierung von Scannern (Allg.) 1. von Hand - Entwurf eines Diagramms, das die Struktur der Symbole der Quellsprache beschreibt. - Übersetzung des Diagramms von Hand in ein Programm, das Symbole erkennt. So kann man effiziente Scanner erstellen. 2. durch Software Werkzeuge - Bsp.: LEX, FLEX (verfügbar unter UNIX, DOS, NT, OS/2, VMS für Sprachen wie C, C++,ALEX (in Modula-2 geschrieben, auch für MS-DOS erhältlich), COCO u.a.m. 15

16 Generierung von Scanner von Hand - Nehmen wir an, wir wollen die Menge aller gültigen Bezeichner (IDENTIFIER) der Sprache Pascal beschreiben. letter: A... Z a... z Buchstabe digit : Ziffer IDENTIFIER:= letter (letter digit)* regulärer Ausdruck (Muster) - Anhand eines regulären Ausdrucks einen Übergangsdiagramm ableiten. * Besagt das die Eingabe um eine Stelle zurückgesetzt werden muss Wichtig: Bei reservierten Wörter (Schlüsselwörter) zu Beginn in die Symboltabelle installieren o. für jedes Schlüsselwort ein Übergangsdiagramm erstellen. 16

17 Generierung von Scanner von Hand Bsp.: regulärer Ausdruck Übergangsdiagramm für Vergleichsoperatoren relop der Sprache-Pascal. * Besagt das die Eingabe um eine Stelle zurückgesetzt werden muss 17

18 Implementierung eines Übergangsdiagramm für relop IN C++ //Funktionaufruf getrelop(). //anlegen eines neuen Objektes rettoken. und Initialisiert die erste Komponente mit Relop. //switch. um denn nächsten Zustand zu ermitteln. //variable state nimmt die Nummer des aktuellen Zustandes für ein Übergangsdiagramm auf. //mit nextchar() nehme das nächste Zeichen aus der Eingabe und weist es der lokalen Variable c zu. //Prüfung auf die drei Zeichen. //Aufruf von Fail() wenn keines der 3 Zeichen erkannt wurde. //retract() setzt die Eingabe um ein Zeichen zurück. //rettoken.attribute setzt die 2 Komponente (attribut) auf GT. 18

19 Lexikalische Analyse von PL/0 als Beispiel Definition: <Letter> ::= a b... z A B... Z <Digit> ::= Deterministischer Endlicher Automat Muster: <RELATION> ::= < <= = >= > := <Ident> ::= <Letter> { (<Letter> <Digit>) }* <Number> ::= <Digit> {<Digit>}+ = 19

20 Lexikalische Analyse von PL/0 als Beispiel Ein kleines PL\0 Programm wurde Als Ausgabe eine Symbolliste gescannt gespeichert als Tok.datei 20

21 Danke für Ihre Aufmerksamkeit Noch Fragen?? 21

Lexikalische Programmanalyse der Scanner

Lexikalische Programmanalyse der Scanner Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung

Mehr

Anwenundg regulärer Sprachen und endlicher Automaten

Anwenundg regulärer Sprachen und endlicher Automaten Proseminar Theoretische Informatik Dozent: Prof. Helmut Alt Anwenundg regulärer Sprachen und endlicher Automaten Madlen Thaleiser 30. Oktober 2012 Reguläre Sprachen Regulärer Ausdruck definiert über einem

Mehr

4 Lexikalische Analyse und Parsing

4 Lexikalische Analyse und Parsing 4 Lexikalische Analyse und Parsing Lexikalische Analyse und Parsing sind die wichtigsten Bereiche des Compilerbaus. Prinzipien und Techniken des Compilerbaus beschränken sich nicht auf die Erstellung von

Mehr

2. Kapitel LEXIKALISCHE ANALYSE. Compilerbau Prof. Dr. Wolfgang Schramm

2. Kapitel LEXIKALISCHE ANALYSE. Compilerbau Prof. Dr. Wolfgang Schramm 2. Kapitel LEXIKALISCHE ANALYSE Compilerbau Prof. Dr. Wolfgang Schramm Lexikalische Analyse (Scanner) 1/2 1 Aufgabe Erkennen von lexikalischen Elementen. Erstellung einer internen Darstellung für lexikalische

Mehr

Einführung in den Compilerbau

Einführung in den Compilerbau Einführung in den Compilerbau Lexikalische Analyse I Dr. Armin Wolf 2. Vorlesung SoSe 2010, Universität Potsdam 1 Organisatorisches Schriftliche Prüfung (Klausur) wie wäre es mit Mo. 26. Juli 2010? - Andere

Mehr

ARBEITSBLATT ZU FORMALEN SPRACHEN

ARBEITSBLATT ZU FORMALEN SPRACHEN ARBEITSBLATT ZU FORMALEN SPRACHEN Aufgabe 1: Gegeben ist die folgende Formale Sprache L(G) mit G = (T, N, P, S). Die Produktionen lauten ZUWEISUNG ::= name zuweisungsoperator AUSDRUCK semikolon AUSDRUCK

Mehr

Was ist ein Compiler?

Was ist ein Compiler? Was ist ein Compiler? Was ist ein Compiler und worum geht es? Wie ist ein Compiler aufgebaut? Warum beschäftigen wir uns mit Compilerbau? Wie ist die Veranstaltung organisiert? Was interessiert Sie besonders?

Mehr

Programmiersprachen und Übersetzer

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

Mehr

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Kapitel 4 Einführung in den Scannergenerator Flex Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Generatoren für die lexikalische Analyse Scannergeneratoren werden eingesetzt um die

Mehr

Lexikalische Analyse, Tokenizer, Scanner

Lexikalische Analyse, Tokenizer, Scanner Lexikalische Analyse, Tokenizer, Scanner Frühe Phase des Übersetzers Aufgabenteilung: Scanner (lokale) Zeichen (Symbol-)Analyse Parser Syntax-Analyse Aufgabe des Scanners: Erkennung von: Zahlen, Bezeichner,

Mehr

9 Compilerbau-Werkzeuge

9 Compilerbau-Werkzeuge 9.1 Überblick In der Praxis des Compilerbaus werden heute vielfach Werkzeuge eingesetzt, die Routineaufgaben erleichtern sollen. In erster Linie ist dabei an die Punkte Generierung eines Scanners Generierung

Mehr

Definition Compiler. Bekannte Compiler

Definition Compiler. Bekannte Compiler Compiler Inhalt: Definition Compiler / bekannte Compiler Klassifikationen von Compilern Analyse-Synthese-Modell der Kompilierung Analyse des Quellprogramms Synthesephase Die Phasen eines Compilers Symboltabellenverwaltung

Mehr

Grammatiken in Prolog

Grammatiken in Prolog 12. Grammatiken in Prolog 12-1 Grammatiken in Prolog Allgemeines: Gedacht zur Verarbeitung natürlicher Sprache. Dort braucht man kompliziertere Grammatiken als etwa im Compilerbau, andererseits sind die

Mehr

1 Syntax von Programmiersprachen

1 Syntax von Programmiersprachen 1 Syntax von Programmiersprachen Syntax ( Lehre vom Satzbau ): formale Beschreibung des Aufbaus der Worte und Sätze, die zu einer Sprache gehören; im Falle einer Programmier-Sprache Festlegung, wie Programme

Mehr

Inhalte der Vorlesung. 4. Der Scanner-Generator lex. 4. Der Scanner-Generator lex. 4.1 lex: Grundlagen

Inhalte der Vorlesung. 4. Der Scanner-Generator lex. 4. Der Scanner-Generator lex. 4.1 lex: Grundlagen Inhalte der Vorlesung 4. Der Scanner-Generator lex 1.Einführung 2.Lexikalische Analyse 3.Der Textstrom-Editor sed 4.Der Scanner-Generator lex (2 Termine) 5.Syntaxanalyse und der Parser-Generator yacc (3

Mehr

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass: OOP (Java), 3. Syntaxdiagramme und Grammatikregeln 1/32 Objektorientierte Programmierung Kapitel 3: Syntaxdiagramme und Grammatikregeln Stefan Brass Martin-Luther-Universität Halle-Wittenberg

Mehr

7. Formale Sprachen und Grammatiken

7. Formale Sprachen und Grammatiken 7. Formale Sprachen und Grammatiken Computer verwenden zur Verarbeitung von Daten und Informationen künstliche, formale Sprachen (Maschinenspr., Assemblerspachen, Programmierspr., Datenbankspr., Wissensrepräsentationsspr.,...)

Mehr

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik Grundlagen der Informatik II Teil I: Formale Modelle der Informatik 1 Einführung GdInfoII 1-2 Ziele/Fragestellungen der Theoretischen Informatik 1. Einführung abstrakter Modelle für informationsverarbeitende

Mehr

Einführung in die Systemprogrammierung

Einführung in die Systemprogrammierung Einführung in die Systemprogrammierung Sprachen und Übersetzer Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 4. Juni 2015 Sprachen vs. Übersetzer Sprache C11 Übersetzer GNU C

Mehr

Einführung in die Informatik Grammars & Parsers

Einführung in die Informatik Grammars & Parsers Einführung in die Informatik Grammars & Parsers Grammatiken, Parsen von Texten Wolfram Burgard Cyrill Stachniss 12.1 Einleitung Wir haben in den vorangehenden Kapiteln meistens vollständige Java- Programme

Mehr

Einführung Compilerbau

Einführung Compilerbau Reinhard Tartler 1. Juni 2005 Vorlesung Syntaxanalyse SS 2005 Denition Übersetzung eines Textes von Sprache L1 in andere Sprache L2 unter Beibehaltung der Semantik Sprache deniert eine abstrakte Maschine

Mehr

Grammatiken und ANTLR

Grammatiken und ANTLR Grammatiken und ANTLR Zusatzfolien zu Algo Blatt 6 Author: Henry Schaefer http://www.majeeks.de/folien_blatt6.pdf Grammatik Definition: syntaktische Beschreibung einer Sprache (H.S.) Definiton Grammatik

Mehr

9 Theoretische Informatik und Compilerbau

9 Theoretische Informatik und Compilerbau 9 Theoretische Informatik und Compilerbau Theoretische Informatik und Mathematik schaffen die Basis für viele der technischen Entwicklungen, die wir in diesem Buch besprechen. Die boolesche Algebra (S.

Mehr

Compilerbau Syntaxanalyse 68. LR(1)-Syntaxanalyse

Compilerbau Syntaxanalyse 68. LR(1)-Syntaxanalyse Compilerbau Syntaxanalyse 68 LR(1)-Syntaxanalyse Bei der LL(1)-Syntaxanalyse wird allein aufgrund des nächsten Tokens die zu verwendende Produktion ermittelt. Bei der LR(1)-Syntaxanalyse braucht diese

Mehr

Theoretische Informatik. Reguläre Sprachen und Automaten

Theoretische Informatik. Reguläre Sprachen und Automaten Theoretische Informatik Reguläre Sprachen und Automaten Reguläre Sprachen Reguläre Ausdrücke und Sprachen Gleichungen Syntaxdiagramme Erweiterungen Anwendungen Reguläre Ausdrücke über Σ Syntax: Konstante

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische nformatik inheit 3 Kontextfreie Sprachen 1. Kontextfreie Grammatiken 2. Pushdown Automaten 3. igenschaften kontextfreier Sprachen Theoretische nformatik inheit 3.1 Kontextfreie Grammatiken

Mehr

Kapitel 2. Lexikalische Analyse. Lexikalische Analyse Wintersemester 2008/09 1 / 39

Kapitel 2. Lexikalische Analyse. Lexikalische Analyse Wintersemester 2008/09 1 / 39 Kapitel 2 Lexikalische Analyse Lexikalische Analyse Wintersemester 2008/09 1 / 39 1 Eingliederung in den Übersetzer / Zielvorgaben 2 Theoretische Grundlage: Endliche Automaten 3 Implementierung Implementierung

Mehr

Grundlagen der Informatik III Wintersemester 2010/2011 22. Vorlesung Dr.-Ing. Wolfgang Heenes

Grundlagen der Informatik III Wintersemester 2010/2011 22. Vorlesung Dr.-Ing. Wolfgang Heenes Grundlagen der Informatik III Wintersemester 2010/2011 22. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la

Mehr

Übersetzergenerierung mit lex und yacc

Übersetzergenerierung mit lex und yacc Übersetzergenerierung mit lex und yacc 0. Überblick und Organisatorisches Jan Bredereke SoSe 2004, Universität Bremen otivation Übersetzer: Grundlegende Werkzeuge welche Fehler kann er finden? Konstrukt

Mehr

Compiler und Codegenerierung. Hw-Sw-Co-Design

Compiler und Codegenerierung. Hw-Sw-Co-Design Compiler und Codegenerierung Hw-Sw-Co-Design Wo sind wir? System Verhalten Modul Architektur Block SW HW Logik Struktur Compiler und Codegenerierung Compiler - Aufbau Codegenerierung Codeoptimierung Codegenerierung

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen. 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Vorlesung Theoretische Informatik

Vorlesung Theoretische Informatik Vorlesung Theoretische Informatik Automaten und Formale Sprachen Hochschule Reutlingen Fakultät für Informatik Masterstudiengang Wirtschaftsinformatik überarbeitet von F. Laux (Stand: 09.06.2010) Sommersemester

Mehr

DSLs mit Xtext entwerfen. 17.08.2012, A. Arnold

DSLs mit Xtext entwerfen. 17.08.2012, A. Arnold DSLs mit Xtext entwerfen 17.08.2012, A. Arnold Copyright 2012 anderscore GmbH Inhalt 1. Was sind DSLs? 2. Xtext Konzepte 3. Einführung ins Sprachdesign 4. Hands On! 3 4 8 20 2 Was sind DSLs? Domain Specific

Mehr

Kapitel 2. Methoden zur Beschreibung von Syntax

Kapitel 2. Methoden zur Beschreibung von Syntax 1 Kapitel 2 Methoden zur Beschreibung von Syntax Grammatik, die sogar Könige zu kontrollieren weiß... aus Molière, Les Femmes Savantes (1672), 2. Akt 2 Ziele Zwei Standards zur Definition der Syntax von

Mehr

FACHHOCHSCHULE MANNHEIM

FACHHOCHSCHULE MANNHEIM für Java-Programmierer Der Präprozessor Prof. Dr. Wolfgang Schramm FACHHOCHSCHULE MANNHEIM Hochschule für Technik und Gestaltung Präprozessor Ist dem Compiler vorgeschaltet ( Prä -). Spezielle Anweisungen

Mehr

Prinzipien der Softwareentwicklung S. Strahringer

Prinzipien der Softwareentwicklung S. Strahringer Gliederung 1 Einführung Was ist ein Programm? Vorteile (und Nachteile) von PHP Erste PHP-Programme Ausführung von PHP-Programmen 2 Grundbegriffe der Programmierung Anweisungen, Variablen, Datentypen und

Mehr

Kapitel 4: Syntaxdiagramme und Grammatikregeln

Kapitel 4: Syntaxdiagramme und Grammatikregeln 4. Syntaxdiagramme und Grammatikregeln 4-1 Objektorientierte Programmierung (Winter 2006/2007) Kapitel 4: Syntaxdiagramme und Grammatikregeln Syntaxdiagramme Grammatikregeln (kontextfrei) Beispiele: Lexikalische

Mehr

Sprachen/Grammatiken eine Wiederholung

Sprachen/Grammatiken eine Wiederholung Sprachen/Grammatiken eine Wiederholung Was sind reguläre Sprachen? Eigenschaften regulärer Sprachen Sprachen Begriffe Symbol: unzerlegbare Grundzeichen Alphabet: endliche Menge von Symbolen Zeichenreihe:

Mehr

Allgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include

Allgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include <stdio.h> Allgemeines Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C #include main() { printf( hello world\n ); } Peter Sobe 1 Die Großfamilie der C-Sprachen

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

1 ÜBERSETZER. Compilerbau 1

1 ÜBERSETZER. Compilerbau 1 1 ÜBERSETZER 1 A.V.Aho, J.D.Ullmann: Principles of Compiler Design, Addison Wesley (1977) J.Amsterdam: Building a computer in Software, BYTE (Okt. 1985) Programming Project: A SIMPL Compiler, BYTE (Dez.

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE3-Syntaxdiagramme (Stand 05.11.2010) Aufgabe 1: Entwickeln Sie Regeln zur Übersetzung von EBNF in Syntaxdiagramme. Aufgabe 2: Eine Zahl ist entweder

Mehr

Praktikum Compilerbau

Praktikum Compilerbau Implementation eines s 20. April 2005 Vorlesungen Vorlesungen, die nützliche für das Praktikum liefern: Automaten, Formale Sprachen und Berechenbarkeit bau Abstrakte Maschinen Programm-Optimierung Fertigkeiten

Mehr

KREDITVERZEICHNIS Konfiguration Ausgabe: 20.02.13 1/13. Dokumentation KREDITVERZEICHNIS. Teil 2. Konfiguration

KREDITVERZEICHNIS Konfiguration Ausgabe: 20.02.13 1/13. Dokumentation KREDITVERZEICHNIS. Teil 2. Konfiguration KREDITVERZEICHNIS Konfiguration Ausgabe: 20.02.13 1/13 Dokumentation KREDITVERZEICHNIS Teil 2 Konfiguration Stand 20.02.2013 KREDITVERZEICHNIS Konfiguration Ausgabe: 20.02.13 2/13 Inhalt 1. KONFIGURATION...

Mehr

Über den Autor 7. Teil I Los geht s mit Java für die Android-Entwicklung 25. Kapitel 1 Alles über Java und Android 27

Über den Autor 7. Teil I Los geht s mit Java für die Android-Entwicklung 25. Kapitel 1 Alles über Java und Android 27 Inhaltsverzeichnis Über den Autor 7 Einführung 19 Wie Sie dieses Buch verwenden 19 In diesem Buch verwendete Konventionen 19 Was Sie nicht lesen müssen 20 Törichte Voraussetzungen 20 Wie dieses Buch aufgebaut

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Lehrstuhl für Programmierparadigmen prachtechnologie und Compiler W 2008/2009 http://pp.info.uni-karlsruhe.de/ Dozent: Prof. Dr.-Ing. G. nelting snelting@ipd.info.uni-karlsruhe.de

Mehr

Zwischencodeerzeugung Compiler II

Zwischencodeerzeugung Compiler II Zwishenodeerzeugung Compiler II Prof. Dr. Ursula Goltz 14.09.2012 Einleitung Front-End... Parser Sem. Analys Zwishenodegenerator Bak-End Codegenerator... Zwishendarstellung (Zwishenode) evtl. mashinennunabh.

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 5 Compilerbau 5.1 Einführung Ein Compiler (Übersetzer) ist ein Computerprogramm, das ein in einer Quellsprache geschriebenes Programm (Quellprogramm)

Mehr

Parser4Kids interaktive Lernumgebung

Parser4Kids interaktive Lernumgebung Parser4Kids interaktive Lernumgebung Parser4Kids vermittelt die grundlegende Funktionsweise eines Parsers auf eine intuitive und spielerische Art anhand des vereinfachten Modells eines Fertigbauhauses.

Mehr

9.4 Grundlagen des Compilerbaus

9.4 Grundlagen des Compilerbaus Kap09.fm Seite 717 Dienstag, 7. September 2010 2:06 14 9.4 Grundlagen des Compilerbaus 717 so dass die Benutzung dieser Regeln zum Aufbau eines + -Knotens bzw. eines Negations- Knotens im abstrakten Syntaxbaum

Mehr

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014 Definition von domänenspezifischen Sprachen mit Xtext: Einführung 19. November 2014 Überblick Was ist zu tun, wenn wir selbst einen Ansatz für modellgetriebenen Entwicklung definieren wollen? Anforderungserfassung

Mehr

EIGENSCHAFTEN VON SPRACHEN

EIGENSCHAFTEN VON SPRACHEN Vorlesung und Übung Universität Paderborn Wintersemester 2016/2017 Dr. Peter Pfahler EIGENSCHAFTEN VON SPRACHEN EWS, WS 2016/17, Pfahler C-1 Einführung Sprachen in der Informatik werden für bestimmte Zwecke

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff Programmieren in C Macros, Funktionen und modulare Programmstruktur Prof. Dr. Nikolaus Wulff Der C Präprozessor Vor einem Compile Lauf werden alle Präprozessor Kommandos/Makros ausgewertet. Diese sind

Mehr

Quelltextähnlichkeit

Quelltextähnlichkeit Quelltextähnlichkeit String autor = Tobias Jamin ; String projekt = Arte-Fakt ; String seminar = Transformationen ; Date termin = new Date(3, // Tag 2, // Monat 2006); Presentation praesentation = new

Mehr

Compilerbau P. K ohler Sommersemester 2015

Compilerbau P. K ohler Sommersemester 2015 Compilerbau P. Köhler Sommersemester 2015 Inhaltsverzeichnis 1 Vorwort 3 2 Einleitung 4 3 Sprachen und Grammatiken 9 3.1 Ein Beispiel zum Einstieg...................... 9 3.2 Definitionen..............................

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

Es gibt drei unterschiedliche Automaten:

Es gibt drei unterschiedliche Automaten: Automatentheorie Es gibt drei unterschiedliche Automaten: 1. Deterministische Endliche Automaten (DEA) 2. Nichtdeterministische Endliche Automaten (NEA) 3. Endliche Automaten mit Epsilon-Übergängen (ε-

Mehr

Formale Sprachen. Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen. Rudolf Freund, Marian Kogler

Formale Sprachen. Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen. Rudolf Freund, Marian Kogler Formale Sprachen Anwendungen formaler Sprachen Adressen, Kaffeeautomaten, Programmiersprachen Rudolf Freund, Marian Kogler (http://xkcd.com/208) Gültige Adressen: Favoritenstraße 9, 1040 Wien Reumannplatz

Mehr

Einführung in Automation Studio

Einführung in Automation Studio Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in

Mehr

3. Grundregeln für die Java-Programmierung

3. Grundregeln für die Java-Programmierung 3. Grundregeln für die Java-Programmierung Sprachaufbau von Java Programmen Stilistische Konventionen JavaDoc Allgemeine Informatik 2 SS09 Folie 2.1 Allgemeine Vorbemerkung Bei Programmiersprachen sind

Mehr

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Grundlagen. Die Komponenten eines C Programms. Das erste Programm Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen

Mehr

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.

Mehr

Aufgabentypen die in der Klausur vorkommen

Aufgabentypen die in der Klausur vorkommen Aufgabentypen die in der Klausur vorkommen können 1. Nennen Sie fünf wichtige Anwendungsgebiete der Computerlinguistik. 2. Für welches der drei Anwendungsgebiete Maschinelle Übersetzung, Rechtschreibkorrektur

Mehr

Ausarbeitung des Interpreter Referats

Ausarbeitung des Interpreter Referats Ausarbeitung des Interpreter Referats Gliederung 1. Programmiersprache 1.2. Syntax 1.2.1. Konkrete Syntax 1.2.2. Abstrakter Syntax Baum (Abstrakte Syntax) 2. Parser 2.1. Syntaktische Struktur einer Sprache

Mehr

Kapitel 10 Aktive DBMS

Kapitel 10 Aktive DBMS Kapitel 10 Aktive DBMS 10 Aktive DBMS 10 Aktive DBMS...1 10.1 Einführung und Definition...2 10.2 Funktionsprinzip: ADBMS und ECA-Modell...4 10.3 Potentiale und Vorteile ADBMS...5 10.4 Aktive Elemente einer

Mehr

Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4. Kapitel 4: Schaltungen mit Delays Seite 1

Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4. Kapitel 4: Schaltungen mit Delays Seite 1 Kapitel 4 Schaltungen mit Delays (Schaltwerke) Literatur: Oberschelp/Vossen, Kapitel 4 Kapitel 4: Schaltungen mit Delays Seite 1 Schaltungen mit Delays Inhaltsverzeichnis 4.1 Einführung 4.2 Addierwerke

Mehr

Thomas Behr. 17. November 2011

Thomas Behr. 17. November 2011 in in Fakultät für Mathematik und Informatik Datenbanksysteme für neue Anwendungen FernUniversität in Hagen 17. November 2011 c 2011 FernUniversität in Hagen Outline in 1 2 3 4 5 6 - Was ist das? in über

Mehr

Praktikum Funktionale Programmierung Teil 1: Lexen und Parsen

Praktikum Funktionale Programmierung Teil 1: Lexen und Parsen Praktikum Funktionale Programmierung Teil 1: Lexen und Parsen Professur für Künstliche Intelligenz und Softwaretechnologie Sommersemester 2009 Überblick Teil 1: Lexen und Parsen Die Sprache LFP +C Professur

Mehr

Theoretische Informatik I

Theoretische Informatik I heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer

Mehr

Compilerbau I Sommersemester 2008

Compilerbau I Sommersemester 2008 Fachbereich 12 Informatik und Elektrotechnik Programmiersprachen Kurt Sieber Benedikt Meurer Compilerbau I Sommersemester 2008 Übungsblatt 1 Aufgabe 1 Der erweiterte reguläre Ausdruck α{m, n erkennt zwischen

Mehr

Fachseminar Compilerbau

Fachseminar Compilerbau Fachseminar Compilerbau WS 08/09 Matthias Schiller Syntaktische Analyse 1. Prinzip der Top-Down-Analyse 2. LL(1)-Grammatiken Modell-Vorstellung Der Scanner liefert als Ergebnis der lexikalischen Analyse,

Mehr

Präsentation zum Thema XML Datenaustausch und Integration

Präsentation zum Thema XML Datenaustausch und Integration Sebastian Land Präsentation zum Thema XML Datenaustausch und Integration oder Warum eigentlich XML? Gliederung der Präsentation 1. Erläuterung des Themas 2. Anwendungsbeispiel 3. Situation 1: Homogene

Mehr

10 Erweiterung und Portierung

10 Erweiterung und Portierung 10.1 Überblick In vielen Fällen werden Compiler nicht vollständig neu geschrieben, sondern von einem Rechnersystem auf ein anderes portiert. Das spart viel Arbeit, ist aber immer noch eine sehr anspruchsvolle

Mehr

Z 50. Z O Z Int Z Komma Z Real Ziffer Komma Ziffer

Z 50. Z O Z Int Z Komma Z Real Ziffer Komma Ziffer 10 Endliche Automaten 10.1 Einführungsbeispiele Beispiel 1: Warenautomat Ein Flasche Cola kostet 1,50. Münzen zu 1 und 50 ct werden angenommen. Cola und evtl. Restgeld werden ausgegeben. Auch der Rückgabeknopf

Mehr

Datenbanken für Online Untersuchungen

Datenbanken für Online Untersuchungen Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

Internet for Guests. Interfaces. 1.0.0 Deutsch. Interfaces Seite 1/14

Internet for Guests. Interfaces. 1.0.0 Deutsch. Interfaces Seite 1/14 Internet for Guests Interfaces 1.0.0 Deutsch Interfaces Seite 1/14 Inhalt 1. PMS... 3 1.1 Hinweise... 3 1.2 Konfiguration... 4 1.2.1 VIP/Mitgliedschaft: VIP Gast kostenloser Betrieb... 5 1.2.2 VIP/Mitgliedschaft:

Mehr

Attributierte Grammatiken

Attributierte Grammatiken Attributierte Grammatiken O.Univ.-Prof. Dipl.-Ing. Dr. Wolfgang Pree www.softwareresearch.net Copyright Software Research Lab, All Rights Reserved Inhalt Merkmale attributierter Grammatiken Beispiel 2

Mehr

IT-Basics 2. DI Gerhard Fließ

IT-Basics 2. DI Gerhard Fließ IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte

Mehr

Formale Sprachen, reguläre und kontextfreie Grammatiken

Formale Sprachen, reguläre und kontextfreie Grammatiken Formale Sprachen, reguläre und kontextfreie Grammatiken Alphabet A: endliche Menge von Zeichen Wort über A: endliche Folge von Zeichen aus A A : volle Sprache über A: Menge der A-Worte formale Sprache

Mehr

1. Zeilenendkommentare: //... 2. geklammerte Kommentare: /*... */ 3. Dokumentationskommentare: /**... */

1. Zeilenendkommentare: //... 2. geklammerte Kommentare: /*... */ 3. Dokumentationskommentare: /**... */ 1 Kommentare im Source-Code Kommentare werden im Source-Code überlesen und wirken wie "white Space" (Leerzeichen, Tabulator, Zeilenvorschub). Mit Ausnahme des @deprecated-tag in Dokumentationskommentaren

Mehr

Endlicher Automat (EA)

Endlicher Automat (EA) Endlicher Automat (EA) siehe auch Formale Grundlagen 3 1 Motivation: Automaten für die Modellierung, Spezifikation und Verifikation verwenden! Definition Ein Endlicher Automat A = (S,I,Σ,T,F) besteht aus

Mehr

Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...

Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans... Erste Schritte Dieser Teil der Veranstaltung gibt einen ersten Eindruck der Programmierung mit C++. Es wird ein erstes Gefühl von Programmiersprachen vermittelt, ohne auf die gezeigten Bestandteile genau

Mehr

Werkzeuggestützte Softwareprüfungen Statische Analyse und Metriken

Werkzeuggestützte Softwareprüfungen Statische Analyse und Metriken Werkzeuggestützte Softwareprüfungen Statische Analyse und Metriken Dennis Hardt 21.06.2006 Gliederung Statische Analyse Definition, Arbeitsweise, Werkzeuge Angewandt auf ein Projekt Statische Analyse selbst

Mehr

Inhalte der Vorlesung. 6. Syntaxgesteuerte Übersetzung. 6. Syntaxgesteuerte Übersetzung. Attributierter Syntaxbaum

Inhalte der Vorlesung. 6. Syntaxgesteuerte Übersetzung. 6. Syntaxgesteuerte Übersetzung. Attributierter Syntaxbaum Inhalte der Vorlesung 6. Syntaxgesteuerte Übersetzung 1.Einführung 2.Lexikalische Analyse 3.Der Textstrom-Editor sed 4.Der Scanner-Generator lex (2 Termine) 5.Syntaxanalyse und der Parser-Generator yacc

Mehr

4 Grundlagen der Datenbankentwicklung

4 Grundlagen der Datenbankentwicklung 4 Grundlagen der Datenbankentwicklung In diesem Kapitel werden wir die Grundlagen der Konzeption von relationalen Datenbanken beschreiben. Dazu werden Sie die einzelnen Entwicklungsschritte von der Problemanalyse

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Übung Theoretische Grundlagen

Übung Theoretische Grundlagen Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory

Mehr

Software Entwicklung 2. Übersetzerbau 1

Software Entwicklung 2. Übersetzerbau 1 Software Entwicklung 2 Übersetzerbau 1 Übersetzerbau I Inhalt Aufgaben von Übersetzern Weitere Anwendungen von Übersetzern Arten von Übersetzern Grundlagen: Sprachdefinition Grammatik: BNF, EBNF, Syntaxdiagramme

Mehr

Linguistik für Kognitionswissenschaften

Linguistik für Kognitionswissenschaften Linguistik für Kognitionswissenschaften Computerlinguistik: Maschinelle Übersetzung Computerlinguistik Fehlübersetzung von engl. computational linguistics - computationelle Linguistik beinhaltet im weiteren

Mehr

Übungsblatt 3: Algorithmen in Java & Grammatiken

Übungsblatt 3: Algorithmen in Java & Grammatiken Humboldt-Universität zu Berlin Grundlagen der Programmierung (Vorlesung von Prof. Bothe) Institut für Informatik WS 15/16 Übungsblatt 3: Algorithmen in Java & Grammatiken Abgabe: bis 9:00 Uhr am 30.11.2015

Mehr

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert Maika Büschenfeldt Datenbanken: Skript 1 1. Was ist eine relationale Datenbank? In Datenbanken können umfangreiche Datenbestände strukturiert abgelegt werden. Das Konzept relationaler Datenbanken soll

Mehr

syntax.tex Eine Übersicht

syntax.tex Eine Übersicht syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen

Mehr

Von der Grammatik zum AST

Von der Grammatik zum AST Von der Grammatik zum AST Welche Eigenschaften soll ein Parser haben? Wann ist eine Grammatik eindeutig? Wie sollte eine Grammatik aussehen? Theoretischer Hin tergrund: FIRST, FOLLOW Einschränkungen von

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 17 Einstieg in die Informatik mit Java String Tokenizer Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 17 1 Überblick Tokenizer 2 StringTokenizer 3 Verwendung von String.split

Mehr