Ist jede Dezimalzahl, mit endlich vielen Nachkomastellen, im Binärcode letztlich periodisch?

5 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Ich bin mir nicht sicher, ob ich die Frage richtig verstehe.

Aber z.B ist 0,71875 in unserem Zehnersystem binär 0,10111 (1/2+1/8+1/16+1/32)

Im Zehnersystem sind Dezimalzahlen endlich, wenn sie sich als Summe von 10er-Potenzen schreiben lassen.

Im Binäsystem sind Binärzahlen endlich, wenn sie sich als Summe von 2er-Potenzen schreiben lassen.


achimhausg 
Beitragsersteller
 08.10.2016, 22:07

Ich hatte die Frage unsauber gestellt und vergessen 'endlich viele' Nachkommastellen zu schreiben, aber auch hier: 0,71875 im Binärcode nicht periodisch, nämlich , wie Sie sagen 0,10111

http://www.arndt-bruenner.de/mathe/scripts/Zahlensysteme.htm

Also case closed, denn Antwort NEIN  ;)

Aber wirklich zu blöd, denn ich hatte vorhin, beginbnbend von 1,1, 1,2 usw, extrem Viel durchprobiert und es kam immer ein periodischer, binärer Wert 'raus.

0

Ich denke, wenn eine Zahl in einem Zahlensystem irrational ist, ist sie das auch in jedem anderen Zahlensystem. Zum Beispiel pi wäre auch in Binärdarstellung nicht periodisch.

Woher ich das weiß:Studium / Ausbildung – Masterabschluss Theoretische Physik

achimhausg 
Beitragsersteller
 09.10.2016, 00:00

Och hatte  meine Frage ja ändern lassen, weil ich gerade die Irrationalen ausgeklammert haben wollte, aber interssantz die Vorstellung. Daß pi irrational ist, daß läßt sich ja beweisen,also müßte das auch bei anderen Zahlensystemen gehen.

http://www.heldermann-verlag.de/Mathe-Kabinett/IrrationalitaetVonPi.pdf

Irgendwie mit Kettenbrüchen hatte mein Bruder auch bewiesen, daß 99,per9 = 100 ist, bzw. daß der Grenzwert von Etwas, gleich diesem Etwas ist ;)

0

Eine Dezimalzahl mit endlich vielen Nachkommastellen ist eine rationale Zahl, sie kann als Bruch dargestellt werden. Dies bleibt auch erhalten, wenn man die Zahl im Binärcode schreibt - es ist ja vom Zahlenwert her der gleiche Bruch.

Ein rationale Zahl bleibt also eine rationale Zahl, egal in welchem Zahlensystem. Eine rationale Zahl hat entweder endlich viele Nachkommastellen oder wird irgendwann periodisch.

Daraus folgt: eine Dezimalzahl mit endlich vielen Nachkommastellen hat im Binärsystem entweder endlich viele Nachkommastellen oder wird periodisch.

Die Dezimalzahl 0,5 ist binär geschrieben exakt 0,1.

Nein. Du kannst auch Zahlen wie 1.23456 endlich darstellen mit Gleitkommazahlen.

https://de.wikipedia.org/wiki/Gleitkommazahl

Woher ich das weiß:Studium / Ausbildung – Masterstudium Elektrotechnik, Schwerpunkt Embedded Systems

achimhausg 
Beitragsersteller
 08.10.2016, 23:35

Ich muß mal nach einem seriösen Rechner schauen, denn meiner hier, der spuckt bei Ihrem 1,123456  in Binär 1,000111111001101011001111111110100111111010110110101111....... aus.

Aber ich sagte daß ja gerade schon zu  User Physikus137, daß der Rechner hier irgendwie rundet.

Ich hatte mal einen Texas Instruments, der flog an die Wand, weil er bei einfachsten Rechnungen wie 4*4 = 16,00000000000000000000032 ausspuckte  ;)

Seitdem habe ich eh ein Rechnertrauma  ;)

0
rumar  09.10.2016, 08:51
@achimhausg

Ich hatte mal einen Texas Instruments, der flog an die Wand, weil er bei einfachsten Rechnungen wie 4*4 = 16,00000000000000000000032 ausspuckte ;)

Naja, wahrscheinlich hast du dir einfach nicht die Zeit genommen, die Anleitung zu lesen, in welcher du auch hättest finden können, wie man den passenden Rechenmodus einstellt .....

0

Mir ist nicht ganz klar, was du meinst.

Falls deine Frage, komplett formuliert, so lautet:

"Ist jede Dezimalzahl mit endlich vielen Nachkomastellen im Binärcode letztlich periodisch?"

dann wäre die Antwort:  JA !

Schließlich musst du aber selber wissen, was genau du fragen wolltest !


achimhausg 
Beitragsersteller
 08.10.2016, 21:36

'Tschuldigung, unsauber formuliert. Natürlich minus irrationaler Zahlen, also mit endlicher Nachkommastelle.

0
Physikus137  08.10.2016, 21:39

