Einleitung Technische Informatik 2 Rechnerorganisation

Größe: px
Ab Seite anzeigen:

Download "Einleitung Technische Informatik 2 Rechnerorganisation"

Transkript

1 Einleitung Tutorium für Technische Informatik 2 (4. Semester, Diplom Studiengänge) und Rechnerorganisation (2. Semester, Bachelor Studiengänge) Termin: Freitags , Seminarraum 108 (Informatikgebäude am Fasanengarten) Erster Tutoriums Termin am letzten Freitag ist ausgefallen, daher (gekürztes) Nachholen des (Wiederholungs )Stoffes der letzten Tutorienwoche heute

2 Vorstellung Mein Name: Christian Mandery Studiengang: Diplom Informatik im 4. Semester (ich höre also im Moment selbst noch Technische Informatik 2) E Mail (bei Fragen und zum Senden von Programmieraufgaben Lösungen): tutorium@chrismandery.de Jabber/XMPP (alternativ): chrism2711@jabber.ccc.de Tutoriums Homepage: tut.chrismandery.de/ Mailing Liste kann bei Bedarf/Interesse eingerichtet werden Wichtig: Wenn ihr Fragen habt, fragt einfach in das Tutorium hinein. Es gibt keine dummen Fragen! => Vorstellungsrunde

3 Übungsblätter Übungsblätter erscheinen freitags und müssen/dürfen am darauf folgenden Freitag abgegeben werden Bezug der Übungsblätter über TI Homepage: Abgabe von mindestens acht der Übungsblätter und Erzielung von 50% der erreichbaren Gesamtpunktzahl ist für Übungsschein erforderlich Aufgaben, die auf einem Übungsblatt gelöst wurden, müssen im Tutorium vorgerechnet bzw. erläutert werden können!

4 Übungsschein Übungsschein gibt einen halben nicht bestehensrelevanten Bonuspunkt für die Klausur, ist aber zum Schreiben der Klausur nicht zwingend erforderlich (Information für Diplom Studiengang, Bachelor: Noch abklären) Voraussetzungen: Bearbeitung von acht der Übungsblätter Erzielung von 50% der Gesamtpunktzahl auf den Übungsblättern Teilnahme am Tutorium und gezeigte Bereitschaft zur Mitarbeit Vorrechnen Können aller gelösten Aufgaben der Übungsblätter im Tutorium (bei zweimaligem Verstoß: Kein Übungsschein) Mehr Information zum Übungsschein: Merkblatt auf TI Homepage Für zusätzliche Bonuspunkte (max. 2) wird eine Probeklausur stattfinden.

5 Themen heute Themen letzter Woche (Tutorium fand nicht statt): Zahlendarstellung in verschiedenen Zahlensystemen Repräsentation vorzeichenbehafteter Zahlen im Rechner Boolsche Algebra/Funktionen (Gleitkommazahlen aus Zeitgründen ausgelassen, werden bei Bedarf in einem folgenden Tutorium nochmals erklärt) Themen dieser Woche: Ein paar Worte zu einer C Buildumgebung für Linux/Windows, grundsätzliche Funktionsweise der einzelnen Programme (Compiler mit Präprozessor, Linker) C Basics (Datentypen, Funktionen, Verzweigungen, Schleifen) kurz wiederholen (an der Tafel) Zeiger/Arrays (Schwerpunkt) Bitweise Operatoren Ternärer Operator Tipps zur C Programmierung

6 Zahlendarstellung in verschiedenen Zahlensystemen Besonders gebräuchlich sind die Zahlensysteme zur Basis 2 (binäre Darstellung), 8 (oktale Darstellung), 10 (dezimale Darstellung) und 16 (hexadezimale Darstellung) Warum ist gerade die hexadezimale Darstellung so gebräuchlich? Zum Umrechnen zwischen den Zahlensystemen gibt es verschiedene Methoden, einige sind generisch, andere erleichtern bestimmte Umrechnung (z.b. wenn eine Basis eine Potenz der anderen Basis ist, Bsp. 2 < > 4/8/16) sehr stark

7 Zahlendarstellung in verschiedenen Zahlensystemen (2) Aufgaben Dezimaler Wert von Wandeln Sie die Zahl 86,22 10 in eine Zahl zur Basis 5 um. Wandeln Sie die Zahl 435, in eine Zahl zur Basis 16 um. Gleiche Zahl ins Binärsystem: Wie hilft einem hier die jetzt ja bekannte Hexadezimaldarstellung? Zahl aus erster Aufgabe in BCD Darstellung

8 Repräsentation vorzeichenbehafteter Zahlen im Rechner Es gibt verschiedene Verfahren zur Darstellung eines Vorzeichens im Rechner Vorzeichenbit Einerkomplement Darstellung Zweierkomplement Darstellung Vor und Nachteile der Darstellungsformen? Welche Darstellung verwendet eine normale x86/x86_64 CPU, wie sie heutzutage verkauft wird?

