• Keine Ergebnisse gefunden

Einführung in die Informatik Einführung in die Informatik

N/A
N/A
Protected

Academic year: 2022

Aktie "Einführung in die Informatik Einführung in die Informatik"

Copied!
20
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Einführung in die Informatik Einführung in die Informatik

Technische und sprachliche Grundlagen Technische und sprachliche Grundlagen

Rekapitulation Rekapitulation

Timm Grams Timm Grams

Fachhochschule Fulda Fachhochschule Fulda

Fachbereich Elektrotechnik und Fachbereich Elektrotechnik und

Informationstechnik Informationstechnik

© Timm Grams, Fulda, 07.09.02

© Timm Grams, Fulda, 07.09.02

(2)

Übersicht Übersicht

Zahlendarstellungen im Stellenwertsystem Zahlendarstellungen im Stellenwertsystem

Basiswechsel Basiswechsel

Der ASCII-Code Der ASCII-Code

Künstliche Sprachen Künstliche Sprachen

Programmiersprachen

Programmiersprachen

Arithmetische Ausdrücke

Arithmetische Ausdrücke

(3)

Ganzzahlige Division mit Rest Ganzzahlige Division mit Rest

x 0 = b · x 1 + r 0

Dividend Dividend

Divisor Divisor

Divisionsergebnis

Divisionsergebnis (ganzzahliger Quotient) (ganzzahliger Quotient)

Rest Rest

202 = 5 ·40 + 2

202 = 5 ·40 + 2

(4)

Darstellung der Zahl 202 Darstellung der Zahl 202

im Stellenwertsystem zur Basis 5 im Stellenwertsystem zur Basis 5

202 202

= 5 ·40 + 2

= 5 ·40 + 2

= 5 ·(5 ·8 + 0) + 2

= 5 ·(5 ·8 + 0) + 2

= 5 ·(5 ·(5 ·1 + 3) + 0) + 2

= 5 ·(5 ·(5 ·1 + 3) + 0) + 2

= 5 = 5

3 3

·1 + 5 ·1 + 5

2 2

·3 + 5 ·3 + 5

1 1

·0 + 5 ·0 + 5

0 0

·2 ·2

= (1302)

= (1302)

55

(5)

Allgemein: Zahl

Allgemein: Zahl z z , Basis , Basis b b

z z = = x x

00

= = b x b x

11

+ + r r

00

= = b b ( ( b b x x

22

+ + r r

11

) + ) + r r

00

= = b b

22

x x

22

+ + b b r r

11

+ + r r

00

= = b b

2 2

( ( b b x x

33

+ + r r

22

) + ) + b r b r

11

+ + r r

0 0

= = b b

3 3

x x

33

+ + b b

22

r r

22

+ + b b r r

11

+ + r r

00

... ...

= = b b

nn-1-1

r r

nn-1-1

+ ... + + ... + b b

22

r r

22

+ + b b r r

11

+ + r r

00

= = b b

nn-1-1

r r

nn-1-1

+ ... + + ... + b b

22

r r

22

+ + b b

11

r r

11

+ + b b

00

r r

00

= ( = ( r r

nn-1-1

... ... r r

22

r r

11

r r

00

) )

bb

(6)

Basiswechsel Basiswechsel

dual, oktal, dezimal dual, oktal, dezimal

und hexadezimal und hexadezimal

2 2 8 8 10 10 16 16

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 10 10 2 2 2 2 2 2 11 11 3 3 3 3 3 3 100 100 4 4 4 4 4 4 101 101 5 5 5 5 5 5 110 110 6 6 6 6 6 6 111 111 7 7 7 7 7 7 1000 1000 10 10 8 8 8 8 1001 1001 11 11 9 9 9 9 1010 1010 12 12 10 10 A A 1011 1011 13 13 11 11 B B 1100 1100 14 14 12 12 C C 1101 1101 15 15 13 13 D D 1110 1110 16 16 14 14 E E 1111 1111 17 17 15 15 F F 10000

10000 20 20 16 16 10 10 10001

10001 21 21 17 17 11 11 10010

10010 22 22 18 18 12 12 10011

10011 23 23 19 19 13 13 10100

10100 24 24 20 20 14 14

(7)

2 2 8 8 10 10 16 16

00000 00000 00 00 00 00 00 00 00001

00001 01 01 01 01 01 01 00010

00010 02 02 02 02 02 02 00011

00011 03 03 03 03 03 03 00100

00100 04 04 04 04 04 04 00101

00101 05 05 05 05 05 05 00110

00110 06 06 06 06 06 06 00111

00111 07 07 07 07 07 07 01000

