3. Rechner- und Prozessorarchitekturen

Größe: px
Ab Seite anzeigen:

Download "3. Rechner- und Prozessorarchitekturen"

Transkript

1 3. Rechner- und Prozessorarchitekturen 3.1 Entwicklung der Rechnertechnik 3.2 Grundlegende Rechnerarchitekturen 3.3 Architektur und Maschinenbefehle des 886, Interrupts Folie Entwicklung der Rechnertechnik Mechanische Rechenautomaten Programmierbare Steuerungen, Rechenautomaten Erste Rechner in Deutschland Erste amerikanische Entwicklungen John von Neumann Rechner mit Transistoren die zweite/dritte Generation Rechner der vierten Generation / Erste PCs Rechner der fünften Generation leistungsfähige Mikroprozessoren Moore s Law zukünftige Entwicklung Folie 11

2 Mechanische Rechenautomaten 1623: Prof. Wilhelm Schickard ( ), konstruiert in Tübingen die erste bekannte mechanische Rechenmaschine (Professor für biblische Sprachen, später Mathematik und Astronomie). Sie erlaubt eigentlich nur Additionen und Subtraktionen. Schickard verwendet die Zehnerdarstellung für Zahlen. (Arithmetik-Einheit (ALU)) 1642: Blaise Pascal ( ) entwickelt eine 8- stellige Additions- und Subtraktionsmaschine. Mechanischer Zähler als Räderwerk. 2 Sätze von je 6 Zählscheiben mit 1 Ziffern. Er war der Erste, der mit seinen Rechenmaschinen ( Pascalinen ) Geld verdiente. Er stellte diese 8- stellige Addier-und Subtrahiermaschine für seinen Vater, einen Steuereinzieher, her Gottfried Wilhelm, Freiherr von Leibnitz entwickelt Rechenmaschinen. Einführung des binären Zahlensystems Quelle: Lindenstruth, Uni Heidelberg Folie 111 Programmierbare Steuerungen, Rechenautomaten 1728: Falcon baut eine Webstuhlsteuerung mit gelochten Metallplatten. (programmierte Steuerung) 185: Joseph-Marie Jacquard entwickelt einen Musterwebstuhl, der mit Lochkartenstreifen gesteuert wird. (programmierbare Steuerung) 1832: Charles Babbage entwickelt die sogenannte DIFFERENCE - ENGINE. Erstellung von Navigationstafeln / trigonometrischen Tafeln (Addition, Multiplikation, evtl. Potenzieren). Er entwickelt danach die ANALYTICAL - ENGINE, die jedoch niemals fertiggestellt wird. In ihr sind schon die wichtigsten Bestandteile eines Computers eingebaut: Arbeitsspeicher, Central Processing Unit, Ausgabe- Drucker, Lochkarten- Eingabe für Befehle und Werte. 1886: Zähl-und Sortierapparatur von Hermann Hollerith Herrmann Hollerith entwickelt für die 11. amerikanische Volkszählung von 189 eine lochkartengesteuerte Zählmaschine. Mit 43 Maschinen schafft er in 4 Wochen mit 5 Helfern das, was 1 Jahre zuvor ebenso viele Personen 7 Jahre beschäftigte. 191 wird auch der preußische Zensus damit durchgeführt. (Datenspeicher: Lochkarte) Auf Holleriths Patent baut später die Firma IBM auf. Quelle: Lindenstruth, Uni Heidelberg Folie 112

3 Erste Rechner in Deutschland 197: Forest entwickelt die Elektronenröhre. 1938: Konrad Zuse beendet den Bau der Z1. Das Speicher- und Rechenwerk wurde von Zuse und Studienkollegen mit Laubsägen aus Blechen ausgesägt. Die Programme wurden auf Filmstreifen gelocht. 194: Konrad Zuse baut die Z2 in Relaistechnik. Sie funktioniert nur bei der Vorführung. 1941: Die Zuse Z3, aufgebaut aus Relais Speicher Lochstreifenleser Relais des Rechenwerks Binärdarstellung von Befehlen und Zahlen Binäre Schaltelemente für Speicherung und Verarbeitung Gleitkomma-Darstellung von Zahlen (Vorzeichen, Exponent, Mantisse) Darstellung des Ablaufs als Folge von Rechenschritten (noch keine bedingten Befehle) Aufbau mit elektromagnetischen Relais (6 für Rechenwerk, 14 für Speicherwerk; 64 Speicherworte à 22 Bit) Steuerung über 8-Kanal-Lochstreifen Geschwindigkeit: 3 Sekunden für Multiplikation, Division, Wurzelziehen Plankalkül, erste Programmiersprache Folie 113 Konrad Zuse mit Z3 Zuse, Konrad, Ingenieur, *Berlin , Hünfeld ; begann 1934 mit Entwicklungsarbeiten für programmgesteuerte Rechengeräte; schuf 1941 den ersten voll arbeitsfähigen programmgesteuerten elektromechanischen Digitalrechner, den Rechner Z3 mit 2 Relais. Gleichzeitig arbeitete Zuse an der Röhrenrelaistechnik für Computer (Z4, 1942). Die von ihm 1949 gegründete Zuse KG, die ab 1955 elektronische Rechner baute (insbesondere Z22, Z33), ging später in der Siemens AG auf. 22 Bibliographisches Institut & F. A. Brockhaus AG Folie 114

4 Erste amerikanische Entwicklungen 1944: Howard H. Aiken baut an der Harvard University mit Unterstützung der IBM MARK I, eine raumfüllende Rechenanlage. Für eine Addition benötigt sie nur,3 Sekunden. 1945: Angeblich erster Computerabsturz. Der Experimentalrechner Mark I weist in Manchester eine Fehlfunktion auf. Die Mathematikerin Murray Hopper entdeckt als Ursache einen Käfer, der zwischen die Relais geriet. Bis heute nennt man einen Software-Fehler Bug. 1946: Dr. J. Prespert Eckert und John W. Mauchley (University of Pennsilvania, Moore Schule) bauen die ENIAC (Electronic Numerical Integrator And Computer). Vollständig in Röhrentechnik (ca. 18.) aufgebaut, benötigt ENIAC immerhin noch 14 qm Grundfläche und ist rund 2 mal so schnell wie MARK I. Folie 115 John von Neumann Um 1944: Mathematiker John von Neumann ( ) entwickelt mit dem ENIAC Team eine neue Rechnerarchitektur. Von-Neumann-Architektur - moderner Computer: Das Programm wird elektronisch gespeichert und nicht über Lochbänder eingelesen oder Schalttafeln fest eingestellt. Juni 1945: Von Neumann publiziert seine Ideen von Neumann Computer nicht patentierbar! Folie 116

