Die Maschinenprogrammebene eines Rechners Jörg Roth 294

Größe: px
Ab Seite anzeigen:

Download "Die Maschinenprogrammebene eines Rechners Jörg Roth 294"

Transkript

1 Die Maschinenprogrammebene eines Rechners Jörg Roth E Die SPIM-Umgebung SPIM ist ein Simulationswerkzeug für MIPS-Prozessoren Es enthält einen Assembler und eine Laufzeitumgebung Da das Wirtsystem (z.b. Windows) auf einem anderen Prozessor basiert, werden die MIPS-Maschinenbefehle zur Laufzeit auf einem virtuellen Prozessor simuliert.

2 Die Maschinenprogrammebene eines Rechners Jörg Roth 295 SPIM-Funktionen: Anzeigen von Register- und Speicherinhalten Zeigen des assemblierten Programms Durchlaufen des Codes im Einzelschrittmodus Setzen von Break-Points Über syscall kann aus dem Maschinenprogramm heraus eine rudimentäre Konsole angesprochen werden Ein/Ausgabe von Zahlen Ein/Ausgaben von Zeichenketten

3 Die Maschinenprogrammebene eines Rechners Jörg Roth 296 Direktiven des SPIM-Assemblers an einem Beispiel:.data # Schlüsselwort für den statischen Datenteil label1:.word 1000 # Anlegen des 32-Bit-Wortes mit dem Wert 1000 label2:.byte 10 # Anlegen des Bytes mit dem Wert 10 label3:.byte a # Anlegen des Bytes mit dem ASCII-Wert für a label3:.space 15 # Anlegen von 15 Bytes mit dem Wert 0 label4:.asciiz "Dies ist ein Text" # Anlegen eines 0-terminierten Strings.text # Schlüsselwort für den Programmtext main: addi... # Ein Programm muss diesen Einstiegspunkt haben # Ab hier stehen die Assemblerbefehle

4 Die Maschinenprogrammebene eines Rechners Jörg Roth 297 Die wichtigsten SPIM syscalls Nr. $v0 Beschreibung 1 32-Bit-Zahl dezimal auf die Konsole ausgeben 4 0-terminierten String auf die Konsole ausgeben 5 32-Bit-Zahl dezimal von der Konsole einlesen 8 String von der Konsole einlesen und 0-terminiert in Puffer ablegen Aufrufargument Rückgabewert $a0 = Wert der Zahl $a0 = Adresse des Strings $v0 = Wert der Zahl $a0 = Adresse des Stringpuffers $a1 = Länge des Stringpuffers 9 Dynamischen Speicher allozieren $a0 = Länge des Blocks $v0 = Adresse des Blocks 10 Programm beenden

5 Die Maschinenprogrammebene eines Rechners Jörg Roth 298 Bemerkungen zu den SPIM syscalls: Ein Programm terminiert automatisch nach der letzten Befehlszeile. syscall 10 wird nur benötigt, wenn man das Programm vorher beenden möchte. Alternativ kann man hinter den letzten Befehl springen. Die syscalls zur Zahlen-Ein/Ausgabe verwenden Register für die Zahlenspeicherung. Die syscalls zu der String-Ein/Ausgabe legen die Zeichenketten im Speicher ab (nicht in den Registern). Über das Register $a0 wird die Adresse des Strings bzw. des freien Stringpuffers angegeben.

6 Die Maschinenprogrammebene eines Rechners Jörg Roth 299 Beispiel:.data prompt:.asciiz "Bitte Zahl eingeben: " text1:.asciiz "Sie haben die Zahl " text2:.asciiz " eingegeben\n".text main: li $v0, 4 la $a0,prompt syscall li $v0, 5 syscall or $s0, $zero, $v0 # String ausgeben # "Bitte Zahl eingeben: # Zahl einlesen # $s0 := Eingabe;

7 Die Maschinenprogrammebene eines Rechners Jörg Roth 300 li $v0, 4 # String ausgeben la $a0,text1 # "Sie haben die Zahl " syscall li $v0, 1 or $a0, $zero, $s0 syscall li $v0, 4 la $a0,text2 syscall li $v0, 10 syscall # Resultat ausgeben # in $s0 stand die Zahl # String ausgeben # " eingegeben\n" # Programm beenden

8 Die Maschinenprogrammebene eines Rechners Jörg Roth F Die Maschinenbefehle im Detail 5.F.a Arithmetische Operationen Addition und Subtraktion: Befehl Beschreibung Vorzeichen add Rd, Rs, Rt Rd := Rs + Rt mit addu Rd, Rs, Rt Rd := Rs + Rt ohne addi Rt, Rs, I Rt := Rs + I mit addiu Rt, Rs, I Rt := Rs + I ohne sub Rd, Rs, Rt Rd := Rs Rt mit subu Rd, Rs, Rt Rd := Rs Rt ohne

9 Die Maschinenprogrammebene eines Rechners Jörg Roth 302 Bemerkungen: Zahlendarstellung: 32 Bit-Zweierkomplement Es gibt kein subi und subiu. Stattdessen verwendet man addi und addiu und muss den immediate-operanden von Hand negieren. Z.B. addi $s0, $s0, -1 um 1 von $s0 abzuziehen add und addu addieren intern identisch. add erzeugt aber eine Exception, wenn das Resultat das falsche Vorzeichen erhält (Overflow-Bedingung). addu produziert keine Exception, auch wenn ein Übertrag generiert wird.

