O-Lee
10.09.2002, 07:52
Ich möchte in der Programmiersprache C folgende Zahlen zunächst nach
HEX wandeln und dann die zwei Nibble der Hexzahl in ASCII-Zeichen
umwandeln.
Bsp:
4,255,66,22,1,12,34,447
wird zunächst zu
$04,$FF,$42,$16,$01,$0C,$22,$01BF
wobei das Dollarzeichen nur die Hexzahl kennzeichnet.
Nun möchte ich jedes Nibble in das dazugehörige ASCII-Zeichen
umwandeln:
$30,$34;$46,$46,$34,$32;$31,$36;$30,$31;$30,$43;$32,$32;$30,$31;$42,$46
Das heisst, aus je einem Zeichen entstehen dann zwei ASCII-Zeichen!
In Pascal gibt es die Funktion IntToHex um den ersten Schritt zu
erreichen.
Wie kann ich nun aber in C dieses Problem lösen????
Wie gesagt:
1. Eine Dezimalzahl nach Hex wandeln.
2. Eine Hex-Zahl in 2 Nibble zerlegen und jedes Nibble in sein
ASCII-Zeichen umwandeln.
HEX wandeln und dann die zwei Nibble der Hexzahl in ASCII-Zeichen
umwandeln.
Bsp:
4,255,66,22,1,12,34,447
wird zunächst zu
$04,$FF,$42,$16,$01,$0C,$22,$01BF
wobei das Dollarzeichen nur die Hexzahl kennzeichnet.
Nun möchte ich jedes Nibble in das dazugehörige ASCII-Zeichen
umwandeln:
$30,$34;$46,$46,$34,$32;$31,$36;$30,$31;$30,$43;$32,$32;$30,$31;$42,$46
Das heisst, aus je einem Zeichen entstehen dann zwei ASCII-Zeichen!
In Pascal gibt es die Funktion IntToHex um den ersten Schritt zu
erreichen.
Wie kann ich nun aber in C dieses Problem lösen????
Wie gesagt:
1. Eine Dezimalzahl nach Hex wandeln.
2. Eine Hex-Zahl in 2 Nibble zerlegen und jedes Nibble in sein
ASCII-Zeichen umwandeln.