9 Repräsentation vorzeichenbehafteter Zahlen im Rechner (2) Aufgaben interpretiert als... Betrag Vorzeichen Darstellung Einerkomplement Darstellung Zweierkomplement Darstellung Stellen Sie in der Zweierkomplement Darstellung als 16 Bit Zahl dar.

10 Boolsche Algebra/Funktionen Menge, auf welcher zwei abgeschlossene (!) Verknüpfungen so definiert sind, dass die vier sogenannten Huntingtonschen Axiome erfüllt: Kommutativgesetze Distributivgesetze Existenz neutraler Elemente Existenz inverser Elemente

11 Boolsche Algebra/Funktionen (2) Neben den sicher bekannten Operationen UND/ODER auch noch andere Operationen, bei denen schon eine Operation genügt, um ein vollständige Operatiorensystem zu erhalten, welches also die gleiche Mächtigkeit hat Beispiel: NAND Operatorensystem Warum ist es (v.a. für die industrielle Fertigung) hilfreich, bei Schaltungen ein Operatorensystem mit möglichst wenigen Verknüpfungen zu verwenden?

12 Boolsche Algebra/Funktionen (3) Eine Boolsche Funktion ist eine Funktion, die einem beliebigen Tupel von Werten aus der Menge der unterliegenden Boolschen Algebra wieder einen Wert dieser Menge zuordnet Wir betrachten hier vor allem Funktionen der binären boolschen Algebra. Diese ordnen folglich eine gewissen Anzahl an binären Werten (0/1, bzw. wahr/falsch) einen binären Funktionswert zu. Wenn im folgenden die Menge nicht weiter spezifiziert wurde, ist immer die binäre Menge gemeint! Einfaches Beispiel einer binären boolschen Funktion: f(c, b, a) = c ODER (b UND a) (Vollständige) Funktionstabelle kann auch zur Definition einer boolschen Funktion verwendet werden

13 Boolsche Algebra/Funktionen (4) Aufgaben Gesucht sind alle boolschen Funktionen g(b, a) mit zwei Parameter a und b, die g(b, a) = g(nicht b, NICHT a) erfüllen Mögliche Funktionstabellen bestimmen Zumindest eine der möglichen Funktionen in symbolischer Schreibweise schreiben

14 C Buildumgebung Für Linux: Erstmal nur Compiler (gcc) und libc Header Weitere Buildtools wie autotools, make etc. dürfen in eventuellen Lösungen, die an mich gesendet werden, eingesetzt werden, sind aber keine Pflicht und für uns auch eher Overkill Für Debian/Ubuntu: Einfach build essential Paket installieren (sudo apt get install build essential) Falls noch nicht vorhanden, Entwickler Man Pages installieren (unter Debian/Ubuntu: manpages dev Paket) Texteditor auswählen (vim, emacs, Kate)

15 C Buildumgebung (2) Für Windows: Entweder Cygwin installieren (Linuxumgebung unter Win) Oder MinGW (gcc für Windows) installieren, möglich auch direkt in Kombination mit Dev C++ Oder Visual Studio bzw. Visual C++ kaufen oder über die Microsoft Leute an der Uni als Student beziehen Falls keine IDE, Texteditor auswählen (Notepad reicht für die allerersten Versuche, später dann bei Bedarf einen Besseren wie Notepad++) Eventuelle Lösungsprogramme vor dem Einschicken bitte auf Portabilität prüfen, insbesondere keine WinAPI verwenden (d.h. nirgends windows.h includen!)

16 C Basics An der Tafel: Datentypen Funktionen Verzweigungen Schleifen

17 Zeiger/Arrays Zeigervariable erhält man durch Anhängen eines Sterns an den Typ, der referenziert werden soll. Die Zeigervariable speichert keinen Wert, sondern eine Speicheradresse einer Variable des entsprechenden Typs Beispiele: short* ist ein Zeiger auf eine short Variable void* ist ein Zeiger, der auch ohne Cast eine beliebige Speicheradressen referenzieren kann (sollte im Interesse der Typsicherheit vermieden werden!) int** ist ein Zeiger auf einen Zeiger auf einen Integer Wert (eine mögliche Interpretation: Zweidimensionales int Feld, wobei nicht erzwungen wird, dass alle Zeilen gleich lang sind) char** ist ein Zeiger auf einen Zeiger auf einen Char (Buchstabe, i.d.r. 1 Byte, eine mögliche Interpretation: Liste von C Strings, d.h. Zero Terminated Strings) Häufige Konvention für Deklaration: int *a statt int* a (Stern zum Variablennamen)