5 Rechner mit Transistoren die zweite/dritte Generation 1947 Schockley, Brattain und Bardeen (Bell Labs / AT&T) bauen den ersten (Germanium-) Transistor (Nobel Preis für Physik 1956). 1949: EDSAC in Cambridge, erster voll funktionstüchtiger Computer nach Von-Neumanns Vorgaben. Er produzierte nach 3 Sekunden eine Tabelle mit Quadratzahlen. Ab 1955: Der Transistor wird in der 1949 von Shockley entdeckten Form industriell gefertigt Z22 von der Zuse KG an Hochschulen geliefert; Magnet-Trommelspeicher (IBM 65), Magnet-Kernspeicher, Rechenzeit: Addition,6 ms, Multiplikation 15 ms Ab 1957: DV-Anlage der 2.Generation. Industrielle Herstellung von elektronischen Rechenanlagen DV-Anlage der 3.Generation unter Verwendung integrierter Schaltkreise. Viele Bauteile werden auf kleinstem Raum vereinigt. Diese Technik gestattet es anfänglich, 16. Additionen je Sekunde durchzuführen. Beginn der Computer Revolution. Folie 117 Rechner der vierten Generation erste PCs 1975 DV-Anlagen der 4.Generation: Mehrere tausend Schaltkreise auf einem Chip Einführung von CAD, CAM, PPS 1977 Erster PC von Commodore (PET21) 1981 IBM PC auf Grundlage des 1979 erschienenen Intel Mikroprozessors 886, Betriebssystem MS DOS: Auf Text basierende Befehlssprache 1983/84 Apple Macintosh auf Grundlage des 1979 erschienenen Motorola Mikroprozessors 68 (32 Bit Architektur, ca.68. Transistoren), MacIntosh-Betriebssystem: Auf Graphik basierende Befehlssprache (Fenstertechnik) Folie 118

6 Rechner der fünften Generation leistungsfähige Mikroprozessoren 1982 DV-Anlage der 5.Generation: Entwicklung von parallelen Systemen, Anwendung der Künstlichen Intelligenz (KI) CAD CAM PPS - CAx CIM 1992 Erster 64 Bit Mikroprozessor, Alpha / 2164 von Digital Equipment, 1,6 Millionen Transistoren, 2 MHz Taktrate 1993 Intel Pentium, 3,1 Millionen Transistoren, Taktrate 6/66 MHz 1999 Intel Pentium III, 9,5 Millionen Transistoren, Taktrate 65 MHz (Slot- Version) AMD K7 (Athlon), 22 Millionen Transistoren, Taktrate 7 MHz 2 Pentium IV, 42 Millionen Transistoren, Taktraten bis 3 GHz (22) Neue Anwendungen: Virtuelle Realität Augmented Reality Sprachdialogsysteme Folie 119 Anzahl Transistoren Allgemeine Trends / Moore s Law Exponentialgesetz der Mikroelektronik ( Mooresches Gesetz ) [Von Gordon E. Moore, Intel Chairman of the Board, 1965 geäußerte Vermutung] Die Anzahl der Transistoren je Prozessorchip verdoppelt sich alle 2 Jahre. Die Verarbeitungsleistung der Prozessoren verdoppelt sich alle 1,5 Jahre. Vervierfachung der Speichergröße alle 3 Jahre. Verdopplung der Speicherleistung alle 1 Jahre. Zum gleichen Preis die doppelte Leistung in weniger als zwei Jahren Moore s Law angewandt auf Mikroprozessoren Pentium Pentium II Pentium Pro Pentium IV Pentium III Folie 12

7 Trends Mikroprozessoren und Speicher 1 Leistungszuwachs der Mikroprozessoren: Etwa 2-fach pro 1,5 Jahre Relative Leistung 1 1 Moore s Law Leistungsdifferenz wächst etwa um 5% pro Jahr Jahr Leistungszuwachs der Speicher: Etwa 2-fach pro 1 Jahre Nach Thiele, ETHZ Folie 121 Aus drucktechnischen Gründen leere Folie! Folie 122

8 3.2 Grundlegende Rechnerarchitekturen Begriff Rechnerarchitektur Schichtenmodell eines Rechnersystems Grundarchitekturen (Harvard Architektur - Von Neumann Architektur) Von Neumann Architektur Aufbau einer Zentraleinheit Modell eines einfachen Von Neumann - Rechners Programmabarbeitung in Von Neumann Maschinen ALU Steuerwerk Folie 123 Begriff Rechnerarchitektur Rechnerarchitektur, Informatik: Teilbereich der technischen Informatik, der sich mit dem Aufbau von Rechnern aus Funktionseinheiten sowie deren Zusammenwirken beschäftigt 22 Bibliographisches Institut & F. A. Brockhaus AG Oder: Eine Rechnerarchitektur beschreibt die Eigenschaften eines Systems, d.h. die Struktur des Entwurfs und das funktionelle Verhalten. Die Organisation des Daten- und Kontrollflusses, der logische Entwurf und die physikalische Realisierung stellen die Umsetzung der Architektur dar. Folie 124

