Architektur und Organisation von Rechnersystemen (im Rahmen von Informatik III)

Ähnliche Dokumente
Grundlagen der Informatik 2 Grundlagen der Digitaltechnik. 1. Zahlensysteme

Leseprobe. Taschenbuch Mikroprozessortechnik. Herausgegeben von Thomas Beierlein, Olaf Hagenbruch ISBN:

Informationsmenge. Maßeinheit: 1 Bit. 1 Byte. Umrechnungen: Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit

Rechnergrundlagen SS Vorlesung

Grundlagen der Informatik I. Übung

Rechnergrundlagen SS Vorlesung

Kapitel 2. Zahlensysteme

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14

Musterlösung 1. Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016

Zahlen in Binärdarstellung

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

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

Zahlendarstellungen und Rechnerarithmetik*

Grundlagen der Informatik I. Übung

Modul 114. Zahlensysteme

Vertiefungsstoff zum Thema Darstellung von Zahlen

Kapitel 2. Zahlensysteme, Darstellung von Informationen

BSZ für Elektrotechnik Dresden. Zahlenformate. Dr.-Ing. Uwe Heiner Leichsenring

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

Das Rechnermodell - Funktion

Arithmetik: Vorzeichenregeln und Überlauf, Exponenten & Normalisierung, Umrechnungen. Architektur: - Rechnerarchitektur, Instruktionssatz, Assembler

Kapitel 2 Grundlegende Konzepte. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Vorlesung Programmieren. Agenda. Dezimalsystem. Zahlendarstellung. Zahlendarstellung. Oder: wie rechnen Computer?

Zahlensysteme Seite -1- Zahlensysteme

Informationsdarstellung im Rechner

3 Rechnen und Schaltnetze

Einführung in die Programmiertechnik

Einführung in die Informatik I

TOTAL DIGITAL - Wie Computer Daten darstellen

Computerarithmetik (1)

Skript Zahlensysteme

Rechnerorganisation. IHS 2015/2016 H.-D. Wuttke, K. Henke

Repräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen

Technische Informatik I

Technische Grundlagen der Informatik Kapitel 8. Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt

Programmieren. Kapitel 3: Wie funktioniert ein moderner Computer? Wintersemester 2008/2009. Prof. Dr. Christian Werner

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13

Das Maschinenmodell Datenrepräsentation

Kapitel 1. Zahlendarstellung. Prof. Dr. Dirk W. Hoffmann. Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik

II. Grundlagen der Programmierung

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

Lektion 1: Von Nullen und Einsen _ Die binäre Welt der Informatik

Zahlensysteme. Formale Methoden der Informatik WiSe 2008/2009 Folie 1 (von 54)

Grundstrukturen: Speicherorganisation und Zahlenmengen

Grundlagen der Datenverarbeitung - Zahlensysteme

Black Box erklärt Zahlensysteme.

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen

Zahlen- und Buchstabencodierung. Zahlendarstellung

Lektion 1: Zahlensysteme und Binärdarstellung. Übersicht Lektion 1

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Zahlensysteme und Datendarstellung

Tutorium Rechnerorganisation

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung

Repräsentation von Daten Binärcodierung ganzer Zahlen

3 Zahlensysteme in der Digitaltechnik

Leitung 1 Leitung

2.5. Gleitkommaarithmetik

2 Darstellung von Zahlen und Zeichen

, 2015S Übungstermin: Mi.,

1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement

1. Vorzeichen und Betrag (engl. Sign-/Magnitude) 2. Stellenkomplement 3. Basiskomplement

Binärzahlen. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

Computergrundlagen Zahlensysteme

Der 8086/88 als Rechenkünstler

Algorithmen zur Division

Die Umwandlung einer Dualzahl in eine Dezimalzahl ist ein sehr einfacher Vorgang.

Algorithmen & Programmierung. Zahlensysteme Bits und Bytes

Zahlensysteme: Oktal- und Hexadezimalsystem

Grundlagen der Informatik

Alexander Halles. Zahlensysteme

Digitaltechnik FHDW 1.Q 2007

2.0 Zahlendarstellung, Konvertierungsalgorithmen und arithmetische Algorithmen

Technische Informatik - Eine Einführung

Thema 1 -- Fortsetzung. Computersystem, Informationsdarstellung

MIKROPROZESSOR PROGRAMMIERUNG 12. VORLESUNG. LV-Nr SS INSTITUT FÜR ELEKTRONIK BIT

D A T E N... 1 Daten Micheuz Peter

Dipl.-Ing. Halit Ünver Datenbanken/Künstliche Intelligenz FAW/n. Zahlensysteme

TU ILMENAU Fak. IA - FG Neuroinformatik & Kognitive Robotik. Vorkurs Informatik September Kurs: I 1. Dr. Klaus Debes.

