Einstellungen
zum Text
ändere Medientyp
xhtml+xml
ändere Sprache
english
scripting
dec -> hex

URI: http://www.j-a-b.net/web/numbersystem
aktualisiert: 2009-12-04
© 2002-2009 Contact

up down

Zahlensysteme

Das aus der unendlichen Anzahl an denkbaren Zahlensystemen vertrauteste ist zweifelsohne das Dezimalsystem, welches wohl ursprünglich darauf zurückzuführen ist, daß die Menschen gewöhnlich zehn Finger haben, mit denen sie zählen.

Die Position einer Ziffer in einer Dezimalzahl gibt an, wie oft die entsprechende Zehnerpotenz in der Zahl vertreten ist. Beachte dabei, daß eine mit Null potenzierte Zahl immer gleich Eins ist (x0=1).

Umrechnungsbeispiel Dezimalzahl 1234
1234 = { 1∙103 +2∙102 +3∙101 +4∙100
1000 +200 +30 +4
1234

Betrachten wir nun den Computer, welcher keine zehn Finger zum zählen besitzt, sondern nur zwei Zustände kennt: aus und ein, bzw. 0 und 1. Diese beiden Zustände lassen sich optimal mit dem Binärsystem darstellen, welches eben nur die beiden Ziffern 0 und 1 kennt und in dem die Position der Ziffer angibt, ob eine Zweierpotenz vorhanden ist oder nicht.

Umrechnungsbeispiel Binärzahl 10011001 in Dezimalzahl 153
10011001 = { 1∙27 +0∙26 +0∙25 +1∙24 +1∙23 +0∙22 +0∙21 +1∙20
128 +0 +0 +16 +8 +0 +0 +1
153

Eine einzelne Binärziffer wird als 1bit bezeichnet, in obigem Beispiel, in dem 8 Ziffern aufeinanderfolgen, kann man also auch sagen, diese Zahl besteht aus 8bit. Eine Einheit von 4bit wird gerne zusammengefaßt und als 1nybble bezeichnet, eine Einheit von 8bit oder 2nybble bezeichnet man als 1Byte.

Im Anwendungsbereich begegnen einem jedoch seltener Binärzahlen, als viel mehr Hexadezimalzahlen, wie auch hier auf den Seiten zur Codierung von Farben oder Schriftzeichen. Eine Hexadezimalzahl besteht aus den Ziffern 0 bis 9 und/oder den Buchstaben a bis f (diese werden in Anlehnung an das englische digit für die Ziffern 0 bis 9 auch hexit genannt). In einer Hexadezimalzahl gibt die Position der Ziffer bzw. des Buchstabens an, wie oft die entsprechende 16er-Potenz in der gesamten Zahl vorhanden ist, wobei die Buchstaben a bis f für die Dezimalzahlen 10 bis 15 stehen.

Umrechnungsbeispiel Hexadezimalzahl 2BA3 in Dezimalzahl 11171
2BA3 = { 2∙163 +B∙162 +A∙161 +3∙160
2∙163 +11∙162 +10∙161 +3∙160
8192 +2816 +160 +3
11171

Der große Vorteil der Hexadezimalzahlen liegt nun darin, daß sich ein nybble bzw. ein Byte sehr einfach hexadezimal ausdrücken läßt:

Zusammenhang zwischen 4bit Binärzahlen und Hexadezimalzahlen
nybbleHexnybbleHex
0000010008
0001110019
001021010A
001131011B
010041100C
010151101D
011061110E
011171111F

Da ein Byte ja aus zwei nybble besteht, braucht man sich nur die entsprechenden nybble aus der Tabelle zu suchen, um die entsprechenden Werte für ein Byte zu bekommen. Das Byte mit dem Binärwert 10010010 (dezimal 128+16+2=146) besteht beispielsweise aus den nybble 1001 und 0010, sein hexadezimaler Wert ist demnach 92.

Es lassen sich also Zahlen, welche dezimal bzw. binär groß und unhandlich sind, einfach und elegant hexadezimal ausdrücken. Beispiel:

1111111111111111bin = 65535dez = FFFFhex

Der Vollständigkeit halber sollen auch noch die Octalzahlen Erwähnung finden. Die Octalzahlen bestehen aus den Ziffern 0 bis 7 und werden vergleichbar zu den oben beschriebenen Zahlensystemen gebildet. Hier geben also die Ziffern die Faktoren der einzelnen Potenzen zur Basis acht an.

Umrechnungsbeispiel Octalzahl 63571 in Dezimalzahl 26489
63571 = { 6∙84 +3∙83 +5∙82 +7∙81 +1∙80
6∙4096 +3∙512 +5∙64 +7∙8 +1∙1
24576 +1536 +320 +56 +1
26489

Mit den Octalzahlen lassen sich nun ähnlich wie mit den Hexadezimalzahlen bits zusammenfassen. Hierbei werden immer 3bit zu einer Octalzahl vereinigt, wie diese Übersicht aufzeigt:

Zusammenhang zwischen 3bit Binärzahlen und Octalzahlen
3bitOct
0000
0011
0102
0113
1004
1015
1106
1117

Man kann also auch mit den Octalzahlen unhandliche Binärzahlen einfach und verkürzt ausdrücken. Beispiel:

111111111111111bin = 32767dez = 77777Oct

In der folgenden Tabelle sind nun die Dezimalzahlen von 0 bis 255 mit ihren entsprechenden hexadezimalen Werten von 0 bis FF aufgelistet. Dies sind exakt auch die möglichen 256 Werte, welche ein Byte einnehmen kann und sie entsprechen den 256 möglichen Abstufungen einer Grundfarbe im 24bit RGB-Farbraum und sie werden auch für die Codierung des ASCII -Zeichensatzes benutzt.

Dezimalzahlen 0-255 ↔ Hexadezimalzahlen 00-FF
DECHEXDECHEXDECHEXDECHEX DECHEXDECHEXDECHEXDECHEX
DECHEXDECHEXDECHEXDECHEX DECHEXDECHEXDECHEXDECHEX
00000001010020200303 00404005050060600707
00808009090100A0110B 0120C0130D0140E0150F
01610017110181201913 02014021150221602317
02418025190261A0271B 0281C0291D0301E0311F
03220033210342203523 03624037250382603927
04028041290422A0432B 0442C0452D0462E0472F
04830049310503205133 05234053350543605537
05638057390583A0593B 0603C0613D0623E0633F
06440065410664206743 06844069450704607147
07248073490744A0754B 0764C0774D0784E0794F
08050081510825208353 08454085550865608757
08858089590905A0915B 0925C0935D0945E0955F
09660097610986209963 10064101651026610367
10468105691066A1076B 1086C1096D1106E1116F
11270113711147211573 11674117751187611977
12078121791227A1237B 1247C1257D1267E1277F
12880129811308213183 13284133851348613587
13688137891388A1398B 1408C1418D1428E1438F
14490145911469214793 14894149951509615197
15298153991549A1559B 1569C1579D1589E1599F
160A0161A1162A2163A3 164A4165A5166A6167A7
168A8169A9170AA171AB 172AC173AD174AE175AF
176B0177B1178B2179B3 180B4181B5182B6183B7
184B8185B9186BA187BB 188BC189BD190BE191BF
192C0193C1194C2195C3 196C4197C5198C6199C7
200C8201C9202CA203CB 204CC205CD206CE207CF
208D0209D1210D2211D3 212D4213D5214D6215D7
216D8217D9218DA219DB 220DC221DD222DE223DF
224E0225E1226E2227E3 228E4229E5230E6231E7
232E8233E9234EA235EB 236EC237ED238EE239EF
240F0241F1242F2243F3 244F4245F5246F6247F7
248F8249F9250FA251FB 252FC253FD254FE255FF

Der Konvertierer wandelt Dezimal-, Octal-, Hexadezimal- sowie Binärzahlen ineinander um; der dezimale Bereich der eingegebenen Zahl ist begrenzt und darf 231-1 = 2147483647 nicht überschreiten. In der popuppopup-Version steht Dir dieser Rechner auch außerhalb dieser Seite jederzeit zur Verfügung.

DOHB-Rechner (Obergrenze: 231-1)






CC logo
Diese Seite ist veröffentlicht unter einer Creative Commons License.