01000 10 10 08 08 08 08 01001

01001 11 11 09 09 09 09 01010

01010 12 12 10 10 0A 0A 01011

01011 13 13 11 11 0B 0B 01100

01100 14 14 12 12 0C 0C 01101

01101 15 15 13 13 0D 0D 01110

01110 16 16 14 14 0E 0E 01111

01111 17 17 15 15 0F 0F 10000

10000 20 20 16 16 10 10 10001

10001 21 21 17 17 11 11 10010

10010 22 22 18 18 12 12 10011

10011 23 23 19 19 13 13 10100

10100 24 24 20 20 14 14

Basiswechsel Basiswechsel

dual, oktal, dezimal dual, oktal, dezimal

und hexadezimal

und hexadezimal

(8)

ASCII- ASCII-

Code- Code-

tabelle tabelle

7-Bit-Code 7-Bit-Code

32 Steuerzeichen 32 Steuerzeichen Space, Delete Space, Delete 94 darstellbare 94 darstellbare Zeichen

Zeichen

Dezi- Dezi- Dezi- Dezi- Dezi- Dezi- Dezi- Dezi-

mal- Zei- mal- Zei- mal- Zei- mal- Zei- mal- Zei- mal- Zei- mal- Zei- mal- Zei- zahl chen zahl chen zahl chen zahl chen zahl chen zahl chen zahl chen zahl chen 000 NUL

000 NUL 032 SP 032 SP 064 @, § 096 `064 @, § 096 ` 001 SOH

001 SOH 033 ! 065 A 097 a033 ! 065 A 097 a 002 STX

002 STX 034 " 066 B 098 b034 " 066 B 098 b 003 ETX

003 ETX 035 # 067 C 099 c035 # 067 C 099 c 004 EOT

004 EOT 036 $ 068 D 100 d036 $ 068 D 100 d 005 ENQ

005 ENQ 037 % 069 E 101 e037 % 069 E 101 e 006 ACK

006 ACK 038 & 070 F 102 f038 & 070 F 102 f 007 BEL

007 BEL 039 ' 071 G 103 g039 ' 071 G 103 g 008 BS

008 BS 040 ( 072 H 104 h040 ( 072 H 104 h 009 HT

009 HT 041 ) 073 I 105 i041 ) 073 I 105 i 010 LF

010 LF 042 * 074 J 106 j042 * 074 J 106 j 011 VT

011 VT 043 + 075 K 107 k043 + 075 K 107 k 012 FF

012 FF 044 , 076 L 108 l044 , 076 L 108 l 013 CR

013 CR 045 - 077 M 109 m045 - 077 M 109 m 014 SO

014 SO 046 . 078 N 110 n046 . 078 N 110 n 015 SI

015 SI 047 / 079 O 111 o047 / 079 O 111 o 016 DLE

016 DLE 048 0 080 P 112 p048 0 080 P 112 p 017 DC1

017 DC1 049 1 081 Q 113 q049 1 081 Q 113 q 018 DC2

018 DC2 050 2 082 R 114 r050 2 082 R 114 r 019 DC3

019 DC3 051 3 083 S 115 s051 3 083 S 115 s 020 DC4

020 DC4 052 4 084 T 116 t052 4 084 T 116 t 021 NAK

021 NAK 053 5 085 U 117 u053 5 085 U 117 u 022 SYN

022 SYN 054 6 086 V 118 v054 6 086 V 118 v 023 ETB

023 ETB 055 7 087 W 119 w055 7 087 W 119 w 024 CAN

024 CAN 056 8 088 X 120 x056 8 088 X 120 x 025 EM

025 EM 057 9 089 Y 121 y057 9 089 Y 121 y 026 SUB

026 SUB 058 : 090 Z 122 z058 : 090 Z 122 z 027 ESC

027 ESC 059 ; 091 [, Ä 123 {. ä059 ; 091 [, Ä 123 {. ä 028 FS

028 FS 060 < 092 \, Ö 124 |, ö060 < 092 \, Ö 124 |, ö 029 GS

029 GS 061 = 093 ], Ü 125 }, ü061 = 093 ], Ü 125 }, ü 030 RS

030 RS 062 > 094 ^ 126 ~, ß062 > 094 ^ 126 ~, ß 031 US

031 US 063 ? 095 _ 063 ? 095 _ 127 DEL127 DEL

(9)

Wichtige nicht 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

(10)

Künstliche Sprachen Künstliche Sprachen

Programmiersprachen sind

Programmiersprachen sind künstliche Sprachen künstliche Sprachen Beispiel einer einfachen

