Programmierung eines Computers (Funktionsweise)

Slides:



Advertisements
Ähnliche Präsentationen
3.2 Subtraktion, Multiplikation, ALU
Advertisements

Multiplizierer Gesucht: Schaltkreis zur Multiplikation zweier Binärzahlen , Beispiel: RW-Systemarchitektur Kap. 3.
Algorithmus. Ein Kochrezept, zum Beispiel: Kartoffelbrei.
Addierwerke.
Rechnen im Binärsystem
Übungsaufgaben für Microsoft Excel
Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das.
Aktueller Stand der Technik. Auf dem Markt sind heute bereits 64-Bit Mikrocontroller. Die meiste Verwendung finden allerdings noch immer die 8-Bit Modelle.
Pool Informatik, Sj 11/12 GZG FN W.Seyboldt 1 Pool Informatik 5 GZG FN Sj. 11/12 Kopieren, Daten, Programme.
Reihenfolge der Operatoren
Java Programme nur ein bisschen objektorientiert.
Электронно-дидактический материал по грамматике. Немецкий язык 5 класс
Potenzfunktion & Wurzelfunktion
Tutorium Software-Engineering SS14 Florian Manghofer.
Die Figuren, besonders Hauptfigur, stehen im Zentrum des Leseinteresses. Ihr Verhalten und ihr Schicksal finden die groβe Aufmerksamkeit Mit dem Begriff.
Zehn Schritte zu Linux Der Weg in eine andere Welt...
Ein Dozent hat mittels eines Fragebogens die Körpergröße seiner Studenten festgestellt. Anhand der erfassten Daten weiß er, dass der kleinste Student 158.
Ich habe gute Nachrichten für diejenigen plus size Frauen-Frauen Woolrich Arctic Parka Aktien.
© Tenbusch Oberstufenzentrum Informations- und Medizintechnik Objektorientierte Programmierung mit Java.
Und zwar, ob Naruto mit Sakura oder mit Hinata ein Paar werden soll.
Mit Dezimalzahlen dividieren
Die Trainingsraum-Methode an der Realschule „Am Heimbach“
1 2 3 Wo sind die Kinderrechte aufgeschrieben?
Unternehmensbroschüre
Eine Präsentation von Sandro Schluep und Leon Wink.
Grundlagen der Informationsverarbeitung
Hello World! Javakurs 2013 Arne Kappen
Merkwürdiges aus der Welt
Was ist neu in der DWMV? wichtige Infos vom Beirat der Menschen mit Behinderung oder psychischer Erkrankung im BeB September 2017 Claudia Niehoff.
Eine wunderbare Geschichte
Einleitung Hallo liebe alle! Wir, die 1a, präsentieren euch:
Forschendes Lernen Forschendes Lernen in der Mathematik
Aus dem Leben eines Hotline-Mitarbeiters
SOZIALE NETZWERKE.
LERNWERKZEUGE, MATERIALIEN UND ORGANISATION
das der Benzinpreis bis zum
Grundlagen und Grundbegriffe
Unterwegs im Internet.
Einfach mal lesen und drüber nachdenken!
Hexadezimale Darstellung von Zahlen
Merkwürdiges aus der Welt
Na, geht doch! Ich lese mit.
Ich werde dir drei Fragen stellen und möchte das du sofort antwortest
Merkwürdiges aus der Welt
Elektronische Post BBBaden.
Graphen.
Merkwürdiges aus der Welt
Titel: Quelle: Übungsart: Titel: Quelle: Uhr Die Uhr lesen lernen
Raphael Fischer Informatik II - Übung 06 Raphael Fischer
Ausgabe eines Berichts aus der Lüftungslogger-Excelmappe als PDF-File Stand Dipl.-Ing. Herbert Trauernicht Eddenwiese Sehnde.
Vorstellung des WP-I-Kurses Sozialwissenschaften
Schreib ein an deinen deutschen Briefpartner
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
Erwartungswerte berechnen
Das Vektorprodukt Wir definieren erneut eine Multiplikation zwischen zwei Vektoren, das Vektorprodukt, nicht zu verwechseln mit dem Skalarprodukt. Schreibe.
Von Wietlisbach, Lenzin und Winter
Datentyp- umwandlung.
Abiturprüfung Mathematik 2015 Baden-Württemberg Allgemeinbildende Gymnasien Wahlteil Analytische Geometrie / Stochastik Aufgabe B 2.1 und B Lösungen.
Das Zahlenbuch, Mathematik im 3. Schuljahr, Klett Siegbert Rudolph
Zusammengesetzte Ereignisse
Merkwürdiges aus der Welt
Bedingungslos glücklich
DB2 – SS 2019 von Baum allgemein bis B*-Baum
Computer und Internet.
Man kann im Internet surfen
Vorstellen und Herleiten der Horner Schemas
DB2 – SS 2019 von Baum allgemein bis B*-Baum
Rechenausdrücke (Terme) – Fachbegriffe - Rechenregeln
RGB-LED Projekt INGOLSTADT.
Information zu Beginn der Stufe Q2
 Präsentation transkript:

