Mit bash hex, dec & oct umrechnen


Ich gestehe, ich bin ein Konsolen-Junkie! Aber nicht, was Du jetzt denkst, Spielekonsolen sind damit nicht gemeint. Obwohl manche Zeitgenossen Linux als das längste Textadventure aller Zeiten bezeichnen.

Unter Linux arbeite ich gerne mit der Textkonsole. Bei der Softwareentwicklung, vor allem mit Microcontrollern, rechnet man oft mit hexadezimalen Zahlen.  Auch bei RGB Werten für die Farbeinstellungen von Webseiten ist häufiger eine Umrechnung nötig, ebenso bei IP- und Mac-Adressen. Manchmal benötigt man schnell den Dezimal- oder Hexadezimalwert. Bei zweistelligen Werten ist das fast noch Kopfrechnen, mit mehr Stellen wird es schon etwas aufwändiger.

Während manche Anwender zum Taschenrechner greifen, nutze ich einfach nur die Shell, meistens die bash. In der ~./bashrc musst Du nur folgende Zeilen zusätzlich eintragen:

alias hex="printf \"%x\n\""
alias dec="printf \"%d\n\""
alias oct="printf \"%o\n\""

Mit diesen drei Alias-Einträgen brauchst Du für die Umrechnung in der Shell nur noch dec <Hexadezimalzahl> tippen, um die Zahl in der dezimalen Darstellung zu bekommen. Oder hex <Dezimalzahl> um die dezimale Darstellung zu erhalten. Auch die Umrechnung in oktale Zahlen ist einfach.

tom@einstein ~ $ dec 0xffffffff
4294967295
tom@einstein ~ $ hex 65535
ffff
tom@einstein ~ $ oct 65535
177777

Du kannst dafür natürlich auch den Rechner 'bc' an der Textkonsole verwenden. Aber das funktioniert nicht so ganz einfach. Lies einfach die manpage für 'bc', dann weißt Du, was ich meine. 😉

Leave a comment

Your email address will not be published.

Löse die kleine Aufgabe, um zu beweisen, dass Du ein Mensch bist: *