9 Schichtenmodell eines Rechnersystems Hierarchie der Sichtweisen: Jede Ebene ist eine Abstraktion der jeweils tieferen. Mehrere Elemente aus der tieferen Ebene werden zusammengefasst und bilden ein Element der höheren Ebene. Zum Beispiel werden Transistoren zu logischen Gattern verschaltet. Anwendungsprogramme Höhere Programmiersprachen Assemblersprachen, Maschinencode Mikroprogrammierte / festverdrahtete Steuerung CorelDraw, PaintShopPro, Word, PowerPoint, Photoshop, Autocad, for (i=; i<1; i++) { cout << i; // i ausgeben } Adr. Masch code Menemonic 5 A1 MOV AX,VARA ADD AX,VARB C A3 4 MOV VARC,AX Fetch Decode Execute Write Back a i b i a i b i Funktionseinheiten (ALU, Speicher, ) C out C in C out C in S i S i Logik-Ebene (UND, ODER, ) Physikalische Ebene (Transistoren und Verbindungen) Folie 125 Harvard - Architektur Befehle und Daten in getrennten Speichern Speicher Ein-Ausgabe- Bausteine Grundarchitekturen CPU Von Neumann Architektur (Princeton Architektur) Befehle und Daten im gemeinsamen Speicher Speicher Ein-Ausgabe- Bausteine CPU DS Datenspeicher CS Programmspeicher Daten Befehle Steuerwerk Rechenwerk DS Daten CS Programm Daten und Befehle Steuerwerk Rechenwerk Je ein Befehls- und Datenbus Schneller gleichzeitiger Zugriff auf Code und Daten Hauptanwendung: Signalprozessoren Nur ein Bus für Befehle und Daten Flexible Aufteilung des Speichers zwischen Code und Daten Hauptanwendung: Allgemeine Computer Gemeinsames Kennzeichen: Sequentielle Abarbeitung des Programms / der Befehle Heute sind häufig Mischformen anzutreffen Folie 126

10 John von Neumann John von Neumann * 193 in Budapest/Ungarn 1957 in Washington DC/USA (Studierte u.a. in Berlin) Mathematiker und Wissenschaftler. Begründer der prinzipiellen Architektur heutiger Digitalrechner. Grundidee: Modell der menschlichen Informationsverarbeitung Aufnahme von Informationen über Sinnesorgane Speicherung von Informationen Verarbeitung von Informationen nach vorgegebenen Regeln Ausgabe von Ergebnissen Ansatz: Das menschliche Gedächtnis umfasst sowohl die aufgenommenen Informationen (Daten) als auch die Regeln zu deren Verarbeitung (Programme) Ergebnis: Hieraus folgert Neumann, dass es von Vorteil ist Programme wie alle anderen Informationen im Datenspeicher des Computers abzulegen Quelle: N.N. FH-Niederrhein Folie 127 Blockschaltbild der Von Neumann Architektur Eingangseinheit (Input Unit) Speicher (Memory) Arithmetisch/ Logische Einheit (ALU) Steuerwerk (Control Unit) Ausgangseinheit (Output Unit) In realen Rechnern werden die Arithmetisch/Logische Einheit (Rechenwerk) und das Steuerwerk (Leitwerk, Kontrolleinheit) meist in einer physikalischen Einheit (Chip) zusammengefasst zentrale Verarbeitungseinheit - Central Processing Unit - CPU Nach: A.W. Burks, H.H. Goldstine, John von Neumann (Princeton University): Preliminary Discussion of the Logical Design of an Electronic Computing Instrument, U.S. Army Ordnance Department Report, 1946 Folie 128

11 Aufbau einer Zentraleinheit (CPU) Die CPU vereinigt die Arithmetic/Logic Unit und das Steuerwerk aus dem von Neumann Modell. Ein Teil des Speichers rutscht in die CPU: Operanden für die ALU werden in Registern der CPU gespeichert und nicht jedes mal aus dem Speicher geholt. Register Steuerwerk ALU Datenbereich Steuerbereich Systembus Folie 129 Eine konkrete von Neuman Maschine Ein- / Ausgabe CPU (ALU und Steuerwerk) Speicher Mainboard ASUS A7V 133 (für Athlon/Thunderbird- und Duron-Prozessoren) Folie 13

12 Modell eines einfachen von Neumann - Rechners Akkumulator Flags Zero Befehlszähler (PC = Program Counter) Adr. n Befehl Speicher Beispiel für Codierung von Befehlen: OP-Code Adressteil 15 4 Bit 12 Bit Es sei der Operationscode eines Befehls 4H und die Adresse der Speicherzelle 8H: Befehl Befehl Datenwort Datenwort Datenwort Folie 131 Beispiel: Maschinenbefehle für Von Neumann- Rechner Die Befehle (Instructions) werden als Mnemocodes dargestellt. Mnemocodes stellen eine verständliche Form der Befehle dar und sind direkt abbildbar auf die Bitmuster der Befehle und damit auf die Worte des Speichers. Mnemocodes einiger ausgewählter Beispielbefehle: LDA <adresse> ; Lade Akkumulator mit Inhalt der Speicherzelle <adresse> STA <adresse> ; Speicher den Inhalt des Akkumulators in der Speicherzelle <adresse> ADD <adresse> ; Addiere den Inhalt der Speicherzelle <adresse> zum Inhalt des Akkumulators und lege das Ergebnis im Akkumulator ab SUB <adresse> ; Subtrahiere den Inhalt der Speicherzelle <adresse> vom Inhalt des Akkumulators und lege das Ergebnis im Akkumulator ab JMP #adresse ; Springe unbedingt zu #adresse, d.h. lade den Befehlszähler (PC) mit adresse JZ #adresse ; Springe, wenn der Inhalt des Akkumulators =, d.h. wenn das Zero-Flag gesetzt ist JNZ #adresse ; Springe, wenn der Inhalt des Akkumulators <>, d.h. wenn das Zero-Flag nicht gesetzt ist Folie 132

13 Programmabarbeitung einer von Neumann Maschine - 1 PC Adr JMP #2 STA <23> SUB <22> Speicher JMP #2 STA <23> JNZ #15 ADD <21> LDA <2> Adr. Befehl Beschreibung 1: LDA <2> Transferbefehl 1.) 2 aus Speicherzelle 2 Akku 2.) PC auf Adresse 11 weiterschalten 11: ADD <21> Sowohl Transfer- als auch Arithmetikbefehl 1.) 3 aus Speicherzelle 21 ALU 2.) Addiert in ALU: ) Ergebnis 5 wird in Akku gespeichert. Flags bilden: Z-Flag löschen (Ergebnis <> ) 4.) PC auf Adresse 12 weiterschalten 12: JNZ #15 Bedingter Sprungbefehl Zero-Flag ist PC mit Wert 15 laden, d.h. Sprung wird ausgeführt 15: SUB <22> Sowohl Transfer- als auch Arithmetikbefehl 1.) 4 aus Speicherzelle 22 ALU 2.) Subtrahiert in ALU: ) Ergebnis 1 wird in Akku gespeichert. Flags bilden: Z-Flag löschen (Ergebnis <> ) 4.) PC auf Adresse 16 weiterschalten Folie 133 Programmabarbeitung einer von Neumann Maschine - 2 Adr JMP #2 STA <23> SUB <22> Speicher JMP #2 STA <23> JNZ #15 ADD <21> LDA <2> Adr. Befehl Beschreibung 16: STA <23> Transferbefehl. 1.) Inhalt des Akku ( 1 ) Speicherzelle 23 2.) PC auf Adresse 17 weiterschalten 17: JMP #2 Unbedingter Sprungbefehl PC mit Wert 2 laden 2: Und so weiter Folie 134

14 Blockschaltbild einer ALU A n B n A B ALU Arithmetik Logik ALU Control Summe Erg.-Logik Control n n Ergebnis Flags Ergebnis Flags n Wertlänge in Bit A,B Operanden, die zur Berechnung anstehen Control Steuersignale zur Einstellung der Betriebsart Flags Zustand des Ergebnisses der Ausführung Ergebnis Ergebnis der logischen bzw. arithmetischen Operation Folie 135 Operationen einer ALU Die ALU ist ein Schaltnetz (nur logische Gatter, keine Speicher) Die ALU ist kaskadierbar, z.b. 2x4-bit-ALU 8-bit-ALU; eine 8-bit-ALU enthält ca. 2 logische Gatter Die ALU-Rechenoperationen lassen sich zurückführen auf Addition Komplementbildung Schieben (Shift) Die logischen Operationen sind rückführbar auf AND OR NOT Darüber hinaus fallen Informationen an, die für die nachfolgenden Operationen wichtig sein können (Flags). Folie 136

15 Beispiel: Erzeugung der Bedingungsbits (Flags) Ergebnis Carry (der Vorstelle) Carry >=1 =1 S Z O C Flags Meist Flagregister, Statusregister oder Processor Status Word (PSW) genannt C: Carry-Flag Übertrag, abhängig von der arithmetischen Operation O: Overflow-Flag Wird gesetzt, wenn ein Überlauf des Zahlenbereichs in Zweierkomplementdarstellung erfolgt Z: Zero-Flag Wird gesetzt, wenn der Wert im Ergebnis ist. S: Sign-Flag (Negativ-Flag, Vorzeichen-Flag) ist eine Kopie des Vorzeichenbits des Ergebnisses Folie 137 Modell der Arbeitsweise eines Steuerwerks - Befehlszyklus Start Befehlszähler = Beginn (z.b. = ) Befehl aus Speicher holen (Fetch) Befehl ausführen Befehlszähler + 1 Befehlszyklus Befehl dekodieren, ggf. Operanden holen (Decode) Befehl ausführen (Execute) nein Stop? ja Ende Ergebnis abspeichern (Write Back) Folie 138

16 3.3 Architektur und Maschinenbefehle des 886 Architektur des 886, Bedeutung der Flags Grundlagen der Maschinenprogrammierung Segmentierung und Speichermodelle Programmiermodelle Programmentwicklung in Assembler Aufbau von Assemblerprogrammen Assembleranweisungen und Maschinenbefehle Assembler und Hochsprachen (Beispiel C) Interrupts Einteilung der Interrupts Ablauf der Interruptverarbeitung Hardwaretechnische Realisierung Interrupt-Service-Routinen Folie 139 Blockschaltbild des Mikroprozessors Intel 886 Folie 14

17 Bedeutung der Flags des OF DF IF TF SF ZF AF PF CF CF - Carry Flag (Übertrags-Flagge): Zeigt an, ob bei arithmetischen Operationen der Rechenbereich des Registers überschritten wurde. Carry kann per Befehl gesetzt, gelöscht, komplementiert werden. Sequentielle Addition und Subtraktion mit größerer Wortbreite als 16 Bit. PF - Parity Flag (Paritäts-Flagge): Gesetzt, wenn niederwertiges Byte des Ergebnisses eine gerade Anzahl Einsen enthält Prüfung mit Quersumme z.b. bei serieller Datenübertragung. AF - Auxiliary Carry Flag (Hilfsübertrags-Flagge): Zeigt Übertrag von Bit 3 nach Bit 4 an. Halbbyteüberlauf, für Arbeit mit BCD-Zahlen ZF - Zero Flag (Null-Flagge): Gesetzt, wenn das Ergebnis der letzten Operation Null war (Arithmetik, Logikbefehle) Bedingte Programmverzweigungen, Zählschleifen SF - Sign Flag (Vorzeichen-Flagge): Kopie des Vorzeichens des Ergebnisses; gibt an, ob zuletzt durchgeführte arithmetische oder logische Operation ein positives () oder negatives (1) Ergebnis hatte Bedingte Programmverzweigungen, 2er-Komplement Arithmetik Folie 141 Bedeutung der Flags des OF DF IF TF SF ZF AF PF CF TF - Trap Flag (Einzelschritt-Flagge): Versetzt den Prozessor in den Single-Step-Mode (Einzelschrittmodus). Prozessor führt nach jedem Befehl einen Software-Interrupt aus (INT 1H). Zum Debuggen IF - Interrupt Flag (Unterbrechungs-Flagge): Kann per Befehl (STI, CLI) gesetzt beziehungsweise zurückgesetzt werden. 1: Prozessor lässt keine von außen kommenden Unterbrechungsanforderungen zu. Systemprogrammierung DF - Direction Flag (Richtungs-Flagge): Verarbeitungsrichtung bei Zeichenketten-Operationen (Strings) : in aufsteigender Richtung der Speicheradressen (Setzen/Löschen mit den Befehlen STD und CLD) OF - Overflow Flag (Überlauf-Flagge): Gesetzt, falls Ergebnis einer Operation für Zieloperand zu groß oder zu klein, also Bereichsüberschreitung bei Arithmetik im 2er-Komplement, d.h. Überlauf in Vorzeichenstelle. Arithmetik im 2er-Komplement Folie 142

18 Segment-Adressierung Bildung der physikalischen Adresse aus Segmentadresse und Offsetadresse Einen Speicherbereich von 64 KByte Größe nennt man in der Intel-Technologie ein Segment CS Segment-Basisadresse SS Segment-Basisadresse DS Segment-Basisadresse ES Segment-Basisadresse IP Offset SP Offset Effektive Adr. Offset Effektive Adr. Offset Codesegment Stacksegment Datensegment Extrasegment FFFFFH 64 kbyte H Folie 143 Segmentierung und Adressbildung des 886 Segmentbasis, z.b. CS-Register * 16 D 1 2 A 4 Offset, z.b. IP-Register 2 2 Logische Adresse A Schreibweise für die Logische Adresse: z.b. CS = 12A4H, IP = 22H wird CS : IP = 12A4H : 22H geschrieben 1 2 A 6 2 Physikalische Adresse Physikalische Adresse = Offsetadresse + Segmentadresse * 16 Folie 144

19 Speichermodelle des 886 TINY: Daten (und Stack) und Code zusammen maximal 64 KByte; Daten NEAR, Code NEAR; SMALL: Daten (und Stack) und Code jeweils maximal 64 KByte; Daten NEAR, Code NEAR; MEDIUM: Daten maximal 64 Kbyte, Code mehr als 64 KByte; Daten NEAR, Code FAR; COMPACT: Daten mehr als 64 KByte, Code maximal 64 KByte; Daten NEAR, Code NEAR; Compiler: Datenfeld (Arrays) <= 64 KByte, innerhalb des Datenfeldes wird NEAR-Adressierung benutzt; LARGE: Daten und Code jeweils mehr als 64 KByte; Daten FAR, Code FAR; Compiler: Datenfeld (Arrays) <= 64 KByte, innerhalb des Datenfeldes wird NEAR-Adressierung benutzt; HUGE: Daten und Code jeweils mehr als 64 KByte; Daten FAR, Code FAR. Compiler: Datenfeld (Arrays) >= 64 KByte, innerhalb des Datenfeldes wird FAR-Adressierung benutzt; Folie 145 Programmentwicklung in Assembler Editor Editor Quell-/Source Code Quell-/Source Code datei.asm Übersetzer (Assembler) PUBLIC EXTRN Übersetzer (Assembler) Object Code Object Code datei.obj datei.lst (Maschinencode) (Listing, Assemblierungsliste) Binder (Linker) Bibliothek (Library) Ladbarer Objekt Code Lader datei.exe (Executable Code) datei.map (Speicherbelegungs- Plan) Programm wird ausgeführt Folie 146

20 Programmiermodelle für Intel-Prozessoren Die Kenntnis des Programmiermodells ist Voraussetzung für die maschinennahe Programmierung. Für einen Programmierer werden mit dem Programmiermodell alle wesentlichen Eigenschaften der Rechnerhardware festgelegt. Unter einem Programmiermodell versteht man Struktur und Funktion der benutzerzugänglichen Register einer CPU. Die Struktur beinhaltet die Anzahl, Größe und den Anwendungsbereich der Register. Die Funktion der Register wird mit dem implementierten Befehlssatz beschrieben Pentium (8586) Merced ia-64 ia-32: 32-Bit-Programmiermodell ia-16: Erweitertes 16-Bit-P modell 16-Bit-Programmiermodell Nicht dargestellt sind Paralleltypen von Intel und anderen Herstellern Folie 147 AX BX CX DX SP BP SI DI CS DS SS ES 15 IP 15 Flags 16-Bit-Programmiermodell des 886 Allzweckregister AH AL BH BL CH CL DH DL Zeige- und Indexregister 15 Segmentregister 15 Bezeichung Akkumulator Basisregister Multiplikat., Division, IO, Schieben Zeiger Basisadresse im DS Zählregister Wiederholen, Verschieb., Rotieren Datenregister Multiplikation, Division, IO Stapelzeiger (Stackpointer) Basiszeiger Zeiger Basisadresse im SS Source-Index Quellzeichenkette, Indexzeiger Destination-Index Zielzeichenkette, Indexzeiger Codesegment Datensegment Stacksegment Extrasegment Befehlszähler Anwendungsbeispiel Segment der Befehle Standardsegment der Daten Segment des Stacks Frei verwendbares Segment Offset der Befehle Flaggen: Prozessorstatus, Operationsergebnisse Folie 148

21 Aufbau eines Assemblerprogramms Programmkopf.MODEL SMALL.STACK 1H.DATA.CODE BEGINN: MOV MOV DS,AX Benutzercode MOV AH,4CH INT 21H Unterprogramme END BEGINN Kommentar, der das Programm kurz beschreibt. Zusätzliche Angaben über Autor, Änderungen usw. Hier legt der Programmierer das vom Assembler umzusetzende Speichermodell fest. Meist reicht SMALL aus. Definiert ein Stacksegment der angegebenen Größe. Definition des Datensegments. Hier werden Daten und Variablen angelegt. Definition des Codesegments. Wird mit einem Label eingeleitet und mit END Label abgeschlossen. Programminitialisierung: DS wird über AX mit Beginn des Datensegments geladen Hier steht das eigentliche Hauptprogramm DOS wird mit INT 21H aufgerufen. Der Funktionscode 4CH bedeutet Programm terminieren. Unterprogramme strukturieren und modularisieren ein Programm. Folie Beispielprogramm.MODEL SMALL ;Verwendetes Speichermodell.STACK 1H ;Reserviert Speicher fuer Stack ; DATA ;Definiert den Beginn des Datensegments VARA DW 25 ;Definiert Speicherwort, initialisiert Inhalt=25 VARB DW 125 ;Definiert Speicherwort, initialisiert Inhalt=125 VARC DW? ;Definiert Speicherwort, Inhalt nicht initialis. ; CODE ;Definiert den Beginn des Codesegments BEGINN: MOV ;AX = Beginn des Datensegments MOV DS,AX ;AX in DS Register schieben (laden) ; MOV AX,VARA ;Wert 25 von Variable A in AX schieben (laden) ADD AX,VARB ;Addiere 125 (VARB) zu AX MOV VARC,AX ;Speichere die Summe in VARC ; MOV AH,4CH ;DOS-Funktionscode: 4CH = Programm Terminieren INT 21H ;Aufruf von DOS mittels Software-Interrupt END BEGINN ;D.H. Programm startet bei BEGINN Folie 15

22 Das List-File zum Beispielprogramm 1.MODEL SMALL ;Verwendetes Sp 2.STACK 1H ;Reserviert Spei 3 ; DATA ;Definiert den Beginn des Datens 5 FA VARA DW 25 ;Definiert Speich 6 2 7D VARB DW 125 ;Definiert Speich 7 4???? VARC DW? ;Definiert Speich 8 ; CODE ;Definiert den Beginn des Codese 1 BEGINN: 11 B8 s MOV AX,@DATA ;AX = Beginn des Da E D8 MOV DS,AX ;AX in DS Register 13 ; 14 5 A1 r MOV AX,VARA ;Wert 25 von VARA r ADD AX,VARB ;Addiere 125(VARB) 16 C A3 4r MOV VARC,AX ;Speichere die Summe 17 ; 18 F B4 4C MOV AH,4CH ;DOS-Funktionscode: CD 21 INT 21H ;Aufruf von DOS mi 2 21 END BEGINN ;D.H. Programm star Folie 151 Komponenten eines Assemblerprogramms Ein Assemblerprogramm besteht aus zwei Komponenten: 1. Assembleranweisungen oder Pseudobefehle Assembleranweisungen sind "Befehle" an den Assembler und dienen als Arbeitsgrundlage. Sie können nicht von der CPU verarbeitet werden, nehmen aber dem Programmierer viel Arbeit ab. Beispiele sind die vereinfachten Segmentanweisungen (.MODEL,.DATA), die den Umgang mit Segmenten erleichtern. 2. Maschinenbefehle Maschinenbefehle sind direkte Befehle an die CPU. Die vom Assembler in Maschinencode übersetzten Menmonics werden von der BIU in die Warteschlange gestellt und anschließend von der EU verarbeitet. Die Maschinenbefehle sind der "Kern" eines Programms und bilden gemeinsam den Algorithmus zur Lösung eines Programmierproblems. Bsp.: MOV AX,1H. Folie 152

23 Assembleranweisungen für Konstanten und Ausdrücke Mit Konstanten werden Werte bzw. Ergebnisse von Konstanten-Ausdrücken benannt. Alle Konstanten werden zur Assemblierungszeit ausgewertet und können daher nach der Assemblierung nicht mehr verändert werden. Es handelt sich also um einen festen numerischen Wert oder um eine Speicheradresse. Konstanten benötigen keinen Speicherplatz! Die Definition von Konstanten und Ausdrücken erfolgt mit der EQU-Anweisung (EQUATE = entspricht). Platziert werden die Pseudobefehle typischerweise nach der.stack-anweisung. Beispiele: Zeilen EQU 25 ;Zeilen bekommt Wert 25 Spalten EQU 8 ;Spalten bekommt Wert 8 Zeichen EQU Zeilen * Spalten ;Zeichen = 4 SET_AX_ EQU MOV AX, ;Reine Textersetzung Text EQU " Bitte Taste drücken" ;Reine Textersetz. Anmerkung: EQU belegt keinen Speicher, es handelt sich um eine Textersetzung! Folie 153 Assembleranweisungen für Variablen Variablen haben Werte, die zur Programmlaufzeit verändert werden können. Sie besitzen einen Datentyp, der vom Assembler überprüft wird. Jeder Variablen muss Speicherplatz im Datensegment (nach.data) reserviert werden. Das erfolgt bei Einzelvariablen durch den Operator "?" (=nicht initialisiert) oder Angabe einer Konstanten (=initialisiert). Für Variablen existieren folgende Datentypen: Direktive DB DW DD DQ DT Bedeutung Define Byte Define Word Define Double Define Quad Define Ten Bit Definiert Byte-Variable Wort-Variable Doppel-Wort Quad-Wort 1-Byte Beispiel ASCIIA DB 41H NAME Wert W64 DQ? BCDZ DT DW B8H DD 1234ABCDH Wird eine Variable als 16-Bit-Variable definiert, so kann sie auch nur mit einem 16-Bit-Befehl bearbeitet werden. Beispielsweise würde MOV AH, NAME zu einem Fehler führen. Mit dem sogenannten PTR-Operator ist eine Typkonvertierung möglich, z.b. MOV AH, BYTE PTR NAME. Folie 154

24 Assembleranweisungen für Strings, Tabellen und Felder Strings sind Textvariablen, die mehrere Speicherstellen hintereinander belegen und mit der DB-Direktive definiert werden. Beispiel: MEINTEXT DB 'Hallo Welt!','$' Erfolgt die Textausgabe mittels DOS, muss ein Dollarzeichen den Text begrenzen. Meist ist in höheren Programmiersprachen eine NULL als Begrenzer üblich. Eine Tabelle lässt sich z.b. wie folgt anlegen: TABELLE DB 1,2,3,4,1,122,222,111,221,1,44 VOKALE DB 'a', 'e', 'i', 'o', 'u' Zugriff z.b. mit MOV BL,TABELLE[3] ;Register BL erhaelt Wert 4 Mit Hilfe des DUP-Operators (Duplicate) lässt sich ein Feld "beliebiger" Größe anlegen: ARRAY DB 5 DUP () ;(= Feld db,,,,) UNBES DB 5 DUP (?) ;(= Feld db?,?,?,?,?) Folie 155 Maschinenbefehle: Aufbau einer Anweisung Aufbau einer Anweisung beziehungsweise Programmzeile: marke: opcode operand, operand ; Kommentar marke: Bezeichner, z.b. für Sprungmarken, oft auch Label genannt opcode: Mnemonic für Maschinenbefehl z.b. ADD, SUB, CALL, RET, JMP, operand: Bezeichnungen von Speicherbereichen z.b. Register: AX, BX, CX, DX, SI, DI, BP, SP, CS, DS, SS, ES Speicher: OTTO, KARL, KARL + 8, [BP+4], Beispiel: LABEL: MOV AX, BX ; Schiebe (Lade) Inhalt von BX nach AX ; Der Inhalt von BX bleibt unverändert Hinweis: Eine Zusammenstellung der wichtigsten Maschinenbefehle ist mit Befehlsliste.pdf im Internet bereitgestellt. Eine ausführlichere Beschreibung ist beispielsweise zu finden in: Backer, Reiner: Assembler. rororo computer (Preis ca. 1 ) Folie 156

25 Adressierungsarten CPU-interne Adressierung Registeradressierung Unmittelbare Adressierung (immediate) Speicheradressierung Direkte Adressierung Indirekte Adressierung Basisrelative Adressierung Indizierte Adressierung Basisindizierte Adressierung MOV AX, BX ADD AL,CL MOV AX,[BX] Beispiel MOV AX, 4711 ADD CX, 27 MOV AX, Variable1 MOV BX, OFFSET Variable1 INC Zahl MOV AX,[BX]+2 MOV AX,TABELLE[SI] MOV AX,TABELLE[BP+SI] ADD AH,TAB1[BP+SI+6] Erklärung AX = BX AL = AL + CL AX = 4711 CX = CX + 27 AX = Wert von Variable1 BX = Zeiger auf Variable1 Zahl = Zahl + 1 AX = Wert des 16-Bit- Wortes auf das BX zeigt AX = Wert des 16-Bit- Worters auf das BX+2 zeigt AX = Wert des 16-Bit- Wortes in Tabelle mit Register SI als Index Index in Tabelle = BP+SI Folie 157 Für die Übungen wichtige Befehle Befehl Operanden Wirkung Ziel Quelle MOV ziel, quelle ziel = quelle Register Speicher Register, Speicher, Konstante Register, Konstante PUSH quelle (SP) = quelle Stack Register, Speicher POP ziel ziel = (SP) Register, Speicher Stack INC,DEC ziel ziel = ziel ± 1 Register, Speicher ADD ADC ziel, quelle ziel, quelle ziel = ziel+quelle ADD mit Carry Register Speicher Register, Speicher, Konstante Register, Konstante SUB ziel, quelle ziel = ziel-quelle SBC ziel, quelle SUB mit Carry MUL quelle AX * quelle DX:AX = Ergebnis Register, Speicher DIV quelle DX:AX / quelle DX = Divisionsrest AX = Quotient Register, Speicher CMP ziel, quelle Vergleich (ziel - quelle) Register (unverän.) Register, Speicher, Konstante CALL ziel 1. IP Stack, 2. IP= Ziel Label RET Stack IP IRET Stack Flags, IP, CS Folie 158

Die Mikroprogrammebene eines Rechners

Die Mikroprogrammebene eines Rechners Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners 4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).

