Dual- und Hexadezimalsystem: Unterschied zwischen den Versionen

Aus SibiWiki
Zur Navigation springen Zur Suche springen
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Informatik]]
[[Kategorie:Informatik 8]]
<div style="float:right">
<div style="float:right">
{|class="wikitable"
{|class="wikitable"
Zeile 40: Zeile 43:
Das '''Dualsystem''' oder '''Binärsystem''' ist grundlegend für die Arbeitsweise des Computers.
Das '''Dualsystem''' oder '''Binärsystem''' ist grundlegend für die Arbeitsweise des Computers.


Im Dualsystem gibt es nur zwei Ziffern: 0 und 1. Im Arbeitsspeicher des Computers werden diese als ''Strom'' bzw. ''kein Strom'' dargestellt.
Im Dualsystem gibt es nur zwei Ziffern: 0 und 1.
 
Im Arbeitsspeicher des Computers werden diese als ''Strom'' bzw. ''kein Strom'' dargestellt.


=Bit und Byte=
=Bit und Byte=
Zeile 47: Zeile 52:
* Ein '''Bit''' kann den Wert 0 oder 1 haben, d.h. ein Bit ist eine einstellige Dualzahl.
* Ein '''Bit''' kann den Wert 0 oder 1 haben, d.h. ein Bit ist eine einstellige Dualzahl.
* Ein '''Byte''' besteht aus 8 Bits.
* Ein '''Byte''' besteht aus 8 Bits.
** Der niedrigste Wert eines Bytes ist 0000.0000 = 0
** Der niedrigste Wert eines Bytes ist <code>00000000</code> = 0
** Der höchste Wert eines Bytes ist 1111.1111 = 255
** Der höchste Wert eines Bytes ist <code>11111111</code> = 255
 
 
==IP-Adressen==
* IP-Adressen sind die Adressen, unter denen Server im Internet zu erreichen sind.
* So hat z.B. wikipedia.de die IP-Adresse <code>195.10.208.211</code>
* IP-Adressen bestehen aus 4 Bytes; deswegen ist die höchste IP-Adresse die <code>255.255.255.255</code>. (Diese IP-Adresse wird aber nicht vergeben.)
* Die Bytes sind jeweils durch Punkte getrennt.


=Umrechnen=
=Umrechnen=
Zeile 57: Zeile 69:
| '''Dualzahl''' ||'''2<sup>7</sup>'''<br/> = 128  || '''2<sup>6</sup>'''<br/> = 64  || '''2<sup>5</sup>'''<br/> = 32||'''2<sup>4</sup>'''<br/> = 16  || '''2<sup>3</sup>'''<br/> = 8  || '''2<sup>2</sup>'''<br/> = 4  || '''2<sup>1</sup>'''<br/> = 2||'''2<sup>0</sup>'''<br/>= 1 ||'''Rechnung''' || '''Ergebnis'''
| '''Dualzahl''' ||'''2<sup>7</sup>'''<br/> = 128  || '''2<sup>6</sup>'''<br/> = 64  || '''2<sup>5</sup>'''<br/> = 32||'''2<sup>4</sup>'''<br/> = 16  || '''2<sup>3</sup>'''<br/> = 8  || '''2<sup>2</sup>'''<br/> = 4  || '''2<sup>1</sup>'''<br/> = 2||'''2<sup>0</sup>'''<br/>= 1 ||'''Rechnung''' || '''Ergebnis'''
|-
|-
| 1101.1001 || 1 || 1 || 0 || 1 || 1 || 0 || 0 || 1 || 128+64+16+8+1 || = 217
| 11101001 || 1 || 1 || 1 || 0 || 1 || 0 || 0 || 1 || 128+64+32+8+1 || = 233
|-
|-
| 0100.0100 || 0 || 1 || 0 || 0 || 0 || 1 || 0 || 0 || 64+4 || = 68
| 01000100 || 0 || 1 || 0 || 0 || 0 || 1 || 0 || 0 || 64+4 || = 68


|}
|}
Zeile 75: Zeile 87:
Zuerst zieht man möglichst hohe Zweierpotenzen ab:
Zuerst zieht man möglichst hohe Zweierpotenzen ab:


<code>
<code>
   217
   217
  <u>- 128</u>      ''ein 128er''
  <u>- 128</u>      ''ein 128er''
