nach Aufgabentypen suchen

Aufgabentypen anhand von Beispielen durchstöbern

Browserfenster aktualisieren (F5), um neue Beispiele bei den Aufgabentypen zu sehen

Dezimal aus Binär

Beispiel:

Gib die Zahl (1111.0001)2 im Dezimalsystem an.

Lösung einblenden

Als Dezimalzahl

20 = 1
21 = 2
22 = 4
23 = 8
24 = 16
25 = 32
26 = 64
27 = 128
28 = 256
29 = 512
...

Um die (für uns normale) Dezimalzahl zu berechnen, müssen wir einfach jede Ziffer mit der zugehörigen 2er-Potenz ihrer Stelle (siehe rechts) multiplizieren. Am besten tun wir das von rechts nach links:

(1111.0001)2 = 1⋅1 + 0⋅2 + 0⋅4 + 0⋅8 + 1⋅16 + 1⋅32 + 1⋅64 + 1⋅128= 241

Somit ergibt sich die Dezimaldarstellung von (1111.0001)2 = 241

Binär aus Dezimal

Beispiel:

Gib die Zahl 51 im Binärsystem an.

Lösung einblenden
20 = 1
21 = 2
22 = 4
23 = 8
24 = 16
25 = 32
26 = 64
27 = 128
28 = 256
29 = 512
...

Zuerst versuchen wir Schritt für Schritt die Zahl 51 als Summe von 2er-Potenzen (siehe rechts) zu schreiben:

51 = 32 + 19
= 32 + 16 + 3
= 32 + 16 + 2 + 1

= 1⋅32 + 1⋅16 + 0⋅8 + 0⋅4 + 1⋅2 + 1⋅1

Somit ergibt sich die Binärdarstellung von 51 = (11.0011)2

Binäres Addieren

Beispiel:

Berechne ohne die Binärzahlen in Dezimalzahlen umzuwandeln:

                 (111.1100)2
            + (1.0001.1100)2

Lösung einblenden

Wir schreiben die beiden Binärzahlen untereinander und gehen wie beim schriftlichen Addieren von Dezimalzahlen vor:

                 (111.1100)2
            + (1.0001.1100)2
                 1111 1  
              (1 1001 1000)2

Binäres Subtrahieren

Beispiel:

Berechne ohne die Binärzahlen in Dezimalzahlen umzuwandeln:

               ( 0101.1100)2
             - ( 0011.1001)2

Lösung einblenden

Wir wandeln erst den Subtrahend b, also die untere Zahl, die angezogen wird, in ihre negative Zahl um, so dass wir dann einfach die beiden Zahlen addieren können (a-b = a+(-b).

Wir invertieren im ersten Schritt unsere Binärzahl (d.h. aus jeder 0 wird eine 1 und aus jeder 1 wird eine 0).

so wird (0011.1001)2
zu (1100.0110)2

Jetzt müssen wir nur noch die binäre 1 auf diese invertierte Zahl draufaddieren:

               ( 1100.0110)2
             + ( 0000.0001)2
                         
               ( 1100 0111)2

Jetzt können wir einfach a=(0101.1100)2 und -b = (1100.0111)2 addieren:

               ( 0101.1100)2
             + ( 1100.0111)2
               1 1 11 1  
              (1 0010 0011)2

Da wir ja aber nur 8-Bit Speicherplatz haben "verpufft der Overflow" und als Ergebnis stehen nur die 8 rechten Bit:

(0010.0011)2

Binäres Multiplizieren

Beispiel:

Berechne ohne die Binärzahlen in Dezimalzahlen umzuwandeln:

(101.1000)2 ⋅ (1100.1000)2 =

Lösung einblenden

Der zweite Faktor (1100.1000)2 lässt sich als Summe von reinen 2-er-Potenzen schreiben:

                    ( 1000)2
                 (100.0000)2
             + ( 1000.0000)2
               ( 1100 1000)2

somit gilt:

(101.1000)2 ⋅ (1100.1000)2 = 101.1000 ⋅ (1000.0000 + 100.0000 + 1000)

Das Multiplizieren mit einer 2-er-Potenz bedeutet aber ja, dass man einfach die entsprechende Anzahl an Nullen hintenanhängt, somit gilt:

(101.1000)2 ⋅ (1100.1000)2 = (10.1100.0000.0000)2 + (1.0110.0000.0000)2 + (10.1100.0000)2

Diese 3 Summanden können wir nun schrittweise addieren:

             (10.1100.0000)2
       + (1.0110.0000.0000)2
            11           
         (1 1000 1100 0000)2

Zu diesem Ergebnis dann die nächste Zahl dazu:

         (1.1000.1100.0000)2
     +  (10.1100.0000.0000)2
        111              
       (100 0100 1100 0000)2

Das Ergebnis ist somit: (100.0100.1100.0000)2

(Zum Vergleich in Dezimalzahlen: 88 ⋅ 200 = 17600)

Binäres Dividieren

Beispiel:

Berechne ohne die Binärzahlen in Dezimalzahlen umzuwandeln:

(1010.0010)2 : (1001)2 =

Lösung einblenden
10100010 : 1001 = 10010     
- 1001                        
00010                       
- 0000                       
00100                      
- 0000                      
01001                     
- 1001                     
00000                    
- 0000                    
0000                    
  • Die obige Differenz (1010)2 - (1001)2 = (1)2 kann man entweder mit binärer Subtraktion berechnen oder - oft schneller - durch Umrechnen in Dezimalzahlen: 10 - 9 = 1
  • Die obige Differenz (01001)2 - (1001)2 = (0)2 kann man entweder mit binärer Subtraktion berechnen oder - oft schneller - durch Umrechnen in Dezimalzahlen: 9 - 9 = 0

(Zum Vergleich in Dezimalzahlen: 162 : 9 = 18)

Binäres Multiplizieren

Beispiel:

Berechne ohne die Binärzahlen in Dezimalzahlen umzuwandeln:

(111.1000)2 ⋅ (11.1010)2 =

Lösung einblenden

Der zweite Faktor (11.1010)2 lässt sich als Summe von reinen 2-er-Potenzen schreiben:

                       (10)2
                    ( 1000)2
                   (1.0000)2
               +  (10.0000)2
                  (11 1010)2

somit gilt:

(111.1000)2 ⋅ (11.1010)2 = 111.1000 ⋅ (10.0000 + 1.0000 + 1000 + 10)

Das Multiplizieren mit einer 2-er-Potenz bedeutet aber ja, dass man einfach die entsprechende Anzahl an Nullen hintenanhängt, somit gilt:

(111.1000)2 ⋅ (11.1010)2 = (1111.0000.0000)2 + (111.1000.0000)2 + (11.1100.0000)2 + (1111.0000)2

Diese 4 Summanden können wir nun schrittweise addieren:

               ( 1111.0000)2
          +  (11.1100.0000)2
             111 1       
            (100 1011 0000)2

Zu diesem Ergebnis dann die nächste Zahl dazu:

            (100.1011.0000)2
         +  (111.1000.0000)2
            1111         
          ( 1100 0011 0000)2

Zu diesem Ergebnis dann die nächste Zahl dazu:

          ( 1100.0011.0000)2
        + ( 1111.0000.0000)2
          1 1            
         (1 1011 0011 0000)2

Das Ergebnis ist somit: (1.1011.0011.0000)2

(Zum Vergleich in Dezimalzahlen: 120 ⋅ 58 = 6960)