FH Darmstadt FB Informatik Klausurensammlung Rechnergrundlagen Prof. Komar

3. Datentypen, Ausdrücke und Operatoren

2 Einfache Rechnungen

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

2. Negative Dualzahlen darstellen

Anzahl Pseudotedraden: Redundanz: Weitere Eigenschaften?

2.1.2 Gleitkommazahlen

Inhalt: Binärsystem 7.Klasse - 1 -

Zahlensysteme Dezimal-System

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?

Einführung in die Programmierung

Zahlen und Zeichen (1)

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

Chapter 1 Einführung. CCNA 1 version 3.0 Wolfgang Riggert, FH Flensburg auf der Grundlage von

Gleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124

Zahlensysteme. Zahl Stellenwert Zahl Zahl =

Binär- und Hexadezimal-Zahl Arithmetik.

Leseprobe. Matthias Sturm. Mikrocontrollertechnik. Am Beispiel der MSP430-Familie. ISBN (Buch): ISBN (E-Book):

Grundzüge der Informatik Zahlendarstellungen (7)

Grundlagen der Informatik

1. Polyadische Zahlensysteme:

Transkript:

Architektur und Organisation von Rechnersystemen (im Rahmen von Informatik III) Thema heute: Zahlendarstellungen Micro_ArcOrg17-V4 am 21.05.2016 Ulrich Schaarschmidt HS Düsseldorf, WS 2017/18 Quellenhinweise Rübel, Manfred: 8/16 bit-mikroprozessorsysteme Teubner Verlag, 1991 Rübel, Manfred; Schaarschmidt, Ulrich: Elektronik-Aufgaben, Digitale Schaltungen und Systeme Vieweg und Teubner Verlag, 1996 (c) U.G. Schaarschmidt, HS D 2 (c) Prof. Dr. U. G. Schaarschmidt 1

Zahlendarstellung im Rechner Einfache Addition Addiere die Zahlen 25 + 34. (= 59) In ASCII 3235h + 3334h Kann man rechnen, indem die höheren Nibbles der jeweiligen Bytes stehen bleiben und die unteren addiert werden. 3235h + 3334h = 3539h. (= 59d) Nur der Rechner ist nicht zu überzeugen nur bestimmte Nibbles zu rechnen. (c) U.G. Schaarschmidt, HS D 3 BCD-Darstellung Was ist die BCD-Darstellung? BCD = Binary Coded Decimal Darstellung der Ziffern 0 bis 9 in einem Nibbel (pro Byte somit maximal 99) im Gegensatz zur Dualzahlendarstellung, die in einem Nibbel 1 bis F darstellt- in einem Byte also bis zu 256 verschiedene Bitkombinationen. (c) U.G. Schaarschmidt, HS D 4 (c) Prof. Dr. U. G. Schaarschmidt 2

BCD-Darstellung II Eine Dezimalziffer zwischen 0 und 9 wird in gewöhnlicher Weise dual codiert allerdings in einer konstanten Länge der Bitfolge von 4 (1/2 Byte = Nibble). 6 mögliche (bei der Hex-Darstellung genutzte A bis F) Pseudotetraden bleiben hierbei ungenutzt sie könnten zur Darstellung eines Vorzeichens genutzt werden. (c) U.G. Schaarschmidt, HS D 5 BCD-Darstellung III Die BCD-Darstellung der Dezimalzahl 4739 lautet 0100 0111 0011 1001 4 7 3 9 Die Darstellung der BCD-Zahl ist also leicht herstellbar bzw. rückwandelbar. Auf der folgenden Seite ist ein Rechenbeispiel, das zeigt, wo Komplikationen auftauchen. (c) U.G. Schaarschmidt, HS D 6 (c) Prof. Dr. U. G. Schaarschmidt 3

Rechnen mit BCD I (c) U.G. Schaarschmidt, HS D 7 Rechnen mit BCD II Dezimalanpassung (c) U.G. Schaarschmidt, HS D 8 (c) Prof. Dr. U. G. Schaarschmidt 4

Prozessor-Befehle zur ASCII bzw. BCD-Korrektur Die BCD-Darstellung entstand aus den Anforderungen an die Computer- Rechengenauigkeit der Finanzmathematik. Die meisten Prozessoren haben zum Zweck der BCD- bzw. ASCII-Korrektur extra Befehle: Bei 80x86 / Pentium AAA, AAD, AAM, AAS korrigieren nach Auftreten eines Übertrags bzw. einer Pseudotretrade durch Addition einer 6. (c) U.G. Schaarschmidt, HS D 9 Prozessor-Befehle zur ASCII bzw. BCD-Korrektur Der Nachteil der eventuell erforderlichen Korrektur besteht darin, dass sie nur im Akkumulator und nur bei einem Byte angewendet wird. Außerdem löscht er nach Durchführung der Korrekturen das höherwertige Halbbyte (Nibble) von AL, so dass bei der Addition von 34 + 32 nach der Korrektur 06 herauskommt. Damit wird automatisch der Fehler korrigiert, der bei der Addition der höherwertigen Tetraden entsteht. (c) U.G. Schaarschmidt, HS D 10 (c) Prof. Dr. U. G. Schaarschmidt 5

