Laden...

Zahlen vom Typ Long von Dezimal zu Binär umwandeln (mit nicht-programmierbarem Taschenrechner)

Erstellt von Inderrupt vor 9 Jahren Letzter Beitrag vor 9 Jahren 2.460 Views
I
Inderrupt Themenstarter:in
23 Beiträge seit 2014
vor 9 Jahren
Zahlen vom Typ Long von Dezimal zu Binär umwandeln (mit nicht-programmierbarem Taschenrechner)

Hallo,

Wir müssen zt. sehr hohe Zahlen vom Typ Long von Dezimal zu Binär umwandeln. Dabei dürfen wir nur einen nicht programmierbaren Taschenrechner benutzen, der nur Dezimalsysteme kennt.

Da die Divison durch 2 zu aufwendig ist und ich den Rest bei sehr großen Zahlen gar nicht mehr erkenne, wollte ich das per 2er Potenzen lösen.

Also höchste Zahl, die in die umzuwandelnde Zahl X reinpasst wird an der Stelle die 1 gesetzt und von der Zahl x abgezogen.

Jetzt habe ich nach einer solchen Tabelle gesucht, aber komischerweise keine gefunden. Letztendlich ist es ja nur eine 2er Potenzreihfe bis 2^63.

Gibt es denn dazu keine im Intenet?

Zur Not bleibt natürlich noch Excel aber ich hoffe, dass es eine übersichtlichere Tabelle schon gibt.

T
2.222 Beiträge seit 2008
vor 9 Jahren

Iregendwie klingt deine Aussage als wolltest du dir einen Spicker für eine Prüfung o.ä. basteln 😕
Deshalb würde ich dir nicht helfen wollen.

Wenn du so oder so Excel verwenden willst, dann kannst du das gerne tun.
Warum auch auf eine Rückmeldung warten wenn du in der Zeit auch schon die Tabelle fertig haben könntest?

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

49.485 Beiträge seit 2005
vor 9 Jahren

Hallo Inderrupt,

du brauchst keine Potenzreihe und wenn doch, dann kannst du die mit deinem Taschenrechner durch wiederholte Multiplikation mit 2 leicht selbst erstellen.

Allerdings ist die wiederholte Division durch zwei genau das richtige. Wenn ein Rest bleibt, ist (von hinten nach vorne) die aktuelle binäre Ziffer eine Eins sonst eine Null. Natürlich musst du den Rest vor der nächsten Division entfernen. Der Rest kann ja nur 0,5 sein. Das ziehst du einfach von der aktuellen Zahl ab.

26 / 2 = 13 (Ziffer 0)
13 / 2 = 6,5 (Ziffer 1)
6 / 2 = 3 (Ziffer 0)
3 / 2 = 1,5 (Ziffer 1)
1 / 2 = 0,5 (Ziffer 1)

Also im Ergebnis 11010.

herbivore

I
Inderrupt Themenstarter:in
23 Beiträge seit 2014
vor 9 Jahren

Hallo, danke für die Antworten.

Es ist in der tat ein Spicker, der aber volkommen erlaubt ist in der Klausur 😉
Danke für die Erklärung des Verfahren, allerdings ist mir das bekannt, es klappt bei mir nur nicht bei einer Zahl wie:

998877665544332211 da sie zu groß ist und ich im Taschenrechner keinen Rest mehr erkenne. Ich denke, da bleibt nur noch der Weg mit der 2er Potenztabelle.

49.485 Beiträge seit 2005
vor 9 Jahren

Hallo Inderrupt,

wenn die Zahl zu groß ist, um sie im Taschenrechner exakt darzustellen, wenn also 998877665544332211 z.B. als 9,988776655E17 dargestellt wird, nützt dir auch die Potenztabelle nichts. Zwar wird die Subtraktion ein Ergebnis liefern, aber aber eben kein exaktes, weil ja schon bei der Ausgangszahl (und vermutlich auch beim Subtrahend) die hinteren Stellen unwiederbringlich abgeschnitten sind. Vermutlich werden in der Klausur aber ohnehin nur Zahlen auftauchen, die auf normalen Taschenrechnern exakt dargestellt werden können und bei denen man auch den Rest erkennen kann. Insofern kannst du dann das Divisionsverfahren verwenden.

herbivore

1.346 Beiträge seit 2008
vor 9 Jahren

Da wirst du Wohl auf "traditionelle"Möglichkeiten Zurückgreifen müssen. mit Stift und papier ist das doch auch nicht sonderlich aufwendig.

LG pdelvo

I
Inderrupt Themenstarter:in
23 Beiträge seit 2014
vor 9 Jahren

Die Zahl 998877665544332211 stammt aus einer Altklausur 😉
Wäre es dann nicht geschickter per Hand die Zahl zunächst in Hexadezimal umzurechnen? Das sollte doch deutlich schneller gehen und ich bräuchte nur eine Tabelle die bis 16^15 geht.

Was meint ihr?

// EDT: Sorry, das kann ja gar nicht funktionieren ^^

16.827 Beiträge seit 2008
vor 9 Jahren

Jeder wie ers mag.
Ich verwend - wenn schriftlich notwendig - herbivores Variante.
So schwer ist das im Kopf ja auch nicht.

1.346 Beiträge seit 2008
vor 9 Jahren

Ich persönlich finde es einfacher immer wieder durch 2 zu teilen anstatt durch 16. Klar hast du dann mehr Schritte, aber ich zumindest komme damit besser klar. Und wenn du die Zahl per Hand soweit runtergebrochen hast so das sie in den Taschenrechner passt kannst du ja damit weitermachen. Ist ja eigentlich schon nett dass ihr überhaupt einen benutzen dürft 😉

I
Inderrupt Themenstarter:in
23 Beiträge seit 2014
vor 9 Jahren

Ja genau, denke schriftliche divison durch 2, bis die Zahl klein genug für den Taschenrechner ist, wird die beste Methode sein. Immerhin hat man 15 Minuten für die Aufgabe 😉

Nach kurzem Praxistest bin ich doch anderer Meinung 😄

Ich werde es mit ner 2er Potenzreihe machen und die Subtraktion schriftlich, bis es dann per Taschenrechner geht

49.485 Beiträge seit 2005
vor 9 Jahren

Hallo Inderrupt,

statt durch 2 zu teilen kannst du auch mit 5 multiplizieren, wenn dir das leichter fällt, und anschließend die letzte Stelle (die nur 5 oder 0 sein kann, entspricht Rest oder kein Rest, entspricht binärer 1 oder binärer 0) weglassen.

herbivore

I
Inderrupt Themenstarter:in
23 Beiträge seit 2014
vor 9 Jahren

Vielleicht eine dumme Frage, aber wann endet dann die Rechnung, wenn ich eine Zahl x ständig mit 5 multipliziere?

49.485 Beiträge seit 2005
vor 9 Jahren

Hallo Inderrupt,

die Frage ist zumindest unnötig, denn ich habe sie bereits beantwortet, denn ich habe geschrieben, dass man nach jeder Multiplikation die letzte Stelle weg lässt. Letztlich rechnest du also bei jedem Schritt mal 5 durch 10 also letztlich auch durch 2, nur dass es sich für einen Menschen leichter ausrechnen lässt.

herbivore