Hallo Forum, kennt jemand ein Programm mit dem sich ohne viel Aufwand 300 20-stellige Dezimalzahlen in Hex wandeln lassen? OO stirbt schon bei der Dezimalzahl ab und hex darf auch nicht mehr als 10 Stellen haben. Danke für die Mühe tex
Die Konvertierung an sich kann z.B. Wolfram Alpha: http://www.wolframalpha.com/input/?i=92048204820433403940+in+hex Wenn Du ein Programm schreiben willst, dass beliebig lange Zahlen verarbeiten kann, dann lautet das Zauberwort hierzu: Arbitrary-precision arithmetic http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic
reinhard schrieb: > python > > hex(12345678901234567890) > >>> '0xab54a98ceb1f0ad2L' was hat das L dort zu suchen? Windows calc liefert auch etwas anderes.
Hallo, > python > > hex(12345678901234567890) > >>> '0xab54a98ceb1f0ad2L' das L bedeutet nur, dass es sich um eine Long Int handelt. und bei mir kommt das gleiche wie bei Mark Brandis raus. MfG shee2e
perl mit "Math::BigInt":
1 | use Math::BigInt; |
2 | my $x=new Math::BigInt('1234567890123456789012345678901234567890'); |
3 | $x*=13; |
4 | print $x," ==> ",$x->as_hex,"\n"; |
gibt aus: 16049382571604938257160493825716049382570 ==> 0x2f2a36a5facb2b6060c590daa879338caa Für das kürzere Beispiel von Oben: 12345678901234567890 ==> 0xab54a98ceb1f0ad2
:
Bearbeitet durch User
Peter II schrieb: > reinhard schrieb: >> python >> >> hex(12345678901234567890) >> >>>> '0xab54a98ceb1f0ad2L' > > was hat das L dort zu suchen? > > Windows calc liefert auch etwas anderes. Das ist für calc.exe wohl einfach eine Stelle zuviel.
Peter II schrieb: > reinhard schrieb: >> python >> >> hex(12345678901234567890) >> >>>> '0xab54a98ceb1f0ad2L' > > was hat das L dort zu suchen? > > Windows calc liefert auch etwas anderes. Bei mir rechnet der Windows Rechner mit maximal 64 bit. Das Ergibt nur 19 Stellen dezimal (9223372036854775807) da mit Vorzeichen. Mehr als 19 Stellen nimmt er einfach nicht an. System: Win7 64Bit
bc kann das natürlich auch:
1 | obase=16; 12345678901234567890 |
liefert
1 | AB54A98CEB1F0AD2 |
Folgendes Shell-Kommando konvertiert viele Zahlen, die in der Datei zahlen stehen (1 Zahl/Zeile):
1 | (echo obase=16; cat zahlen) | bc |
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.