Zeile 87: Zeile 99:
  <u>-  1</u>      ''ein  1er''
  <u>-  1</u>      ''ein  1er''
     0
     0
</code>
</code>


Dann trägt man das in die Umrechnungstabelle ein:
Dann trägt man das in die Umrechnungstabelle ein:


{|class="wikitable" style="text-align:center"
{|class="wikitable" style="text-align:center"
||'''2<sup>7</sup>'''<br/> = 128  || '''2<sup>6</sup>'''<br/> = 64  || '''2<sup>5</sup>'''<br/> = 32||'''2<sup>4</sup>'''<br/> = 16  || '''2<sup>3</sup>'''<br/> = 8  || '''2<sup>2</sup>'''<br/> = 4  || '''2<sup>1</sup>'''<br/> = 2||'''2<sup>0</sup>'''<br/>= 1||Ergebnis
||'''2<sup>7</sup>'''<br/> = 128  || '''2<sup>6</sup>'''<br/> = 64  || '''2<sup>5</sup>'''<br/> = 32||'''2<sup>4</sup>'''<br/> = 16  || '''2<sup>3</sup>'''<br/> = 8  || '''2<sup>2</sup>'''<br/> = 4  || '''2<sup>1</sup>'''<br/> = 2||'''2<sup>0</sup>'''<br/>= 1||'''Ergebnis'''
|-
|1||1||0||1||1||0||0||1|| 11011001
 
|}
 
Also: 217 = <code>11011001</code>
 
=Hexadezimalsystem=
<div style="float:right">
{|class="wikitable"
| <div align="right">Dezimal</div>|| <div align="right">Dual</div>||<div align="right">'''Hexadezimal'''</div>
|-
| <div align="right">0</div> || <div align="right">0 0 0 0</div>|| <div align="right">'''0'''</div>
|-
| <div align="right">1</div> || <div align="right">0 0 0 1</div>
|| <div align="right">'''1'''</div>
|-
| <div align="right">2</div> || <div align="right">0 0 1 0</div>
|| <div align="right">'''2'''</div>
|-
| <div align="right">3</div> || <div align="right">0 0 1 1</div>
|| <div align="right">'''3'''</div>
|-
| <div align="right">4</div> || <div align="right">0 1 0 0</div>
|| <div align="right">'''4'''</div>
|-
| <div align="right">5</div> || <div align="right">0 1 0 1</div>
|| <div align="right">'''5'''</div>
|-
| <div align="right">6</div> || <div align="right">0 1 1 0</div>
|| <div align="right">'''6'''</div>
|-
| <div align="right">7</div> || <div align="right">0 1 1 1</div>|| <div align="right">'''7'''</div>
|-
| <div align="right">8</div> || <div align="right">1 0 0 0</div>
|| <div align="right">'''8'''</div>
|-
| <div align="right">9</div> || <div align="right">1 0 0 1</div>
|| <div align="right">'''9'''</div>
|-
| <div align="right">10</div> || <div align="right">1 0 1 0</div>
|| <div align="right">'''A'''</div>
|-
| <div align="right">11</div> || <div align="right">1 0 1 1</div>
|| <div align="right">'''B'''</div>
|-
| <div align="right">12</div> || <div align="right">1 1 0 0</div>
|| <div align="right">'''C'''</div>
|-
| <div align="right">13</div> || <div align="right">1 1 0 1</div>
|| <div align="right">'''D'''</div>
|-
| <div align="right">14</div> || <div align="right">1 1 1 0</div>
|| <div align="right">'''E'''</div>
|-
| <div align="right">15</div> || <div align="right">1 1 1 1</div>
|| <div align="right">'''F'''</div>
|-
| <div align="right">16</div> || <div align="right">1 0 0 0 0</div>
|| <div align="right">'''10'''</div>
|-
| <div align="right">17</div> || <div align="right">1 0 0 0 1</div>
|| <div align="right">'''11'''</div>
|}
</div>
 
Das '''Hexadezimalsystem''' ist das 16er-System. Dafür gelten folgende Besonderheiten:
* Im Hexadezimalsystem braucht man 6 Ziffern mehr als im 10er-System. Dafür werden Großbuchstaben genommen. D.h. man zählt wie folgt:
** <code>0, 1, 2, 3, 4, 5, 6, 7, 8, 9, '''A, B, C, D, E, F'''</code>
** <code>F</code> entspricht also (dezimal) der 15.
* Nach <code>F</code> (=15) springt das Hexadezimalsystem in die nächste Stelle!
** D.h. 16 (im Dezimalsystem) ist <code>10</code> im Hexadezimalsystem.
* Das Hexadezimalsystem ist für Computer praktisch, weil man Dualzahlen sehr einfach in Hexadezimalzahlen umwandeln kann:
** <code>10000</code> im Dualsystem ist <code>10</code> im Hexadezimalsystem.
 
==RGB-Farbcodes==
Farben werden im Internet als sog. RGB-Farbcodes angegeben:
* '''R = red; G = green; B = blue'''.
* Die anderen Farben entstehen durch die sogenannte Farbaddition. So ergeben z.B. die drei Farben zusammen Weiß.
* Farbcodes werden als '''sechsstellige Hexadezimalzahl''' angegeben, z.B. <code>#FF00FF</code>
** '''Red''': die ersten beiden Ziffern
** '''Green''': die mittleren beiden Ziffern
** '''Blue''': die letzten beiden Ziffern.
** <code>'''00'''</code> bedeutet: diese Farbe kommt nicht vor.
** <code>'''FF'''</code> (=dezimal 255) bedeutet: Diese Farbe wird komplett angezeigt.
** zwischen <code>00</code> und <code>FF</code> ist jeder Farbwert möglich.
 
'''Beispiele:'''
* <code>#FF00FF</code>: 100% Rot und 100% Blau; ergibt zusammen (helles) Lila.
* <code>#080808</code>: 50% Rot, 50% Grün, 50% Blau; ergibt zusammen grau.
* <code>#FFFFFF</code>: 100% Rot, 100% Grün, 100% Blau; ergibt zusammen weiß.
* <code>#000000</code>: 0% Rot, 0% Grün, 0% Blau; ergibt zusammen schwarz.
 
=Umrechnen=
==Vom Hexadezimalsystem ins Dezimalsystem==
Vom Hexadezimalsystem ins Dezimalsystem umrechnen kann man am besten mithilfe einer Umrechnungstabelle. Das wird hier an zwei Beispielen gezeigt:
 
{|class="wikitable" style="text-align:center"
| '''Hexadezimalzahl''' ||'''16<sup>3</sup>'''<br/> = 4096  || '''16<sup>2</sup>'''<br/> = 256  || '''16<sup>1</sup>'''<br/> = 16||'''16<sup>0</sup>'''<br/> = 1  ||'''Rechnung''' || '''Ergebnis'''
|-
|-
|1||1||0||1||1||0||0||1|| 1101.1001
| A03F || A || 0 || 3 || F || 10*4096 +3*16 + 15*1 || = 655423
|-
| FF || 0 || 0 || F || F || 15*16+15*1 || = 255


|}
|}
==Vom Dezimalsystem ins Hexadezimalsystem==
Um eine Dezimalzahl (bis max. 255) ins Hexadezimalsystem umzurechnen, notiert man sich am besten vorher die 16er-Reihe:
<code>
  16* 1 =  16; 16* 2 =  32; 16* 3 =  48; 16* 4 =  64;
  16* 5 =  80; 16* 6 =  96; 16* 7 = 112; 16* 8 = 128;
  16* 9 = 144; 16*10 = 160; 16*11 = 176; 16*12 = 192;
  16*13 = 208; 16*14 = 224; 16*15 = 240;