Mehr

Der Intel 8086 Reto Gurtner 2005

Der Intel 8086 Reto Gurtner 2005 Der Intel 8086 Reto Gurtner 2005 1 1. DIE INTERNEN REGISTER... 3 1.1 ALLGEMEINE REGISTER AX, BX, CX UND DX... 3 DAS AX-REGISTER... 4 DAS BX-REGISTER... 4 DAS CX-REGISTER... 5 DAS DX-REGISTER... 5 1.2 DIE

Mehr

1. Übung - Einführung/Rechnerarchitektur

1. Ü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

Mehr

Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c

Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c 1 Transportbefehle 1.1 Verwendung nur Akku und Register (R0, R1,... R7) 1.1.1 Kopieren Sie den Wert aus Register1 nach

Mehr

Mikrocomputertechnik. Adressierungsarten

Mikrocomputertechnik. Adressierungsarten Adressierungsarten Ein Mikroprozessor bietet meist eine Reihe von Möglichkeiten, die Operanden für eine Rechenoperation zu bestimmen. Diese Möglichkeiten bezeichnet man als Adressierungsarten. unmittelbare

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor als universeller digitaler Baustein 2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Das Von-Neumann-Prinzip Prinzipien der Datenverarbeitung Fast alle modernen Computer funktionieren nach dem Von- Neumann-Prinzip. Der Erfinder dieses Konzeptes John von Neumann (1903-1957) war ein in den

