Como inserir valores hexadecimais de 64 bits em oitava

0

Estou tentando usar o Octave como uma calculadora de programador. Eu quero inserir um ponteiro de 64 bits, mas quando eu faço aparentemente o valor de 64 bits fica silenciosamente truncado para 32 bits:

octave:44> base_ptr=0x1010101020202020
base_ptr =  538976288
octave:45> uint64(base_ptr)
ans = 538976288
octave:46> printf("%lx\n", base_ptr)
20202020

Parece que truncou o valor de entrada para os 32 bits baixos. Eu usaria o scanf, mas os documentos dizem que ele só deve ser usado internamente.

Como posso inserir o valor total de 64 bits?

Por outro lado, existe alguma calculadora de programadores grátis para o Windows? (Eu sei que a calculadora do Windows tem um modo de programador, mas gostaria de suporte a variáveis arbitrárias). Eu tentei usar o meu ti-89, mas também não suporta hexadecimais de 64 bits.

    
por Chris Ashton 11.09.2012 / 23:07

0 respostas