</code>
'''Beispiel: 217 in eine Hexadezimalzahl umwandeln:'''
Zuerst zieht man möglichst hohe 16er ab:
<code>
  217
<u>- 208</u>      ''13 16er, d.h. '''D'''''
    9
<u>-  9</u>      ''9  1er,  d.h. '''9'''''
    0
</code>
Als Ergebnis ergibt sich <code>D9</code>.
==Vom Hexadezimalsystem ins Dualsystem==
Wie in der Tabelle rechts steht, entspricht <code>10</code> im Hexadezimalsystem genau <code>10000</code> im Dualsystem! Denn beides ist genau 16 (im Dezimalsystem).
Das macht das Umrechnen sehr einfach, denn
'''Jede Hexadezimalziffer stellt 4 Ziffern im Dualsystem dar!
Damit muss man dann für jede Hexadezimalzahl nur in der Tabelle nachschauen!'''
'''Beispiele:'''
* <code>F3 = 1111 0101</code>
* <code>6A = 0110 1010</code>
==Vom Dualsystem ins Hexadezimalsystem==
Das geht nach dem gleichen Prinzip wie umgekehrt:
'''Jede Hexadezimalziffer stellt 4 Ziffern im Dualsystem dar!
Damit muss man dann für jede Dualzahl nur in der Tabelle nachschauen!'''
'''Beispiele:'''
* <code>1110 1010 = EA</code>
* <code>0010 1111 = 2F</code>