Mehr

FHZ. K01 Geschichte des Computers. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt

FHZ. K01 Geschichte des Computers. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt Inhalt 1. Geschichte Folie 1 Lernziele Sie kennen die wichtigsten Punkte in der Geschichte des Computers Sie sind mit einigen Begriffen vertraut Folie 2 Seite 1 Computer als elektronische Rechenmaschine:

Mehr

Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754. Berechnung von Gleitkommazahlen aus Dezimalzahlen. HSLU T&A Informatik HS10

Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754. Berechnung von Gleitkommazahlen aus Dezimalzahlen. HSLU T&A Informatik HS10 Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754 Berechnung von Gleitkommazahlen aus Dezimalzahlen Die wissenschaftliche Darstellung einer Zahl ist wie folgt definiert: n = f * 10 e. f ist

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

Mehr

1.7 Assembler Programmierung

1.7 Assembler Programmierung 1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet

Mehr

Technische Informatik 2 Adressierungsarten

Technische Informatik 2 Adressierungsarten Technische Informatik 2 Adressierungsarten Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute X-Adressmaschine 0-Adressmaschine 1-Adressmaschine 2-Adressmaschine

Mehr

Brückenkurs / Computer

Brückenkurs / Computer Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte

Mehr

Rechner Architektur. Martin Gülck