18 Zeiger/Arrays (2) Adresse einer Variablen erhält man durch den (unären) Ampersand Operator, der vor den Variablennamen gesetzt wird Dereferenzierung (anschaulich: dem Zeiger folgen ) durch den Stern Operator Beispiel lesen und nachvollziehen: int a = 5, b = 10; int* x = &a; b = *x + 3; /* b ist nun 8 */ a = **(&x) 2; /* a ist nun 3 */ Demonstration am Rechner: Zeiger enthält wirklich eine Speicheradresse (wenn genug Zeit) Wozu sind Zeiger eigentlich gut? Kann ich nicht einfach immer direkt auf die Variable zugreifen? (siehe auch nächste Folie) ( Für Experten: Pfeil Operator a >b als Kurzschreibweise für (*a).b, dies macht Code bei Strukturen sehr viel lesbarer )

19 Zeiger/Arrays (3) Funktionen in C werden standardmäßig Call by value aufrufen, hierbei werden die Parameter einer Funktion auf den neuen Stackabschnitt der aufgerufenen Funktion kopiert, die Originale in der aufrufenden Funktion bleiben also unverändert Beispiel zur praktischen Anwendung von Zeigern: Call by reference: int foo(int* x) { int a = *x; *x *= 2; return a + 3; } int x = 10; foo(&x); /* Was ist der Rückgabewert? */ /* Was steht jetzt in der Variablen x in diesem Scope? */ Was wird hier gemacht? Warum ist es nötig, dies so machen?

20 Zeiger/Arrays (4) Selbstverständlich können Zeiger auch gecastet werden, hierzu verwendet man die normale Castschreibweise: (Neuer Typ)wert ( In C++ kann als bessere C++ Alternative hierfür auch reinterpret_cast<neuer Typ>(wert) verwendet werden, falls ihr es mal irgendwo in einem Code seht. ) Zeigercasts unbedingt vermeiden, wenn sie nicht unbedingt nötig sind (also fast immer!), da sich sehr leicht Fehler einschleichen Zeiger genießen in C zur Laufzeit keinerlei Schutz, sondern sitzen direkt auf der Hardware Ebene Keine Garantie, dass Zeiger auf deklarierten Typ zeigt Keine Garantie, dass Zeiger bei ausgerichteten Datentypen auf eine entsprechend alignte Speicheradresse zeigt Keine Garantie, dass Zeiger überhaupt auf gültigen Speicher, insbesondere Speicher, der der Anwendung gehört, zeigt. Beim Zugriff Schutzverletzung (= Absturz ). Insbesondere sind auch Nullzeiger möglich und werden oft explizit gesetzt, um festzuhalten, dass ein Zeiger momentan kein gültiges Objekt referenziert.

21 Zeiger/Arrays (5) Beispiel für Zeigercast: int a = 1337; int* p = &a; char* q = (char*)p; printf( %x, q[1]); /* Hexadezimale Ausgabe des zweiten Bytes der (i.d.r.!) 32 Bit Zahl a */ Und was wird hier wohl passieren? int* a = 0xdeadbeef; /* beliebige 32 Bit Adresse */ *a = 0; /* Zugriff auf unsere beliebige Adresse */

22 Zeiger/Arrays (6) Arrays sind mit Zeigern stark verwandt, insbesondere lässt sich jede Array Operation auch durch Dereferenzierungen und Addition ausdrücken. Ein Beispiel: int array[10]; array[3] =... /* Zugriff auf 4. Element */ *(array + 3*sizeof(int)) =... /* dito! */ Was wird hier gemacht (letzte Zeile)? Auf welcher Ebene findet die Addition statt bzw. was wird addiert?

23 Bitweise Operatoren &: Bitweises UND : Bitweises ODER ^: Bitweises XOR ( Antivalenz ) <<: Linksshift >>: Rechtsshift Wie kann man einen Shift bei einer vorzeichenlosen Zahl interpretieren? Zum konkreten Ausrechnung von bitweisen Operationen zweier Zahlen auf Papier kann man diese in eine Binärzahl umrechnen, dort dann sehr leicht die Operation ausführen und das Ergebnis zurück in die dezimale Darstellung umwandeln In einigen Fällen kann man das Ergebnis aber einfach sehen, z.b.: 7 & 3 oder 1 5 Merkhilfe für logische (boolsche) Operatoren und &&: Wie binäre Operatoren, nur Zeichen doppelt geschrieben, führt die Operation mit boolschen Werten als Parametern aus

24 Bitweise Operatoren (2) Binäre C Operatoren gibt es auch als Zuweisungsform: a += b <=> a = a + b a &= b <=> a = a & b An dieser Stelle ein Tipp an die Optimierer : Am Anfang lieber den Quellcode einfach halten und keine Shifts statt Multiplikation mit Zweierpotenz o.ä. zur (vermeintlichen) Optimierung einsetzen; der Compiler weiß relativ gut selbst, wo er optimieren kann, ohne den Wert von Berechnungen zu beeinflussen (wenn man es ihm erlaubt) Es macht daher auch in fast allen praktisch denkbaren Fällen keinen Sinn, die register Speicherklasse zu verwenden.