Aktuelle Version vom 23. Januar 2022, 17:59 Uhr


Dezimalsystem:
Dualsystem
0
0 0 0 0
1
0 0 0 1
2
0 0 1 0
3
0 0 1 1
4
0 1 0 0
5
0 1 0 1
6
0 1 1 0
7
0 1 1 1
8
1 0 0 0
9
1 0 0 1
10
1 0 1 0
11
1 0 1 1
12
1 1 0 0
13
1 1 0 1
14
1 1 1 0
15
1 1 1 1

Dualsystem: Grundlagen

Das Dualsystem oder Binärsystem ist grundlegend für die Arbeitsweise des Computers.

Im Dualsystem gibt es nur zwei Ziffern: 0 und 1.

Im Arbeitsspeicher des Computers werden diese als Strom bzw. kein Strom dargestellt.

Bit und Byte

Bit und Byte sind die kleinsten Informationseinheiten im Computer.

  • Ein Bit kann den Wert 0 oder 1 haben, d.h. ein Bit ist eine einstellige Dualzahl.
  • Ein Byte besteht aus 8 Bits.
    • Der niedrigste Wert eines Bytes ist 00000000 = 0
    • Der höchste Wert eines Bytes ist 11111111 = 255


IP-Adressen

  • IP-Adressen sind die Adressen, unter denen Server im Internet zu erreichen sind.
  • So hat z.B. wikipedia.de die IP-Adresse 195.10.208.211
  • IP-Adressen bestehen aus 4 Bytes; deswegen ist die höchste IP-Adresse die 255.255.255.255. (Diese IP-Adresse wird aber nicht vergeben.)
  • Die Bytes sind jeweils durch Punkte getrennt.

Umrechnen

Vom Dualsystem ins Dezimalsystem

Vom Dualsystem ins Dezimalsystem umrechnen kann man am besten mithilfe einer Umrechnungstabelle. Das wird hier an zwei Beispielen gezeigt:

Dualzahl 27
= 128
26
= 64
25
= 32
24
= 16
23
= 8
22
= 4
21
= 2
20
= 1
Rechnung Ergebnis
11101001 1 1 1 0 1 0 0 1 128+64+32+8+1 = 233
01000100 0 1 0 0 0 1 0 0 64+4 = 68

Vom Dezimalsystem ins Dualsystem

Um eine Dezimalzahl ins Dualsystem umzurechnen, notiert man sich am besten vorher die Zweierpotenzen:

27
= 128
26
= 64
25
= 32
24
= 16
23
= 8
22
= 4
21
= 2
20
= 1

Beispiel: 217 in eine Dualzahl umwandeln:

Zuerst zieht man möglichst hohe Zweierpotenzen ab:


  217
- 128       ein 128er
   89
-  64       ein  64er
   25
-  16       ein  16er
    9
-   8       ein   8er
    1              
-   1       ein   1er
    0

Dann trägt man das in die Umrechnungstabelle ein:

27
= 128
26
= 64
25
= 32
24
= 16
23
= 8
22
= 4
21
= 2
20
= 1
Ergebnis
1 1 0 1 1 0 0 1 11011001

Also: 217 = 11011001

Hexadezimalsystem

Dezimal
Dual
Hexadezimal
0
0 0 0 0
0
1
0 0 0 1
1
2
0 0 1 0
2
3
0 0 1 1
3
4
0 1 0 0
4
5
0 1 0 1
5
6
0 1 1 0
6
7
0 1 1 1
7
8
1 0 0 0
8
9
1 0 0 1
9
10
1 0 1 0
A
11
1 0 1 1
B
12
1 1 0 0
C
13
1 1 0 1
D
14
1 1 1 0
E
15
1 1 1 1
F
16
1 0 0 0 0
10
17
1 0 0 0 1
11

