VL Microcontroller - Dipl.-Inf. Swen Habenberger

Slides:



Advertisements
Ähnliche Präsentationen
Dauermagnete Bei magnetischen Materialien unterscheidet man Eisenkerne bzw. Weicheisenstücke und Dauermagnete bzw. Hart-magnetische Materialien. Dauermagnete.
Advertisements

TAGUNG DER DEUTSCH-LUSITANISCHEN JURISTENVEREINIGUNG O processo penal português Panorâmica introdutória Der portugiesische Strafprozess ein einführender.
Ach wie gut, daß niemand weiß Der Schutz von Wissen
Herzlich Willkommen bei SIMPLE STABLE BULDING
Adjektivendungen Tabellen und Übungen.
ZWILLING Neuheiten 2008.
Das Hexenkochbuch Nicht Rattenschwänze, Spinnenbein
 Präsentation transkript:

VL Microcontroller - Dipl.-Inf. Swen Habenberger Microcontroller Teil 2 Wiederholung Duales Zahlensystem Schaltungslogik 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Wiederholung Geschichte des Microcontrollers Zuse Z3 Von-Neumann Architektur Intel 4004 Transistortechnik 2 Mrd Transistoren auf einem Chip 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Duales Zahlensystem Dezimalsystem: Zahlensystem zur Basis 10 Ziffern 0 - 9 Binärsystem: Zahlensystem zur Basis 2 Ziffern 0 und 1 Oktalsystem: Zahlensystem zur Basis 2^3 = 8 Ziffern 0 - 7 Hexadezimalsystem: Zahlensystem zur Basis 2^4 = 16 Ziffern 0-9 und A-F 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Umrechnung Dezimalzahl in Binärzahl 243= 243 % 2 = 1 = 243 / 2 = 121 = 121 % 2 = 1 = 121 / 2 = 60 = 60 / 2 = 30 Rest 0 = 30 / 2 = 15 Rest 0 = 15 / 2 = 7 Rest 1 = 7 / 2 = 3 Rest 1 = 3 / 2 = 1 Rest 1 = 1 / 2 = 0 Rest 1 => 11110011 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Umrechnung Binärzahl in Dezimalzahl 11110011= 1*2^0 + 1* 2^1 + 0* 2^2 + 0* 2^3 + 1* 2^4 + 1* 2 ^5 + 1* 2^6 + 1* 2^7 = 1*1 + 1*2 + 0*4 + 0*8 + 1*16 + 1*32 + 1*64+1*128 = 1+2+16+32+64+128 = 243 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Umrechung Dezimalzahl in Hexadezimalzahl 243 = 243 % 16 = 3 => 3 = 243 / 16 = 15 = 15 % 16 = 15 => F = 15 / 16 = 0 => 243 = F3 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Umrechnung Hexadezimalzahl in Dezimalzahl F3 = 3*16^0 + F * 16^1 = 3*1 + 15 * 16 = 3 + 240 = 243 TIPP zum Üben: Der Windowstaschenrechner kann diese 3 Zahlenformate darstellen und in einander überführen 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Umwandlung Binärzahl in Hexadezimalzahl und umgekehrt 11110011 = 1111 0011 = F 3 F 3 = 1111 0011 = 11110011 Hexadezimalzahlen werden oft mit 0x als Prefix geschrieben: 0xF3 Umwandlungen in jedes beliebige Zahlensystem, z.B. Oktalsystem funktionieren analog. 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger 2er Komplement Bildung einer Negativen Zahl Positive Darstellung der Zahl Invertierung aller Bits Addieren von 1 Beispiel: -13 für eine 8 Bit Zahl Berechne 13: 00001101 Invertiere Bits: 11110010 Addiere 1: 11110011 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Zahlenkreis der 2erKomplementzahlen 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Signed vs unsigned Man unterscheidet zwischen signed und unsigned Zahlen Signed: Mit Vorzeichen (Negative und Positive Zahlen) Egal ob 8-, 16- oder 32-Bit Zahlen, das höchstwertige Bit gibt das Vorzeichen an. Unsigned: Ohne Vorzeichen (Nur positive Zahlen) Alle Bits tragen zum Ergebnis bei Achtung: 11110011 = 243 (unsigned) 11110011 = - 13 (signed) 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Zahlenbereiche Ganze Zahlen (Integer) Signed: bei 8 Bit: −128 bis +127 bei 16 Bit: −32.768 bis +32.767 bei 32 Bit: −2.147.483.648 bis +2.147.483.647 bei 64 Bit: −9.223.372.036.854.775.808 bis +9.223.372.036.854.775.807 (9 Trillionen) Unsigned: bei 8 Bit: 0 bis 255 bei 16 Bit: 0 bis + 65.535 bei 32 Bit: 0 bis +4.294.967.295 bei 64 Bit: 0 bis + 18.446.744.073.709.551.615 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Fragen? 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Rechnen mit Binärzahlen (Ganzzahlig) Addition Subtraktion Multiplikation Division Mögliche Probleme Overflow (Addition) Underflow (Subtraktion) Multiplikation erfodert doppelte Byte Anzahl Division geht nicht auf 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Addition von 2 8-Bitzahlen 9 + 5 = 14 00001001 (9) + 00000101 (5) = 00001110 (14) 120 + 65 = 185 0111 1000 + 0100 0001 = 1011 1001 Signed oder unsigned? Unsigned:Korrektes Ergebnis (185) Signed: Overflow (-71) 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Subtraktion Subtraktion ist die Addition des negativen Zweier Komplements 9-5 = 4 <=> 9 + (-5) = 4 0000 1001 (9) + 1111 1011 (-5) = 0000 0100 (4) -120 – 65 = -185? 1000 1000 + 1011 1111 = 0100 0111 (71) UNDERFLOW!!! 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Multiplikation / Division 2^8*2^8=2^16 Es werden immer doppelt soviele Bytes gebraucht, wie die Ursprungszahlen hatten. Muliplikation und Division bedeutet eine Verschiebung der Bits nach links (Multiplikation) und nach rechts (Division) << 4 bedeutet eine Multiplikation mit 2^4 (LeftShift) Auffüllen mit 0 von hinten >> 4 bedeutet Division durch 2^4 (RightShift) Auffüllen von vorne mit Vorzeichenbit 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Multiplikation 12 * 13 = 156 0000 1100 * 0000 1101 = 0000 0000 1001 1100 1100 · 1101 ----------- 1100 + 1100 + 0000 + 1100 10011100 (156) 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Multiplikation Verbesserungen der Multiplikation: Booth-Algorithmus Bit-Pair-Verfahren weitere Verbesserungen des Booth-Algorithmuses Verbesserungen beruhen darauf das viele 0 in den positiven Zahlen und viele 1 am Anfang von negativen Zahlen stehen 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Division 168 / 6 = 28 Rest 0 172 / 6 = 28 Rest 4 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Fragen? 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Fliesskomma/Gleitkommazahlen f = s · m · 2^e F = Fliesskommazahl, z.B. 0,345 S = Vorzeichenbit (1 Bit) M = Mantisse (23 bzw. 52 Bit) E = Exponent ( 8 bzw. 11 Bit) Normalisierung notwendig 2,0 * 10^1 = 0,2* 10^2 = 20* 10^0 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Dezimalzahl nach Binärzahl 11,25 = 0 1000 0010 01101000000000000000000 Exponent muss so gewählt werden, dass die Mantisse eine Zahl zwischen 1 und 2 erhält Bildung des 2er Logarithmus Log(11,25) = 3,..... Damit dieser Exponent nicht negativ wird wird 2^Bitanzahl Exponent-1 hinzuaddiert (hier also 128-1=127) Mantisse = (11,25/2^3 - 1) *2^{23} = (1,40625 - 1) * 2^23 = 3407872 -> 01101000000000000000000 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