Beispiel einer einfachen künstlichen Sprache sind die arithmetischen Ausdrücke arithmetischen Ausdrücke , z. B. : : (a+b)*c/2 (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.

(11)

Syntax der Arithmetik-Ausdrücke Syntax der Arithmetik-Ausdrücke

Nicht wohlgeformt Nicht wohlgeformt

a-/c a-/c 1.1.0-5+

1.1.0-5+

Wohlgeformt Wohlgeformt

a/b/2

a/b/2

(a+b)*2-c

(a+b)*2-c

(12)

Metasprache zur Definition der Syntax Metasprache zur Definition der Syntax

Erweiterte Backus-Naur-Form (EBNF) Erweiterte Backus-Naur-Form (EBNF)

Symbol zu lesen als

= "ist definiert als"

| "alternativ"

[x] "kein oder ein Auftreten von x"

{x} "kein, ein- oder mehrfaches Auftreten von x"

(13)

Begriffe der Metasprache Begriffe der Metasprache

Nichtterminale Symbole Nichtterminale Symbole

Schreibweise: kursiv Schreibweise: kursiv

Terminale Symbole Terminale Symbole

Schreibweise: fett, in Anführungszeichen oder farbig Schreibweise: fett, in Anführungszeichen oder farbig

Produktionsregel Produktionsregel

Nichtterminales Symbol = Rechte Seite der Produktionsregel Nichtterminales Symbol = Rechte Seite der Produktionsregel

Startsymbol (z. B.

Startsymbol (z. B. Ausdruck Ausdruck ) )

Wohlgeformter Ausdruck (Formel)

Wohlgeformter Ausdruck (Formel)

(14)

Syntax einfacher Arithmetik-Ausdrücke Syntax einfacher Arithmetik-Ausdrücke

Ausdruck

Ausdruck = = [ - [ - ] Term Term { { AddOp Term } AddOp Term } AddOp

AddOp = = + | + - -

Term Term = = Faktor Faktor { { MultOp Faktor MultOp Faktor } } MultOp =

MultOp = * | / * / Faktor

Faktor = = Element | Element | ( ( Ausdruck Ausdruck ) ) Element

Element = = Konstante | Konstante | Variable Variable Konstante

Konstante = Zahl [ . . Zahl ] Zahl = Ziffer { Ziffer }

Ziffer = 0 | 1 0 1 | 2 | 3 2 3 | 4 4 | 5 5 | 6 | 6 7 | 8 7 8 | 9 9 Variable

Variable = = a a | | b b | | c c | | d d | | e e | | f f | | g g | | h h | | i i | | j j | | k k | | l l | | m m | | n n | | o o | | p p | | q q | | r r | |

s | s | t | t | u u | | v | v | w w | | x x | y | y | | z z

(15)

Konstruktion Konstruktion

eines Ausdrucks eines Ausdrucks

mittels mittels

Syntaxbaum Syntaxbaum

Ausdruck Ausdruck Term Term Faktor

Faktor MultOp MultOp Faktor Faktor

* *

( ( Ausdruck ) Ausdruck ) ( ( Ausdruck Ausdruck ) ) Term AddOp Term

Term AddOp Term Faktor

Faktor Element Element Variable Variable

a a

Faktor Faktor Element Element Variable Variable

b b + +

Term AddOp Term Term AddOp Term Faktor

Faktor Element Element Variable Variable

a a

- - Faktor Faktor Element Element Variable Variable

b b

(16)

Postorderdurchlauf Postorderdurchlauf

Die richtige Reihenfolge der Terminalsymbole Die richtige Reihenfolge der Terminalsymbole

erhält man aus dem

erhält man aus dem Postorder-Durchlauf Postorder-Durchlauf des des Syntaxbaums.

Syntaxbaums.

Jeder Knoten wird besucht, wenn alle seine abgehenden Jeder Knoten wird besucht, wenn alle seine abgehenden Zweige (Knoten) besucht worden sind, und zwar in der Zweige (Knoten) besucht worden sind, und zwar in der Reihenfolge von links nach rechts.

Reihenfolge von links nach rechts.

Ziel ist, die Baumwurzel - also

Ziel ist, die Baumwurzel - also Ausdruck Ausdruck - zu besuchen. - zu besuchen.

Im Beispiel liefert der Postorder-Durchlauf den Im Beispiel liefert der Postorder-Durchlauf den

Ausdruck

Ausdruck (a+b)*(a-b). (a+b)*(a-b)

(17)

Bedeutung (Semantik) Bedeutung (Semantik)

Ausdruck: (a+b)*(a-b) Ausdruck: (a+b)*(a-b)

Variablenfolge: (a, b) Variablenfolge: (a, b)

Zustand, Wertebelegung:

Zustand, Wertebelegung:   =(-2, 3) =(-2, 3)

Wert des Ausdrucks (a+b)*(a-b) im Zustand

Wert des Ausdrucks (a+b)*(a-b) im Zustand   : -5 : -5

„(a+b)*(a-b)“( „ (a+b)*(a-b)“(   ) = „(a+b)*(a-b)“(-2, 3) = (-2+3)*(-2-3) =-5 ) = „(a+b)*(a-b)“(-2, 3) = (-2+3)*(-2-3) =-5

Auswertungsvorschrift legt Bedeutung fest!

Auswertungsvorschrift legt Bedeutung fest!

(18)

Auswertung Auswertung

mittels Syntax- mittels Syntax- baum baum

Ausdruck Ausdruck Term Term Faktor

Faktor MultOp MultOp Faktor Faktor

* *

( ( Ausdruck ) Ausdruck ) ( ( Ausdruck Ausdruck ) ) Term AddOp Term

Term AddOp Term Faktor

Faktor Element Element Variable Variable

a a

Faktor Faktor Element Element Variable Variable

b b + +

Term AddOp Term Term AddOp Term Faktor

Faktor Element Element Variable Variable

a a

- - Faktor Faktor Element Element Variable Variable

b b (a+b)*(a-b)

(a+b)*(a-b)

3 3 3 3 3 3 3 3

-2 -2 -2 -2 -2 -2 -2 -2

-2 -2 3 3 -2 -2 3 3

3 3 3 3 3 3 3 3

-2 -2 -2 -2 -2 -2 -2 -2

-5 -5 -5 -5 1 1

1 1

-5 -5

-5 -5  

(19)

Semantik als partielle Funktion Semantik als partielle Funktion

e e Ausdruck Ausdruck

e e = „(a+b)*(a-b)“ = „(a+b)*(a-b)“

D 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 D

e () Wert des Ausdrucks im Zustand 

z.B. „(a+b)*(a-b)“(-2, 3) mit dem Resultat -5 „(a+b)*(a-b)“

e e : :     D D Semantik des Ausdrucks als partielle Funktion Semantik des Ausdrucks als partielle Funktion

(20)

Zusammenfassung Zusammenfassung

Programmiersprachen sind

Programmiersprachen sind künstliche Sprachen künstliche Sprachen Ihre

Ihre Syntax Syntax wird mittels EBNF beschrieben wird mittels EBNF beschrieben

Der Der Syntaxbaum Syntaxbaum bestimmt die Auswertungsstruktur bestimmt die Auswertungsstruktur eines wohlgeformten Textes (z.B. eines Programms) eines wohlgeformten Textes (z.B. eines Programms) Die Auswertungsvorschrift definiert die

Die Auswertungsvorschrift definiert die Semantik Semantik Die Semantik ist eine

Die Semantik ist eine partielle Funktion partielle Funktion

Referenzen

ÄHNLICHE DOKUMENTE

Und wenn ich das tue, möchte ich auch nicht Toleranz in Anspruch nehmen müssen - Toleranz würde ja nur bedeuten, dass ich zwar schon was und womöglich begründet dagegen habe,

Computer-gestützte Programme für das Ge- wichtsmanagmeent seien zwar weniger wirk- sam als persönliche Interventionen, aber auf jeden FAll besser als nichts und auch ange- sichts

Technische Universität München, Fakultät für Medizin, Klinik und Poliklinik für Derma- tologie und

Im weiteren Verlauf erfolgte bei dem Patienten im stabilen Stadium der Erkran- kung die operative Korrektur der Penisdeviati- on durch partielle Plaqueexzision und Grafting, da

Im Bayerischen Ärzteblatt, Heft 7-8/2017 wird unter der Rubrik „Blickdiagnose“ im Ar- tikel „Schmerzen und Knoten am Penis“ bei den Therapiemöglichkeiten der Induratio penis

Wenngleich das Konzept quattromodaler Knoten einen gewissen Interpretationsspielraum lässt – so werden etwa die Pipeline, Normal- und Breitspur sowie die Binnen- und

Vielgestaltige Beschwerden Die Beschwerden durch die Drüsenwu- cherung kommen in unterschiedlicher Form: Der Knoten selbst kann ein Druck- oder Engegefühl im Hals, Hei-

Dabei ist eine weitere Vorausset- zung, daß es sich um eine mäßige Verkehrsdichte handelt, und gänz- lich außer acht gelassen werden die psychischen Komponenten, bei de- nen