ASCII Adjust for Addition O=Overflow, D=Direction down, I=Enable Interrupt, T=Trap, S=Negativ, Z=Zero, A=Auxiliary, P=Parity, C=Carry (c) U.G. Schaarschmidt, HS D 11 Beispiel für AAA (c) U.G. Schaarschmidt, HS D 12 (c) Prof. Dr. U. G. Schaarschmidt 6

AAD ASCII Adjust for Division (c) U.G. Schaarschmidt, HS D 13 AAM ASCII Adjust for Multiplication (c) U.G. Schaarschmidt, HS D 14 (c) Prof. Dr. U. G. Schaarschmidt 7

AAS Adjust for Subtraction (c) U.G. Schaarschmidt, HS D 15 Beispiel zur AAS-Korrektur (c) U.G. Schaarschmidt, HS D 16 (c) Prof. Dr. U. G. Schaarschmidt 8

ASCII-/ BCD-Korrektur In vielen Prozessoren steht ein Flagbit bereit (hier AF bzw. AC = Auxiliary Carry), das den Übertrag vom unteren Nibble zum nächsten Nibble anzeigt. Achtung: muss vom Programmierer richtig interpretiert werden, d.h. im Programm berücksichtigt werden (s. Beispielrechnung weiter hinten). (c) U.G. Schaarschmidt, HS D 17 Carry als Korrektur für die Überschreitung des Wortes Je nach Prozessor wird ein Überlauf eines Bytes bzw. eines Wortes durch Setzen des Carry-Flags angezeigt. Die Berechnung des nächsthöheren Bytes bzw. Wortes muss dies berücksichtigen. Bei 80X86 / Pent. dient der Befehl Addition mit integriertem Übertrag: ADC Integer Add with Carry (ohne C = ADD). (c) U.G. Schaarschmidt, HS D 18 (c) Prof. Dr. U. G. Schaarschmidt 9

ADC Int Add with Carry (c) U.G. Schaarschmidt, HS D 19 ADD Int Add (Addieren) (c) U.G. Schaarschmidt, HS D 20 (c) Prof. Dr. U. G. Schaarschmidt 10

Beispiel-Programm Es ist ein Programm zu entwerfen, das folgendes leistet: In einem Wortregister soll, von Null beginnend, fortlaufend hochgezählt werden. Die Anzeige des Registerinhaltes soll in Form einer zweistelligen Dezimalzahl auf dem Bildschirm erfolgen. 1. Programm-Ablaufplan (c) U.G. Schaarschmidt, HS D 21 Init Zähler (2Byte) ASCIIKorrekt. Nur im Akku! 0-Add z. AF-Korrekt. 0X0Y muss korrig. (c) U.G. Schaarschmidt, HS D 22 (c) Prof. Dr. U. G. Schaarschmidt 11

START: MOV CX,0000h ;Zaehler init M1: MOV AX,CX AAA ADD AL,00 ;Rücksetzen des Aux-Flag MOV CX,AX MOV AL,CH AAA MOV CH,AL ADD CX,3030h ;Umwandl. in ASCII MOV DL,CH MOV AH,02h INT21h MOV DL,CL MOV AH,02h INT21h MOV DL,20h ;Leerzeichen (auch ' ') MOV AH,02h INT21h WARTE 2000 ;Warteschleife INC CX JMP M1 END START (c) U.G. Schaarschmidt, HS D 23 Zahlendarstellung Festpunkt - Festkomma Signed dual fixed-point numbers In Programmiersprachen: INT Als Darstellungseinheiten werden vorzugsweise Maschinenwörter der Länge n = 8, 16, 32, 64 bit benutzt. Die linke erste Binärstelle (MSB Most Significant Bit), Vorzeichenbit oder Signbit s, codiert das Vorzeichen der Zahl: s=0 + (positive), s=1 -(negative Zahl); 0= + Zahl. (c) U.G. Schaarschmidt, HS D 24 (c) Prof. Dr. U. G. Schaarschmidt 12

