---
name: "binary2ascii"
section: "1"
platform: "linux"
package: "ascii2binary"
version: "2.14-1.1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/binary2ascii"
---

# binary2ascii(1)

Convert binary numbers to textual representation

## NAME

binary2ascii - Convert binary numbers to textual representation

## SYNOPSIS

**binary2ascii \[flags\]**

## DESCRIPTION

*binary2ascii* reads input consisting of binary numbers and converts them to their textual representation. Command line flags specify the type and size of the binary numbers and provide control over the format of the output. Unsigned integers may be written out in binary, octal, decimal, or hexadecimal. Signed integers may be written out only in binary or decimal. Floating point numbers may be written out only in decimal, either in standard or scientific notation. (If you want to examine the binary representation of floating point numbers, just treat the input as a sequence of unsigned characters.)

## COMMAND LINE FLAGS

Long options may not be available on some systems.

- \-b,--base \<base\>

  Base for integer conversions: b(binary),d(ecimal), h(exadecimal), o(ctal), or 2,8,10, or 16.

- \-d,--delimit

  Delimit the output as per the locale. This is the default on systems in which *[printf(3)](/printf/3.md)* supports delimitation. If delimitation is not enabled, floating point numbers will have a decimal point and no separation of groups, integers no delimiters at all. With this option, the decimal separator will be chosen according to the locale (which, for example, may make it a comma), and non-fractional digits will be grouped and separated according to the rules for the locale in force. For American English, this means groups of three digits separated by commas, whereas for German in Germany it means groups of three digits separated by periods.

- \-D,--do-not-delimit

  Do not delimit the output as per the  *-d* option.

- \-e,--exponential

  Use exponential (scientific) notation.

- \-h,--help

  print help message

- \-l,--linefeed

  add a linefeed after every 0x0A value if the size is char, short, int, or long, that is, the sizes that might represent a character.

- \-L,locale \<locale\>

  Set the LC\_NUMERIC facet of the locale to \<locale\>.

- \-n,--number \<number\>

  number of items to print per line.

- \-o,--offset \<offset\>

  byte offset at which to start.

- \-p,--precision \<precision\>

  the precision to use when printing floating point numbers.

- \-s,--sizes

  print sizes of types on current machine and related information

- \-t,--type \<type\>

  set type and size of input

- \-x,--no-hex-mark

  do not mark hexadecimal output with the prefix 0x.

- \-V,--verbose

  be verbose.

- \-v,--version

  print version information.

- \-w,--width

  minimum field width.

- \-X,--explain-exit-codes

  print a summary of the exit status codes.

- \-z,--zero-pad-integers

  zero pad on left.

- \-Z,--do-not-zero-pad-integers

  do not zero pad on left

## INPUT TYPES

The following are the possible input types. Note that some types may not be available on some machines.

d  double

f  float

q long double

sc signed char

ss signed short

si signed int

sl signed long

sq signed long long

uc unsigned char

us unsigned short

ui unsigned int

ul unsigned long

uq unsigned long long

## EXIT STATUS

The following values are returned on exit:

- 0 SUCCESS

  The input was successfully converted.

- 1 INFO

  The user requested information such as the version number or usage synopsis and this has been provided.

- 2 SYSTEM ERROR

  An error resulted from a failure of the operating system such as an i/o error or inability to allocate storage.

- 3 COMMAND LINE ERROR

  The program was called with invalid or inconsistent command line flags.

- 5 INPUT ERROR

  This means that the input was ill-formed, that is that it could not be interpreted as a number of the required type. For example, if the input is 0x2A and a decimal value is called for,  an INPUT ERROR will be returned since 0x2A is not a valid representation of a decimal integer.

## AUTHOR

Bill Poser (billposer@alum.mit.edu)

## LICENSE

GNU General Public License, version 3

## SEE ALSO

[ascii2binary(1)](/ascii2binary/1.md)