25 Ternärer Operator Schreibweise: a? b : c Der Ausdruck wertet zu b aus, wenn a wahr ist, ansonsten wird der Ausdruck zu c ausgewertet Beispiel: /* int x... */ printf(x % 2? ungerade : gerade ); Am Rande: Warum reicht hier x % 2 statt x % 2 == 1?

26 Tipps zur C Programmierung Compiler auf höchstmöglichem Warnlevel betreiben (für gcc als Parameter angeben: Wall Wextra pedantic ) (Einzelne) Warnungen niemals einfach mit #pragma unterdrücken, zumindest solange man nicht genau versteht, warum die Warnung entsteht und warum man sie ohne Risiko ignorieren darf Im Zweifelsfalle Google und/oder Dokumentation benutzen (Linux: Man Pages, auch im Web verfügbar; Windows: z.b. MSDN) Benutzung mit einem Debugger (z.b. gdb) zumindest in sehr groben Grundzügen erlernen, um Segfaults und ähnliches lokalisieren zu können Ausprobieren und bei Fragen einfach bei mir nachfragen!

27 Fertig! Wir sind fertig! Übungsblattabgabe der letzten Woche bis heute um Uhr am Einwurfkasten im Keller des Informatik Gebäudes am Fasanengarten Nächstes Tutorium: Freitag, , 9.45 Uhr, SR 108

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 2 AM 10.05.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

DuE-Tutorien 17 und 18

DuE-Tutorien 17 und 18 DuE-Tutorien 17 und 18 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery TUTORIENWOCHE 1 AM 04.11.2011 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

DuE-Tutorien 16 und 17

DuE-Tutorien 16 und 17 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Tutorienwoche 1 am 05.11.2010 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 1 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Rechnerorganisation Tutorium Nr. 1

Rechnerorganisation Tutorium Nr. 1 Rechnerorganisation Tutorium Nr. 1 Tutorium 3 Nicholas Kjär - uadnm@student.kit.edu 20. April 2015 INSTITUT FÜR INFORMATIK KIT University of the State of Baden-Wuerttemberg and National Laboratory of the

Mehr

2. Tutorium Digitaltechnik und Entwurfsverfahren

2. Tutorium Digitaltechnik und Entwurfsverfahren 2. Tutorium Digitaltechnik und Entwurfsverfahren Tutorium Nr. 9 Alexis Tobias Bernhard Fakultät für Informatik, KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik

Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division

Mehr

C-Programmierung: Ausdrücke und Operatoren#Division.2F

C-Programmierung: Ausdrücke und Operatoren#Division.2F C-Programmierung: Ausdrücke und Operatoren#Division.2F http://de.wikibooks.org/wiki/c-programmierung:_ausdrücke_und_operatoren#division_.2f This Book Is Generated By Wb2PDF using RenderX XEP, XML to PDF

Mehr

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15 Variablen CoMa-Übung VIII TU Berlin 4.12.2013 CoMa-Übung VIII (TU Berlin) Variablen 4.12.2013 1 / 15 Themen der Übung 1 Typanpassungen 2 Operatoren 3 Variablen-Gültigkeit CoMa-Übung VIII (TU Berlin) Variablen

Mehr

DuE-Tutorien 4 und 6. Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery. WOCHE 2 AM

DuE-Tutorien 4 und 6. Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery.   WOCHE 2 AM DuE-Tutorien 4 und 6 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery WOCHE 2 AM 30.10.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Operatoren in C. Gastvorlesung Andreas Textor

Operatoren in C. Gastvorlesung Andreas Textor Operatoren in C Gastvorlesung - 11.01.10 Andreas Textor andreas.textor@hs-rm.de Terminologie Operand 4 + 2 Operand Operator Unterscheidung nach Anzahl Operanden Unäre, Binäre und Ternäre Operatoren Z.B.:!x;

Mehr

Zahlensysteme und Kodes. Prof. Metzler

Zahlensysteme und Kodes. Prof. Metzler Zahlensysteme und Kodes 1 Zahlensysteme und Kodes Alle üblichen Zahlensysteme sind sogenannte Stellenwert-Systeme, bei denen jede Stelle innerhalb einer Zahl ein besonderer Vervielfachungsfaktor in Form

Mehr

Klausur in Programmieren

Klausur in Programmieren Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Sommer 2014, 16. Juli 2014 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt) Name: Matrikelnr.:

Mehr

1. Grundlegende Konzepte der Informatik

1. Grundlegende Konzepte der Informatik 1. Grundlegende Konzepte der Informatik Inhalt Algorithmen Darstellung von Algorithmen mit Programmablaufplänen Beispiele für Algorithmen Aussagenlogik Zahlensysteme Kodierung Peter Sobe 1 Zahlensysteme

Mehr

Informatik Vorkurs - Vorlesung 2

Informatik Vorkurs - Vorlesung 2 Informatik Vorkurs - Vorlesung 2 Variablen, Arrays, Zahlensysteme Torben Achilles, 9. Oktober 2018 Inhalt Variablen & Datentypen Arrays Zahlensysteme 9. Oktober 2018 Torben Achilles Informatik Vorkurs

