Einführung in die Informatik Technische und sprachliche Grundlagen Rekapitulation Timm Grams Fachhochschule Fulda Fachbereich Elektrotechnik und Informationstechnik.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

Christian Scheideler SS 2009
Vorlesung Compilertechnik Sommersemester 2008
2.3 Kodierung von Zeichen 2.4 Kodierung von Zahlen
Zahlendarstellung in den Rechnern Z1 und Z3
Löschoperationen (1) VDB VDB' DB DB' o = lösche(aname) p?? v v = AName (ArtikelArt) n Löschen entspricht der relationenalgebraischen Differenz. Dann ergibt.
Funktionen und Module Einführung anhand des Beispiels Wörter sortieren Timm Grams Fachhochschule Fulda Fachbereich Elektrotechnik und Informationstechnik.
Invariante und Algorithmenentwurf
Timm Grams Hochschule Fulda Fachbereich Elektrotechnik und Informationstechnik Rekursive Funktionen in C © Timm Grams, Fulda, (korr.: )
6. Digitale Datendarstellung
8. Formale Sprachen und Grammatiken
Imperative Programmierung
CPU, Programmausführung
FH-Hof Grammatiken Richard Göbel. FH-Hof Begriffe Eine Grammatik definiert die Struktur (Syntax) einer Zeichenkette Eine Grammatik definiert nicht die.
EF: Standards + H2O red = H2O.
C- Syntax. Bestandteile der Sprache C: Ausdrücke Anweisungen.
Computerkurs: Quantitative Auswertung biochemischer Experimente Guten Morgen.
Prof. Dr. rer.nat. Ralph Großmann Fakultät Informatik / Mathematik Sommersemester 2012 Internet-Technologien XML-basierte Techniken Teil Metasprache der.
Imperative Programmierung
Beispiele für Ausdrucksalgebren
Boolesche Ausdrücke Ist der Rückgabewert eines Ausdrucks vom Typ boolean, so wird dieser als Boolescher Ausdruck bezeichnet (nach dem Mathematiker George.
Prof. Dr. Bernhard Wasmayr
Elektrische Leitfähigkeit Nein Formel des Oxids X2OX2O Wässr. Lsg. des Oxids reagiert neutral Siedetemperatur -253°C Atommasse 1 u Atomradius 37 pm Protonenzahl.
Logischen Grundverknüpfungen
Illustration Beispiel: Benutzergruppen für Lagerverwaltung:
Kultivierung Liebe/Partnerschaft
Prof. Dr. Bernhard Wasmayr VWL 2. Semester
Zahlensysteme und Dualarithmetik copyleft: munz
113% 124% 117% 142% 116% 94% 116% 72% 42% 128% 56% 45% 92% 0% 20% 40% 60% 80% 100% 120% 140% 160%
Datenformate: Text und Bild
Eine Einführung in die CD-ROM
Netze – Anwendungsformen
Aktive Bindungs- und Beziehungsgestaltung in der Schule
Bodymap 75 (20 %) 58 (9%) 19 Karte Cluster KreisQuadrat Tableau
Technische Informatik II (INF 1211) Aufgabenteil (mit Unterlagen)
Betreuer: Univ.-Prof. Dr. Rudolf Winter-Ebmer
Dualzahlen und ihre logischen Verknüpfungen
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Versuch zur Messung der Geschwindigkeit
Versuch zur Messung der Geschwindigkeit
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Ausgewählte Kapitel der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Sommersemester.
Überlagerungsgesetz - Uq – Uq –– uq ~m Uq –+ uq ~m V-105.
Anhang A: Binährzahlen
Mehrbelastung durch Maut, Möst und Fahrerlohnkosten Erhöhung
Ablauf Kognition Vererbung Tradierung Repräsentation Systemanalyse KI
Vortrag Gerhard Fobe - Index
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Eine lllustration der Herausforderungen des Stromsystems der Zukunft
Dieser nicht Fehler finden Algorithmus enthält einfach einen gravierenden welcher zu ist.
3. Lineare Befehle 3.1 Die Ausgabefunktion
Uebersicht über die Testgebiete Hydrologie Kraftwerke ARA chem. Belastung Temperatur Karin Scheurer.
Folie Beispiel für eine Einzelauswertung der Gemeindedaten (fiktive Daten)
Definition international verwendeter Begriffe
Abschlussball 2009 Übersicht Ballimpressionen Originalbilder in hoher Qualität findet man im Ordner Ballimpressionen-einzelne-Fotos. Auf jeder Folie stehen.
Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
Informatik Formale Sprachen 1.2 Grammatiken formaler Sprachen
IKALDO GmbH Problemlösung mittels Qualitätstechniken Q7 | M7
Die Arbeitslosigkeit in ostdeutsche Regionen
Folie Einzelauswertung der Gemeindedaten
Technische Informatik II Übung 1: Konvertieren von Zahlen
Mensch – Maschine - Kommunikation
Technische Informatik II
7. Formale Sprachen und Grammatiken
Präsentation Version 2.21 ( ) | steadyPRINT-Version 5.2.
Entwicklung und Test eines Prototyps für die Erweiterung eines pneumatischen Einzelmagazins zu einem Doppelmagazin Auftraggeber: (Essener System- und Automatisierungstechnik.
1 Attribute, Attributwerte (1) Attribut (a): Eigenschaft eines Entity mit Attributname a Zu jedem Attribut a gehört ein Wertebereich (Domain) dom(a) Zum.
Semantische Analyse und attributierte Grammatiken
► Zahlen kleiner 0 heissen negative Zahlen.
Zahlensysteme und Dualarithmetik copyleft: munz
 Präsentation transkript:

Einführung in die Informatik Technische und sprachliche Grundlagen Rekapitulation Timm Grams Fachhochschule Fulda Fachbereich Elektrotechnik und Informationstechnik © Timm Grams, Fulda, 07.09.02

Übersicht Zahlendarstellungen im Stellenwertsystem Basiswechsel Der ASCII-Code Künstliche Sprachen Programmiersprachen Arithmetische Ausdrücke

Ganzzahlige Division mit Rest 202 = 5 ·40 + 2 x0 = b ·x1 + r0 Rest Divisionsergebnis (ganzzahliger Quotient) Divisor Dividend

Darstellung der Zahl 202 im Stellenwertsystem zur Basis 5 = 5 ·40 + 2 = 5 ·(5 ·8 + 0) + 2 = 5 ·(5 ·(5 ·1 + 3) + 0) + 2 = 53 ·1 + 52 ·3 + 51 ·0 + 50 ·2 = (1302)5

Allgemein: Zahl z, Basis b z = x0 = b x1 + r0 = b (b x2 + r1) + r0 = b 2 x2 + b r1 + r0 = b 2 (b x3 + r2) + b r1 + r0 = b 3 x3 + b 2 r2 + b r1 + r0 ... = b n-1 rn-1 + ... + b 2 r2 + b r1 + r0 = b n-1 rn-1 + ... + b 2 r2 + b 1 r1 + b 0 r0 = (rn-1...r2r1r0)b

Basiswechsel dual, oktal, dezimal und hexadezimal 2 8 10 16 0 0 0 0 1 1 1 1 10 2 2 2 11 3 3 3 100 4 4 4 101 5 5 5 110 6 6 6 111 7 7 7 1000 10 8 8 1001 11 9 9 1010 12 10 A 1011 13 11 B 1100 14 12 C 1101 15 13 D 1110 16 14 E 1111 17 15 F 10000 20 16 10 10001 21 17 11 10010 22 18 12 10011 23 19 13 10100 24 20 14 Basiswechsel dual, oktal, dezimal und hexadezimal

Basiswechsel dual, oktal, dezimal und hexadezimal 2 8 10 16 00000 00 00 00 00001 01 01 01 00010 02 02 02 00011 03 03 03 00100 04 04 04 00101 05 05 05 00110 06 06 06 00111 07 07 07 01000 10 08 08 01001 11 09 09 01010 12 10 0A 01011 13 11 0B 01100 14 12 0C 01101 15 13 0D 01110 16 14 0E 01111 17 15 0F 10000 20 16 10 10001 21 17 11 10010 22 18 12 10011 23 19 13 10100 24 20 14 Basiswechsel dual, oktal, dezimal und hexadezimal

Dezi- Dezi- Dezi- Dezi- mal- Zei- mal- Zei- mal- Zei- mal- Zei- zahl chen zahl chen zahl chen zahl chen 000 NUL 032 SP 064 @, § 096 ` 001 SOH 033 ! 065 A 097 a 002 STX 034 " 066 B 098 b 003 ETX 035 # 067 C 099 c 004 EOT 036 $ 068 D 100 d 005 ENQ 037 % 069 E 101 e 006 ACK 038 & 070 F 102 f 007 BEL 039 ' 071 G 103 g 008 BS 040 ( 072 H 104 h 009 HT 041 ) 073 I 105 i 010 LF 042 * 074 J 106 j 011 VT 043 + 075 K 107 k 012 FF 044 , 076 L 108 l 013 CR 045 - 077 M 109 m 014 SO 046 . 078 N 110 n 015 SI 047 / 079 O 111 o 016 DLE 048 0 080 P 112 p 017 DC1 049 1 081 Q 113 q 018 DC2 050 2 082 R 114 r 019 DC3 051 3 083 S 115 s 020 DC4 052 4 084 T 116 t 021 NAK 053 5 085 U 117 u 022 SYN 054 6 086 V 118 v 023 ETB 055 7 087 W 119 w 024 CAN 056 8 088 X 120 x 025 EM 057 9 089 Y 121 y 026 SUB 058 : 090 Z 122 z 027 ESC 059 ; 091 [, Ä 123 {. ä 028 FS 060 < 092 \, Ö 124 |, ö 029 GS 061 = 093 ], Ü 125 }, ü 030 RS 062 > 094 ^ 126 ~, ß 031 US 063 ? 095 _ 127 DEL ASCII- Code- tabelle 7-Bit-Code 32 Steuerzeichen Space, Delete 94 darstellbare Zeichen

Wichtige nicht darstellbare Zeichen Formatsteuerzeichen BS Backspace, Rückwärtsschritt HT Horizontal Tabulation, Horizontal-Tabulator LF Line Feed, Zeilenvorschub CR Carriage Return, Wagenrücklauf Codeerweiterungszeichen ESC Escape, Code-Umschaltung Weitere Zeichen NUL Null, Nil, Nichts BEL Bell, Klingel SP Space, Zwischenraum DEL Delete, Löschen

Künstliche Sprachen Programmiersprachen sind künstliche Sprachen Beispiel einer einfachen künstlichen Sprache sind die arithmetischen Ausdrücke, z. B.: (a+b)*c/2 Die Syntax oder Grammatik bestimmt, was ein wohlgeformter sprachlicher Ausdruck ist. Die Semantik oder Bedeutung wird durch die Auswertung sprachlicher Ausdrücken definiert.

Syntax der Arithmetik-Ausdrücke Nicht wohlgeformt a-/c 1.1.0-5+ Wohlgeformt a/b/2 (a+b)*2-c

Metasprache zur Definition der Syntax Erweiterte Backus-Naur-Form (EBNF)

Begriffe der Metasprache Nichtterminale Symbole Schreibweise: kursiv Terminale Symbole Schreibweise: fett, in Anführungszeichen oder farbig Produktionsregel Nichtterminales Symbol = Rechte Seite der Produktionsregel Startsymbol (z. B. Ausdruck) Wohlgeformter Ausdruck (Formel)

Syntax einfacher Arithmetik-Ausdrücke Ausdruck = [ - ] Term { AddOp Term } AddOp = + | - Term = Faktor { MultOp Faktor } MultOp = * | / Faktor = Element | ( Ausdruck ) Element = Konstante | Variable Konstante = Zahl [ . Zahl ] Zahl = Ziffer { Ziffer } Ziffer = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 Variable = a | b | c | d | e | f | g | h | i | j | k | l | m | n |o | p | q | r | s | t | u | v | w | x | y | z

Konstruktion eines Ausdrucks mittels Syntaxbaum Term Faktor MultOp * ( Ausdruck ) ( Ausdruck ) Term AddOp Term Term AddOp Term Faktor Element Variable a - b Faktor + Faktor Element Variable b Element Variable a

Postorderdurchlauf Die richtige Reihenfolge der Terminalsymbole erhält man aus dem Postorder-Durchlauf des Syntaxbaums. Jeder Knoten wird besucht, wenn alle seine abgehenden Zweige (Knoten) besucht worden sind, und zwar in der Reihenfolge von links nach rechts. Ziel ist, die Baumwurzel - also Ausdruck - zu besuchen. Im Beispiel liefert der Postorder-Durchlauf den Ausdruck (a+b)*(a-b).

Bedeutung (Semantik) Ausdruck: (a+b)*(a-b) Variablenfolge: (a, b) Zustand, Wertebelegung: =(-2, 3) Wert des Ausdrucks (a+b)*(a-b) im Zustand : -5 „(a+b)*(a-b)“() = „(a+b)*(a-b)“(-2, 3) = (-2+3)*(-2-3) =-5 Auswertungsvorschrift legt Bedeutung fest!

Auswertung mittels Syntax-baum  Ausdruck Term Faktor MultOp * ( Ausdruck ) Term AddOp Term Element Variable a b + - -5 -5 (a+b)*(a-b) 1 -5 -5 1 -2 -2 3 3 -2 -2 3 3 -2 3 -2 3 -2 3 -2 3 -2 3

Semantik als partielle Funktion e Ausdruck e = „(a+b)*(a-b)“ D Wertebereich der Variablen Konstante ohne und mit negativem Vorzeichen  Zustand, Wertebelegung der Variablen Variable in lexikografischer Ordnung, hier (a, b)  = (-2, 3) steht für die Wertebelegung a=-2, b=3  Menge aller Zustände  = D  D e () Wert des Ausdrucks im Zustand  z.B. „(a+b)*(a-b)“(-2, 3) mit dem Resultat -5 e :   D Semantik des Ausdrucks als partielle Funktion

Zusammenfassung Programmiersprachen sind künstliche Sprachen Ihre Syntax wird mittels EBNF beschrieben Der Syntaxbaum bestimmt die Auswertungsstruktur eines wohlgeformten Textes (z.B. eines Programms) Die Auswertungsvorschrift definiert die Semantik Die Semantik ist eine partielle Funktion