Verstehe ich nicht, vielleicht stehe ich ja auf dem Schlauch,

aber ist nicht zB. [3,125]₁₀ = [11,001]₂?

1
achimhausg 
Beitragsersteller
 08.10.2016, 21:48
@Physikus137

In der Tat, ja, - 11,001 - und verblüffend, denn, egal was ich bis gerade durch den Rechner jagte, war seit ca. einer Stunde IMMER periodisch.

0
achimhausg 
Beitragsersteller
 08.10.2016, 23:22
@achimhausg

PS: Ich glaube mittlerweile auch, daß der Rechner unsauber programmiert ist, den egal, was ich in einer Stunde an Dezimalem mit endlicher Nachkommastelle eingab, spuckte er immer endlosen Binärcode aus, in dem oft genug dann was wiederholte, und wenn sich 1x was wiederholt hinter dem Komma, dann endlos immer wieder = periodisch.

Dann kamen Sie mit Ihrem Beispiel, woraufhin ich es überprüfte, es stimmte, und ich dann andere'rum vorging, indem ich einen Binärcode nach dem Anderen eingab, bzw. veränderte und in Dezimal umrechnen ließ, und IMMER kam ein "Dezimalteil" mit endlicher Nachkommastell bei raus.

Und nun habe ich mal Ihr 3,125 in 3,1249 modifiziert und der Rechner spuckt 11,00011111111110010111001001000111010001010011100011101...

aus, aber beim Kopieren springt die Dezimalanzeige, wenn ich kopiere und auf Strg und c drücke,  auf

3,124899999999999   , was ja nun ein Unding ist ;)

Und gehe ich schrittweise von 3,12499 hoch, dann spring er bei 3,12499999999999999 auf Ihr   binäres 11,001, ... obwohl 

3,125 ≠ 3,12499999999999999

Der rundet wohl und/oder Fließkomma nicht sauber programmiert, was ja beides nicht sehr wissenschaftlich wäre.

Ist zwar schön erklärt, wie man auch per Hand rechnet, aber ....

Oder sehen Sie das anders?

http://www.arndt-bruenner.de/mathe/scripts/Zahlensysteme.htm

0
rumar  09.10.2016, 08:48
@Physikus137

Beachte, dass jede abbrechende (Dezimal- oder Binärzahl) ebenfalls als periodische Entwicklung betrachtet werden kann, und jeweils sogar auf zwei verschiedene Arten. Beispiele:

dezimal :       [3,125]₁₀ = 3.12500000....  = 3.1249999999.....

binär:            [11,001]₂ = 11.00100000...  =  11.0001111111..... 

Eigentlich kann man also die abbrechenden durchaus auch zu den periodischen Zahlentwicklungen zählen. Das macht manches etwas einfacher: man vermeidet nämlich unnötige Fallunterscheidungen !

0
rumar  09.10.2016, 09:07
@achimhausg

"Und gehe ich schrittweise von 3,12499 hoch, dann springt er bei 3,12499999999999999 auf Ihr binäres 11,001, ... obwohl
3,125 ≠ 3,12499999999999999
Der rundet wohl und/oder Fließkomma nicht sauber programmiert, was ja beides nicht sehr wissenschaftlich wäre."

1.)  Du hast zwar recht, dass  3,125 ≠ 3,12499999999999999

aber es ist:    3,125 = 3,12499999999999999........

wenn man da wirklich die Zahl mit Periode <9>  meint !

2.)  Auch wenn du auf deinem Rechner lange Dezimalzahlen eintippen kannst, sind dies doch stets solche von endlicher Länge. Oder kannst du etwa eine Periode bei der Eingabe darstellen ?

3.)  Ich sehe da nichts von "unsauberer Programmierung". Du musst dich damit abfinden, dass jeder Taschenrechner eben intern stets mit abbrechenden Werten rechnet. Allenfalls mit 2 bis 3 Extra-Stellen, die dem Nutzer verborgen bleiben, damit solche vermeintlichen "Rundungsfehler" nicht auffallen.

0
rumar  09.10.2016, 09:30
@rumar

Ich habe noch die Seite von Arndt Brünner konsultiert, wo du dein "Experiment" offenbar durchgeführt hast. Beachte dabei, dass eine Binärdarstellung stets etwa 3.3 mal so lang wie die entsprechende Dezimalzahl ausfällt, wenn die gleiche Genauigkeit erreicht werden soll. Beachte auch, dass die Zahlenanzeigefenster bei Brünner zwar ziemlich lang (ich glaube maximal 64 Stellen) aber eben doch begrenzt ist. Wenn du die Dezimalzahl 3,12499999999999999 (insgesamt 18 Stellen) eingibst, rutschen die allfälligen Einsen am Ende der entsprechenden Binärzahl hinten aus dem Anzeigefenster raus, sodass effektiv nur noch Nullen zu sehen wären. Für dieses Anzeigefenster ist es dann durchaus gerechtfertigt, den langen "Schwanz" von Nullen wegzulassen.

0