Unabhängigkeit der Vor bzw. Nachkommastelle

Hallo Experten!

Kann man bei einer Konvertierung von Zahlen in ein anderes Zahlensystem die Vor bzw Nachkommastelle getrennt betrachten?

z.B. 15,15(dez) = F,F(hex) = 17,17(okt) …

Möchte nämlich dezimale Zahlen mit Kommastellen in hexadezimale Zahlen konvertieren (und umgekehrt).

mfg
Luggi

Hallo Luigi

Leider funktioniert das so nicht. Man kann zwar die Stellen vor dem Komma und nach dem Komma unabhängig betrachten, aber die Umwandlung nach dem Komma funktioniert so nicht.
Man kann sich das leicht überlegen. Die Darstellung zur Basis b zeichnet sich dadurch aus, dass an der n.ten Stelle vor dem Komma, die Ziffern mit der Wertigkeit b^n gewichtet werden, d.h von rechts nach links mit 1=b^0, b=b^1, b^2,… Das wir nach dem Komma einfach entsprechend fortgesetzt: b^(-1), b^(-2),…
Um auf Dein Beispiel zurückzukommen heisst also
15,15(dez): 1*10+5*1+1*1/10+5*1/10^2
F,F (hex): 15*1+15*1/16
17,17(okt): 1*8+7*1+1*1/8+7*1/8^2
Und das ist, wie Du Dich leicht überzeugen kannst verschieden.

Es bleibt Dir also nichts anderes übrig, wie bei den ganzen Zahlen nach und nach zu schauen, wie oft 1/b hineinpasst, dann wie oft 1/b^2 in den Rest passt,…
Zu beachten ist dabei, dass auch bei endlicher Dezimalbruchentwicklung in anderen Zahlensystemen eine unendliche Entwicklung entstehen kann. Nimm zum Beispiel 0.1 im binären System (b=2), übrigens Quelle verschiedener „Fehlerquellen“ beim Rechnen auf dem Computer, da eine solche Zahl nicht präzise abgespeichert werden kann.

Gruss Urs

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Moin,

Kann man bei einer Konvertierung von Zahlen in ein anderes
Zahlensystem die Vor bzw Nachkommastelle getrennt betrachten?

Ein einfaches Beispiel zeigt Dir: nein!

1,F (hex) = 2,5 (dez)

Gruß,
Ingo

Hallo

Wie bereits im eigenen Artikel erklärt, funktioniert die vorgeschlagene Methode nicht. Aber auch Deine Rechnung ist leider falsch.

1,F (hex) = 1+15/16= 1.9375 (dez)

Gruss Urs

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

gebrochene Dezimalzahlen im Binärsystem
Hallo Urs,

'S ist vielleicht ein bisschen off-topic, aber erwähnen wollt ich’s trotzdem:

Zu beachten ist dabei, dass auch bei endlicher
Dezimalbruchentwicklung in anderen Zahlensystemen eine
unendliche Entwicklung entstehen kann. Nimm zum Beispiel 0.1
im binären System (b=2), übrigens Quelle verschiedener
„Fehlerquellen“ beim Rechnen auf dem Computer, da eine solche
Zahl nicht präzise abgespeichert werden kann.

Man kann 0.1 ja auch so speichern: 1E-1, womit man nur ganze Zahlen hätte, und die Sache ist genau…

Gruss Urs

Gruss Martin

Hallo

Wie bereits im eigenen Artikel erklärt, funktioniert die
vorgeschlagene Methode nicht. Aber auch Deine Rechnung ist
leider falsch.

1,F (hex) = 1+15/16= 1.9375 (dez)

stimmt natürlich. Als Nachkommastelle gibt es Bruchteile von 16 an - und nicht von 10. Man verzeihe mir meine offensichtlich leicht Wochenend-getrübten Gedankengänge :smile:

Gruß,
Ingo

Hallo Martin

Könnte man, aber man tut es nicht, bzw. man macht es im 2er-System, weil diese im Computer „natürlich“ eingebaut ist. Vgl. zum Beispiel http://en.wikipedia.org/wiki/Floating_point#IEEE_sta…
Und das Grundproblem bleibt erhalten: es gibt bei jeder Wahl einer Basis rationale Zahlen, die nicht genau dargestellt werden können; im Dezimalsystem z.B. 1/3, im Binärsystem z.B. 1/10,…

Gruss Urs

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]