10 Die Maschinenprogrammebene eines Rechners Jörg Roth 303 Beispiele: li $s0, # = 2^31-1 addiu $s1, $s0, 1 # bei unsigned addition Resultat: $s1= li $s0, addi $s1, $s0, 1 Resultat: Arithmetic Overflow # maximale positive Zahl # Resultat bekommt falsches Vorzeichen li $s0, # maximale 32-Bit-Zahl addiu $s1, $s0, 1 # Übertrag wird ignoriert Resultat: $s1=0 (Bemerkung: würde auch bei addi entstehen)

11 Die Maschinenprogrammebene eines Rechners Jörg Roth 304 Multiplikation und Division: Befehl Beschreibung Vorzeichen div Rs, Rt Lo := Rs/Rt, Hi := Rs mod Rt mit divu Rs, Rt Lo := Rs/Rt, Hi := Rs mod Rt ohne mult Rs, Rt (Hi, Lo) := Rs Rt mit Hi = oberen 32 Bits, Lo = unteren 32 Bits multu Rs, Rt (Hi, Lo) := Rs Rt Hi = oberen 32 Bits, Lo = unteren 32 Bits ohne Bemerkungen: Es gibt keine Mult-, Div-Befehle mit immediate-operand. Das Ergebnis einer 32-Bit-Multiplikation benötigt 64 Bit. Daher existieren zwei 32-Bit-Register Hi und Lo, die die Resultate aufnehmen. Diese Register können nicht explizit beschrieben werden.

12 Die Maschinenprogrammebene eines Rechners Jörg Roth 305 multu behandelt die Operanden als vorzeichenlose Zahlen, mult als Vorzeichenzahlen. Es kann kein Überlauf oder Übertrag produziert werden, also auch keine Exceptions. Im Ggs. zu add/addu werden intern unterschiedliche Operationen durchgeführt, je nachdem ob man Vorzeichenzahlen oder vorzeichenlose Zahlen verwendet. Beispiel: li $s0, # 2^32-1 entspricht -1 li $s1, # 2^32-1 entspricht -1 mult $s0, $s1 Resultat (Hi, Lo) = 1 li $s0, li $s1, # 2^32-1 (max. 32-Bit-Zahl) # 2^32-1 (max. 32-Bit-Zahl) multu $s0, $s1 Resultat (Hi, Lo) =

13 Die Maschinenprogrammebene eines Rechners Jörg Roth F.bLogische Operationen Bitweise logische Verknüpfungen Befehl and Rd, Rs, Rt andi Rt, Rs, I nor Rd, Rs, Rt or Rd, Rs, Rt ori Rt, Rs, I xor Rd, Rs, Rt xori Rt, Rs, I Beschreibung Rd := Rs Rt Rt := Rs I Rd := Rs Rt Rd := Rs Rt Rt := Rs I Rd := Rs Rt Rt := Rs I

14 Die Maschinenprogrammebene eines Rechners Jörg Roth 307 Illustration am Beispiel des and-befehls: rs... rt... & & & & rd... Bemerkungen: Es gibt keinen immediate Befehl für nor. Es gibt keine Befehle für nand und xnor.

15 Die Maschinenprogrammebene eines Rechners Jörg Roth 308 Möglichkeiten für das Komplementieren von Bits: Beispiel: $s1 := $s0 nor $s1, $s0, $s0 xori $s1, $s0, -1 # -1 = FFFF FFFF, Achtung: nur 16 Bit komplementiert Bemerkungen: Der "native" xori-befehl verwendet (wie alle immediate-befehle) nur 16- Bit-Immediate-Operanden. Damit werden nur die unteren 16 Bit komplementiert. Verwendet man xori mit einem Operanden mit mehr als 16 Bit, so erkennt der Assembler das und verwendet automatisch einen Pseudobefehl: Laden der oberen 16 Bit in das $at-register (Befehl lui) Laden der unteren 16 Bit in das $at-register (Befehl ori) Verwenden der xor-operation (nicht xori) mit Register $at

16 Die Maschinenprogrammebene eines Rechners Jörg Roth 309 Wozu benötigt man bitweise logische Verknüpfungen? Beispiel Mauszeiger: Maske: alle Bits des Bildschirms müssen auf 0 gesetzt werden Zeigerbits Maskenbits Mauszeiger: alle Bits des Bildschirms müssen auf 1 gesetzt werden Bildschirm Bildschirm UND Maske Bildschirm UND Maske ODER Maus

17 Die Maschinenprogrammebene eines Rechners Jörg Roth 310 Das zugehörige Programm: Die 64 Zeigerbits seien in $s0, $s1 gespeichert Die 64 Maskenbits seien in $s2, $s3 gespeichert Die 64 Bildschirmbits unter dem Zeiger seien schon aus dem Bildspeicher in $s4, $s5 abgelegt nor $s2, $s2, $s2 # Maskenbits invertieren nor $s3, $s3, $s3 and $s4, $s4, $s2 # Bildschirm UND Komplement der Maske and $s5, $s5, $s3 # d.h. alle Bild-Bits außerhalb der Maske =0 or $s4,$s4, $s0 # Resultat ODER Mauszeiger or $s5,$s5, $s1 # damit werden alle Bild-Bits des Zeigers =1