Mehr

Musterlösung 1. Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016

Musterlösung 1. Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016 Musterlösung 1 Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016 Hinweis: Die folgenden Aufgaben erheben nicht den Anspruch, eine tiefergehende Kenntnis zu vermitteln; sie sollen lediglich den

Mehr

Zeiger in C und C++ Zeiger in Java und C/C++

Zeiger in C und C++ Zeiger in Java und C/C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,

Mehr

Programmierung mit C Zeiger

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

Mehr

C-Programmierkurs Mathematik

C-Programmierkurs Mathematik Mathematik WS 2018/2019 Dr. Bodo Kalthoff Speicher für Werte Variablen Über Variablennamen ansprechbar Sprechende Namen vergeben! Variablen können Zahlen, Buchstaben oder komplexere Werte enthalten Der

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8 Rückblick Zahlendarstellung zu einer beliebigen Basis b (214) 5 = Umwandlung zwischen Zahlendarstellung (278) 10 =(?) 8 25 Rückblick Schnellere Umwandlung zwischen Binärdarstellung und Hexadezimaldarstellung

Mehr

1. Tutorium Digitaltechnik und Entwurfsverfahren

1. Tutorium Digitaltechnik und Entwurfsverfahren 1. Tutorium Digitaltechnik und Entwurfsverfahren Tutorium Nr. 25 Alexis Tobias Bernhard Fakultät für Informatik, KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

8. Referenzen und Zeiger

8. Referenzen und Zeiger 8. Referenzen und Zeiger Motivation Variable werden in C++ an speziellen Positionen im Speicher abgelegt. An jeder Position befindet sich 1 Byte. Sie sind durchnummeriert beginnend bei 0. Diese Positionen

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Das Rechnen in Zahlensystemen zur Basis b=2, 8, 10 und 16 Prof. Dr. Nikolaus Wulff Zahlensysteme Neben dem üblichen dezimalen Zahlensystem zur Basis 10 sind in der Informatik

Mehr

Eine praktische Einführung in die Programmierung mit der Programmiersprache C

Eine praktische Einführung in die Programmierung mit der Programmiersprache C Eine praktische Einführung in die Programmierung mit der Programmiersprache C www.c-howto.de C-HowTo www.c-howto.de Inhaltsverzeichnis 1 Einführung.. 10 1:1 Wozu Programmieren? 10 1.2 Was ist ein Programm?

Mehr

Probeklausur Name: (c)

Probeklausur Name: (c) Einführung in die Praktische Informatik 30.1.2013 Probeklausur Name: Teil I: Datentypen (20 Punkte) Lösen sie die Probleme, indem sie die korrekten Lösungen ankreuzen bzw. in die vorgesehenen Freiräume

Mehr

Programmierkurs C++ Variablen und Datentypen

Programmierkurs C++ Variablen und Datentypen Programmierkurs C++ Variablen und Datentypen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Überblick Welche Datentypen gibt es in

Mehr

Zeiger, Arrays und Strings in C und C++

Zeiger, Arrays und Strings in C und C++ Zeiger, Arrays und Strings in C und C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Arithmetische und bitweise Operatoren im Binärsystem Prof. Dr. Nikolaus Wulff Operationen mit Binärzahlen Beim Rechnen mit Binärzahlen gibt es die ganz normalen arithmetischen

Mehr

Zeiger (engl. Pointer)

Zeiger (engl. Pointer) Zeiger (engl. Pointer) Zeiger Ein Zeiger (engl. Pointer) speichert eine Adresse, unter der ein Wert im Speicher des Computers gespeichert werden kann. Eine Variable im Gegensatz speichert einen Wert. Der

Mehr

4. Daten. K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

4. Daten. K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 4. Daten K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 19. Okt. 2015 Was ist Informatik? Begriffsbestimmung (Gegenstand): "Informatik ist die Wissenschaft... der maschinellen Verarbeitung,

Mehr

ÜBUNGS-BLOCK 7 LÖSUNGEN

ÜBUNGS-BLOCK 7 LÖSUNGEN ÜBUNGS-BLOCK 7 LÖSUNGEN Aufgabe 1: Gegeben ist folgender Code: Auto[] array = new Auto[3]; // Alle Autos im Array tunen: for (int i = 1; i

Mehr

Inhalt. 4.5 Arbeit mit Zeigern (engl. Pointer)

Inhalt. 4.5 Arbeit mit Zeigern (engl. Pointer) Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Zeigern

Mehr

Grundlagen von C# - 1

Grundlagen von C# - 1 Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften

Mehr

DuE-Tutorien 17 und 18

DuE-Tutorien 17 und 18 DuE-Tutorien 17 und 18 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery TUTORIENWOCHE 3 AM 18.11.2011 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Einleitung Typsystem Typisierung Zusammenfassung Literatur. Typisierung. Effiziente Programmierung. Thomas Schnieders

