十六进制数42C转换成十进制是1068吗

来源:百度知道 编辑:UC知道 时间:2024/05/08 21:08:58
4*16^2+2*16+12=1068.

对么?
怎么用计算器算的是1055呢。那个,好心人再帮我看下我之前问的一个关于进制转换的问题吧,我老是挺糊涂的有点弄不清,老师又没有详讲。谢谢!

1068

是1068, 这我用 gawk script 算的, 脚本这样
user@minix-nb:~$ cat lib/awk/hex2dec.awk
function hex2dec(h ,i,x,v){
h=tolower(h);sub(/^0x/,"",h)
for(i=1;i<=length(h);++i){
x=index("0123456789abcdef",substr(h,i,1))
if(!x)return "NaN"
v=(16*v)+x-1
}
return v
}
user@minix-nb:~$ gawk -f hex2dec.awk --source '{print hex2dec($0)}' <<<"42C"
1068
user@minix-nb:~$

这由Linux 的 gawk 产生,函数脚本作者忘了,是 shell/perl/C/Unix
hacker

是对的 就是你那么算的