8. Intel IA-32 Prozessoren: Befehlsübersicht
|
|
- Alexander Günter Zimmermann
- vor 6 Jahren
- Abrufe
Transkript
1 8. Intel IA-32 Prozessoren: Befehlsübersicht Ganzzahlarithmetik Kontrollstrukturen Bitmanipulation Schieben und Rotieren Meisel 1
2 8.1 Ganzzahl-Arithmetik Übersicht add adc sub sbb imul mul idiv div inc dec neg cmp Binäre Addition Binäre Addition mit Berücksichtigung von Überträgen Binäre Subtraktion Binäre Subtraktion mit Berücksichtigung von Überträgen Multiplikation von signed Integer-Werten Multiplikation von unsigned Integer-Werten Division von signed Integer-Werten Division von unsigned Integer-Werten Incrementieren Decrementieren Negieren gemäß 2-er-Komplement Vergleich zweier Integer-Operanden Meisel 2
3 8.1.2 Addition / Subtraktion / Vergleich Befehle: add %reg, %reg mem, %reg %reg, mem $imm, %reg $imm, mem sub %reg, %reg mem, %reg %reg, mem $imm, %reg $imm, mem Die Befehle setzen die Flags Z, N, C, V abhängig vom Ergebnis (0 oder 1). Reihenfolge : Ziel = Ziel Quelle Der Vergleichsoperator (cmp) führt ebenfalls eine Subtraktion aus, setzt aber im Gegensatz zur Subtraktion lediglich die Flags und verändert die Registerinhalte nicht. Beispiele: add $15, %eax [eax(0:31)] [eax(0:31)] + 15 add %bx, %ax [eax(0:15)] [eax(0:15)] + [ebx(0:15)] sub $15, %eax [eax(0:31)] [eax(0:31)] - 15 sub (%ebx), %al [eax(0:7)] [eax(0:7)] - [M([ebx])(0:7)] Meisel 3
4 8.1.3 Multiplikation von unsigned (mul) / signed Werten (imul) Befehle: mul %reg mem imul %reg mem %reg, %reg mem, %reg $imm, %reg In der ein-operanden -Form wird ein Register/Speicher mit al, ax oder eax multipliziert und das Ergebnis in ax, dx:ax oder edx:eax abgelegt. In der zwei-operanden-form muss der Datentyp des Zielregisters gleich dem des Quellregisters/-speichers sein. N, Z, C und V werden gesetzt (je nach Ergebnis 0 oder 1) Beispiele: imul %bx # [dx:ax] [ax] * [bx] imul %ecx # [edx:eax] [eax] * [ecx] imul $12,%ebx # [ebx] [ebx] * 12 imul %ecx,%ebx # [ebx] [ebx] * [ecx] imul 0x1000,%bx # [bx] [bx] * [M(0x1000)] mul %cx # [dx:ax] [cx] * [ax] mulw 0x1000 # [dx:ax] [ax] * [M(0x1000)] Meisel 4
5 8.1.4 Division von unsigned/signed Werten (div / idiv) Befehle: div %reg mem idiv %reg mem Operanden Dividend Divisor Quotient Rest max. Quot. word/byte ax reg/mem 8 al ah 255 long/word dx:ax reg/mem16 ax dx quad/long edx:eax reg/mem 32 eax edx N, Z, C und V werden gesetzt (je nach Ergebnis 0 oder 1) Beispiele: idiv %bx # [ax] [dx:ax] / [bx] idiv %ecx # [eax] [edx:eax] / [ecx] Meisel 5
6 ÜBUNG: Arithm. Ausdruck Schreiben Sie ein Programm, welches den folgenden Ausdruck berechnet: (X 2 + Y 2 )/(X-Y) - X und Y seien zwei positive Zahlen, - alle Berechnungen sollen im Word-Format ausgeführt werden, - Bereichsüberprüfungen sind nicht notwendig, - das Ergebnis soll im ax-register stehen, der Divisionsrest im dx-register. Initialisieren Sie X = 60 D und Y = 53 D. Welche Restriktionen gelten für X und Y? Meisel 6
7 8.2 Kontrollstrukturen Übersicht Zweck von Kontrollstrukturen: - Fortführung des Programms an anderer Stelle ohne weitere Bedingung = unbedingter Sprung - Fortführung des Programms an anderer Stelle, wenn eine bestimmte Bedingung erfüllt ist = bedingter Sprung Meisel 7
8 8.2.1 Übersicht: Unbedingte Sprungbefehle (Fortsetzung) Befehl: jmp [*]<Programm-Marke> Wirkung: Die Programmausführung wird an der angegebenen Stelle fortgesetzt. Der Programmzähler wird auf die Adresse des Sprungzieles gesetzt. Es gibt verschiedene Sprungvarianten: - Abhängig von der Sprungweite (+/- 2 7, +/- 2 15, +/ ) wird die Sprungweite mit 8 Bit (short-jump), 16 oder 32 Bit (near-jump, relative) codiert. - Durch ein * vor der Sprungmarke kann die Adresse des Sprungziels auch absolut angegeben werden (near-jump, absolute). Beispiele: jmp Lab1 # relative jump (short/near)... Lab1: mov$1, %eax jmp *Lab1... Lab1: mov$1, %eax # absolute jump (near) Meisel 8
9 8.2.1 Übersicht: Bedingte Sprungbefehle (Fortsetzung) Befehle: jcc.x [*]<Programm-Marke> Wirkung: Bedingte Sprünge erlauben die Verzweigung der Programmausführung in Abhängigkeit von Bedingungen (Condition-Codes). Es gibt eine Vielzahl von bedingten Sprungbefehlen, die sich durch die Buchstabenkombination cc in obigem Befehlscode unterscheiden. Sprungvarianten wie bei jmp Meisel 9
10 8.2.1 Übersicht: Bedingte Sprungbefehle (Fortsetzung) Sprungbefehl Bedeutung Verzweigt,wenn jcc Branch on Test einzelner Condition-Bits jnc Carry Clear C = 0 jc Carry Set C = 1 jne Not Equal Z = 0 je Equal Z = 1 jno Overflow Clear V = 0 jo Overflow Set V = 1 jns Plus N = 0 js Minus N = 1 Test mehrer Condition-Bits (signed / unsigned-operationen) jg Greater Z or (N xor V) = 0 jl Less N xor V = 1 jge Greater or Equal N xor V = 0 jle Less or Equal Z or (N xor V) = 1 ja Above C or Z = 0 jbe Below or Equal C or Z = Meisel 10
11 8.2.2 Anwendung bedingter Sprungbefehle Sehr häufig (aber nicht zwingend) werden Sprungbefehle in Verbindung mit dem Compare-Befehl verwendet. cmp S,D ; Setzen der Condition-Codes gemäss des ; Ergebnisses der Operation [D] [S] jcc Marke ; Verzweigt, wenn cc gilt Sprungbefehle können aber auch in Verbindung mit anderen Befehlen verwendet werden, sofern diese Auswirkungen auf die verwendeten Flags haben (Verschiebebefehle, log. Befehle, Schiebe- und Rotationsbefehle,. ) Meisel 11
12 ANMERKUNG Muß bei Vergleichen zwischen signed und unsigned unterschieden werden? JA!! Beispiel: 4-bit-Zahl unsigned Interpretation: 1111 B > 0111 B (15 D > 7 D ) signed Interpretation: 1111 B < 0111 B (-1 D < 7 D ) Meisel 12
13 8.2.3 Bedingte Sprungbefehle für unsigned-vergleiche mit cmp cmp Op1, Op2 ;geht dem Sprungbefehl voraus Sprungbefehl Sprung, wenn oder anders Bcc gilt gesagt jc (carry set) Op2 - Op1 < 0 Op2 < Op1 jbe (below or equal) Op2 - Op1 <= 0 Op2 <= Op1 jz (equal, d.h. if zero) Op2 - Op1 = 0 Op2 = Op1 jnz (not equal, d.h. in not zero) Op2 - Op1 <> 0 Op2 <> Op1 jnc (carry clear) Op2 - Op1 >= 0 Op2 >= Op1 ja (above) Op2 - Op1 > 0 Op2 > Op Meisel 13
14 8.2.4 Bedingte Sprungbefehle für signed-vergleiche mit cmp cmp Op1, Op2 ;geht dem Sprungbefehl voraus Sprungbefehl Sprung wenn oder anders Bcc gilt gesagt jl (less than) Op2 - Op1 < 0 Op2 < Op1 jle (less or equal) Op2 - Op1 <= 0 Op2 <= Op1 je Op2 - Op1 = 0 Op2 = Op1 jne Op2 - Op1 <> 0 Op2 <> Op1 jge (greater or equal) Op2 - Op1 >= 0 Op2 >= Op1 jg (greater than) Op2 - Op1 > 0 Op2 > Op Meisel 14
15 kleiner Exkurs zur strukturierten Programmierung (s. Kap ff.) Meisel 15
16 8.2.5 Implementierung einfacher Verzweigungen if (Bedingung) then Anweisungsfolge 1 else Anweisungsfolge 2 endif ja Bedingung nein Anweisungs- Anweisungsendif folge 1 folge 2 Implementierungsschema 1 Implementierungsschema 2 (direkte Bed-Auswertung) (negierte Bed-Auswertung) if-nn: then-nn: else-nn: endif-nn: Auswertung der Bedg. J bed then-nn JMP else-nn Anweisungsfolge 1 JMP endif-nn Anweisungsfolge 2 if-nn: then-nn: else-nn: endif-nn: Auswertung der Bedg. J not bed else-nn Anweisungsfolge 1 JMP endif-nn Anweisungsfolge Meisel 16
17 BEISPIEL: einfache Verzweigung A < B J X:= B X:= A if (A < B) then X:= B else X:= A end-if A:.word 13 B:.word 55 X:.word 1 mov A, %ax # if (A < B) if_01: cmp B, %ax # (A B) >= 0? jge else_01 # Sprung, wenn A >= B # A < B then_01: mov B, %ax mov %ax, X # X := B jmp endif_01 # A >= B else_01: mov A, %ax mov %ax, X # X := A endif_01: Meisel 17
18 8.2.6 Implementierung von Schleifen while (Laufbedingung) do Anweisungsfolge endwhile Laufbedingung Anweisungsfolge repeat Anweisungsfolge until (Abbruchbedingung) Anweisungsfolge Abbruchbedingung while-nn: do-nn: endwhile-nn: Auswertung der Bedg. J bed do-nn JMP endwhile-nn Anweisungsfolge JMP while-nn repeat-nn: until-nn: endrepeat-nn: Anweisungsfolge Auswertung der Bedg. J bed endrep-nn JMP repeat-nn Meisel 18
19 8.2.7 Implementierung von Zählschleifen for lfv:= Startwert step Schrittwert until Endwert do Anweisungsfolge enddo for-nn: until-nn: do-nn: Laufvariable auf Startwert setzen Laufvariable auf Endwert testen J lfv >= Endwert enddo-nn Anweisungsfolge step-nn: enddo-nn: Laufvariable um Schrittwert erhöhen JMP until-nn Meisel 19
20 BEISPIEL: Implementierung von Zählschleifen for lfv:= 1 step 1 until 10 do sum:= sum+1 enddo lfv:= 1 lfv >= 10 false sum:= sum+1 lfv:= lfv+1 true for_01: # --- INITIALISIERUNG mov $1, %ax # [ax] lfv mov $10, %bx # [bx] Endw until_01: # --- PRÜFUNG DER ABBRUCHBEDINGUNG --- cmp %bx, %ax # (lfv Endw.) >= 0? jge enddo_01 # Sprung wenn lfv >= Endw do_01: # --- ANWEISUNGSFOLGE add $1, %cx # sum=sum + 1 step_01: # --- INCREMENT DER LAUFVARIABLEN add $1, %ax # lfv = lfv + 1 jmp until_01 enddo_nn: Meisel 20
21 ÜBUNG: Zeichen zählen Gegeben sei ein String, der mit einer 0 abgeschlossen ist. Es ist ein Assemblerprogramm zu schreiben, welches die Anzahl der a in diesem String zählt. Gehen Sie wie folgt vor: 1. Pseudocode des Programms erstellen. 2. Assemblerprogramm erstellen. Register eax soll als Zeichenzähler verwendet werden Meisel 21
22 ÜBUNG: Stringmanipulation Es soll ein Assemblerprogramm geschrieben werden, mit dem ein String wie folgt bearbeitet wird: 1. Alle Zahlen sollen durch eine 1 ersetzt werden. 2. Alle anderen Zeichen sollen durch eine 0 ersetzt werden. Beispiel: Aus abb12xauo99 soll werden: Meisel 22
23 8.3 Bitmanipulation Logische Bitoperationen AND, OR, XOR AND = Ergebnis ist 1, wenn beide Operanden 1 sind. OR = Ergebnis ist 1, sobald mindestens einer der beiden Operanden 1 ist. XOR = Ergebnis ist 1, wenn genau einer der beiden Operanden 1 ist. Op AND OR XOR Op Erg Meisel 23
24 8.3.2 Anwendungsbeispiele Programmierung von Ein-/Ausgabe-Karten/Bausteinen/Geräten Relaiskarten Digital-I/O-Karten Schrittmotorkarten ADC-Karten (Analog-Digitalwandler) Interruptcontroller Signalverarbeitung/Bildverarbeitung Invertieren Graustufenreduktion Überlagerung von Bild und Grafik Zufallszahlenerzeugung Datensicherung (CRC-Check) Verschlüsselung Meisel 24
25 8.3.3 Befehle zur Bitmanipulation Die IA-32-Prozessoren verfügen über folgende logische Instruktionen and src,dst ; dst:= src AND dst - bitweises logisches UND or src,dst ; dst:= src OR dst - bitweises inklusive ODER xor src,dst ; dst:= src XOR dst - bitweises exklusive ODER not dst ; dst:= NOT dst - bitweises Negieren Meisel 25
26 8.3.4 Typische Problemstellungen und ihre Lösung Extraktion von Bitfeldern Logische Operationen werden z.b. verwendet, um Bitfelder zu extrahieren Beispiel: Übertragen der relevanten Bits (11-8) des Speicherwortes P und der relevanten Bits (6-0) des Speicherwortes Q an die entsprechenden Bitpositionen im Speicherwort T P Q T mov P,%ax ; Transport von P nach ax and $0b ,%ax ; alle Bits löschen, ausser Bits 8-11 mov Q,%bx ; Transport von Q nach bx and $0x007F,%bx ; alle Bits löschen, ausser Bit (6-0) or %bx,%ax ; Kombiniert die Bitfelder in ax mov %ax,t ; Transport von ax nach T Meisel 26
27 Setzen von Bits Beispiel: Setzen des Bit 10 in ax oder auch or $0x0400,%ax or $0b , %ax ax ax Meisel 27
28 Löschen von Bits Beispiel: Löschen des Bit 10 in %ax oder auch and $0xFBFF,%ax and $0b , %ax ax ax Meisel 28
29 Negieren von Bits Beispiel: Negieren des Bit 10 in %ax (toggeln = umschalten) xor $0x0400,%ax oder auch xor $0b , %ax ax ax bzw. ax ax Meisel 29
30 Übung: Bitoperationen (1) Ein auf Adresse 0x8000 liegendes Speicherwort soll wie folgt verändert werden: Die Bits 0-3 sollen gesetzt werden, die Bits 5-9 sollen gelöscht werden und die Bits sollen umgeschaltet werden. Schreiben Sie ein Assemblerprogramm Meisel 30
31 Übung: Bitoperationen (2) a) Schreiben Sie in Unterprogramm "TestBitPattern", mit folgendem Verhalten: [%bl] = 1, wenn genau Bit 0, 3 und 7 von Register %al gesetzt sind, = 0 sonst. b) Schreiben Sie in Unterprogramm "PatternTester", mit folgendem Verhalten: [%al] = 1, wenn [%bl] und [%cl] an denjenigen Bitstellen übereinstimmt (0- und 1-Übereinstimmung) die in [%dl] mit 1 markiert sind. = 0 sonst Meisel 31
32 8.4 Rotations- und Verschiebeoperationen Übersicht Rotations- und Verschiebeoperationen manipulieren den Inhalt einer Speichereinheit durch Verschieben des Bitmusters um einige Stellen nach links oder rechts. Dazu stehen bei den IA-32-Prozessoren folgende Instruktionen zur Verfügung. Rotate left rol count,dst Rotate right ror count,dst Rotate through carry left rcl count,dst Rotate through carry right rcr count,dst Logical Shift left shl count,dst Logical Shift right shr count,dst Arithmetik Shift left sal count,dst Arithmetik Shift right sar count,dst Meisel 32
33 8.4.2 Rotation (auch: zyklisches Schieben) Von einer Rotation wird gesprochen, wenn beim Verschieben kein Bit verloren geht. Die maximale Schiebewert beträgt 31. ror $imm, %reg $imm, mem %cl, %reg %cl, mem rol $imm, %reg $imm, mem %cl, %reg %cl, mem ror C C rol Beispiel: ror $3, %ax # [ax] um 3 Bit nach rechts rotieren mov $15, %cl rol %cl, %ax # [ax] um 15 Bit nach links rotieren Meisel 33
34 8.4.3 Rotation über beliebig große Bitfelder Um eine Rotation über mehr als 32 Bit zu ermöglichen, stehen die Instruktionen rcr und rcl zur Verfügung (rotate through carry). rcr $imm, %reg $imm, mem %cl, %reg %cl, mem rcl $imm, %reg $imm, mem %cl, %reg %cl, mem C rcl Beispiel: Rotation eines an der Adresse Mem stehenden 24-Bit-Wortes um 1 bit rclb $1, Mem+2 # um eine Stelle nach links, carry übernehmen rclb $1, Mem+1 # um eine Stelle nach links, carry übernehmen rclb $1, Mem+0 # um eine Stelle nach links, carry übernehmen Meisel 34
35 8.4.4 Logisches Schieben Ein logischer Shift ist eine Verschiebeoperation, wobei in die freiwerdenden Bitpositionen eine 0 nachgeschoben wird. Bits, die herausgeschoben werden, werden in das Carry-Bit geschoben. shr $imm, %reg $imm, mem %cl, %reg %cl, mem shl $imm, %reg $imm, mem %cl, %reg %cl, mem 0 C C 0 shr shl Beispiel: shr $3, %ax # [ax] um 3 Bit nach rechts schieben mov $15, %cl shl %cl, %ax # [ax} um 15 Bit nach links schieben Meisel 35
36 8.4.5 Arithmetisches Schieben Ein arithmetischer Shift ist eine Verschiebeoperation auf einem Bitmuster in der 2-er-Komplement-Darstellung (vorzeichenrichtige Erweiterung). Eine Verschiebeoperation nach links um 1 Bit entspricht der Multiplikation mit 2 und eine Verschiebeoperation nach rechts um 1 Bit entspricht der Division mit 2 sar $imm, %reg $imm, mem %cl, %reg %cl, mem sal $imm, %reg $imm, mem %cl, %reg %cl, mem sar C C sal 0 Beispiel: sar $3, %ax # [ax] durch 8 dividieren mov $4, %cl sal %cl, %ax # [ax] mit 16 multiplizieren Meisel 36
37 Übung: Schieben und Rotieren a) Schreiben Sie in Unterprogramm "XOR_07", mit folgendem Verhalten: [%bl] = 1, wenn Bit 0 und Bit 7 von Register %al ungleich sind, = 0, wenn Bit 0 und Bit 7 von Register %al gleich sind. b) Schreiben Sie in Unterprogramm "RotateLower5", mit folgendem Verhalten: - Bei jedem Aufruf des Unterprogramms sollen die Bits 0..4 von %al um eine Bitstelle linksherum rotieren. - Die vorderen Bits 5..7 sollen dabei unverändert bleiben Meisel 37
x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013
x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle
MehrAssembler-Programmierung
Assembler-Programmierung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Assembler-Programmierung 1/48 2012-02-29 Assembler-Programmierung
MehrFunktionaler Aufbau eines Computers Untersuchung von Delphi-Compilaten
Funktionaler Aufbau eines Computers Im Folgenden soll der Weg untersucht werden, wie ein Programm, das von einem Compiler/Interpreter in Maschinencode übertragen wurde, schließlich vom Prozessor abgearbeitet
MehrCompilerbau Instruktionsauswahl 168. Instruktionsauswahl
Instruktionsauswahl Compilerbau Instruktionsauswahl 168 Instruktionsauswahl Ziel: Übersetzung der IR-Bäume in Assemblerinstruktionen mit (beliebig vielen) abstrakten Registern. Die x86 (Pentium) Architektur
MehrHC680 PROGRAMMER'S REFERENCE MANUAL
HC680 PROGRAMMER'S REFERENCE MANUAL Programmieranleitung Mnemonic Assembler Maschinenbefehl Wirkung /Bedeutung Register (0 bis 3 allg. Reg.) Ope- Opcode/Binärcode - Adressierungsart - Nr Bez. xx Bin Art
MehrDer Assembler-Befehlssatz
Assembler-Befehlssatz 1 Der Assembler-Befehlssatz Anmerkung: Die kurzen Beispiele beziehen sich auf die Arbeit mit dem DEBUG-Assembler (links) sowie dem MASM, der symbolische Adressen verarbeiten kann
MehrElementare logische Operationen
RECHNERARCHITEKTUR 2 - ELEMENTARE LOGISCHE OPERATIONEN 1 Elementare logische Operationen Modifizieren, Testen,Vergleichen In diesem Abschnitt wollen wir zeigen, wie man mit den elementaren logischen Verknüpfungen
MehrAlgorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18.
Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 9, Dienstag 18. Dezember 2012 (Performance Tuning, Profiling, Maschinencode) Prof. Dr.
MehrDie 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.
MehrTIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems
Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving
MehrSucosoft 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
MehrKap 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.).
MehrJMPCN 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
MehrCOMPILER & CODE ANALYSE. Eine Einführung in die Code Analyse auf Grundlage von Compilern und deren Optimierung. 1
1 COMPILER & CODE ANALYSE Eine Einführung in die Code Analyse auf Grundlage von Compilern und deren Optimierung. 1 INHALT Einleitung Werkzeuge Compiler Aufbau Optimierung Beispiel Code Analyse Einführung
MehrKontrollstrukturen, Pseudocode und Modulo-Rechnung
Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrEinführung in (Intel) 80x86 Assembler. Einführung in (Intel) 80x86 Assembler Wintersemester 2008/09 1 / 26
Einführung in (Intel) 80x86 Assembler Einführung in (Intel) 80x86 Assembler Wintersemester 2008/09 1 / 26 1 Geschichte 2 Programmiermodell 3 Befehlssatz 4 Konventionen 5 Beispiele 6 SSE 7 Literatur Einführung
Mehr3 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
Mehr0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags.
3. Assembler-Programmierung Der PIC 16F84A Microcontroller kennt 35 verschiedene Befehle. Für eine ausführliche Beschreibung aller Befehle siehe PIC16F84A-Datenblatt Kapitel 7.1. 3.1 Wichtige Flaggen im
Mehr7a. Rechnerarchitektur und Grundzüge der Assemblerprogrammierung
7a. Rechnerarchitektur und Grundzüge der Assemblerprogrammierung Inhalt: Schichtenmodell x86-architektur und x86-assemblerprogrammierung Assemblersprache und Einbindung in C 1 Schichtenmodell Strukturierung
MehrRechnerarchitektur. M. Jakob. 1. Februar 2015. Gymnasium Pegnitz
Rechnerarchitektur M. Jakob Gymnasium Pegnitz 1. Februar 2015 Inhaltsverzeichnis 1 Aufbau eines Computersystems Praktische Grundlagen Von-Neumann-Rechner 2 Darstellung und Speicherung von Zahlen 3 Registermaschinen
MehrModul 122 VBA Scribt.docx
Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval
MehrNoch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean
01.11.05 1 Noch für heute: 01.11.05 3 primitie Datentypen in JAVA Primitie Datentypen Pseudocode Name Speichergröße Wertgrenzen boolean 1 Byte false true char 2 Byte 0 65535 byte 1 Byte 128 127 short 2
MehrL6. Operatoren und Ausdrücke
L6. Operatoren und Ausdrücke 1. Arithmetische Operatoren: +, -, *, /, %, --, ++ 2. Zuweisung-Operatoren: =, +=, -=, *=, /= 3. Vergleichsoperatoren: =, ==,!= 4. Logische Operatoren:!, &&, 5.
MehrESP Tutorium. Studienassistent: Ewald Moitzi. E-Mail: prog-tutor-ewald@iicm.edu. Gruppe 9
ESP Tutorium Studienassistent: Ewald Moitzi E-Mail: prog-tutor-ewald@iicm.edu Gruppe 9 Plan für Heute Zip am pluto Datentypen? If, Schleifen Debugging Fehlerquellen Compiler-Fehlermeldungen Fehlersuche
MehrMidterm-Klausur Technische Grundlagen der Informatik
Midterm-Klausur Technische Grundlagen der Informatik Prof. Dr. Arndt Bode Wintersemester 2002/2003 7. Dezember 2002 Name: Vorname: Matrikelnummer: Hörsaal: Platz: Unterschrift: Ergebnis: Aufgabe Punkte
MehrJava Einführung Operatoren Kapitel 2 und 3
Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig
MehrComputer Architektur
Fakultativfach Informatik 2001/2002 1. Die Sache mit den Bit und Byte Man weiss es längst: Im Computer drin gibt's nur 1 und 0: Entweder hat es an einer bestimmten Stelle eine Spannung oder eben nicht!
MehrZahlendarstellungen 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Ü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
MehrAssembler-Programme. Systemprogrammierung (37-023) Elementare Komponenten eines Assembler-Programmes
Systemprogrammierung (37-023) Assemblerprogrammierung Betriebssystemgrundlagen Maschinenmodelle Dozent: Prof. Thomas Stricker krankheitshalber vertreten durch: Felix Rauch WebSite: http://www.cs.inf.ethz.ch/37-023/
MehrEinführung in die Programmiersprache C und in den C166-Compiler
Einführung in die Programmiersprache C und in den C166-Compiler Die vorliegenden Unterlagen sollen einen kurzen Überblick über die Software-Entwicklung in C geben. Diese Unterlagen erheben keinen Anspruch
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
MehrTechnische Informatik 1
Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache
Mehr3 Assembler- und Maschinenbefehle, Programmablauf-Steuerung
3 Assembler- und Maschinenbefehle, Programmablauf-Steuerung In der Vorlesung wurde folgendes Beispiel-Programm in der höheren Programmiersprache C vorgestellt: int x=0; int i= 0; for (i=1;i
Mehr13. Einführung in die Programmiersprache Strukturierter Text (ST)
13. Einführung in die Programmiersprache Strukturierter Text (ST) 13.1 Übersicht Strukturierter Text (ST, auch SCL) ist eine der sechs in IEC 61131-3 festgeschriebenen Programmiersprachen für Automatisierungstechnik.
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur ARM, x86 und ISA Prinzipien Übersicht Rudimente des ARM Assemblers Rudimente des Intel Assemblers ISA Prinzipien Grundlagen der Rechnerarchitektur Assembler 2 Rudimente
MehrTutorübung 7: Mikroprogrammierung I
Tutorübung 7: Mikroprogrammierung I Vorlesung Einführung in die Technische Informatik (ETI) Lehrstuhl für Rechnertechnik und Rechnerorganisation Institut für Informatik 10 Technische Universität München
MehrIT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken
IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken Im Folgenden finden Sie jeweils die korrekte Antwort zu den im Buch abgedruckten Prüfungsfragen, soweit die Antworten in Textform
MehrMikroprozessor 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.
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrCompiler: 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
MehrStephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44
Aufgabe 33 a) Der Pseudobefehl move $rd,$rs wird als addu $rd,$0,$rs übersetzt. Dabei macht sich SPIM zunutze, dass das Register $0 immer Null ist. Somit wird das Register $rd ersetzt durch $rd=0+$rs=$rs,
MehrSchleifenprogrammierung in C/C++, Fortran und Pascal
Schleifenprogrammierung in C/C++, Fortran und Pascal Stefan Ackermann Mathematisches Institut der Universität Leipzig 8. April 2009 1 Die kopfgesteuerte Schleife Bei der kopfgesteuerten Schleife steht
MehrProgrammieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff
Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer
MehrFehlerkorrektur Bild 3.190 Demoprozessor
7 Prozessor 3 0 Flags C V N Z A IP 0 SP AB 8 MS W/R DB 4 00h..6Fh Daten Speicher 70h..70h PA 71h..71h PB 72h..73h PC 74h..76h PD 80h..FFh Programm Speicher Fehlerkorrektur Bild 3.190 Demoprozessor Die
MehrMikroprozessor 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
Mehr6.6 Personal-Computer PC und Intel 80x86-Prozessoren.
PC als MVUS Teil 1-1 - Prof. Komar 6.6 Personal-Computer PC und Intel 80x86-Prozessoren. Der 16-Bit-Prozessor 8086 begründete die 80x86-Familie von Intel und wurde in der Light-Version des 8088 (nur 8-Bit-Datenbus)
MehrDer MS-DOS Standardmonitor und Debugger DEBUG
Einfache Assemblerprogrammierung mit DOS-DEBUG 1/7 Auf Personalcomputern kann in der Regel leicht eine einfache Umgebung zur Software-Entwicklung für die Intel Rechnerfamilie 80x86 eingerichtet werden.
MehrWer 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
MehrKlausur "Informationstechnische Grundlagen" WS 2012/2013
PD Dr. J. Reischer 11.02.2013 Klausur "Informationstechnische Grundlagen" WS 2012/2013 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den
MehrUniversität Paderborn Fakultät für Naturwissenschaften - Physikalisches Praktikum Versuche mit Microcontroller-System
Kurzanleitung: Universität Paderborn Fakultät für Naturwissenschaften - Physikalisches Praktikum BASIC-Programme für das C-Control Prozessormodul Jedes Programm besteht aus einem Vereinbarungsteil und
MehrInhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler
Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale
Mehreinfache PIC-Übungsprogramme
einfache PIC-Übungsprogramme Schreibe in MPLAB für das PIC-Übungsboard 01 mit dem PIC16F88 folgendes Programm, assembliere und dokumentiere dieses, schreibe es anschließend mittels dem Programmiergerät
MehrProgrammierkurs: Delphi: Einstieg
Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache
MehrDas Rechnermodell - Funktion
Darstellung von Zahlen und Zeichen im Rechner Darstellung von Zeichen ASCII-Kodierung Zahlensysteme Dezimalsystem, Dualsystem, Hexadezimalsystem Darstellung von Zahlen im Rechner Natürliche Zahlen Ganze
MehrRepräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen
Großübung 1: Zahlensysteme Repräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen Lehrender: Dr. Klaus Richter, Institut für Informatik; E-Mail: richter@informatik.tu-freiberg.de
MehrDaten, 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:
MehrPHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54
PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten
Mehr6 3 1 7 5 9 2 4 8 Geben Sie dazu jedes Mal, wenn sie die Zeile 15 passieren, die aktuelle Feldbelegung an. Der Anfang wurde bereits gemacht.
Aufgabe 2: ALI von der Hochsprache zur Maschinenebene a) Schreiben Sie ein Pascal- sowie das zugehörige RePascal-PROGRAM Quadratsumme, welches nach Eingabe einer natürlichen Zahl n die Summe der ersten
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, Patrik Schmittat 2. Aufgabenblatt mit Lösungsvorschlag 08.11.2010 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen
MehrKlausur Grundlagen der Informatik
Klausur Grundlagen der Informatik 11.03.2010 Hinweise: Bearbeitungszeit: 120 Minuten es sind keine Unterlagen (Bücher, Vorlesungsmitschriften, Übungen), Taschenrechner, Mobiltelefone (ausschalten und in
Mehr1 Assembler. 2 LED-Steuerung
Inhaltsverzeichnis Inhaltsverzeichnis... 1 1 Assembler... 2 2 LED-Steuerung... 2 3 Taster Abfrage ( Port I/O)... 3 3.1 Zahlensysteme... 3 3.2 Ausgabe... 4 3.2.1 Assembler-Sourcecode... 4 3.2.2 Assemblieren...
Mehr1.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
MehrMikroprozessortechnik. 03. April 2012
Klausur 03. April 2012 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Die Klausur besteht aus 6 doppelseitig bedruckten Blättern.
Mehrbereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke
Rechnerarithmetik Rechnerarithmetik 22 Prof. Dr. Rainer Manthey Informatik II Übersicht bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke in diesem
Mehr9 Strukturierte Programmierung
9 Die "strukturierte Programmierung" ist entstanden aus dem Wunsch, die Korrektheit von Programmen beweisen zu können. Dies wäre ein ziemlich hoffnungsloses Unterfangen, wenn jede beliebige Programmstruktur
MehrRechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011
Technische Universität Graz Institut tfür Angewandte Informationsverarbeitung und Kommunikationstechnologie Rechnerorganisation 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2003. 1 Ausblick. Erste
MehrDie 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
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
MehrTI II. Sommersemester 2009 Prof. Dr. Mesut Güneş 7. Aufgabenblatt mit Lösungen
7. Aufgabenblatt mit Lösungen Problem 1: IEEE-Gleitkommazahlen (2+2+4=8) a) Welchen Bereich der positiven Zahlen kann man mit normalisierten Gleitkommazahlen im IEEE-754-Format mit 64 Bit darstellen? b)
MehrBesprechung 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
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur [CS3100.010] Wintersemester 2014/15 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 5 Rechnerarithmetik
MehrMoritz Höppner. m-hoeppner@gmx.net
Linux-Assembler Tutorial Moritz Höppner m-hoeppner@gmx.net 1 Inhalt 1. Grundlagen... 3 1.1 Einführung... 3 1.2 Zahlensysteme... 3 1.3 Register... 5 1.4 Die benötigten Tools... 6 2. Das erste Programm...
Mehr[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.
Literatur [E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.zip [E-2] M.K. Johnson, E.W. Troan: Anwendungen
MehrProgrammieren. 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
MehrDATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE
D - CA - IV - AA - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 4 DATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE Sommersemester 2003 Leitung:
MehrProgrammierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.
1 Programmierung 2 Übersetzer: Code-Erzeugung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 Bytecodes Der Java Übersetzer erzeugt keine Maschinensprache
Mehr1 : Die Rechnungsarten
1 von 22 23.10.2006 14:08 0 : Inhalt von Kapitel DAT 1 : Die Rechnungsarten 2 : Die Worte 3 : Hilfsprozessoren 4 : Binäre Zahlendarstellung 5 : Interpretationen 6 : Division mit Rest 7 : Horner Schema
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
MehrLua Grundlagen Einführung in die Lua Programmiersprache
Lua Grundlagen Einführung in die Lua Programmiersprache 05.05.2014 Ingo Berg berg@atvoigt.de Automatisierungstechnik Voigt GmbH Die Lua Programmiersprache Was ist Lua? freie Programmiersprache speziell
MehrHumboldt-Universität zu Berlin Institut für Informatik
Humboldt-Universität zu Berlin Institut für Informatik Technische Informatik II Leitung: Prof. Dr. Miroslaw Malek Projekt: Multifunktionaler Tastaturtreiber Heiko Brandenburg (brandenb@informatik.hu-berlin.de)
MehrVisual Basic / EXCEL / Makroprogrammierung Unterrichtsreihe von Herrn Selbach
Visual Basic / EXCEL / Makroprogrammierung Unterrichtsreihe von Herrn Selbach Übungsaufgaben zum Kapitel 1 1. Aufgabe In einer EXCEL Tabelle stehen folgende Zahlen: Definiere einen CommandButton, der diese
MehrProgrammierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil II: Wat iss ene Bit, Byte un Word?
MehrKlausur. Technische Grundlagen der Informatik Prof. Dr. Arndt Bode
Klausur Technische Grundlagen der Informatik Prof. Dr. Arndt Bode Wintersemester 2000/2001 3. Februar 2001 Name: Vorname: Matrikelnummer: Geburtsdatum: Hörsaal: Platz: Unterschrift: Ergebnis: Aufgabe 1
Mehr1.4.12 Sin-Funktion vgl. Cos-Funktion
.4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten
MehrÜbersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15
Übersicht Schleifen Schleifeninvarianten Referenztypen, Wrapperklassen und API CoMa I WS 08/09 1/15 CoMa I Programmierziele Linux bedienen Code umschreiben strukturierte Datentypen Anweisungen und Kontrollstrukturen
MehrZahlendarstellung Logikfunktionen Register Eingänge Infrarot senden TSOP-Effekte Weiterführendes U23 2008. Abend 3:
#2 Abend 3: Alexander Neumann e.v. http://koeln.ccc.de Köln, 3.11.2008 Gliederung 1 Zahlendarstellung n-adische Darstellung natürlicher Zahlen negative Zahlen 2 Logikfunktionen 3 Register
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
MehrNumerische Datentypen. Simon Weidmann
Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die
MehrBitte in Druckschrift ausfüllen: Nachname: Vorname: Fachbereich: Matrikelnummer: Geheimwort: Bitte nicht ausfüllen:
Prof. Dr. B. Seeger Klausur zur Informatik IIIa WS 99/00 Martin Schneider Beginn: Ende: 8:15 Uhr 10:45 Uhr Bitte in Druckschrift ausfüllen: Nachname: Fachbereich: Matrikelnummer: Geheimwort: Tragen Sie
MehrDas Maschinenmodell Datenrepräsentation
Das Maschinenmodell Datenrepräsentation Darstellung von Zahlen/Zeichen in der Maschine Bit (0/1) ist die kleinste Informationseinheit Größere Einheiten durch Zusammenfassen mehrerer Bits, z.b. 8 Bit =
MehrAlgorithmen zur Integer-Multiplikation
Algorithmen zur Integer-Multiplikation Multiplikation zweier n-bit Zahlen ist zurückführbar auf wiederholte bedingte Additionen und Schiebeoperationen (in einfachen Prozessoren wird daher oft auf Multiplizierwerke
MehrFrank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011
Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011 Ziel: Nachrichten fehlerfrei übertragen und ökonomisch (wenig Redundanz) übertragen Was ist der Hamming-Abstand?
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16
Kapitel 5 Arithmetische Operatoren Seite 1 von 16 Arithmetische Operatoren - Man unterscheidet unäre und binäre Operatoren. - Je nachdem, ob sie auf einen Operanden wirken, oder eine Verknüpfung zweier
MehrZahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär
Zahlensysteme Menschen nutzen zur Angabe von Werten und zum Rechnen vorzugsweise das Dezimalsystem Beispiel 435 Fische aus dem Teich gefischt, d.h. 4 10 2 + 3 10 1 +5 10 0 Digitale Rechner speichern Daten
MehrPrinzipieller Grundaufbau eines einfachen C-Programmes
Prinzipieller Grundaufbau eines einfachen C-Programmes C unterscheidet zwischen Groß- und Kleinschreibung! Siehe zu den folgenden Erklärungen auch das Programm am Ende der nächsten Seite. Am Anfang aller
MehrDBSP. Prof. Dr. rer. nat. Nane Kratzke. Vorlesung. Praktische Informatik und betriebliche Informationssysteme
Handout zur Vorlesung Vorlesung DBSP Unit 7 PHP IV Operatoren und Kontrollstrukturen 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451
MehrKlausur. Grundlagen der Datenverarbeitung/ Technische Informatik 23.9.03
Klausur Grundlagen der Datenverarbeitung/ Technische Informatik 23.9.03 Machen Sie bitte zu Beginn der Klausur hier unten die notwendigen Angaben. Lösen Sie nicht die Heftung der Klausur. Wenn Sie die
MehrÜbersicht. Race Conditions Buffer Overflows Heap Overflows Exkurs: Stackaufbau bei Intel x86 Exkurs: Shellcode Stack Overflows
Übersicht Race Conditions Buffer Overflows Heap Overflows Exkurs: Stackaufbau bei Intel x86 Exkurs: Shellcode Stack Overflows Integer Overflows Format-String-Angriffe (SQL) Injection Cross Site Scripting
Mehr