NAME
ascii2binary - Convert ASCII numbers to binary
SYNOPSIS
ascii2binary [flags]
DESCRIPTION
ascii2binary reads input consisting of a sequence of ASCII textual
representations of numbers, separated by whitespace, and produces as
output the binary equivalents. The type (unsigned integer, signed
integer, or floating point number) and size of the binary output is
selected by means of command line flags. The default is unsigned
character. Input is checked both for format errors and to ensure that
the number requested can be represented in a number of the requested
binary type and size.
INPUT FORMAT
The input formats supported are exactly those supported by strtod(3)
for floating point numbers, by strtoll(3) for signed integers, and by
strtoull(3) for unsigned integers, except that, unlike strtod(3)
floating point numbers may have thousands separators. This means that
by default integers may be decimal, octal, or hexadecimal, determined
by the usual conventions. The command line flag -b may be used to
specify another base for integer conversions.
COMMAND LINE FLAGS
Long options may not be available on some systems.
-b|--base <base>
set base in range [2,36] for integer conversions. The base may
be either an integer or:
(b)binary
(o)octal
(d)ecimal
(h)exadecimal.
-h|--help
print help message
-L|locale <locale>
Set the LC_NUMERIC facet of the locale to <locale>.
-s|--sizes
print sizes of types on current machine and related information
-t|--type <type>
set type and size of output
The following are the possible output types. Note that some
types may not be available on some machines.
d double
f float
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
-v|--version
identify version
-X|--explain-exit-codes
print a summary of the exit status codes.
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.
4 RANGE ERROR
This means that the input may be well-formed but cannot be
represented as the required type. For example, if the input is
the string 983 and ascii2binary is requested to convert this
into an unsigned byte, ascii2binary will exit with a RANGE ERROR
because 983 exceeds the maximum value representable in an
unsigned byte, which is 255.
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
SEE ALSO
binary2ascii(1), strtod(3), strtoll(3), strtoull(3)
February, 2007 ascii2binary(1)