18 Die Maschinenprogrammebene eines Rechners Jörg Roth 311 Schiebeoperationen: Befehl Beschreibung sll Rd, Rt, shamt Rd := Rt links-geschoben um shamt Bits sllv Rd, Rt, Rs Rd := Rt links-geschoben um Rs Bits srl Rd, Rt, shamt Rd := Rt rechts-geschoben um shamt Bits srlv Rd, Rt, Rs Rd := Rt rechts-geschoben um Rs Bits sra Rd, Rt, shamt Rd := Rt rechts-geschoben um shamt Bits (arithmetisch, d.h. Erhaltung des Vorzeichens) srav Rd, Rt, Rs Rd := Rt rechts-geschoben um Rs Bits (arithmetisch, d.h. Erhaltung des Vorzeichens)

19 Die Maschinenprogrammebene eines Rechners Jörg Roth 312 Illustration der Schiebeoperationen mit shamt=1 sll srl rt... rt... rd rd... sra rt... rd... Verwendung der Schiebebefehle: Operanden multiplizieren mit 2 shamt, dividieren durch 2 shamt Umwandlung serielle Daten parallele und umgekehrt Zugriff auf Inhalte "gepackter" Strukturen

20 Die Maschinenprogrammebene eines Rechners Jörg Roth 313 Beispiel: Pixel-Information eines High-Color-Bildes (16 Bit/Pixel): Jeder Pixel enthält folgende Informationen: 5 Bit-Wert für "rot" 6 Bit-Wert für "grün" 5 Bit-Wert für "blau" rot grün blau (Es gibt eine Reihe weiterer Möglichkeiten, z.b. True-Color mit 32 Bit)

21 Die Maschinenprogrammebene eines Rechners Jörg Roth 314 Das zugehörige Programm: Der Pixelwert sei schon in $s0 Wir wollen rot in $t0, grün in $t1 und blau in $t2 speichern srl $t0, $s0, 11 andi $t1, $s0, 0x07e0 srl $t1, $t1, 5 andi $t2, $s0, 0x001f # oberen 5 Bits (rot) nach rechts schieben # mittleren 6 Bits (grün) herauskopieren # und nach rechts schieben # unteren 5 Bits (blau) herauskopieren

22 Die Maschinenprogrammebene eines Rechners Jörg Roth F.c Vergleiche Befehl Beschreibung Vorzeichen slt Rd, Rs, Rt Rd := 1 wenn Rs < Rt, Rd := 0 wenn Rs Rt sltu Rd, Rs, Rt Rd := 1 wenn Rs < Rt, Rd := 0 wenn Rs Rt slti Rt, Rs, I Rt := 1 wenn Rs < I, Rt := 0 wenn Rs I sltiu Rt, Rs, I Rt := 1 wenn Rs < I, Rt := 0 wenn Rs I mit ohne mit ohne

23 Die Maschinenprogrammebene eines Rechners Jörg Roth 316 Motivation für die slt-befehle: Es gibt (siehe weiter unten) keine bedingten Sprünge, die den Größenvergleich zweier Operanden durchführen. Vergleich und Sprung führt man daher so aus: slt $t0, $s0, $s1 # $t0 := 1 wenn $s0 <$s1 bgtz $t0, Label # Springe wenn $t0 > 0 (d.h. $s0 <$s1)

24 Die Maschinenprogrammebene eines Rechners Jörg Roth 317 Weiteres Beispiel: In den Registern $t0, $t1, $t2 sind drei Zahlen abgelegt. Zähle, wie viele dieser drei Zahlen kleiner als 100 sind. Ablage in $s0 slti $s0, $t0, 100 # $s0 := 1 wenn $t0 <100 slti $s1, $t1, 100 # $s1 := 1 wenn $t1 <100 add $s0, $s0, $s1 # $s0 := Summe der ersten beiden Ergebnisse slti $s1, $t2, 100 # $s1 := 1 wenn $t2 <100 add $s0, $s0, $s1 # $s0 := Summe alle Ergebnisse

25 Die Maschinenprogrammebene eines Rechners Jörg Roth 318 Weitere Funktion von sltu: Berechnen des Übertrags In MIPS gibt es kein Carry-Bit, wie in den meisten anderen CPUs. Man erkennt daher nicht auf einfache Weise, ob ein Übertrag bei einer Addition entstanden ist. Berechnung des Carry-Bits in $t0, $t1 seien positive Zahlen gespeichert: addu $t2, $t0, $t1 sltu $t3, $t2, $t1 # Teste, ob die Summe kleiner ist als $t1 Danach: $t2: Summe von $t0, $t1 (mod 2 32 ) $t3: 1, wenn Übertrag aufgetreten ist

26 Die Maschinenprogrammebene eines Rechners Jörg Roth F.d Laden und Speichern Befehl mfhi Rd mflo Rd Rd := Hi Rd := Lo Beschreibung lui Rt, I Rt := I 2 16 (oberste 16 Bit = I, unterste 16 Bit = 0) lb Rt, Address(Rs) Rt := Byte in Mem[Address + Rs] (Vorzeichen auf 32 Bit erweitert) lbu Rt, Address(Rs) Rt := Byte in Mem[Address + Rs] (keine Vorzeichenerweiterung) sb Rt, Address(Rs) Byte in Mem[Address + Rs] := Rt lw Rt, Address(Rs) Rt := Word in Mem[Address + Rs] sw Rt, Address(Rs) Word in Mem[Address + Rs] := Rt