Einleitung Typsystem Typisierung Zusammenfassung Literatur. Typisierung. Effiziente Programmierung. Thomas Schnieders Typisierung Effiziente Programmierung Thomas Schnieders Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg 2018-04-26 Thomas Schnieders Typisierung 1

Mehr

Übung Praktische Informatik II

Übung Praktische Informatik II Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 06.03.09 2-1 Heutige große Übung Allgemeines

Mehr

LDS Arbeitsblatt 2, Version 1.0 Oktober / November

LDS Arbeitsblatt 2, Version 1.0 Oktober / November LDS Arbeitsblatt 2, Version 1.0 Oktober / November Aufgabe 1 -- Geben Sie die Zahlen 57 und 129 und 2347 jeweils in Hexadezimaldarstellung (also zur Basis 16, Ziffern 0 bis 9, A, B, C, D, E, F), Oktaldarstellung

Mehr

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik)

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik) Zahlen im Computer (Klasse 7 Aufbaukurs Informatik) Die Bildauswahl erfolgte in Anlehnung an das Alter der Kinder Prof. J. Walter Bitte römische Zahlen im Geschichtsunterricht! Messsystem mit Mikrocontroller

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 5. Vorlesung 06.11.2018 1 Zahlendarstellungen 2 Speicherinhalte: Bits Hardware Spannung Ladung Magnetisierung Codierung 0V ungeladen unmagnetisiert 0 5V geladen magnetisiert

Mehr

Einführung in die Programmierung II. 5. Zeiger

Einführung in die Programmierung II. 5. Zeiger Einführung in die Programmierung II 5. Zeiger Thomas Huckle, Stefan Zimmer 16. 5. 2007-1- Bezüge als Objekte Bisher kennen wir als Bezüge (Lvalues) nur Variablennamen Jetzt kommt eine neue Sorte dazu,

Mehr

Vorlesung 6: Operatoren, Logische Ausdrücke