Programmierung eines Computers (Funktionsweise) Wussten Sie schon das Computer eigentlich ziemlich dumm sind? Computer können nur ganz wenige Dinge, z.B.: zwei Zahlen addieren zwei Zahlen vergleichen zur nächsten Anweisung springen

Programmierung eines Computers (Funktionsweise) Sicherlich kennen Sie das auch. Sie haben hunderte Zahlen im Kopf, da wäre es schön wenn man die irgendwo merken könnte. Also nehmen Sie sich ein Blatt Papier und schreiben die Zahlen auf. Der Computer arbeitet mit Milliarden solcher Zahlen und ihm geht genauso die Puste aus wie Ihnen. Deshalb schenkt man ihm einen riesengroßen Papierstapel (=Speicher), wo er seine Zahlen aufschreiben kann. Jeder Computer hat spezielle Anweisungen, damit man ihm sagen kann auf welches Blatt Papier er welche Zahl schreiben soll. Er kann leider nur eine Zahl pro Blatt Papier merken.

Programmierung eines Computers (Funktionsweise) In der Mathematik können Sie mit unbegrenzt großen Zahlen rechnen. Ein Computer kann das leider nicht, jedenfalls nicht ohne Unterstützung. Die meisten Computer kennen Zahlen von 0- 255 (8 Bit) 0 – 65535 (16 Bit) 0 – 4294967295 (32 Bit)

Programmierung eines Computers (Funktionsweise) Sie wussten es schon oder? Ein 64 Bit Computer kann demnach mit noch größeren Zahlen arbeiten. Er wird nicht zwangsläufig schneller dadurch. Mit Unterstützung der Software kann der Computer auch größere Zahlen berechnen. Die muss er aber wieder in seinem begrenzten Papierstapel (Speicher) aufschreiben.

Programmierung eines Computers (Funktionsweise) Komplexere Dinge wie Multiplikation, Division, Wurzelziehen werden alle auf die Addition zurückgeführt. Die meisten Computer haben hier spezielle Anweisungen, die fest verdrahtet sind in der Hardware. Computer haben einen Vorteil gegenüber Ihnen: Sie sind verdammt schnell in dem was sie tun.

Programmierung eines Computers (Was ist Programmieren?) Programmieren bedeutet nun: 1. Die passenden Anweisungen benutzen 2. Anweisungen in richtiger Reihenfolge zusammensetzen 3. Fehler finden weil man 1. und 2. falsch gemacht hat Die meiste Zeit seines Lebens verbringt der Programmierer in Phase 3.

Programmierung eines Computers (Anweisungen und Reihenfolge) Wenn Sie folgende Aufgabe lösen wollen: 4 + 5 * 3 + 2 Dann müssen Sie dem Computer folgende Anweisungen sagen: Addiere 4 + 5 Schreibe das Ergebnis auf Blatt 1 Addiere 3 + 2 Schreibe das Ergebnis auf Blatt 2 Multipliziere die Zahlen auf Blatt 1 und 2 Schreibe das Ergebnis auf Blatt 3

Programmierung eines Computers (Entscheidungen) Das ist ganz schön langweilig oder? Wenn man nur Zahlen hintereinander berechnet und nichts damit macht hat das wenig Sinn. Daher kennt jeder Computer Anweisungen um die Zahlen zu vergleichen und entsprechend an eine andere Stelle zu springen.

Programmierung eines Computers (Entscheidungen) Sie möchten die Zahl auf Blatt 3 mit 45 vergleichen. Abhängig davon soll die Zahl 0 oder die Zahl 1 auf ein neues Blatt 4 schreiben. Dies würde dann so aussehen: 5. … 6. Schreibe das Ergebnis auf Blatt 3 7. Vergleiche die Zahl auf Blatt 3 mit 45 8. Wenn die Zahlen gleich waren, dann springe zu Zeile 11 9. Schreibe die Zahl 0 auf Blatt 4 10. Springe zu Zeile 12 11. Schreibe die Zahl 1 auf Blatt 4 12. …