Das Hexadezimalsystem ist das 16er-System. Dafür gelten folgende Besonderheiten:

  • Im Hexadezimalsystem braucht man 6 Ziffern mehr als im 10er-System. Dafür werden Großbuchstaben genommen. D.h. man zählt wie folgt:
    • 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
    • F entspricht also (dezimal) der 15.
  • Nach F (=15) springt das Hexadezimalsystem in die nächste Stelle!
    • D.h. 16 (im Dezimalsystem) ist 10 im Hexadezimalsystem.
  • Das Hexadezimalsystem ist für Computer praktisch, weil man Dualzahlen sehr einfach in Hexadezimalzahlen umwandeln kann:
    • 10000 im Dualsystem ist 10 im Hexadezimalsystem.

RGB-Farbcodes

Farben werden im Internet als sog. RGB-Farbcodes angegeben:

  • R = red; G = green; B = blue.
  • Die anderen Farben entstehen durch die sogenannte Farbaddition. So ergeben z.B. die drei Farben zusammen Weiß.
  • Farbcodes werden als sechsstellige Hexadezimalzahl angegeben, z.B. #FF00FF
    • Red: die ersten beiden Ziffern
    • Green: die mittleren beiden Ziffern
    • Blue: die letzten beiden Ziffern.
    • 00 bedeutet: diese Farbe kommt nicht vor.
    • FF (=dezimal 255) bedeutet: Diese Farbe wird komplett angezeigt.
    • zwischen 00 und FF ist jeder Farbwert möglich.

Beispiele:

  • #FF00FF: 100% Rot und 100% Blau; ergibt zusammen (helles) Lila.
  • #080808: 50% Rot, 50% Grün, 50% Blau; ergibt zusammen grau.
  • #FFFFFF: 100% Rot, 100% Grün, 100% Blau; ergibt zusammen weiß.
  • #000000: 0% Rot, 0% Grün, 0% Blau; ergibt zusammen schwarz.

Umrechnen

Vom Hexadezimalsystem ins Dezimalsystem

Vom Hexadezimalsystem ins Dezimalsystem umrechnen kann man am besten mithilfe einer Umrechnungstabelle. Das wird hier an zwei Beispielen gezeigt:

Hexadezimalzahl 163
= 4096
162
= 256
161
= 16
160
= 1
Rechnung Ergebnis
A03F A 0 3 F 10*4096 +3*16 + 15*1 = 655423
FF 0 0 F F 15*16+15*1 = 255

Vom Dezimalsystem ins Hexadezimalsystem

Um eine Dezimalzahl (bis max. 255) ins Hexadezimalsystem umzurechnen, notiert man sich am besten vorher die 16er-Reihe:


 16* 1 =  16; 16* 2 =  32; 16* 3 =  48; 16* 4 =  64;
 16* 5 =  80; 16* 6 =  96; 16* 7 = 112; 16* 8 = 128;
 16* 9 = 144; 16*10 = 160; 16*11 = 176; 16*12 = 192;
 16*13 = 208; 16*14 = 224; 16*15 = 240; 

Beispiel: 217 in eine Hexadezimalzahl umwandeln:

Zuerst zieht man möglichst hohe 16er ab:


  217
- 208       13 16er, d.h. D
   9
-  9       9   1er,   d.h. 9
    0

Als Ergebnis ergibt sich D9.

Vom Hexadezimalsystem ins Dualsystem

Wie in der Tabelle rechts steht, entspricht 10 im Hexadezimalsystem genau 10000 im Dualsystem! Denn beides ist genau 16 (im Dezimalsystem).

Das macht das Umrechnen sehr einfach, denn

Jede Hexadezimalziffer stellt 4 Ziffern im Dualsystem dar! Damit muss man dann für jede Hexadezimalzahl nur in der Tabelle nachschauen!

Beispiele:

  • F3 = 1111 0101
  • 6A = 0110 1010

Vom Dualsystem ins Hexadezimalsystem

Das geht nach dem gleichen Prinzip wie umgekehrt:


Jede Hexadezimalziffer stellt 4 Ziffern im Dualsystem dar! Damit muss man dann für jede Dualzahl nur in der Tabelle nachschauen!

Beispiele:

  • 1110 1010 = EA
  • 0010 1111 = 2F