IEEE754 Einfache Genauigkeit 0 < e < 255 =⇒ x = (−1)v · 1.m · 2e−127 Normale reelle Zahl e = 0, m = 0 =⇒ x=0 Null e = 0, m = 0 =⇒ x = (−1)v · 0.m · 21−127 Nichtnormalisierte Zahl e = 255, m = 0 =⇒ x = (−1)v · ∞ Unendlich e = 255, m = 0 =⇒ x = NAN Not a Number, keine Zahl Genauigkeit 15 Stellen Dies bedeutet nicht 15 Nachkommastellen, sondern z.B.: 1234567890,12345 das alle weiteren Nachkommastellen „ungenau“ sind 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Fragen 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Digitale Schaltungstechnik NOT (Invertierer) AND (*) Konjunktion OR (+) Disjunktion XOR NAND NOR Konjungierte Normalform Disjunktierte Normalform 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Standardisierung von Schaltungen Gängige Normen: International Electrotechnical Commission (IEC) Norm 60617-12 ist Standard US ANSI IEEE 91-1984 Alternativer Standard DIN 40700 (Deutsche Industrie Norm) Wurde 1996-1998 durch die DIN-Norm 60617 ersetzt 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger AND Schaltsymbole: IEC ANSI DIN Stellt eine Multiplikation dar Schreibweise AB bzw Logisch: A ^ B Fachbegriff: Konjunktion 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger OR Schaltsymbole: IEC ANSI DIN Stellt eine Addition dar Schreibweise A+B bzw Logisch: A V B Fachbegriff: Disjunktion 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger XOR Schaltsymbole: IEC ANSI DIN Es darf nur genau ein Eingang wahr sein 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger NAND Schaltsymbole: IEC ANSI DIN Häufiger Baustein in der Halbleitertechnik Sheffer-Operation Sheffer hat nachgewiesen, dass man alle logischen Operatoren mit NANDs realisieren kann 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger NOR Schaltsymbole: IEC ANSI DIN Häufiger Baustein in der Halbleitertechnik Peirce-Operation Peirce hat die Grundlagen für Sheffer gelegt 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Überblick 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Wahrheitstafeln Wahrheitstabellen werden verwendet um Boole'sche Funktionen zu definieren, und / oder sie darzustellen. Die Anzahl der möglichen Kombinationen steigt exponentiell mit der Anzahl der Eingangsvariablen an => 2 ^Anzahl der Eingangsvariablen Anwendung auf Funktionen mit nur wenigen (4) Eingangsvariablen beschränkt. Zur Vereinheitlichung von Wahrheitstabellen stehen auf der linken Seite die Zahlen als Binärcode da 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Wahrheitstabellebeispiel 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Konjugierte Normalform Eine Formel der Aussagenlogik ist in konjunktiver Normalform, wenn sie eine Konjunktion von Disjunktionstermen ist. Disjunktionsterme sind dabei Disjunktionen von Literalen. Literale sind nichtnegierte oder negierte Variablen. Eine Formel in KNF hat also die Form Beispiel: 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Disjunktive Normalform Eine Formel der Aussagenlogik ist in disjunktiver Normalform, wenn sie eine Disjunktion von Konjunktionstermen ist. Ein Konjunktionsterm wird ausschließlich durch die konjunktive Verknüpfung von Literalen gebildet. Literale sind dabei nichtnegierte oder negierte Variablen. Eine Formel in DNF hat also die Form 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Beispiel 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger De Morgansche Regeln DeMorgan hat die Gesetze für die Umformung von logischen Aussagen formuliert 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Fragen 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Halbaddierer 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Schaltbild Halbaddierer 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Volladdierer 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Schaltbild Volladdierer 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger 4-Bit-Addierer 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Probleme: Hazards Übergang 111 zu 110 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Lösung zusätzliche Gatter 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger FPGA 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Flip-Flops Flip-flops dienen als Speicher eines Bits Werden häufig als Registerbausteine eingesetzt Genauer Aufbau wird bei der Architektur des Prozessors besprochen werden 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger Frage 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger KV-Diagramme 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Beispiele für Karnaugh-Diagramme 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Beispiel einer Schaltung 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

Optimierte Schaltung durch Bildung von Blöcken 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger

VL Microcontroller - Dipl.-Inf. Swen Habenberger 7-Segment-Anzeige 7-Segmentanzeigen Häufiger Einsatz in Digitaluhren und Taschenrechnern Zur Darstellung der Zahlen von 0-9 Werden wieviele Bits als Eingänge benötigt? Werden wieviele Bits zur Ansteuerung der Anzeige benötigt? Übung: Wahrheitstabelle Übung: Minimale Schaltung durch Anwendung von KV-Diagrammen und KNF bzw DNF 14.01.2009 VL Microcontroller - Dipl.-Inf. Swen Habenberger