Vorlesung 6: Operatoren, Logische Ausdrücke Vorlesung 6: Operatoren, Logische Ausdrücke Inhalt Organisatorisches Offene Übungen Operatoren Logische Ausdrücke Dr. J. Raimann 1 Offene Übungen (durch Tutoren betreut) montags 1. und 2. Block (8.15 Uhr

Mehr

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke 1 Links Stellenwertsysteme mit Links zu Zahlensysteme: http://de.wikipedia.org/wiki/stellenwertsystem ASCII-Code: http://de.wikipedia.org/wiki/ascii

Mehr

Basisinformationstechnologie I

Basisinformationstechnologie I Basisinformationstechnologie I Wintersemester 2012/13 24. Oktober 2012 Grundlagen III Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners // jan.wieners@uni-koeln.de

Mehr

Lösungsvorschlag zu 1. Übung

Lösungsvorschlag zu 1. Übung Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zu 1. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche der Aussagen treffen auf jeden

Mehr

Grundlagen der OO- Programmierung in C#

Grundlagen der OO- Programmierung in C# Grundlagen der OO- Programmierung in C# Technische Grundlagen 1 Dr. Beatrice Amrhein Überblick Visual Studio: Editor und Debugging Die Datentypen Methoden in C# Die Speicherverwaltung 2 Visual Studio 3

Mehr

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu wissenschaftlichen Rechnens mit C++ und Matlab SS2013 Inhalt Bis jetzt: Heute: Entwicklungsumgebung

Mehr

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren I Dr. Werner Struckmann 6. März 2013 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr Studiengang:

Mehr

Informatik. Wiederholung Felder (Arrays), string. Vorlesung

Informatik. Wiederholung Felder (Arrays), string. Vorlesung Informatik Vorlesung 04 Wiederholung Felder (Arrays), string 19. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik Thomas Hoch 1 Ein C++ Programm: Wiederholung #include

Mehr

Elementare Datentypen in C++

Elementare Datentypen in C++ Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der

Mehr

Repetitorium Programmieren I + II

Repetitorium Programmieren I + II Repetitorium Programmieren I + II Stephan Gimbel Johanna Mensik Michael Roth 6. März 2012 Agenda 1 Operatoren 2 Datentypen Gleitpunkt Zahl Typkonvertierung 3 Strommanipulatoren 4 Bedingungen if-else switch-case

Mehr

DuE-Tutorien 16 und 17

DuE-Tutorien 16 und 17 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Tutorienwoche 3 am 19.11.2010 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der

Mehr

Algorithmen und Datenstrukturen 02

Algorithmen und Datenstrukturen 02 1. November 2011 Inhaltsverzeichnis 1 Organisatorisches Allgemeine Hinweise Texteditoren 2 Besprechung Blatt 1 Erste Eindrücke 3 Vorbereitung Blatt 2 Zahlensysteme, Datentypen und Ausdrücke String-Operationen

Mehr

Programmiervorkurs Einführung in Java Tag 1

Programmiervorkurs Einführung in Java Tag 1 Programmiervorkurs Einführung in Java Tag 1 Sebastian Glutsch SS 2018 namen Inhaltsübersicht Vorkurs Tag 1:,, en,, Einführung Tag 2: Boolesche Ausdrücke,, If-Abfragen, Switch-Case Tag 3: Arrays, (Do-)While-Schleife,

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen 3 Zahlendarstellung - Zahlensysteme - b-adische Darstellung natürlicher Zahlen - Komplementbildung - Darstellung ganzer und reeller Zahlen Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen......

Mehr

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren I Dr. Werner Struckmann 17. Februar 2018 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 2 Arrays und Pointer Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät statische Arrays Deklaration (eindimensional): /* 40

Mehr

Java Referenzdatentypen genauer betrachtet

Java Referenzdatentypen genauer betrachtet Informatik 1 für Nebenfachstudierende Grundmodul Java Referenzdatentypen genauer betrachtet Kai-Steffen Hielscher Folienversion: 23. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Referenzdatentypen

Mehr

3. Operatoren und Ausdrücke

3. Operatoren und Ausdrücke 3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)

Mehr

1 Organisatorisches. 2 Schleifeninvarianten. 3 Widerspruchsbeweise. 4 Zahlendarstellung in Rechnern. 5 Typanpassungen.

1 Organisatorisches. 2 Schleifeninvarianten. 3 Widerspruchsbeweise. 4 Zahlendarstellung in Rechnern. 5 Typanpassungen. Themen der Übung Schleifeninvarianten, Zahlendarstellung und Typanpassungen CoMa-Übung V TU Berlin 1 Organisatorisches 2 Schleifeninvarianten 3 Widerspruchsbeweise 4 Zahlendarstellung in Rechnern 5 Typanpassungen

Mehr

Organisatorisches Einführung Quellen. Einführung. Praktikum C-Programmierung. Eugen Betke, Nathanael Hübbe, Michael Kuhn, Jakob Lüttgau, Jannek Squar

Organisatorisches Einführung Quellen. Einführung. Praktikum C-Programmierung. Eugen Betke, Nathanael Hübbe, Michael Kuhn, Jakob Lüttgau, Jannek Squar Einführung Praktikum C-Programmierung Eugen Betke, Nathanael Hübbe, Michael Kuhn, Jakob Lüttgau, Jannek Squar Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg 2018-10-22 Michael Kuhn

Mehr

2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.

2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben. Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Ende SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll im

Mehr

Die Programmiersprache C

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,

Mehr

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

Mehr

Vorlesung Objektorientierte Programmierung Klausur

Vorlesung Objektorientierte Programmierung Klausur Prof. Dr. Stefan Brass 16. Februar 2007 Dipl.-Inform. Annett Thüring Institut für Informatik MLU Halle-Wittenberg Vorlesung Objektorientierte Programmierung Klausur Name: Matrikelnummer: Studiengang: Aufgabe

Mehr

Einführung in C. EDV1-04C-Einführung 1

Einführung in C. EDV1-04C-Einführung 1 Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags

Mehr

Mehrdimensionale Arrays

Mehrdimensionale Arrays Mehrdimensionale Arrays Prof. Dr.-Ing. Thomas Schwotzer 1 Einführung Eindimensionale Arrays haben wir bereits kennen gelernt. Es gibt aber auch mehrdimensionale Arrays. Die sind auch sehr notwendig, denken

Mehr

Programmieren in C / C++ Grundlagen C 2

Programmieren in C / C++ Grundlagen C 2 Programmieren in C / C++ Grundlagen C 2 Hochschule Fulda FB AI Wintersemester 2016/17 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI Anweisung / Ausdruck 1 Programm setzt sich aus vielen Anweisungen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 29 Einstieg in die Informatik mit Java Weitere Ausdrücke Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 29 1 Überblick 2 Kombinierte Zuweisungsoperatoren 3 Vergleichsoperatoren

Mehr

Praxis der Programmierung

Praxis der Programmierung Funktionen, Header-Dateien, Pointer Institut für Informatik und Computational Science Universität Potsdam Henning Bordihn 1 Organisatorische Bemerkungen 2 Modul Programmierung Pflichtmodul für BSc INF

Mehr

3. Datentypen, Ausdrücke und Operatoren

3. Datentypen, Ausdrücke und Operatoren 3. Datentypen, Ausdrücke und Operatoren Programm muß i.a. Daten zwischenspeichern Speicherplatz muß bereitgestellt werden, der ansprechbar, reserviert ist Ablegen & Wiederfinden in höheren Programmiersprachen

Mehr

PIC16 Programmierung in HITECH-C

PIC16 Programmierung in HITECH-C PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden

Mehr

Übungsstunde: Informatik 1 D-MAVT

Übungsstunde: Informatik 1 D-MAVT Übungsstunde: Informatik 1 D-MAVT Daniel Bogado Duffner Übungsslides unter: n.ethz.ch/~bodaniel Bei Fragen: bodaniel@student.ethz.ch Daniel Bogado Duffner 24.03.2018 1 Ablauf Administratives Integer Division

Mehr

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

6. Zeiger Allgemeines Definition eines Zeigers

6. Zeiger Allgemeines Definition eines Zeigers 6. Zeiger www.c-programme.de Stefan Thiemert Kapitel 6 - Seite 1 von 6 6. 1. Allgemeines Zeiger spielen in der Programmierung eine wichtige Rolle. Sie sind wichtig, bei der Arbeit mit Arrays und Funktionen.

Mehr

Zeiger in C und C++ Zeiger in Java und C/C++

Zeiger in C und C++ Zeiger in Java und C/C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,

Mehr

Praktische Informatik 1

Praktische Informatik 1 Praktische Informatik 1 Imperative Programmierung und Objektorientierung Karsten Hölscher und Jan Peleska Wintersemester 2011/2012 Session 2 Programmierung Begriffe C/C++ Compiler: übersetzt Quellcode

Mehr

Zeiger. Zeiger ist eine Variable deren Wert eine Adresse enthält. Zeiger werden im Programm definiert. int *pmyinteger; Type *PointerName ;

Zeiger. Zeiger ist eine Variable deren Wert eine Adresse enthält. Zeiger werden im Programm definiert. int *pmyinteger; Type *PointerName ; Zeiger & Variable ist ein Speicherort im C++ Programm und hat eine Adresse. Variable - Zugriff auf Variable und/oder Adresse * & Operator liefert die Adresse einer Variablen im Speicher Adresse int myvariable

Mehr

Unterlagen. CPP-Uebungen-08/

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

Mehr

Teil 5: Felder, Zeiger, Zeigerarithmetik Gliederung

Teil 5: Felder, Zeiger, Zeigerarithmetik Gliederung Teil 5: Felder, Zeiger, Zeigerarithmetik Gliederung Felder (Arrays) Mehrdimensionale Felder Zeiger und Adressen Zeigerarithmetik Felder Mehrdimensionale Felder Zeiger und Adressen Zeigerarithmetik Felder

Mehr

Teil 5: Zeiger, Felder, Zeichenketten Gliederung

Teil 5: Zeiger, Felder, Zeichenketten Gliederung Teil 5: Zeiger, Felder, Zeichenketten Gliederung Zeiger und Adressen Felder (Arrays) Zeichenketten (Strings) Zeigerarithmetik Mehrdimensionale Felder Zeiger und Adressen Felder Zeichenketten Zeigerarithmetik

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

3. Operatoren und Ausdrücke

3. Operatoren und Ausdrücke 3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)

Mehr

Arrays. Einleitung. Deklarieren einer Array Variablen

Arrays. Einleitung. Deklarieren einer Array Variablen Arrays Einleitung bisher jede Variable einzeln deklariert: 12 3 14 12 32 32 3 32 5 3 double sum; int count; ÿ Sie können Zweck und Aufbau von Array-Datentypen erklären ÿ Sie können einen Array korrekt

Mehr

Kommentare in C. Keine Ahnung was ich vor einem Jahr gemacht habe. Ich verstehe es nicht ich schreibe es nochmal..

Kommentare in C. Keine Ahnung was ich vor einem Jahr gemacht habe. Ich verstehe es nicht ich schreibe es nochmal.. Kommentare in C Kommentare in C Keine Ahnung was ich vor einem Jahr gemacht habe. Ich verstehe es nicht ich schreibe es nochmal.. Vielleicht hil< ja ein gut kommen?erter Quellcode.... nur ein Tipp fürs

Mehr

Vorstellung (Wdh. für die Neuen )

Vorstellung (Wdh. für die Neuen ) Vorstellung (Wdh. für die Neuen ) Mein Name: Christian Mandery Studiengang: Diplom-Informatik im 4. Semester (ich höre also im Moment selbst noch Technische Informatik 2) E-Mail (bei Fragen und zum Senden

Mehr

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz Patrick Schulz patrick.schulz@paec-media.de 29.04.2013 1 Einführung Einführung 2 3 4 Quellen 1 Einführung Einführung 2 3 4 Quellen Hello World in Java Einführung 1 public class hello_ world 2 { 3 public

Mehr

Programmieren 1 C Überblick

Programmieren 1 C Überblick Programmieren C Überblick. Einleitung 2. Graphische Darstellung von Algorithmen 3. Syntax und Semantik 4. Einstieg in C: Einfache Sprachkonstrukte und allgemeiner Programmaufbau 5. Skalare Standarddatentypen

Mehr

Programmierwerkstatt. Arrays, Pointer und Referenzen

Programmierwerkstatt. Arrays, Pointer und Referenzen Programmierwerkstatt Arrays, Pointer und Referenzen Zum Inhalt Wir wollen Euch: das Wesentliche vermitteln Fehlerquellen verdeutlichen Verständnis ist uns wichtig programming by coincidence vermeiden Themen

Mehr