Konvertierung einer Reihe von Bytes von Hexadezimalzahlen in Dezimalzahlen

2063
stanigator

Gibt es eine App / ein Skript, das eine Reihe von Bytes von hex nach dec konvertieren kann (wenn nicht, gibt es eine einfache Möglichkeit, dies in der Befehlszeile in ein paar Zeilen zu erreichen)?

03 01 9d f0 b4 05 01 67 40 20 00 6b ad 
3

3 Antworten auf die Frage

3
grawity

.jsSkript für cscript:

num = []; for (i = 0; i < WScript.Arguments.Length; i++) { arg = WScript.Arguments(i); num.push(parseInt(arg, 16)); } WScript.Echo(num.join(" ")); 

Batch-Skript für cmd.exe:

@echo off & setlocal set /a out=0x%1 :loop if "%~1"=="" goto :end set /a num=0x%1 set out=%out% %num% shift goto :loop :end echo.%out% 
1
Andrew Lambert

Es gibt Unmengen von Online-Konvertern wie diese: http://home2.paulschou.net/tools/xlate/

-1 um nur einen Link zu posten. Dies ist ein Ort zum Sammeln von Wissen. Was passiert, wenn der Link abbricht? Nifle vor 12 Jahren 0
@Nifle Verwenden Sie einen der [Tausende von Anderen] (http://www.google.com/search?q=online+hex+to+decimal+calculator) da draußen? Das OP verlangte keine Lektion in Hexadezimal-Mathematik, nur eine einmalige Konvertierung. Andrew Lambert vor 12 Jahren 1
@Amazed: Ich denke, Nifle bedeutete solche, die dem Link ähnelten, den Sie hinzugefügt haben, aber [diese Tausenden anderen] (http://www.google.com/search?q=online+hex+to+decimal+calculator#sclient = psy & hl = en & safe = off & source = hp & q = hexadezimal + Übersetzer & pbx = 1 & OQ = hexadezimal + Übersetzer & aq = f & aqi = G1G-M1G-ms1g-m1 & aql = f & gs_sm = e & gs_upl = 9172l14565l1l28l18l2l6l6l0l360l2291l3.6.2.2l13 & bav = on.2, or.r_gc.r_pw. & fp = c306e119a7d85f91 & biw = 1920 & bih = 989) würde ausreichen (die Schlüsselwörter nicht kennen, um sie ursprünglich richtig zu suchen) stanigator vor 12 Jahren 0
0
Andy Lee Robinson

Wenn Sie nur eine Zeichenfolge aus Hexadezimalzeichen und eine Dezimalzeichenfolge benötigen, wird dieses kleine Perl-Programm dies tun:

#!/usr/bin/perl while(<>) 

input.hex:

68edcdec4e2c8eae8d2c8e2dedcd6e04d2042fedae52ceac04 ccedaecd8c042ccd8c046cedad0e8dac8eac8c048e0dac044a a82889046c0d2c8d8daccdecacc5042bedae4e04ee2dcd046c

./hex2dec.pl < input.hex 

Es vergibt den Leerraum in der Quelle und sucht nur nach aufeinanderfolgenden Paaren von Hex-Ziffern.

Modifizieren Sie einfach mit sprintf, push, split usw., um das Ausgabeformat zu steuern

Wenn Sie Perl unter Windows installieren, funktioniert dies in der Befehlszeile:

perl -e "while(<>)" < input.hex 

Perl ist erstaunlich. Niemand sollte ohne es sein!