O bc suporta cálculos hexadecimais?

16

Estou tentando fazer um cálculo hex diretamente com bc , já especifiquei a escala.

echo 'scale=16;c06b1000-c06a5e78' | bc

Mas ainda recebo um zero. O que poderia estar errado?

    
por daisy 04.10.2012 / 08:55

1 resposta

26
echo 'ibase=16;C06D1000-C06A5E78' | bc
176520

se você precisar de resposta em hexadecimal também (mas observe que apenas dígitos hexadecimais maiúsculos são suportados, pois os minúsculos entrariam em conflito com nomes de variáveis e funções, e é por isso que você obteve 0 no seu exemplo ( var1 - var2 )):

echo 'obase=16;ibase=16;C06D1000-C06A5E78' | bc
2B188

ps. FYI scale não foi projetado para a base de conversão. de man bc :

scale defines how some operations use digits after the decimal point.
The default value of scale is 0.
    
por 04.10.2012 / 09:07

Tags