27 Die Maschinenprogrammebene eines Rechners Jörg Roth 320 Bemerkungen: Es gibt keinen nativen Befehl für das Laden von immediate-operanden li ist ein Pseudobefehl, der intern auf ori...,$zero,... abgebildet wird. Um 32-Bit-Konstanten in Register zu kopieren, reichen die 16-Bit in einem Befehl (I-Format) nicht aus. Deshalb gibt es den Befehl lui, der die oberen 16 Bit eines Registers mit dem immediate-operanden füllt. Die untere Hälfte kann dann mit ori... gefüllt werden. lb, lw (bzw. sb, sw) unterscheiden sich in der Bit-Breite des Zugriffs: lb, sb: 8 Bit, lw, sw: 32 Bit Da bei lb nur 8 Bit des 32-Bit-Registers belegt werden, kann man entscheiden, wie die übrigen 24 Bit gesetzt werden: lbu: restliche 24 Bit werden auf 0 gesetzt lb: restliche 24 Bit werden auf Bit 7 (Vorzeichenbit) gesetzt Bei sb werden die Bits 8-31 des Registers beim Speichern ignoriert.

28 Die Maschinenprogrammebene eines Rechners Jörg Roth 321 Die Befehle lb, lbu, lw, sb, sw benutzen die Adressierungsart Registerindirekt mit Versatz. Da der Versatz als immediate-operator definiert wird, kann nur ein Versatz von bis ausgedrückt werden. Daher kann z.b. der Befehl lb $s0, nicht direkt übersetzt werden, da der immediate-operand größer ist als Der Assembler erkennt dies und wertet in diesem Fall lb als Pseudobefehl aus: lui $at, 1 # $at = lb $s0, ($at)# $s0 := Mem[ ] = Mem[50000] Jedes Wort belegt 4 Byte. Die Adressierung basiert auf Bytes. Sollen Worte adressiert werden, die direkt hintereinander im Speicher liegen, muss man die Adresse jeweils um 4 erhöhen.

29 Die Maschinenprogrammebene eines Rechners Jörg Roth 322 Beispiel:.data word1:.word 10 word2:.word 11.text main: la $s0,word1 lw $t0,0($s0) lw $t1,4($s0) # Zwei Worte direkt hintereinander im Speicher # Lade die Adresse des ersten Wortes # Lade erstes Wort # Lade zweites Wort

30 Die Maschinenprogrammebene eines Rechners Jörg Roth F.e Sprungbefehle Befehl Beschreibung Vorzeichen beq Rs, Rt, Label Springe wenn Rs =Rt egal bne Rs, Rt, Label Springe wenn Rs Rt egal bgez Rs, Label Springe wenn Rs 0 mit bgtz Rs, Label Springe wenn Rs > 0 mit blez Rs, Label Springe wenn Rs 0 mit bltz Rs, Label Springe wenn Rs < 0 mit j Label Springe jal Label Unterprogrammaufruf nicht jr Rs Springe zur Adresse in Rs anwendbar jalr Rs Unterprogrammaufruf zur Adresse in Rs

31 Die Maschinenprogrammebene eines Rechners Jörg Roth 324 Bemerkungen: Da jeder MIPS-Befehl 32 Bits umfasst, liegen die Befehle immer passend auf 4-Byte-Blöcken. Die Adresse des ersten Bytes eines Befehls ist damit immer durch 4 teilbar (4 byte alignment). Da die möglichen Sprungziele immer binär auf 00 enden, müssen diese Bits nicht angegeben werden und man definiert nur die Bits ab Bit2 aufwärts. Die branch-befehle (b...) verwenden relative Sprungziele. Der immediate-operand definiert den Abstand zur Adresse des aktuellen Befehls. Negative Distanz: Sprung vor den aktuellen Befehl. Positive Distanz: Sprung hinter den aktuellen Befehl. Der Bereich für immediate-operanden ist bis Dieser wird mit 4 multipliziert (wegen alignment) und zur aktuellen Befehlsadresse hinzugezählt. Es sind damit Sprungweiten von ca. +/-128k möglich

32 Die Maschinenprogrammebene eines Rechners Jörg Roth 325 Beispiele: Sprung zurück: loop: add $s0, $s1, $s2 beq $s0,$s1,loop# Sprungweite -4, kodiert als immediate-op. -1 Sprung nach vorne: beq $s0,$s1,labx # Sprungweite +8, kodiert als immediate-op. 2 add $s0, $s1, $s2 labx: add $s0, $s1, $s2 Der Assembler-Entwickler gibt auch bei relativen Sprüngen ein Label als Ziel an. Der Assembler berechnet automatisch die Distanz und meldet ggfs. einen Fehler wenn der Sprung zu weit geht.

33 Die Maschinenprogrammebene eines Rechners Jörg Roth 326 Bemerkungen zu absoluten Sprüngen: Die j...-befehle verwenden absolute Sprungadressen. Absolute Adressen in den J-Format-Befehlen haben 26 Bit. Da die letzten 2 Bits 00 lauten, sind Sprünge im Bereich 2 28 (0 256 MB) möglich. Die MIPS Architektur ermöglicht zwar einen Adressraum von 2 32 Bytes (4GB), die Adressen oberhalb von 256 MB können allerdings nicht mit den J-Format-Sprüngen erreicht werden. Die Sprungbefehle mit Registerinhalten (jr, jalr) und relative Sprünge kennen diese Grenze zwar nicht, dennoch wird nur der Bereich bis 256 MB als Text-Segment (der Code-Bereich) definiert. Die Befehle jal und jalr funktionieren wie j bzw. jr. Vor dem Sprung wird aber die aktuelle Befehlsadresse + 4 in das Register $ra geschrieben. Damit sind Unterprogramme möglich, die nach der Beendigung mit jr $ra hinter den Aufrufbefehl springen.

