> Übung Betriebssysteme
|
|
- Caroline Melsbach
- vor 7 Jahren
- Abrufe
Transkript
1 > Übung Betriebssysteme Übung 1 Aaron Scherzinger Wintersemester 2012/13 Gruppe Parallele und Verteilte Systeme (PVS) Institut für Informatik Westfälische Wilhelms-Universität Münster
2 Organisatorisches 2 Koordinator: Michel Steuwer Raum 705, Tel.: michel.steuwer@uni-muenster.de Sprechstunde: nach Vereinbarung Informationen zur Vorlesung und Übung, Aufgabenblätter: Im Web: Über Mailingliste pvs-bs@listserv.uni-muenster.de Anmeldung zur Mailingliste über Übungstermin: Mittwochs Uhr Uhr, Hörsaal M4 Auf den Folien steht viel aber nicht alles Teilnahme an einer Übung ist Voraussetzung zum Verständnis der Folien
3 Prüfungsleistungen 3 90-minütige benotete Klausur Termin: , Uhr, M1 Studiengänge: 1-Fach-Bachelor Informatik Diplom Informatik, Wirtschaftsinformatik, Geoinformatik, Mathematik (Nebenfach Informatik) Lehramt Sek II (und Sek I) Informatik LA Gymn./Ges. Informatik Abtestat (unbenotet) Bearbeitung der Übungsblätter (mind. 50% der Punkte) Modul Systemstrukturen für 2-Fach-Bachelor Informatik Modul Systemstrukturen besteht aus den Veranstaltungen Rechnerstrukturen und Betriebssysteme 4-stündige benotete Modulabschlussklausur (voraussichtlich am Ende des Wintersemesters) Zur Zulassung zur Modulabschlussklausur muss entweder die Klausur zu Rechnerstrukturen oder die Klausur zu Betriebssysteme (am ) bestanden werden
4 Übungsblätter 4 Im Netz werden Übungsblätter zur selbständigen Bearbeitung bereitgestellt Übungsblätter sollen praktische Kenntnisse vermitteln Intensive Beschäftigung mit den Übungsblättern ist Voraussetzung zum Verständnis der Übung Übungsblätter werden korrigiert! Insbesondere: Inhalt der Übung ist klausurrelevant!
5 Übungsblätter 5 Prüfungsleistung: Schein, CP: Klausur Abtestat, unbenotet (GI): 50% der Übungspunkte oder Bestehen der Klausur Jede mündliche Prüfung setzt das Bestehen der Klausur voraus! Bonuspunkte: Durch die erfolgreiche Bearbeitung der Übungen können bis zu 10% der Klausurpunkte erworben werden. Bei weniger als 50% der möglichen Punkte für die Übungsaufgaben werden keine Bonuspunkte vergeben. Ab 50% (1 Bonuspunkt) wird für weitere 5% der Übungspunkte je ein Bonuspunkt vergeben. Bonuspunkte werden erst nach regulärem Bestehen der Klausur angerechnet!
6 Übungsblätter 6 Voraussichtlich sieben Übungsblätter Bearbeitung In Gruppen von 3 4 Teilnehmern (nicht weniger!) Vorherige Anmeldung ist nicht nötig Zum Gründen von Gruppen kann die Mailingliste der Vorlesung genutzt werden! Abgabe Hinweise auf den Aufgabenblättern beachten!!! Abgabe per (pvs-bs-uebung@listserv.uni-muenster.de) Namen und Matrikelnummern aller Teilnehmer angeben Termin i.d.r. Dienstag vor der Übung (genauer Termin auf dem jeweiligem Blatt) Zur Bearbeitung der Übungsblätter ist eine gültige Nutzerkennung für die Mathematik/Informatik CIP-Pools hilfreich!
7 Ziel der Übungen 7 Ziel der Übung ist... die Vertiefung der in der Vorlesung vorgestellten Konzepte die praktische Anwendung aus Sicht des (System-)Programmierers Inhalte der Übungsblätter: ca. 50% Textaufgaben ca. 50% Programmieraufgaben Für Programmieraufgaben werden die Programmiersprache C und Unix/Linux verwendet
8 Unix und C 8 Warum Unix? Betriebssystem Windows Es gibt einige Hundert BS die tatsächlich verwendet werden oder wurden und mehrere Tausend (Forschungs-)Projekte Übersicht z.b. Unix Varianten (FreeBSD, OpenBSD, NetBSD, Linux,...) für jede gängige Hardware-Architektur kostenlos erhältlich Kostenlose Compiler, Editoren, Debugger, IDEs,... Im Source-Code verfügbar = Ideale Spielwiese ;-) Konzeptionell basieren alle gängigen Betriebssysteme auf Unix Man kann relativ einfach beobachten, was unter der Haube passiert Umfangreiche Literatur über Betriebssysteminterna
9 Unix und C 9 Warum C? Relativ alte Sprache (erste Versionen ab 1971) aber immer noch eine der wichtigsten überhaupt die meisten Anwendungen werden in C oder C++ entwickelt Sehr maschinennahe Sprache, deshalb gut für Systemprogrammierung geeignet So gut wie alle gängigen Betriebssysteme sind in C/C++ geschrieben Systemnahe Programmierung i. d. R. ebenfalls nur in C C wurde für die Betriebssystemprogrammierung erdacht (für Unix) Wer sich mit Betriebssystemen beschäftigt, kommt um C nicht herum!
10 C in der Übung 10 In den ersten Übungen wird eine kurze Einführung in C geben Vorausgesetzte Vorkenntnisse: Java In der Übung kann nur eine fundamentale Einführung gegeben werden. Eigenständige Übungen und Selbststudium sind notwendig! Standardwerk zu C: Brian W. Kernighan, Dennis M. Ritchie Programmieren in C 2. Ausgabe, Hanser Verlag, 1990 ISBN: Weiter Links zu C und Linux/Unix auf den Webseiten unter
11 Wiederholung von Grundlagen 11 Betriebssystem als... Virtuelle Maschine (Top-Down Sicht) Bietet abstrakte, einfache Sicht auf die Hardware Versteckt reale, low-level Eigenschaften Ressourcenmanager (Bottom-Up Sicht) Verwaltet Speicher, Platten, Terminals,... Koordiniert Zugriffe Fazit: Betriebssysteme müssen low-level Eigenschaften der Hardware berücksichtigen um diese steuern zu können; BS-Entwickler benötigen detaillierte Kenntnis der Hardware Im Folgenden werden kurz einige Grundlagen rekapituliert: Binärzahlen Prozessor und Speicher Compiler
12 Binärzahlen 12 Digitalrechner arbeiten mit Binärzahlen, deshalb hier eine kurze Wiederholung Beispiel: (123) 10 = ( ) 10 = ( ) 10 = ( ) 2 Umwandlung durch Division mit Rest (umgekehrtes Hornerschema) Kompaktere Darstellung durch Oktal- und Hexadezimalzahlen. Oktal: drei Binärziffern ergeben eine Oktalziffer (2 3 = 8) ( ) 2 = (145376) 8 Hexadezimal: vier Binärziffern ergeben eine Hexadezimalziffer (2 4 = 16) ( ) 2 = (CAFE) 16 Zwei Hexadezimalziffern ergeben ein Byte. Wegen der einfachen Umwandlung werden Binärziffern in Programmen i. d. R. Oktal oder Hexadezimal angegeben. Oft durch 0 für Oktal bzw. 0x für Hexadezimal gekennzeichnet, also bzw. 0xCAFE
13 Binärzahlen wichtige Eigenschaften 13 Umrechnung zwischen 2er und 10er Potenzen: 2 10 = K (eigentlich 1 Ki (kibi) statt 1 K (kilo)) M G 2 n n 3 Vorsicht: = Multiplikation/Division: = = m 2 n = 2 m+n 2 m /2 n = 2 m n Binärziffern: Mit m Binärziffern können 2 m verschiedene Zahlen dargestellt werden Mit m+n Binärziffern 2 m+n verschiedene Zahlen
14 Binärzahlen: Verknüpfungen 14 Logische Operationen: (UND) (ODER) (NEG) Werden bei modernen Rechnern i.d.r. nur als Operationen auf Maschinenworten (8, 16, 32 oder 64 Bit) angeboten, z. B.: Manipulation einzelner Bits: Setzen von Bit i in Wort x: x := x 2 i Löschen von Bit i in Wort x: x := x 2 i
15 Prozessor und Speicher 15 Grobstruktur eines einfachen Rechners: Prozessor: Rechenwerk (Arithmetic-Logic- Unit, ALU) Befehlsregister (Instruction Register, IR) Befehlszähler (Instruction Pointer, IP) Stapelzeiger (Stack Pointer, SP) Hauptspeicher: Fortlaufend adressiert, enthält Befehle und Daten Prozessor I/O Gerät I/O Reg I/O Reg Hauptspeicher... Befehle Befehle Befehle Befehle Daten Daten Daten Daten... I/O-Geräte: Über I/O-Register gesteuert, werden über spezielle Speicheradressen angesprochen Was sind Register? IR AKKU ALU SP IP n n+1 Bus n 2 n 1
16 Programmausführung 16 1 Laden des nächsten Befehls von der im Befehlszähler angegebenen Speicherstelle in das Befehlsregister 2 Erhöhen des Befehlszählers um eins (bzw. die Größe des geladenen Befehls) 3 Dekodieren des Befehls 4 Ggf. Laden weiterer Operanden aus dem Speicher 5 Berechnung des Ergebnisses 6 Speicherung des Ergebnisses (z. B. in einem Register (Akku)) Sprungbefehle: Manipulation des Befehlszählers (Laden der Zieladresse) Wichtig: Befehle und Daten liegen in einem fortlaufend und zusammenhängend adressierten Speicher
17 Stack (Stapel, Keller) 17 LIFO Puffer, das zuletzt abgelegte Element (push Befehl) muss auch als erstes wieder gelesen werden (pop Befehl) Extrem wichtiges, gleichzeitig einfach zu realisierendes Konzept, wird i. d. R. durch HW als Maschinenbefehle bereitgestellt: push Befehl: 1 Schreiben des Parameters an die Speicherstelle SP 2 Erhöhen von SP um 1 pop Befehl: 1 Verringern von SP um 1 2 Lesen des Wertes von Speicherstelle SP Wichtige Verwendungsmöglichkeit: Speichern von temporären Daten, insb. Sprungadressen und lokalen Variablen bei Funktionen
18 Compiler 18 Hochsprachen sind sehr abstrakt und dadurch einfach zu gebrauchen. Werden durch Compiler in Maschinensprache übersetzt (oder von einem anderen Programm interpretiert hier nicht weiter betrachtet) Für HW-nahe Programmierung (von BS) ist ein grobes Verständnis des Zusammenhangs mit dem Maschinencode wichtig Wie werden die folgenden Konzepte im Maschinencode realisiert: Variablen Datentypen Funktionen/Prozeduren
19 Variablen 19 Inhalt von Variablen liegt im Speicher Während der Übersetzung verwaltet der Compiler intern eine Tabelle mit den Speicheradressen der Variablen Im ausführbaren Maschinenprogramm gibt es keine Variablen mehr! Beispiel int a = 0; int b = 1; int result; result = a+b; movl $0, 4(%ebp) / a / movl $1, 8(%ebp) / b / movl 8(%ebp), %eax / b laden / addl 4(%ebp), %eax / a+b / movl %eax, 12(%ebp) / result / ($ Konstanten, % Register, %ebp Basisadresse, x(%y) Adresse %y+x)
20 Datentypen: Programmiersprache 20 In Programmiersprachen sind meist Daten (Variablen) typisiert Variablen dürfen nur Werte ihres Typs zugewiesen werden, z.b. int ganzzahlige Werte Anweisungen/Befehle ergeben sich aus Datentypen, z.b. + ist Addition für int und Konkatenation für String in Java Konvertierung: Um Daten verschiedenen Typs zu kombinieren müssen diese umgewandelt werden (casts), implizit (z. B. int nach float) oder explizit Korrektheit: Korrekte Typisierung wird vom Compiler/Laufzeitsystem überwacht, z.b. keine Division / für String
21 Datentypen: Maschinensprache 21 In Maschinensprache sind meist Befehle typisiert (wenn überhaupt) Beispiel Intel IA-32 (i386) Multiplikation: mul unsigned int, imul signed int, fmul floating point Daten im Speicher sind untypisierte Bitfolgen, man kann z.b. mul auf einen String anwenden Konvertierung: Maschinenbefehle um von einer Darstellung in eine andere umzuwandeln (float/integer) müssen explizit im Programm stehen Korrektheit: Keinerlei Überprüfung auf korrekte Typisierung! Auch Datentypen sind im Maschinenprogramm nicht mehr (so wie in einer Hochsprache) vorhanden
22 Funktionsaufruf 22 Funktionsaufrufe sind abstrakte Konstrukte (der Prozessor kennt keine Funktionen!) Hauptspeicher Funktion liegt als Maschinencode im Speicher Funktionsaufruf: Sprung an Anfangsadresse der Funktion Funktionsende: Rücksprung zur Stelle des Aufrufs funktion1 Dazu muss die Rücksprungadresse beim Aufruf gespeichert werden Rücksprungadressen werden auf einem Stapel abgelegt Funktionen müssen in der umgekehrten Reihenfolge ihres Aufrufs beendet werden = Die zuletzt abgelegte Adresse wird als erstes benötigt Entspricht LIFO-Eigenschaft des Stapels main funktion3 funktion2
23 Funktionsaufruf: Beispiel Hauptspeicher... funktion3()... funktion2() funktion1()... funktion2() Stapel funktion1 Befehlszähler main funktion3 funktion1() funktion3() return funktion2() return return funktion2() return funktion
24 Funktionsaufruf: Parameter und Variablen 24 Funktionsaufruf: Außer der Sicherung der Rücksprungadresse muss folgendes beachtet werden: Übergabe von Parametern Sichern von Registerinhalten die innerhalb der Funktion überschrieben werden Speicher für lokale Variablen reservieren Funktionsende: Freigeben lokaler Variablen Registerinhalte wiederherstellen Rückgabe des Ergebnisses Auch hier dient der Stapel zum Ablegen aller Daten Details sind Hardware- und Compiler-abhängig
25 Beispiel: C-Funktionsaufruf bei GCC/i int foo(int a, int b) { int c = 0; c = a + b; return c; } int main(int argc, char argv) { int x; } x = foo(1, 2); return 0; foo: / Vorspann / pushl %ebp movl %esp, %ebp subl $4, %esp movl $0, 4(%ebp) / Rumpf / movl 12(%ebp), %eax addl 8(%ebp), %eax movl %eax, 4(%ebp) / Nachspann / movl 4(%ebp), %eax leave ret / Aufruf in main / pushl $2 pushl $1 call foo Nicht Klausurrelevant ;-)
26 C-Programmierung unter Linux/Unix Überblick 26 Editor program.c program.h Compiler program.o otherprog.o Linker program
27 Editor 27 VIM: Aufruf mit vim <dateiname> Tutorial: :help XEmacs: Aufruf mit xemacs <dateiname> Tutorial: M-? t Speichern: C-x s Verlassen: C-x c Beide Editoren sind auf den meisten Unix-Systemen verfügbar und äußerst leistungsfähig das Lesen der Dokumentation lohnt sich! NEdit: Einfachere Bedienung Windows ähnlich
28 Compiler Details 28 Die Übersetzung eines C-Programms findet in mehreren Schritten statt 1 Präprozessor: Textuelle Ersetzung von Präprozessoranweisungen 2 Compiler: Übersetzung in Maschinencode. Ergebnisdatei program.o enthält nur Maschinencode von Funktionen aus program.c. Funktionsaufrufe anderer Funktionen sind speziell gekennzeichnet. 3 Linker: Verbindet mehrere.o-dateien und Bibliotheksdateien zu einem ausführbaren Programm. Fügt fehlende Funktionen aus.o-dateien und Bibliotheken, sowie Code zur Ausführung der Funktion main ein. In der Regel werden alle drei Schritte auf einmal erledigt ohne Mitwirkung durch den Benutzer
29 GNU C Compiler (gcc) 29 Aufruf: gcc <datei.c> Zusätzlich können noch Optionen angegeben werden: -Wall: Viele Warnungen ausgeben (z. B. bei if(a=b) warnen) -o <datei>: Name der zu erzeugenden Datei (sonst: a.out) Aufruf für die Übungsaufgaben: gcc -Wall -Werror -pedantic-errors -o prog prog.c Aufruf von gcc bewirkt übersetzen und linken Verhindern des linkens: -c gcc -Wall -Werror -pedantic-errors -c -o prog.o prog.c Weitere Optionen: -E nur Präprozessor -g Einbinden von Debug-Informationen -O, -O1, -O2, -O3 Optimierungsstufe
30 Man-Pages 30 Unix Hilfe Seiten Anzeige mit man <befehl/funktion/schluesselwort> z.b. man gcc Man-Pages sind in Abschnitte (Sections) untergliedert. Abschnitt 1: Benutzerbefehle Abschnitt 2: Systemaufrufe Abschnitt 3: Bibliotheksfunktionen Angabe des Abschnitts: man <abschnitt> <befehl> z.b. man 3 printf auf Solaris: man -s <abschnitt> <befehl> Innerhalb von Man-Pages werden andere Seiten oft in der Form befehl(abschnitt) angegeben, z. B. fork(2) Nach Hilfeseiten suchen: man -k <Schlüsselwort> man man Alternativ
31 Make 31 Automatisierte Erzeugung von Programmen aus Quelldateien Berücksichtigt Abhängigkeiten zwischen Dateien stacktest.c stack.h stack.c compile stacktest.o stack.o link stacktest Steuerung der Übersetzung durch Regeln in Datei Makefile # Ziel: Quellen # <tab> Befehle stacktest: stacktest.o stack.o gcc stacktest.o stack.o o stacktest stacktest.o: stacktest.c stack.h gcc o stacktest.o c Wall stacktest.c stack.o: stack.c stack.h gcc o stack.o c Wall stack.c
32 Make: Implizite Regeln 32 Neben expliziten Regeln enthält make implizite Standardregeln, z. B. Regel zur Erzeugung von datei.o aus datei.c Standardregeln sind über Variablen konfigurierbar Für C-Programme: CC: Compiler CFLAGS: Kommandozeilenparameter für Compiler Anwendung impliziter Regeln wenn Befehle weggelassen werden CC=gcc CFLAGS= Wall Werror pedantic errors std=c99 stacktest: stacktest.o stack.o stack.o: stack.c stack.h stacktest.o: stack.h stacktest.c Aufruf mit gmake oder gmake Ziel
33 GNU Debugger: gdb, ddd 33 Aufruf: gdb <programm> Vorgehensweise für den Fehler zwischendurch: run <Kommandozeilenparameter> startet das Programm kill bricht das Programm ab break <funktion> setzt breakpoint (Ausführung wird bei Beginn von funktion unterbrochen) print <ausdruck> gibt Wert von <ausdruck> (beliebige Programmvariablen, Zeiger,...) aus cont führt Ausführung fort Bei Absturz: bt ( backtrace ) gibt an, an welcher Stelle das Programm abgestürzt ist Graphische Oberfläche für gdb: ddd (Data Display Debugger) ddd <programm>
34 Zusammenfassung 34 Wichtig für Programmieraufgaben: Bei Programmieraufgaben wird ein Makefile zur Verfügung gestellt Programme müssen mit diesem Makefile auf einem Rechner des IVV5 (z.b. Räuber) übersetzbar sein Alternative zu Linux: Cygwin und MinGW ABER: Kein Support durch Tutoren! Weitere Alternative: Programm an Heim-PC schreiben und via SSH auf einem Linux-Rechner übersetzen Genaueres zu Makefiles, Debugger in der ersten Globalübung
Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg
Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen
Mehr6. Grundlagen der Programmierung
Computeranwendung in der Chemie Informatik für Chemiker(innen) 6. Grundlagen der Programmierung Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL6 Folie 1 Dr. Jens Döbler Grundlagen
MehrÜbung 1 - Betriebssysteme I
Prof. Dr. Th. Letschert FB MNI 13. März 2002 Aufgabe 0: Basiswissen Rechnerarchitektur: Übung 1 - Betriebssysteme I Aus welchen Komponenten besteht ein Rechner mit Von-Neumann Architektur? Was sind Bits
MehrAssembler - Einleitung
Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache
MehrVorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)
Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 1: Von der Maschinensprache zu C Prof. Dr. Maschinensprache: MIPS R2000 Was bewirkt folgendes Programm: 00100111101111011111111111100000 10101111101111110000000000010100
MehrÜbungsblatt 10 (Block C 2) (16 Punkte)
georg.von-der-brueggen [ ] tu-dortmund.de ulrich.gabor [ ] tu-dortmund.de pascal.libuschewski [ ] tu-dortmund.de Übung zur Vorlesung Rechnerstrukturen Wintersemester 2016 Übungsblatt 10 (Block C 2) (16
MehrGrundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes
Grundlagen der Informatik III Wintersemester 2010/2011 7. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la
MehrOrganisatorisches. Übungsleiter: Karsten Otto Homepage: Aufgaben
Organisatorisches Übungsleiter: Karsten Otto (otto@inf.fu-berlin.de) Homepage: http://www.inf.fu-berlin.de/lehre/ss04/sysi/ Aufgaben Montags im Netz Vorbesprechung Dienstag/Mittwoch in den Übungen Abgabe
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 22: Mima-X Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik
MehrAssembler - Adressierungsarten
Assembler - Adressierungsarten Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Adressierungsarten 1/31 2008-04-01
MehrÜbungen zu Systemprogrammierung 1
Übungen zu Systemprogrammierung 1 Ü1-2 Speicherverwaltung Sommersemester 2018 Christian Eichler, Jürgen Kleinöder Lehrstuhl für Informatik 4 Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl
MehrAssembler Unterprogramme
Assembler Unterprogramme Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Unterprogramme 1/43 2008-06-03 Unterprogramme
MehrPrüfungsvorleistung Datenstrukturen
Prüfungsvorleistung Datenstrukturen Allgemeine Hinweise Als Prüfungsvorleistung für die Klausur Datenstrukturen müssen Hausaufgaben gelöst werden. Jede Hausaufgabe wird mit einer bestimmten Anzahl an Punkten
Mehr2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 14. Okt. 2015 Computeraufbau: nur ein Überblick Genauer: Modul Digitale Systeme (2. Semester) Jetzt: Grundverständnis
MehrProgrammierung 1 für Wirtschaftsinformatik Wintersemester 2017/18
Programmierung 1 für Wirtschaftsinformatik Wintersemester 2017/18 Prof. Dr.-Ing. habil. Peter Sobe Fakultät Informatik / Mathematik Programmierung 1: Programmierung 1 - Ziele Vermittlung von Grundkenntnissen
MehrÜbungen zu Systemprogrammierung 1 (SP1)
Übungen zu Systemprogrammierung 1 (SP1) Ü1-2 Speicherverwaltung Andreas Ziegler, Stefan Reif, Jürgen Kleinöder Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität
MehrRO-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
Mehr1 Maschinenunabhängige Optimierungen. Maschinenunabhängige Optimierungen Wintersemester 2008/09 1 / 17
1 Maschinenunabhängige Optimierungen Maschinenunabhängige Optimierungen Wintersemester 2008/09 1 / 17 Optimierungen Automatische Optimierungen sind nötig, weil unoptimierter Code meist besser lesbar ist.
MehrC-Crashkurs. Praktikum Systemmanagement und Sicherheit
C-Crashkurs Praktikum Systemmanagement und Sicherheit ZIELE DIESES KURSES 15.04.2014 Dipl.-Inf. M. Bohr C_Crashkurs 2 Compiler gcc verwenden geläufigste Datentypen in C kennen Fehlerbehandlung (ohne Ausnahmeklassen)
MehrDer von Neumann Computer
Der von Neumann Computer Grundlagen moderner Computer Technologie 1 Der moderne Computer ein weites Spektrum Typ Preis Anwendungsbeispiel embeded Computer 10-20 $ in Autos, Uhren,... Spielcomputer 100-200$
MehrProgrammierung 1 für Wirtschaftsinformatik Wintersemester 2015/16
Programmierung 1 für Wirtschaftsinformatik Wintersemester 2015/16 Prof. Dr.-Ing. habil. Peter Sobe Fakultät Informatik / Mathematik Programmierung 1: Programmierung 1 - Ziele Vermittlung von Grundkenntnissen
MehrMultimedia im Netz. Übung zur Vorlesung. Ludwig-Maximilians-Universität Wintersemester 2010/2011
Übung zur Vorlesung Multimedia im Netz Ludwig-Maximilians-Universität Wintersemester 2010/2011 Ludwig-Maximilians-Universität München Multimedia im Netz - Übung - 1-1 Organisatorisches Informationen zur
Mehr"Organisation und Technologie von Rechensystemen 4"
Klausur OTRS-4, 29.09.2004 Seite 1 (12) INSTITUT FÜR INFORMATIK Lehrstuhl für Rechnerarchitektur (Informatik 3) Universität Erlangen-Nürnberg Martensstr. 3, 91058 Erlangen 29.09.2004 Klausur zu "Organisation
MehrEchtzeit-Multitasking
Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme
Mehr3D Programmierpraktikum: Einführung in C++ - Teil 1
3D Programmierpraktikum: Einführung in C++ - Teil 1 Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 27. April 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
MehrEchtzeit-Multitasking
Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 13.11.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrKompaktkurs C-Programmierung
Kompaktkurs C-Programmierung 26. 03. 2007 Franz Schenk Organisatorisches Vorlesung Accountvergabe Skriptverkauf Übungen: zwei Blöcke (13:15-14:45 / 14:45-16:15) Gruppenübung Rechnerübung Klausur Ferien:
MehrRO-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
MehrGrundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes
Grundlagen der Informatik III Wintersemester 2010/2011 5. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la
MehrProgrammieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen
MehrKodieren von Anweisungen im Binärformat für Maschinen quasi natürlich, zumindest effizient. Für Menschen hingegen ist Binärformat schwierig
2.1 Einleitung Kodieren von Anweisungen im Binärformat für Maschinen quasi natürlich, zumindest effizient Hinsichtlich Zuverlässigkeit (digital vorteilhafter als analog) Für Menschen hingegen ist Binärformat
MehrEinführung in C++ Oliver Rheinbach. Büro T03 R03 D53 Tel
Einführung in C++ Oliver Rheinbach Büro T03 R03 D53 Tel. 0201 183 2504 oliver.rheinbach@uni-duisburg-essen.de Universität Duisburg-Essen Fachbereich Mathematik O. Rheinbach 2 Einführung in C++ Dienstag,
MehrGrundlagen der Informatik Vorlesungsskript
Grundlagen der Informatik Vorlesungsskript Prof. Dr. T. Gervens, Prof. Dr.-Ing. B. Lang, Prof. Dr. F.M. Thiesing, Prof. Dr.-Ing. C. Westerkamp 16 AUTOMATISCHES ÜBERSETZEN VON PROGRAMMEN MIT MAKE... 2 16.1
MehrC-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
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
MehrU1 3. Übung U1 3. Übung. Die Kommandos auf den folgenden Folien dienen der Veranschaulichung. Sind nicht direkt auf die Übungsaufgabe übertragbar
U1 3. Übung U1 3. Übung Besprechung Aufgabe 0 Make und Makefiles Aufgabe 2 U1-1 Hinweise Die Kommandos auf den folgenden Folien dienen der Veranschaulichung Sind nicht direkt auf die Übungsaufgabe übertragbar
MehrOrganisatorisches. Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg
Organisatorisches Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Wenn Sie kommen...... kommen Sie pünktlich
MehrEinfü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
MehrDie 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,
MehrPropädeutikum Programmiersprache C und Mathematik 2014
Propädeutikum Programmiersprache C und Mathematik 2014 Fakultät für Mathematik und Informatik Universität Leipzig Dipl.-Inf. Stefan Freitag, URZ & UBL Stefan Freitag Einführungsveranstaltung Ziel und Zweck
Mehr1. Übung - Einführung/Rechnerarchitektur
1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser
MehrC++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen Leibniz Universität IT Services Anja Aue Zeiger (Pointer) Verweis auf eine Speicherstelle. Speicherung einer Speicheradresse.
MehrOrganisatorisches 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
Mehr2. 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)
MehrHello World! Eine Einführung in das Programmieren Das erste Programm
Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung
MehrPraktische 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
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 5. Vorlesung 09.11.2016 1 Beispiel: Hello World #include Beginn Hauptprogramm int main() { Blockbeginn printf("hello World\n"); Einbinden der Headerdatei(en) für
MehrAlgorithmen & Programmierung. Rekursive Funktionen (1)
Algorithmen & Programmierung Rekursive Funktionen (1) Berechnung der Fakultät Fakultät Die Fakultät N! einer nichtnegativen ganzen Zahl N kann folgendermaßen definiert werden: d.h. zur Berechnung werden
MehrProzessor HC680 fiktiv
Prozessor HC680 fiktiv Dokumentation der Simulation Die Simulation umfasst die Struktur und Funktionalität des Prozessors und wichtiger Baugruppen des Systems. Dabei werden in einem Simulationsfenster
MehrGrundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes
Grundlagen der Informatik III Wintersemester 2010/2011 4. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la
MehrKurzeinführung in C/C++ Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Einleitung
Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend
MehrEinleitung. Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Kurzeinführung in C/C++
Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend
MehrZeiger, 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> High-Level Programmierung heterogener paralleler Systeme
> High-Level Programmierung heterogener paralleler Systeme Projektseminar im SoSe 2012 Prof. Sergei Gorlatch, Michel Steuwer, Tim Humernbrum AG Parallele und Verteilte Systeme, Westfälische Wilhelms-Universität
MehrÜbungspaket 17 Der gcc Compiler
Übungspaket 17 Der gcc Compiler Übungsziele: Skript: 1. Sicherer Umgang mit gemischten Ausdrücken 2. Herleiten der unterschiedlichen Datentypen in gemischten Ausdrücken 3. Kenntnis über die implizite Durchführung
MehrEinleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens
Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität
MehrKurzeinführung in C99
Kurzeinführung in C99 Institut für Numerische Simulation Rheinische Friedrich-Wilhelms-Universität Bonn Oktober 2013 Überblick 1 Compiler und Editoren - Was wird benötigt um ein Programm zu erstellen 2
MehrInformatik 12 Kapitel 3 - Funktionsweise eines Rechners
Fachschaft Informatik Informatik 12 Kapitel 3 - Funktionsweise eines Rechners Michael Steinhuber König-Karlmann-Gymnasium Altötting 9. Februar 2017 Folie 1/36 Inhaltsverzeichnis I 1 Komponenten eines PCs
MehrPraxis 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
MehrKarlsruher Institut für Technologie
Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt
MehrTechnische 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 8. September 2014 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr
MehrEinführung in die Programmierung
Einführung in die Programmierung Prof. Dr. Peer Kröger, Janina Bleicher, Florian Richter Ludwig-Maximilians-Universität München, Institut für Informatik, LFE Datenbanksysteme Wintersemester 2016/2017 Peer
Mehr16. März 2016 artb5-v1.1
C 16. März 2016 artb5-v1.1 Inhaltsverzeichnis C 2 Was ist ein Programm?........................ 2 Was ist C?............................... 3 Grundgerüst - Hallo Welt....................... 3 Tools und
MehrWelche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
MehrProgrammiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften
Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder
MehrAbstrakte C-Maschine und Stack
Abstrakte C-Maschine und Stack Julian Tobergte Proseminar C- Grundlagen und Konzepte, 2013 2013-06-21 1 / 25 Gliederung 1 Abstrakte Maschine 2 Stack 3 in C 4 Optional 5 Zusammenfassung 6 Quellen 2 / 25
MehrÜbung zu Grundlagen der Betriebssysteme. 3. Übung 30.10.2012
Übung zu Grundlagen der Betriebssysteme 3. Übung 30.10.2012 Aufgabe 1 Schließen Sie sich über die URL http://userpages.uni-koblenz.de/~mips/bs/anmeldung/ Bearbeitungsgruppen bestehend aus 3 Teilnehmern
MehrTeil I Debuggen mit gdb
Teil I Debuggen mit gdb Wer kennt das nicht? $./a.out Segmentation fault Was tun dagegen? printf()s in den Code einfügen? Besser (und professioneller): Einen Debugger verwenden Wer kennt das nicht? $./a.out
MehrKompilieren Datentypen Operatoren. Überblick. 1 Kompilieren. 2 Datentypen. const static volatile. 3 Operatoren. Alexander Batoulis
Überblick 1 2 const static volatile 3 Überblick 1 2 const static volatile 3 eines C Programmes bevor Programm ausführbar ist, muss es von Compiler in Maschinensprache übersetzt werden Neben Compiler werden
MehrUnterlagen. 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
MehrAssembler (NASM) Crashkurs von Sönke Schmidt
Sönke Schmidt (NASM) Crashkurs von Sönke Schmidt Berlin, 4.11.2015 Meine Webseite: http://www.soenke-berlin.de NASM Was ist das? nach Wikipedia: Ein ist ein Programmierwerkzeug, das ein in maschinennaher
MehrFACHHOCHSCHULE 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
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 21.11.2012 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Testat nach Weihnachten Mittwoch
MehrSystemsicherheit (SS 2015) 30. April 2015. Übungsblatt 2. Buffer-Overflow-Angriffe
Peter Amthor, Winfried E. Kühnhauser [email] Department of Computer Science and Automation Distributed Systems and Operating Systems Group Ilmenau University of Technology Systemsicherheit (SS 2015) 30.
MehrMotivation und Überblick
Motivation und Überblick Drei große Bereiche der Vorlesung: Darstellung von Zahlen in Rechnern Verarbeitung von Binärdaten auf der Ebene digitaler Schaltungen Programmierung auf Maschinenebene und relativ
MehrEinführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009
Einführung Übungen zur Vorlesung Virtuelle Maschinen Stefan Potyra Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SoSe 2009 Übungsaufgaben 1 Entwickeln
Mehr4. Mikroprogrammierung (Firmware)
4. Mikroprogrammierung (Firmware) 4. Ein Mikroprogramm-gesteuerter Computer 4.2 Mikroprogramm-Beispiel: Multiplikation 4.3 Interpretation von Maschinenbefehlen durch ein Mikroprogramm 4. Mikroprogrammierung
MehrOffenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab...
0 1 2 0 2 1 1 2 0 2 1 0 Offenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab... 0 1 2 0 1 2 1 1 3 2 2 3 212 Um solche Tabellen leicht implementieren zu können, stellt Java das switch-statement
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrÜbung zu Betriebssysteme
Übung zu Betriebssysteme Threadumschaltung 6. & 8. Dezember 2017 Andreas Ziegler Bernhard Heinloth Lehrstuhl für Informatik 4 Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl für Verteilte Systeme
Mehr2. 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)
MehrMikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -
Mikrocomputertechnik Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikroprozessor-Achritekturen Folie 2 Mikroprozessor-Achritekturen Klassifizierung anhand Wortbreite CPU-Architektur und Busleitungen
MehrÜbung zu Grundlagen der Betriebssysteme. 2. Übung
Übung zu Grundlagen der Betriebssysteme 2. Übung 23.10.2012 Termine Übungen 1. Übungsblatt http://userpages.uni-koblenz.de/~mips/bs/uebung/ https://svn.uni-koblenz.de/mips/bs/wise2012/exercises/ Abgabe:
MehrB1 Stapelspeicher (stack)
B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 1 Einführung Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Inhalte der Veranstaltung 1 Einführung das Maschinenmodell
MehrMaschinencode Dateiformat und Stackframes
Maschinencode Dateiformat und Stackframes Proseminar C-Programmierung - Grundlagen und Konzepte Julian M. Kunkel julian.martin.kunkel@informatik.uni-hamburg.de Wissenschaftliches Rechnen Fachbereich Informatik
MehrBeispiel. Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio)
Beispiel Beispiel: Namensliste konvertieren (Karl Egon Meier Meier, Karl Egon). s/(.*) (.*)/$2, $1/; Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio) s/(.*) (.*)/$2, $1/; s/(.*) ([a-z]+
MehrEinfü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
MehrPrinzipieller Aufbau und Funktionsweise eines Prozessors
Prinzipieller Aufbau und Funktionsweise eines Prozessors [Technische Informatik Eine Einführung] Univ.- Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg
MehrLinux. Aufgabe: cworld Übung 7 Anhang. Als die Computer noch größer waren: Linux Terminal Arbeiten unter Linux Arbeitsumgebung Manual Pages
Übungen zu Systemnahe Programmierung in C (SPiC) Peter Wägemann, Sebastian Maier, Heiko Janker (Lehrstuhl Informatik 4) Übung 7 Sommersemester 2015 Lehrstuhl Informatik 4 2 20 Terminal - historisches (etwas
MehrMikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)
MehrBetriebssysteme Teil 3: Laufzeitsystem für Programme
Betriebssysteme Teil 3: Laufzeitsystem für Programme 23.10.15 1 Literatur [3-1] Stack: http://fbim.fh-regensburg.de/~hab39652/pg1/skriptum/ ausdruecke/maschinenmodell.html [3-2] https://de.wikipedia.org/wiki/dynamischer_speicher
MehrVorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7
Vorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7 Seminare / Praktikum M1/C1 : Mathe 13:15-14:45, C-Kurs 15:15-16:45h M2/C2 : C-Kurs 13:15-14:45, Mathe 15:15-16:45h M*
MehrVorstellung (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
MehrRechnernetze und -Organisation. Teil B 2012 Tomislav Nad Karl C. Posch
Rechnernetze und -Organisation Teil B 2012 Tomislav Nad Karl C. Posch www.iaik.tugraz.at/content/teaching/bachelor_courses/rechnernetze_und_organisation/ 1 Two different assemblers GNU Assembler as : Uses
Mehr