Programmierung eines Computers (Sprachen) Wie in der realen Sprachwelt gibt es unzählige Programmiersprachen und Dialekte um dem Computer die Anweisungen mitzuteilen. Jede dieser Sprachen hat Ihre Vor- und Nachteile. Will man den Computer richtig ausreizen, so wird man eine Sprache wählen, die direkten Zugriff auf den Papierstapel bietet. Will man abstrakter programmieren, so wählt man höhere Sprachen.

Programmierung eines Computers (Sprachen - Assembler) Assembler ist eine Sprache auf Maschinenebene und erlaubt es den Papierstapel direkt zu manipulieren. Unser bisheriges Beispiel würde auch analog dazu aussehen: ADD 4, 5 MOV Ergebnis, Blatt1 ADD 3, 2 MOV Ergebnis, Blatt2 MUL Blatt1, Blatt2 MOV Ergebnis, Blatt3 CMP Blatt3, 45 BEQ Zeile11 MOV 0, Blatt4 BRA Zeile12 MOV 1, Blatt4 12. …

Programmierung eines Computers (Sprachen – C) C ist eine höhere Sprache, welche es z.B. erlaubt die Papierblätter zu Strukturen zu gruppieren. Das ist in etwa so als würden Sie einen Ordner mit zusammengehörigen Blättern erstellen. Die Anweisungen wie man den Ordner benutzt legen sie aber woanders hin. Man nennt dies prozedural, weil Papierblätter und Anweisungen hier noch getrennt sind.

Programmierung eines Computers (Sprachen – C) Unser bisheriges Beispiel würde in C so aussehen: Blatt1 = 4 + 5. Blatt2 = 3 + 2. Blatt3 = Blatt1 * Blatt2. If (Blatt3 == 5) Blatt4 = 1 Else Blatt4 = 0

Programmierung eines Computers (Sprachen – C++) C++ ist eine Erweiterung von C. Hier kann man die Ordner mit Papierblättern auch mit den Anweisungen zusammen ablegen. Man nennt die Ordner dann nicht mehr Strukturen, sondern Klassen. Man nennt dies objektorientiert.

Programmierung eines Computers (Sprachen – C++) Bei der Objektorientierung kann man auch Hinweise in einen Ordner schreiben, um Informationen in anderen Ordnern zu finden. So muss man nicht immer alles neu aufschreiben. Objektorientierung ist also etwas für faule Programmierer, die nicht alles doppelt schreiben möchten.

Programmierung eines Computers (Sprachen – Smalltalk) Smalltalk ist eine rein objektorientierte Sprache. Man arbeitet nicht mehr direkt mit einem Papierstapel, sondern betrachtet alles als ein Objekt, auch Zahlen und Ordner. Man addiert nicht mehr zwei Zahlen 4 und 5, sondern schickt dem Zahlobjekt 4 die Nachricht + mit einem Parameter 5. Es wird also dem Objekt überlassen, was es tun soll, wenn man ihm ein + schickt.

Programmierung eines Computers (Sprachen – Smalltalk) Was bringt diese ganze Objektorientiertheit nun? Alles ist ein Objekt -> Einfachheit Man braucht sich nicht mehr um den Papierstapel kümmern oder dessen Aufbau Man rechnet mit unbegrenzt großen Zahlobjekten und nicht mit begrenzten 32-Bit-Zahlen Alle Objekte verstehen Nachrichten -> Gleichheit

Programmierung eines Computers (Sprachen – Smalltalk) Unser bisheriges Beispiel würde in Smalltalk so aussehen: | ergebnis1 ergebnis2 ergebnis3 ergebnis4 | ergebnis1 := 4 + 5. ergebnis2 := 3 + 2. ergebnis3 := ergebnis1 + ergebnis2. ergebnis3 = 45 ifTrue: [ergebnis4 := 1] ifFalse: [ergebnis4 := 0]

Programmierung eines Computers (Sprachen – Smalltalk) Wo wird Smalltalk nun eigentlich verwendet? Natürlich verwendet die Firma Georg Heeg eK die Sprache Smalltalk. Wir bieten KnowHow und Software rund um die Sprache an. Da Smalltalk sehr einfach und konsistent ist können Programme deutlich schneller entworfen werden zu attraktiveren Preisen. Oder kurz gesagt: Wir verwenden Smalltalk damit ihre Geldbörse nicht zu dünn wird.

Programmierung eines Computers (Sprachen – Smalltalk) Wo wird Smalltalk nun eigentlich verwendet? Georg Heeg eK ABB Global Foundries BMW Deutsche Bahn Cincom Systems IBIS JPMorgan Texas Instruments Bach-Gesellschaft Und viele andere…