34 Die Maschinenprogrammebene eines Rechners Jörg Roth F.f Pseudobefehle Pseudobefehle sind nicht nativ im MIPS-Prozessor realisiert. Sie vereinfachen die Assembler-Programmierung und erhöhen die Lesbarkeit von Assembler-Programmen. Die Menge von Pseudo-Befehlen ist je nach Assembler unterschiedlich. Auch die Übersetzung von Pseudo-Befehlen in native Befehle ist unterschiedlich. Typische MIPS-Pseudobefehle werden in 1, 2 oder 3 native Befehle übersetzt.

35 Die Maschinenprogrammebene eines Rechners Jörg Roth 328 Einige Pseudobefehle: Befehl Beschreibung Realisierung li Rd, I Rd := I ori Rd, $zero, I # 16-Bit-I oder lui $at, I ( ) ori Rd, $at, I (15...0) # 32-Bit-I la Rd, Label Rd := Adresse des Labels Wie li, der Assembler verhindert aber das Auswerten von "Label" la kann ohne Hilfe des Assemblers nicht durch andere Befehle ersetzt werden! move Rd, Rs Rd := Rs or Rd, $zero, Rs nop tue nichts or $zero, $zero, $zero oder sll $zero, $zero, 0

36 Die Maschinenprogrammebene eines Rechners Jörg Roth 329 b Label Befehl Beschreibung Realisierung addi Rt, Rs, I andi Rt, Rs, I ori Rt, Rs, I... lb Rt, Addr(Rs) lbu Rt, Addr(Rs) lw Rt, Addr(Rs) sb Rt, Addr(Rs) sw Rt, Addr(Rs) Relativer Sprung...i-Befehle mit 32-Bit-I-Operand wie lb etc., nur dass Addr mit mehr als 16 Bit beq $zero, $zero, Label lui $at, I ( ) ori $at, $at, I (15...0) add Rt, Rs, $at lui $at, Hi-Addr lb $s0, Lo-Addr($at) # bzw. lbu, lw, sb, sw # bzw. and, or...

37 Die Maschinenprogrammebene eines Rechners Jörg Roth F.g Speicherorganisation Aufteilung des verfügbaren Adressraums: 0x Reserviert 4 MB 0x MB Text Segment 0x $gp = 0x Statische Daten 64 kb 0x Dynamische Daten ca. 1,8 GB $sp Stapel 0x7FFF FFFF 0x Reserviert 2 GB 0xFFFF FFFF

38 Die Maschinenprogrammebene eines Rechners Jörg Roth 331 Bemerkungen: Die Bereiche vor 0x und ab 0x sind reserviert. Der verbleibende Bereich bis 0x ist das Text Segment, in dem sich der Programmcode befindet. Sprungbefehle nach dem J-Format können keine größeren Adressen anspringen. Im Bereich statischer Daten verweist $gp auf die Mitte. Damit können Speicherzugriffe ohne Pseudobefehle mit nur einem Befehl formuliert werden. Z.B. lw $s0, -0x8000($gp) # Zugriff auf Adresse 0x Da der Bereich statischer Daten 64k umfasst, kann man mit einem 16-Bit- Offset den gesamten Bereich adressieren. Ohne $gp würde dieser Zugriff zwei Befehle erfordern: lui $at, 4096 # entspricht 0x lw $s0,0($at)

39 Die Maschinenprogrammebene eines Rechners Jörg Roth 332 Der Stapel und der Bereich dynamischer Daten wachsen in entgegengesetzer Richtung. Damit steht bei ungleicher Benutzung beiden Bereiche immer der maximale Rest zur Verfügung. Der Bereich dynamischer Daten wird vom Betriebssystem verwaltet. Es gibt keine Register im MIPS, die diese Verwaltung unterstützen. Der Stapel wächst per Konvention in die Richtung niedriger Adressen. $sp zeigt auf das zuletzt gefüllte Stapel-Element.

TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM. Die MARS Umgebung

TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM. Die MARS Umgebung Die MARS Umgebung MARS ist ein Simulationswerkzeug für MIPS Prozessoren Es enthält einen Assembler und eine Laufzeitumgebung Da das Wirtsystem (z.b. Windows) auf einem anderen Prozessor basiert, werden

Mehr

5.BMaschinensprache und Assembler

5.BMaschinensprache und Assembler Die Maschinenprogrammebene eines Rechners Jörg Roth 268 5.BMaschinensprache und Assembler Die vom Prozessor ausführbaren Befehle liegen im Binärformat vor. Nur solche Befehle sind direkt ausführbar. So

Mehr

Kap 5. 5 Die Maschinenprogrammebene eines Rechners. int a=1, b=2; a = a+2*b; Höhere Programmiersprache. Assembler und Maschinenprogramm

Kap 5. 5 Die Maschinenprogrammebene eines Rechners. int a=1, b=2; a = a+2*b; Höhere Programmiersprache. Assembler und Maschinenprogramm 5 Die Maschinenprogrammebene eines Rechners Höhere Programmiersprache Assembler und Maschinenprogramm Register und Mikroprogramm int a=1, b=2; a = a+2*b; lw $t0, a lw $t1, b add $t0, $t0, $t1 add $t0,

