nurlennart Geschrieben 21. Februar Teilen Geschrieben 21. Februar Folgende Prüfungsaufgabe verwirrt mich gerade etwas. Die Zahl 17179869184 soll ins Bits untergebracht werden. Eine online conversion Bin -> Dec ergibt Alles schön und gut, das sind aber doch 35 bits? Lösung sagt 34 bits. Zähle ich falsch? Eine 0 weniger ergibt 8589934592. Wo ist mein Denkfehler? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FISI-I Geschrieben 21. Februar Teilen Geschrieben 21. Februar (bearbeitet) Du machst es Dir unnötig kompliziert. 16 * 1024 * 1024 * 1024 = 17179869184 2^4 * 2^10 * 2^10 * 2^10 = 2^34 Zu Deinem "Denkfehler": Wieviel Werte kannst Du mit 8-Bit darstellen? Und wie lautet die größte Zahl? Bearbeitet 21. Februar von FISI-I Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Brapchu Geschrieben 21. Februar Teilen Geschrieben 21. Februar @FISI-I Die Lösung und auch du machen den gleichen Denkfehler. Ja 17179869184 ist 2^34 aber Binär startest du bei 2^0. Somit sind um 2^34 zu erreichen 35 Bits notwendig. Nicht 34. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Chris-Info Geschrieben 21. Februar Teilen Geschrieben 21. Februar vor 7 Minuten schrieb FISI-I: Du machst es Dir unnötig kompliziert. 16 * 1024 * 1024 * 1024 = 17179869184 2^4 * 2^10 * 2^10 * 2^10 = 2^34 Wieviel Werte kannst Du mit 8-Bit darstellen? Und wie lautet die größte Zahl? Da das überhaupt nicht mein Tagesgeschäft ist mag ich dir nur ungern widersprechen, aber hat @nurlennart nicht recht? Es stimmt schon dass log2(17179869184) = 34 ist, weil entsprechend 2^34 = 17179869184 Und das bedeutet in Bit wäre das eine 1 auf die dann 33 mal 0 folgt: 1000000000000000000000000000000000 Jetzt haben wir ja aber das Problem, dass das hier nur von 2^34 bis 2^1 geht. Wir lassen dabei doch die 2^0 aus, die wir brauchen um eine dezimale 1 im Binärsystem darzustellen. Also brauchen wir eine weitere 0 und sind dabb 35 Bits. Ich meine mich dunkel zu erinnern, dass die Formel für die Berechnung damals darum auch log2(n)+1 war? Brapchu und femboylover reagierten darauf 1 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
ArByter Geschrieben 21. Februar Teilen Geschrieben 21. Februar Ich kann leider weder nachvollziehen, was die ZPA hier wollte, noch eure Lösungen. Aus welcher Prüfung ist die Frage bitte? Ich würde mir gerne den Lösungshinweis durchlesen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
nurlennart Geschrieben 21. Februar Autor Teilen Geschrieben 21. Februar vor 1 Stunde schrieb ArByter: Ich kann leider weder nachvollziehen, was die ZPA hier wollte, noch eure Lösungen. Aus welcher Prüfung ist die Frage bitte? Ich würde mir gerne den Lösungshinweis durchlesen. Die Aufgabe kommt aus der FiSi AP T2 Winter 2021 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Chris-Info Geschrieben 21. Februar Teilen Geschrieben 21. Februar vor 5 Stunden schrieb ArByter: Ich kann leider weder nachvollziehen, was die ZPA hier wollte, noch eure Lösungen. Aus welcher Prüfung ist die Frage bitte? Ich würde mir gerne den Lösungshinweis durchlesen. Mal ganz generell: Die Musterlösung suggeriert, dass man den Speicherplatz einer Zahl als Integer ausrechnen könnte, indem man sen Logarithmus zur Basis 2 dieser Zahl berechnet. Um eine Zahl als Integer zu speichern braucht man genau so viele Bits, wie diese Zahl lang ist, wenn man sie als Binärzahl schreibt. Ein Blick in die Binärtabelle zeigt, dass die Musterlösung nicht stimmen kann. Log2(8) ist beispielhaft 3. 8 als Binärzahl ist aber bekanntlich 1000 benötigt also 4 Bits um sie zu speichern. Darum log2(x)+1. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FISI-I Geschrieben 21. Februar Teilen Geschrieben 21. Februar (bearbeitet) vor 7 Stunden schrieb Chris-Info: Da das überhaupt nicht mein Tagesgeschäft ist mag ich dir nur ungern widersprechen, aber hat @nurlennart nicht recht? Es stimmt schon dass log2(17179869184) = 34 ist, weil entsprechend 2^34 = 17179869184 Und das bedeutet in Bit wäre das eine 1 auf die dann 33 mal 0 folgt: 1000000000000000000000000000000000 Deine Annahme ist falsch, ebenso die von @nurlennart. Aus dem Exponenten 34 die Anzahl der Bits abzuleiten, ist nicht richtig. Woher auch immer das kommen mag. Es handelt sich hier um eine Zahl in Exponentialschreibweise (ebenso der Logarithmus) im dezimalen Zahlensystem; entsprechend dazu die Zahl in Dezimalschreibweise. Und um diese im binären Zahlensystem darstellen zu können, benötigt man 35 Bits (Stellen). Stichwort: Stellenwertsysteme. Daher auch meine Fragen oben. Bearbeitet 21. Februar von FISI-I Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FISI-I Geschrieben 21. Februar Teilen Geschrieben 21. Februar (bearbeitet) vor 7 Stunden schrieb Brapchu: @FISI-I Die Lösung und auch du machen den gleichen Denkfehler. Ja 17179869184 ist 2^34 aber Binär startest du bei 2^0. Somit sind um 2^34 zu erreichen 35 Bits notwendig. Nicht 34. Wo habe ich denn da einen Denkfehler? Die von mir gestellten Fragen hast Du gesehen? Ich habe nicht geschrieben, dass man die Zahl mit 34 Bits darstellen kann. Die beiden oberen Zeilen dienen lediglich der Vereinfachung der Umrechnung der 16GiB in Exponentialschreibweise, ohne das man dazu einen Taschenrechner bemühen muss. Bearbeitet 21. Februar von FISI-I Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alexej_a7x Geschrieben 21. Februar Teilen Geschrieben 21. Februar Letztendlich muss man mit ABRUNDEN(log_2(x)) + 1 rechnen. ABRUNDEN(log_2(x)) liefert die 2-Potenz mit dem höchsten Exponenten. Im Beispiel wäre das die 34. An der Stelle 34 steht also eine 1. Wir fangen jedoch bei 0 an zu zählen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.