Rechner Architektur. Martin Gülck Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard

Mehr

Computeria Urdorf. Treff vom 16. Januar 2013. Was ist ein Computer?

Computeria Urdorf. Treff vom 16. Januar 2013. Was ist ein Computer? Computeria Urdorf Treff vom 16. Januar 2013 Was ist ein Computer? Der Vater des Computers Charles Babbage (26.12.1791 18.10.1871) Erfinder der mechanische Rechenmaschine Die Entwicklung des Computers Karl

Mehr

Theoretische Informatik SS 04 Übung 1

Theoretische Informatik SS 04 Übung 1 Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die

Mehr

Wer in der Grundschule ein wenig aufgepasst hat, sollte in der Lage sein schriftlich eine Zahl durch eine zweite zu teilen.

Wer in der Grundschule ein wenig aufgepasst hat, sollte in der Lage sein schriftlich eine Zahl durch eine zweite zu teilen. Teilen binär Teil 1 - Vorzeichenlose Ganzzahlen ============ Irgendwann steht jeder Programmieren vor diesem Problem. Wie teile ich eine Binärzahl durch eine zweite? Wer in der Grundschule ein wenig aufgepasst

Mehr

Computerarithmetik ( )

Computerarithmetik ( ) Anhang A Computerarithmetik ( ) A.1 Zahlendarstellung im Rechner und Computerarithmetik Prinzipiell ist die Menge der im Computer darstellbaren Zahlen endlich. Wie groß diese Menge ist, hängt von der Rechnerarchitektur

Mehr

Computer-Architektur Ein Überblick