Mehr

Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von ( ) 10 ins Dualsystem

Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von ( ) 10 ins Dualsystem Zusammenfassung: Grundlagen der Informatik - Seite von 6 Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von (69.59375) 0 ins Dualsystem

Mehr

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere

Mehr

Stephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44

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

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

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

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

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

Technische Informatik 1

Technische 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

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

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

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

Übungsaufgaben. - Vorgehensweise entsprechend dem Algorithmus der schriftlichen Multiplikation

Übungsaufgaben. - Vorgehensweise entsprechend dem Algorithmus der schriftlichen Multiplikation Übungsaufgaben Anmerkung Allen Beispielen soll noch hinzugefügt sein, dass wertvolle Hinweise, also die Tipps und Tricks die der schnellen maschinellen Multiplikation zu Grunde liegen, neben dem toff zur

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

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

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

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

Darstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21

Darstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21 Darstellung von Instruktionen Grundlagen der Rechnerarchitektur Assembler 21 Übersetzung aus Assembler in Maschinensprache Assembler Instruktion add $t0, $s1, $s2 0 17 18 8 0 32 6 Bit Opcode Maschinen

Mehr

0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet).

0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet). Aufgabe 0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet). 1. i) Wie ist die Darstellung von 50 im Zweier =Komplement? ii) Wie ist die Darstellung von 62 im Einer =Komplement?

Mehr

Assembler am Beispiel der MIPS Architektur

Assembler am Beispiel der MIPS Architektur Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.

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

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

Zahlensysteme. von Christian Bartl

Zahlensysteme. von Christian Bartl von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Umrechnungen... 3 2.1. Dezimalsystem Binärsystem... 3 2.2. Binärsystem Dezimalsystem... 3 2.3. Binärsystem Hexadezimalsystem... 3 2.4.

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Beispiel: A[300] = h + A[300]

Beispiel: A[300] = h + A[300] Beispiel: A[300] = h + A[300] $t1 sei Basisadresse von A und h in $s2 gespeichert. Assembler Code? Maschinen Code (der Einfachheit halber mit Dezimalzahlen)? op rs rt rd adr/shamt funct Instruktion Format

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

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

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

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM Hinweise: - Dies ist eine schrittweise Anleitung um auf den Server der Ag-Kim zuzugreifen. Hierbei können Dateien ähnlich wie bei Dropbox hoch-

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

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

RO-Tutorien 15 und 16

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

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

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

Persönliches Adressbuch

Persönliches Adressbuch Persönliches Adressbuch Persönliches Adressbuch Seite 1 Persönliches Adressbuch Seite 2 Inhaltsverzeichnis 1. WICHTIGE INFORMATIONEN ZUR BEDIENUNG VON CUMULUS 4 2. ALLGEMEINE INFORMATIONEN ZUM PERSÖNLICHEN

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

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen:

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen: Zahlensysteme. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis darstellen: n n n n z a a... a a a Dabei sind die Koeffizienten a, a, a,... aus der

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

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär

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

Mehr

in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen

in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen Gleitkommazahlen in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen allgemeine Gleitkommazahl zur Basis r

Mehr

einfache PIC-Übungsprogramme

einfache 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

Mehr

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? BITte ein BIT Vom Bit zum Binärsystem A Bit Of Magic 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? 3. Gegeben ist der Bitstrom: 10010110 Was repräsentiert

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

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

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

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

LPT1 Anschluss mit PCMCIA Karte

LPT1 Anschluss mit PCMCIA Karte 1. Allgemeines LPT1 Anschluss mit PCMCIA Karte verwendete Hardware: Lenze PC Systembusadapter EMF 2173-V003 PCMCIA Karte Firma QUATECH Typ SPP-100 Auf die Installation der PCMCIA Karte wird hier nicht

Mehr

Notwendigkeit für andere Instruktionsformate

Notwendigkeit für andere Instruktionsformate Notwendigkeit für andere Instruktionsformate add $t0, $s1, $s2 op rs rt rd shamt funct 6 Bit 5 Bit 5 Bit 5 Bit 5 Bit 6 Bit R Typ? lw $t0, 32($s3) I Typ Opcode 6 Bit Source 5 Bit Dest 5 Bit Konstante oder

Mehr

Tutorial: Wie kann ich Dokumente verwalten?

Tutorial: Wie kann ich Dokumente verwalten? Tutorial: Wie kann ich Dokumente verwalten? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory Dokumente verwalten können. Dafür steht Ihnen in myfactory eine Dokumenten-Verwaltung zur Verfügung.

Mehr

Algorithmen zur Integer-Multiplikation

Algorithmen 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

Mehr

Technische Informatik Basispraktikum Sommersemester 2001

Technische Informatik Basispraktikum Sommersemester 2001 Technische Informatik Basispraktikum Sommersemester 2001 Protokoll zum Versuchstag 4 Datum: 21.6.2001 Gruppe: David Eißler/ Autor: Verwendete Messgeräte: - digitales Experimentierboard (EB6) - Netzgerät

Mehr

28. März Name:. Vorname. Matr.-Nr:. Studiengang

28. März Name:. Vorname. Matr.-Nr:. Studiengang Klausur 28. März 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,

