<sub class="descriptionSection">10-10-2024 11:57:am // #Zahlensystem // [[TI]]</sub> ____ Mikroprozessoren arbeiten mit Dualzahlen bzw. mit binär kodierten Zahlen Es werden die Rechenoperationen + - * : ausgeführt. ## Addition ### Rechenregeln | Zahl 1 | Operator | Zahl 2 | Ergebnis | | ------ | -------- | ------ | ----------------------- | | 0 | + | 0 | 0 | | 0 | + | 1 | 1 | | 1 | + | 0 | 1 | | 1 | + | 1 | 0 => mit dem Übertrag 1 | ### Beispiel ![[IMG_0116.jpeg]] Der Übertrag wird einfach auf die nächste Zahl draufgerechnet. Wenn da schon zwei 1 stehen, wird die 1 in das ergebnis geschrieben und es gibt noch einen übertrag. ## Subtraktion ### Rechenregeln | Zahl 1 | Operator | Zahl 2 | Ergebnis | | ------ | -------- | ------ | ------------------------------------------- | | 0 | - | 0 | 0 | | 1 | - | 0 | 1 | | 1 | - | 1 | 0 | | 0 | - | 1 | 1 mit übertrag zur nächsthöheren Dualstelle | ### Beispiel ![[IMG_0118.jpeg]] 0 - 1 kann nicht gerechnet werden, deswegen muss eine 1 von der nächstöheren dualstelle genommen werden > [!warning] Achtung > Diese Form der Subtraktion wird in der Computertechnik **NICHT** gebraucht! ## Darstellung negativer Dualzahlen durch Komplementbildung Ein 6 stelliger Kilometerzähler zeigt an: ![[IMG_0120.jpeg]] 11000 wird in diesem Fall das __Komplement__ zu 989000 genannt. > [!abstract] Voraussetzung >Bei der Addition des Komplements darf kein Übetrag in die siebte Stelle erfolgen. >In anderen Wort: Der Übertrag in die siebte Stell muss verworfen werden. Bei sechsstelliger Darstellung ergänzen sich Zahl und Komplement im Dezimalsystem zu 1000000 = $10^6$ Bsp: $ 989000 + 11000 = 1 000 000 $ $ 870 000 + 130 000 = 1 000 000 $ > [!abstract] Merke > Bei **n-stelliger** Darstellung ergänzen sich eine **Zahl** und ihr **Komplement** im Dezimalsystem zu $10^n$ ### Komplement einer Dualzahl #### Beispiel: ![[IMG_0121.jpeg]] #### Ansatz: Welche Dualzahl muss zu 1111 addiert werden, damit bei **Verwerfen** der fünften Stelle 1000 herauskommt? #### Rechenweg Durch Probieren: ![[IMG_0122.jpeg]] B - Komplement (Binärkompliment) = Zweierkompliment (2er Kompliment, ZK) ![[IMG_0123.jpeg]] > [!abstract] Merke > Im Dualsystem ergänzen sich eine n-stellige Zahl durch Addition mit ihrem Kompliment zu $2^n$ Im Beispiel: $ 2^n = 2⁴ = 16 $ mit n = 4 Stellen ## Bestimmung des B-Kompliments / Zweier Kompliments 1. Stellenanzahl festlegen 2. ggf. Stellenanzahl durch Voranstellen von Nullen ergänzen. 3. Bilden des B-1-Komplements / Einerkomplement durch "Kippen der Bits" o.d "Inverten der Bits" 4. Addiere eine 1 zum B-1-Komplement und du erhälst das B-Komplement: $ [B-1-Komplement]+1 = [B-Komplement] $ ### Beispiel Gegeben: $101001_{(2)}$ ges. B-Komplement für n = 8 Stellen: ![[IMG_0124.jpeg]] ### Beispiel 2 Gegeben $10110_2$ - $101_2$ ![[IMG_0156.jpeg]] Hier machen wir: 2. Dem Subtrahenten vorne Nullen anstellen, damit die Ziffernanzahl gleich ist bei beiden Nummern 3. Den Subtrahenten umkehren (Siehe: [[#Bestimmung des B-Kompliments / Zweier Kompliments]]) 4. +1 Rechnen um vom B-1 Komplement auf das B Kompliment zu kommen 5. Ausrechnen, wo bei der Übertrag an der 5ten stelle verworfen wird, da ausserhalb unserer Range ## Subtraktion mit negativen Ergebnissen ### Beispiel ![[IMG_0157.jpeg]] ### Erklärung Wenn bei einer Subtraktion **kein Übertrag in die n+1te Stelle existiert**, so ist das Vorzeichen Negativ **und das Kompliment der Zahl muss gebildet werden**: ![[IMG_0158.jpeg]] > [!NOTE] Info > Um den Betrag des Ergebnisses zu erhalten muss das 2er-Komplement gebildet werden! > [!abstract] Problem > Das Komplement einer Zahl kannDas Komplement einer Zahl kann als negativer Wert dieser Zahl aufgefasst werden > > Wie erkennt man jedoch ob eine Zahl positiv oder negativ aufgefasst werden soll? > Im Beispiel ist: > $101100 \text{ als -20 oder auch als +44 interpretierbar}$