Computer-Architektur Ein Überblick Computer-Architektur Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Computer-Architektur Ein Überblick p.1/27 Computer-Aufbau: Motherboard Computer-Architektur Ein Überblick p.2/27

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18 Kapitel 3 Datentypen und Variablen Seite 1 von 18 Datentypen - Einführung - Für jede Variable muss ein Datentyp festgelegt werden. - Hierdurch werden die Wertemenge und die verwendbaren Operatoren festgelegt.

Mehr

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated

Mehr

Binäre Gleitkommazahlen

Binäre Gleitkommazahlen Binäre Gleitkommazahlen Was ist die wissenschaftliche, normalisierte Darstellung der binären Gleitkommazahl zur dezimalen Gleitkommazahl 0,625? Grundlagen der Rechnerarchitektur Logik und Arithmetik 72

Mehr

TECHNISCHE 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

N Bit binäre Zahlen (signed)

N Bit binäre Zahlen (signed) N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101

Mehr

Elektromechanische Computer

Elektromechanische Computer Elektromechanische Computer Erfinder, ihre Biographien und Maschinen Konrad Zuse George Stibitz Howard Aiken Konrad Zuse: Biographie I Geburt: 22.06.1910 in Berlin 1928 Studium Maschinenbau (TH Berlin-Charl.),

Mehr

Brückenkurs / Computer

Brückenkurs / Computer Brückenkurs / Computer Sebastian Stabinger IIS 22 September 2014 1 / 24 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte des Computers 4 Komponenten eines Computers 5 Aufbau eines

Mehr

3.0 8051 Assembler und Hochsprachen

3.0 8051 Assembler und Hochsprachen 3.0 8051 Assembler und Hochsprachen Eine kurze Übersicht zum Ablauf einer Programmierung eines 8051 Mikrocontrollers. 3.1 Der 8051 Maschinencode Grundsätzlich akzeptiert ein 8051 Mikrocontroller als Befehle

Mehr

Prozessor HC680 fiktiv

Prozessor 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

Mehr

2. Negative Dualzahlen darstellen

2. Negative Dualzahlen darstellen 2.1 Subtraktion von Dualzahlen 2.1.1 Direkte Subtraktion (Tafelrechnung) siehe ARCOR T0IF Nachteil dieser Methode: Diese Form der Subtraktion kann nur sehr schwer von einer Elektronik (CPU) durchgeführt

Mehr

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note: Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel

Mehr

Daten verarbeiten. Binärzahlen

Daten verarbeiten. Binärzahlen Daten verarbeiten Binärzahlen In Digitalrechnern werden (fast) ausschließlich nur Binärzahlen eingesetzt. Das Binärzahlensystem ist das Stellenwertsystem mit der geringsten Anzahl von Ziffern. Es kennt

Mehr

INFORMATIK Oberstufe. Funktionsweise eines Rechners

INFORMATIK Oberstufe. Funktionsweise eines Rechners INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den

Mehr

Handbuch B4000+ Preset Manager

Handbuch B4000+ Preset Manager Handbuch B4000+ Preset Manager B4000+ authentic organ modeller Version 0.6 FERROFISH advanced audio applications Einleitung Mit der Software B4000+ Preset Manager können Sie Ihre in der B4000+ erstellten

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Die Geschichte des Computers

Die Geschichte des Computers Inhaltsverzeichnis Der Vorbote des Computers... 3 Der Erfinder des ersten Computers... 3 Die Computer... 4 Der erste Computer Z1... 4 Der zweite Computer Z3... 5 Der Mark I... 6 Der ENIAC... 7 Der SSEC...

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Ausgabe: 2005-02-21 Abgabe: 2005-02-21 Technische Informatik - Eine

Mehr

1 Aufgaben zu Wie funktioniert ein Computer?

1 Aufgaben zu Wie funktioniert ein Computer? 71 1 Aufgaben zu Wie funktioniert ein Computer? Netzteil a) Welche Spannungen werden von PC-Netzteilen bereitgestellt? 3.3 V, 5 V, 12 V, -5 V, -12 V. b) Warum können PC-Netzteile hohe Leistungen liefern,

Mehr

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für

Mehr

3 Rechnen und Schaltnetze

3 Rechnen und Schaltnetze 3 Rechnen und Schaltnetze Arithmetik, Logik, Register Taschenrechner rste Prozessoren (z.b. Intel 4004) waren für reine Rechenaufgaben ausgelegt 4 4-Bit Register 4-Bit Datenbus 4 Kbyte Speicher 60000 Befehle/s

Mehr

Die Befehle mit dem Ziel IP sind nichts anderes als Sprungbefehle, sie sind unten noch mal aufgeführt.

Die Befehle mit dem Ziel IP sind nichts anderes als Sprungbefehle, sie sind unten noch mal aufgeführt. Die Befehle des Modellrechners in übersichtlichen Tabellen: Alle Opcodes sind Hexadezimal angegeben (s.u.). 1.) Die Ladebefehle zwischen den einzelnen Registern. In der oberen Zeile steht jeweils die Quelle

Mehr

Zahlensysteme Seite -1- Zahlensysteme

Zahlensysteme Seite -1- Zahlensysteme Zahlensysteme Seite -- Zahlensysteme Inhaltsverzeichnis Dezimalsystem... Binärsystem... Umrechnen Bin Dez...2 Umrechnung Dez Bin...2 Rechnen im Binärsystem Addition...3 Die negativen ganzen Zahlen im Binärsystem...4

Mehr

3. Rechner- und Prozessorarchitekturen

3. Rechner- und Prozessorarchitekturen 3. Rechner- und Prozessorarchitekturen 3.1 Entwicklung der Rechnertechnik 3.2 Grundlegende Rechnerarchitekturen 3.3 Architektur und Maschinenbefehle des 886, Interrupts Folie 19 3.1 Entwicklung der Rechnertechnik

Mehr

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Zahlensysteme: Oktal- und Hexadezimalsystem

Zahlensysteme: Oktal- und Hexadezimalsystem 20 Brückenkurs Die gebräuchlichste Bitfolge umfasst 8 Bits, sie deckt also 2 8 =256 Möglichkeiten ab, und wird ein Byte genannt. Zwei Bytes, also 16 Bits, bilden ein Wort, und 4 Bytes, also 32 Bits, formen

Mehr

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Daten, Informationen, Kodierung. Binärkodierung

Daten, Informationen, Kodierung. Binärkodierung Binärkodierung Besondere Bedeutung der Binärkodierung in der Informatik Abbildung auf Alphabet mit zwei Zeichen, in der Regel B = {0, 1} Entspricht den zwei möglichen Schaltzuständen in der Elektronik:

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

Vorlesung "Struktur von Mikrorechnern" (SMR)

Vorlesung Struktur von Mikrorechnern (SMR) Unterscheidung nach Instruktionsstruktur Kap. 6 / 34 Unterscheidung nach Befehlstypen: Übersicht Register-Register MOV r r, r 2 A Speicher/Peripherie Register Transferbefehle LDA addr STA addr Konstante

Mehr

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert

Mehr

C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner

C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner Von-Neumann-Rechner (John von Neumann : 1903-1957) C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner Quelle: http://www.cs.uakron.edu/~margush/465/01_intro.html Analytical Engine - Calculate

Mehr

Kurzeinführung LABTALK