Mehr

Lösungen: zu 1. a.) 0 0 1 1 b.) 1 1 1 1 c.) 0 1 1 0 + 1 1 0 0 + 0 0 1 1 + 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1

Lösungen: zu 1. a.) 0 0 1 1 b.) 1 1 1 1 c.) 0 1 1 0 + 1 1 0 0 + 0 0 1 1 + 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 Lösungen: zu 1. a.) 0 0 1 1 b.) 1 1 1 1 c.) 0 1 1 0 + 1 1 0 0 + 0 0 1 1 + 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 vorzeichenlose Zahl: 15 vorzeichenlose Zahl: 18 vorzeichenlose Zahl: 13 Zweierkomplement: - 1

Mehr

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering. Lieferschein Lieferscheine Seite 1 Lieferscheine Seite 2 Inhaltsverzeichnis 1. STARTEN DER LIEFERSCHEINE 4 2. ARBEITEN MIT DEN LIEFERSCHEINEN 4 2.1 ERFASSEN EINES NEUEN LIEFERSCHEINS 5 2.1.1 TEXTFELD FÜR

Mehr

21. Februar Name:. Vorname. Matr.-Nr:. Studiengang

21. Februar Name:. Vorname. Matr.-Nr:. Studiengang Klausur 21. Februar 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,

Mehr

DLX Befehlsübersicht

DLX Befehlsübersicht DLX sübersicht 1 Instruktionen für den Daten-Transfer Daten können mit folgenden en zwischen Registern und dem Speicher oder zwischen Integer- und Fließkomma-Registern ausgetauscht werden. Der einzige

Mehr

bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke

bereits 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

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

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft IMAP Backup Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails Hersteller: malu-soft WEB Adresse: http://www.malu-soft.de email: info@malu-soft.de support@malu-soft.de

