ascii2binary - Converter números ASCII para binário
ascii2binary [flags]
ascii2binary lê a entrada que consiste em uma sequência de representações textuais ASCII de números, separados por espaços em branco, e produz como saída os equivalentes binários. O tipo (inteiro sem sinal, número inteiro com sinal ou número de ponto flutuante) e o tamanho da saída binária são selecionados por meio de sinalizadores de linha de comando. O padrão é caractere sem sinal. A entrada é verificada quanto a erros de formato e para garantir que o número solicitado possa ser representado em um número do tipo e tamanho binários solicitados.
Os formatos de entrada suportados são exatamente aqueles suportados por strtod(3) para números de ponto flutuante, por strtoll(3) para inteiros assinados e por strtoull(3) para inteiros sem sinal, exceto que, ao contrário de strtod(3), números de ponto flutuante podem ter separadores de milhar. Isso significa que, por padrão, inteiros podem ser decimais, octais ou hexadecimais, determinados pelas convenções usuais. O sinalizador de linha de comando -b pode ser usado para especificar outra base para conversões de inteiros.
Opções longas podem não estar disponíveis em alguns sistemas.
defina a base no intervalo [2,36] para conversões de número inteiro. A base pode ser um número inteiro ou:
(b) binário
(o)octal
(decimal
(h) exadecimal.
imprimir mensagem de ajuda
Defina a faceta LC_NUMERIC do locale como
tamanhos de impressão de tipos na máquina atual e informações relacionadas
definir tipo e tamanho de saída
A seguir estão os tipos de saída possíveis. Observe que alguns tipos podem não estar disponíveis em algumas máquinas.
dobro
flutuador
caracter assinado
assinado curto
inteiro assinado
assinado por muito tempo
assinado por muito tempo
caracter não identifcado
curto não assinado
int não assinado
longo não assinado
não assinado longo longo
identificar versão
imprimir um resumo dos códigos de status de saída.
Os seguintes valores são retornados na saída:
A entrada foi convertida com sucesso.
O usuário solicitou informações como o número da versão ou sinopse de uso e isso foi fornecido.
Um erro resultou de uma falha do sistema operacional, como um erro de E/S ou incapacidade de alocar armazenamento.
O programa foi chamado com sinalizadores de linha de comando inválidos ou inconsistentes.
Isso significa que a entrada pode estar bem formada, mas não pode ser representada como o tipo necessário. Por exemplo, se a entrada for a string 983 e ascii2binary for solicitado a convertê-la em um byte não assinado, ascii2binary sairá com um RANGE ERROR porque 983 excede o valor máximo representável em um byte não assinado, que é 255.
Isso significa que a entrada estava malformada, ou seja, não poderia ser interpretada como um número do tipo necessário. Por exemplo, se a entrada for 0x2A e um valor decimal for solicitado, um ERRO DE ENTRADA será retornado, pois 0x2A não é uma representação válida de um inteiro decimal.
Bill Poser (billposer@alum.mit.edu)
Licença Pública Geral GNU, versão 3
binary2ascii(1), strtod(3), strtoll(3), strtoull(3)