Zahlendarstellung Festpunkt Festkomma II Die restlichen n-1 Binärstellen codieren den ganzzahligen Absolutwert der dualen Zahl. Daraus folgt: Alle Operationen führt der Computer so aus, als stünde der Punkt unmittelbar hinter der letzten Binärstelle des Wortes, also rechtsbündig zum Wort. Negative Zahlen werden stets als n-stelliges Zweierkomplement K n, d.h. mit der Ergänzung ihres Betrages zu 2 n, dargestellt. (c) U.G. Schaarschmidt, HS D 25 Festpunktdarstellung 1 Byte n=8 bit (Wert +27 und 27), zugeordnet hexadezimale Und oktale Darstellungen. (c) U.G. Schaarschmidt, HS D 26 (c) Prof. Dr. U. G. Schaarschmidt 13

Zahlendarstellung Festpunkt Festkomma III K n = 2 n - X n (X n = n-stellig), Man benutze dazu das Dualsystem, denn damit entsteht von selbst das richtige Format und das mit 1 belegte s-bit (c) U.G. Schaarschmidt, HS D 27 Die Wortlänge n entscheidet über den zulässigen Wertebereich Vorzeichenfreie duale Festpunktzahlen (Unsigned dual fixed-point numbers) haben statt des Vorzeichenbits ein weiteres Wertebit (s. rechter Tabellenteil). (c) U.G. Schaarschmidt, HS D 28 (c) Prof. Dr. U. G. Schaarschmidt 14

ASCII / BCD Binär - Wandlung Wenn intern mit Zahlen gerechnet werden soll, wie sie in der Tabelle der vorherigen Seite dargestellt wurden, sie aber über die Tastatur eingegeben werden, muss eine Umwandlung erfolgen. 2 Verfahren werden gezeigt: (c) U.G. Schaarschmidt, HS D 29 1. Umwandlungsverfahren Jede Dezimalziffer wird mit ihrem Stellenwert multipliziert (Einer, Zehner, Hunderter, Tausender, usw.) und addiert diese Produkte auf. 345 heißt 3*100 + 4*10 + 5*1 2345 = 2*1000 + 3*100 + 4*10 + 5*1 (c) U.G. Schaarschmidt, HS D 30 (c) Prof. Dr. U. G. Schaarschmidt 15

2. Umwandlungsverfahren Man multipliziert mit der höchstwertigen Stelle beginnend mit 10, addiert die nächste Stelle auf, multipliziert die Summe wieder mit 10, usw. bis zur letzten Stelle, die dann nur noch aufaddiert wird. 2345 = ((2*10+3)*10+4)*10+5 (c) U.G. Schaarschmidt, HS D 31 Binär BCD Wandlung 1 2345 : 10 = 234 Rest 5 234 : 10 = 23 Rest 4 23 : 10 = 2 Rest 3 2 : 10 = 0 Rest 2 Dies Verfahren funktioniert mit allen Basen, also auch mit 16 für die HEXoder 8 für die Oktal-Darstellung. (c) U.G. Schaarschmidt, HS D 32 (c) Prof. Dr. U. G. Schaarschmidt 16

Binär BCD Wandlung 2 2345 : 1000 = 2 345 : 100 = 3 45 : 10 = 4 5 : 1 = 5 (c) U.G. Schaarschmidt, HS D 33 Stellenwertsysteme (c) U.G. Schaarschmidt, HS D 34 (c) Prof. Dr. U. G. Schaarschmidt 17

Einfache Rechenoperationen Addition und Subtraktion (c) U.G. Schaarschmidt, HS D 35 Multiplikation und Division (c) U.G. Schaarschmidt, HS D 36 (c) Prof. Dr. U. G. Schaarschmidt 18

Es gibt nicht nur Integer Festkommazahlen gibt es auch (c) U.G. Schaarschmidt, HS D 37 Mit Festkommazahlen einfach rechnen (c) U.G. Schaarschmidt, HS D 38 (c) Prof. Dr. U. G. Schaarschmidt 19

Wie kommt man vom Dezimalbruch zur Dualzahl? (c) U.G. Schaarschmidt, HS D 39 Andere Darstellung der Umwandlung (c) U.G. Schaarschmidt, HS D 40 (c) Prof. Dr. U. G. Schaarschmidt 20

Gleitkommadarstellung (1) (c) U.G. Schaarschmidt, HS D 41 Gleitkommadarstellung (2) (c) U.G. Schaarschmidt, HS D 42 (c) Prof. Dr. U. G. Schaarschmidt 21

Gleitkommadarstellung nach IEEE 754 (1) (c) U.G. Schaarschmidt, HS D 43 Gleitkommadarstellung nach IEEE 754 (2) (c) U.G. Schaarschmidt, HS D 44 (c) Prof. Dr. U. G. Schaarschmidt 22

(c) U.G. Schaarschmidt, HS D 45 (c) Prof. Dr. U. G. Schaarschmidt 23