Mehr

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen können zwei Ebenen (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen? Wie heiÿt

Mehr

Wurzeln als Potenzen mit gebrochenen Exponenten. Vorkurs, Mathematik

Wurzeln als Potenzen mit gebrochenen Exponenten. Vorkurs, Mathematik Wurzeln als Potenzen mit gebrochenen Exponenten Zur Einstimmung Wir haben die Formel benutzt x m n = x m n nach der eine Exponentialzahl potenziert wird, indem man die Exponenten multipliziert. Dann sollte

Mehr

Grundlagen der Informatik (BSc) Übung Nr. 5

Grundlagen der Informatik (BSc) Übung Nr. 5 Übung Nr. 5: Zahlensysteme und ihre Anwendung Bitte kreuzen Sie in der folgenden Auflistung alle Zahlensysteme an, zu welchen jeder Ausdruck als Zahl gehören kann! (Verwenden Sie 'x für Wahl, ' ' für Ausschluß

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

Die druckfähige pdf-version ist zu laden von lernelesen.com/bedienungsanleitung.htm

Die druckfähige pdf-version ist zu laden von lernelesen.com/bedienungsanleitung.htm 1 Die druckfähige pdf-version ist zu laden von lernelesen.com/bedienungsanleitung.htm Anleitung LeLe_S1 ------------------- Diese App ist inhaltlich gleich mit LeLe_1. Nur die Darstellung und der Zugriff

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

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während

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

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

Kurzanleitung OOVS. Reseller Interface. Allgemein

Kurzanleitung OOVS. Reseller Interface. Allgemein Kurzanleitung OOVS Reseller Interface Allgemein Durch die Einführung des neuen Interfaces hat sich für Reseller von Syswebcom etwas geändert. Die Struktur der Kundenverwaltung ist einprägsamer, wenn man

Mehr

Binäre Division. Binäre Division (Forts.)

Binäre Division. Binäre Division (Forts.) Binäre Division Umkehrung der Multiplikation: Berechnung von q = a/b durch wiederholte bedingte Subtraktionen und Schiebeoperationen in jedem Schritt wird Divisor b testweise vom Dividenden a subtrahiert:

Mehr

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung Erweiterung AE WWS Lite Win: AES Security Verschlüsselung Handbuch und Dokumentation Beschreibung ab Vers. 1.13.5 Am Güterbahnhof 15 D-31303 Burgdorf Tel: +49 5136 802421 Fax: +49 5136 9776368 Seite 1

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Einführung in das Arbeiten mit MS Excel. 1. Bearbeitungs

Einführung in das Arbeiten mit MS Excel. 1. Bearbeitungs Einführung in das Arbeiten mit MS Excel 1. Bildschirmaufbau Die Tabellenkalkulation Excel basiert auf einem Rechenblatt, das aus Spalten und Zeilen besteht. Das Rechenblatt setzt sich somit aus einzelnen

Mehr

Programmiersprachen Einführung in C

Programmiersprachen Einführung in C Programmiersprachen Einführung in C Teil 1: Von der Maschinensprache zu C Prof. Dr. Maschinensprache: MIPS R2000 Was bewirkt folgendes Programm: 00100111101111011111111111100000 10101111101111110000000000010100

Mehr

Aufruf der Buchungssystems über die Homepage des TC-Bamberg

Aufruf der Buchungssystems über die Homepage des TC-Bamberg Aufruf der Buchungssystems über die Homepage des TC-Bamberg Das Online-Buchungssystem erreichen Sie einfach über die Homepage des TC-Bamberg (www.tennis-club-bamberg.de).über den Link (siehe Bild 1) gelangen

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

Erstellen einer digitalen Signatur für Adobe-Formulare

Erstellen einer digitalen Signatur für Adobe-Formulare Erstellen einer digitalen Signatur für Adobe-Formulare (Hubert Straub 24.07.13) Die beiden Probleme beim Versenden digitaler Dokumente sind einmal die Prüfung der Authentizität des Absenders (was meist

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

Win-Digipet V 9.2 Premium Edition Wie bastele ich mir steuerbare Kontakte. Wie bastele ich mir steuerbare Kontakte? -Quick-And-Dirty-Lösung-

Win-Digipet V 9.2 Premium Edition Wie bastele ich mir steuerbare Kontakte. Wie bastele ich mir steuerbare Kontakte? -Quick-And-Dirty-Lösung- ? -Quick-And-Dirty-Lösung- Vorwort Nach Anfragen aus dem Win-Digipet-Forum möchte ich folgende Quick-And-Dirty-Lösung vorstellen mit der man sich mal eben virtuelle Kontakte erstellen kann. Vorweg muß

Mehr

Computeria Solothurn

Computeria Solothurn Computeria Solothurn Seniorinnen und Senioren entdecken den Computer und das Internet Sich mit «TeamViewer» von einem Supporter helfen lassen Diese Anleitung und die Illustrationen wurden unter Mac OS

Mehr

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

Microsoft PowerPoint 2013 Folien gemeinsam nutzen Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft PowerPoint 2013 Folien gemeinsam nutzen Folien gemeinsam nutzen in PowerPoint 2013 Seite 1 von 4 Inhaltsverzeichnis Einleitung... 2 Einzelne

Mehr

Updateanleitung für SFirm 3.1

Updateanleitung für SFirm 3.1 Updateanleitung für SFirm 3.1 Vorab einige Informationen über das bevorstehende Update Bei der neuen Version 3.1 von SFirm handelt es sich um eine eigenständige Installation, beide Versionen sind komplett

Mehr

Dateiname Name(n) und Matrikelnr. des/der Bearbeiter Tel.-Nr. und E-Mail-Adresse für den Fall, dass die Diskette nicht lesbar ist.

Dateiname Name(n) und Matrikelnr. des/der Bearbeiter Tel.-Nr. und E-Mail-Adresse für den Fall, dass die Diskette nicht lesbar ist. Matrizenrechner Schreiben Sie ein CProgramm, das einen Matrizenrechner für quadratische Matrizen nachbildet. Der Matrizenrechner soll mindestens folgende Berechnungen beherrschen: Transponieren, Matrizenaddition,

Mehr

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:

Mehr

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden. Track in Route umwandeln ACHTUNG: Ein Track kann nur dann in eine Route umgewandelt werden, wenn der Track auf Wegen gefahren wurde. Ein Querfeldein-Track kann nicht in eine Route umgewandelt werden, da

Mehr

Überprüfung der digital signierten E-Rechnung

Überprüfung der digital signierten E-Rechnung Überprüfung der digital signierten E-Rechnung Aufgrund des BMF-Erlasses vom Juli 2005 (BMF-010219/0183-IV/9/2005) gelten ab 01.01.2006 nur noch jene elektronischen Rechnungen als vorsteuerabzugspflichtig,

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Übung RA, Kapitel 1.2

Übung RA, Kapitel 1.2 Übung RA, Kapitel 1.2 Teil 1: Zahlen und Logik A) Aufgaben zu den ganzen Zahlen 1. Konvertieren Sie die folgenden Zahlen in die Binärform: 1984 Immer durch 2 teilen, der Rest ergibt das Bit. Jeweils mit

Mehr

Anlegen eines DLRG Accounts

Anlegen eines DLRG Accounts Anlegen eines DLRG Accounts Seite 1 von 6 Auf der Startseite des Internet Service Centers (https:\\dlrg.de) führt der Link DLRG-Account anlegen zu einer Eingabemaske, mit der sich jedes DLRG-Mitglied genau

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse

Mehr

Excel Pivot-Tabellen 2010 effektiv

Excel Pivot-Tabellen 2010 effektiv 7.2 Berechnete Felder Falls in der Datenquelle die Zahlen nicht in der Form vorliegen wie Sie diese benötigen, können Sie die gewünschten Ergebnisse mit Formeln berechnen. Dazu erzeugen Sie ein berechnetes

Mehr

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach - Projekt Personalverwaltung Erstellt von Inhaltsverzeichnis 1Planung...3 1.1Datenbankstruktur...3 1.2Klassenkonzept...4 2Realisierung...5 2.1Verwendete Techniken...5 2.2Vorgehensweise...5 2.3Probleme...6

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

Import und Export von Übergängern

Import und Export von Übergängern Import und Export von Übergängern SibankPLUS bietet Ihnen eine komfortable Schnittstelle, um den Wechsel der Schüler nach der Stufe 4 von der Grundschule auf eine weiterführende Schule zu verarbeiten.

Mehr

Heute nur MIPS-Praxis (4 Aufgaben)

Heute nur MIPS-Praxis (4 Aufgaben) Themen heute Heute nur MIPS-Praxis (4 Aufgaben) Hinweis: Diese Aufgaben findet ihr auf den Übungsblättern zu den Tutorien (bei Aufgabe 4 wurde eine Teilaufgabe und im Tutorium #6 bereits geklärte Wissensfragen

Mehr