Kurzeinführung LABTALK Kurzeinführung LABTALK Mit der Interpreter-Sprache LabTalk, die von ORIGIN zur Verfügung gestellt wird, können bequem Datenmanipulationen sowie Zugriffe direkt auf das Programm (Veränderungen der Oberfläche,

Mehr

Klausur zur Mikroprozessortechnik

Klausur zur Mikroprozessortechnik Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2

Mehr

Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online

Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online Themen heute Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online Besprechung des 3. Übungsblattes Aufgabe 3 Speicherplätze für Mikrocode-Anweisungen

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f

Mehr

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird. Zahlensysteme Definition: Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird. In der Informatik spricht man auch von Stellenwertsystem,

Mehr

Eine Logikschaltung zur Addition zweier Zahlen

Eine Logikschaltung zur Addition zweier Zahlen Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung

Mehr

Sucosoft S40 KOP/FBS KOP FBS

Sucosoft S40 KOP/FBS KOP FBS Sucosoft S40 KOP/FBS KOP FBS Grafische Elemente Netzwerke erstellen Netzwerke erstellen Programme werden in KOP durch grafische Elemente dargestellt. Abfrage einer Variable auf den Zustand 1 Abfrage einer

Mehr

Grundlagen der Informatik

Grundlagen der Informatik Mag. Christian Gürtler Programmierung Grundlagen der Informatik 2011 Inhaltsverzeichnis I. Allgemeines 3 1. Zahlensysteme 4 1.1. ganze Zahlen...................................... 4 1.1.1. Umrechnungen.................................

Mehr

JMPCN Sprungbefehl nur ausführen, wenn VKE 0 ist. JMPC Sprungbefehl nur ausführen, wenn VKE 1 ist. JMP Ohne Bedingung zur Sprungmarke wechseln.

JMPCN Sprungbefehl nur ausführen, wenn VKE 0 ist. JMPC Sprungbefehl nur ausführen, wenn VKE 1 ist. JMP Ohne Bedingung zur Sprungmarke wechseln. Grafische Elemente Netzwerke erstellen Netzwerke erstellen Programme werden in KOP durch grafische Elemente dargestellt. Abfrage einer Variable auf den Zustand 1 Abfrage einer Variable auf den Zustand

Mehr

Wissenswertes über binäre Felder

Wissenswertes über binäre Felder Wissenswertes über binäre Felder Inhaltsverzeichnis Genauigkeit des PC-Taschenrechners 2 Genauigkeit des PC-Taschenrechners ab Windows 7 2 Ausgangspunkt 3 Binäres Feld ohne Vorzeichen-Definition 3 Binäres

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit) Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Informatik - Lehrgang 2000/2001 GRUNDLAGEN

Informatik - Lehrgang 2000/2001 GRUNDLAGEN Informatik - Lehrgang 2000/2001 GRUNDLAGEN Ein Überblick! Das Werden der Informatik! Daten! Technische Informatik Der von Neumann Computer Versuch einer Entmystifizierung 2 Grundlagen Micheuz Peter Das

Mehr

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil IV: Programmieren an Beispielen Die

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, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Staatlich geprüfter EDV-Führerschein

Staatlich geprüfter EDV-Führerschein Staatlich geprüfter 1. Seit wie viel Jahren gibt es den Personal Computer? seit ~ 50 Jahren seit ~ 30 Jahren seit ~ 20 Jahren seit ~ 5 Jahren Computer gibt es schon immer. 2. Ein Computer wird auch als

Mehr

Von Bits, Bytes und Raid

Von Bits, Bytes und Raid Von Bits, Bytes und Raid Eine Schnuppervorlesung zum Kennenlernen eines Datenspeichers um Bits und Bytes zu unterscheiden um Raid-Festplattensysteme zu verstehen Inhalt Speicherzellen sind elektronische

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

Vertiefungsstoff zum Thema Darstellung von Zahlen

Vertiefungsstoff zum Thema Darstellung von Zahlen Vertiefungsstoff zum Thema Darstellung von Zahlen Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung nach dem IEEE-754-Standard 1 Rechnen mit BCD-codierten

Mehr

Interruptverarbeitung

Interruptverarbeitung Interruptverarbeitung Ein Interruptaufruf unterbricht die gerade ablaufende Befehlsfolge in der Weise, daß nach Beendigung des laufenden Befehls nicht der nächste Befehl des Hauptprogramms ausgeführt,

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

2. Darstellung von Information im Computer

2. Darstellung von Information im Computer Informationsbestände analysieren Darstellung von Information im Computer 2. Darstellung von Information im Computer Übung 2.1. Formatierung eines Datenträgers Ziel Sie haben ein Idee, wie in einem Computersystem

Mehr

Der von Neumann Computer

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

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte

Mehr

Binär- und Hexadezimal-Zahl Arithmetik.

Binär- und Hexadezimal-Zahl Arithmetik. Binär- und Hexadezimal-Zahl Arithmetik. Prof. Dr. Dörte Haftendorn, MuPAD 4, http://haftendorn.uni-lueneburg.de Aug.06 Automatische Übersetzung aus MuPAD 3.11, 24.04.02 Version vom 12.10.05 Web: http://haftendorn.uni-lueneburg.de

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB

Mehr

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen Programmieren 10. Tutorium 4./ 5. Übungsblatt Inhalt I. Übungsblatt 4 II. III. - Rückgabe und Besprechung - Vorbereitung auf Wiederholung/ Nachtrag - Operatorpräzedenzen IV. Übungsblatt 5 - Vorstellung

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Johann Wolfgang Goethe-Universität

Johann Wolfgang Goethe-Universität Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory

Mehr

Mikrocontroller Grundlagen. Markus Koch April 2011

Mikrocontroller Grundlagen. Markus Koch April 2011 Mikrocontroller Grundlagen Markus Koch April 2011 Übersicht Was ist ein Mikrocontroller Aufbau (CPU/RAM/ROM/Takt/Peripherie) Unterschied zum Mikroprozessor Unterschiede der Controllerarten Unterschiede

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB

Mehr

Zahlendarstellungen und Rechnerarithmetik*

Zahlendarstellungen und Rechnerarithmetik* Zahlendarstellungen und Rechnerarithmetik* 1. Darstellung positiver ganzer Zahlen 2. Darstellung negativer ganzer Zahlen 3. Brüche und Festkommazahlen 4. binäre Addition 5. binäre Subtraktion *Die Folien

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich

Mehr

Facharbeit Informatik. Thema:

Facharbeit Informatik. Thema: Facharbeit Informatik Thema: Rechneraufbau Mit Locad 2002 1 Inhaltsangabe Inhalt: Seite: 1. Einleitung 3 2. Inbetriebnahme der Schaltung 3 3. Eingabe 4 4. CPU 5 5. RAM/HDD 8 6. Ausgabe 10 7. Auf einer

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

Mehr

S7-Hantierungsbausteine für R355, R6000 und R2700

S7-Hantierungsbausteine für R355, R6000 und R2700 S7-Hantierungsbausteine für R355, R6000 und R2700 1. FB90, Zyklus_R/W Dieser Baustein dient zur zentralen Kommunikation zwischen Anwenderprogramm und dem Modul R355 sowie den Geräten R6000 und R2700 über

Mehr

B1 Stapelspeicher (stack)

B1 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

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr