SchnittenP Geschrieben 13. März 2007 Geschrieben 13. März 2007 Hi, ich wollte mal fragen wie ihr das so macht. wenn ihr z.B eine IP Adresse in Binärschreibweise hinschreiben wollt oder anderst herum. Irgendwie kommt mir meine Art etwas umständlich vor ^^, da ich erstmal von links nach rechts 128 64 32 16 8 4 2 hinschreibe und dann schaue ob (beispielsweise bei 156) die zahl 128 da rein passt, wenn ja dann mach ich eine 1. Dann mach ich 156 - 128 und bekomme 28. Da 64 32 da nicht rein passen mach ich eine 0 usw usw könnt ihr ne einfachere Methode schildern ? Danke :- ) Zitieren
Jan Jansen Geschrieben 13. März 2007 Geschrieben 13. März 2007 Teile deine Zahl solange durch die Basis in die du konvertieren willst, bis der Divident Null ist. Bei jedem Schritt schreibt man den Rest auf und rechnet mit dem Teilergebnis weiter. Bsp. für Binäzahlen: 156 / 2 = 78 Rest 0 78 / 2 = 39 Rest 0 39 / 2 = 19 Rest 1 19 / 2 = 9 Rest 1 9 / 2 = 4 Rest 1 4 / 2 = 2 Rest 0 2/ 2 = 1 Rest 0 1 / 2 = 0 Rest 1 Wenn man jetzt die Reste der Rechnenschritte in Folge aufschreibt, hat man seine Zahl im neuen Zahlensystem 10011100 (von rechts nach links aufgeschrieben) Bsp. für Hexzahlen: 156 / 16 = 9 Rest 12 (Ziffer C im Hexsystem) 9 / 16 = 0 Rest 9 (Ziffer 9 im Hexsystem) 9C (von rechts nach links ausgeschrieben) Wenn man das in einem Programm umsetzen möchte, dann sollte man sich die Rechenoperationen Div und Mod anschauen Zitieren
gajUli Geschrieben 13. März 2007 Geschrieben 13. März 2007 Bei langen Zahlen geht es schneller über das Octalsystem und anschließender Umwandlung der OCT-Ziffern in je drei BIN-Ziffern, was bequem im Kopf geht. 325/8 = 40 Rest 5 40/8 = 5 Rest 0 5/8 = 0 Rest 5 Also ist 325_dec = 505_oct = 101_000_101_bin Zitieren
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.