User Rating 0.0 β˜…β˜…β˜…β˜…β˜…
Total Usage 0 times
Is this tool helpful?

Your feedback helps us improve.

β˜… β˜… β˜… β˜… β˜…

About

Byte-to-character mapping errors cause silent data corruption in serial protocols, file parsers, and network packet inspection. A single off-by-one in a 0x0D0x0A (CR LF) sequence breaks line parsing across platforms. This tool converts raw byte values in decimal (0 - 255), hexadecimal (0x00 - 0xFF), or binary (00000000 - 11111111) to their corresponding ASCII and extended ASCII characters. Non-printable control codes below 0x20 and DEL (0x7F) are rendered with their standard abbreviations (NUL, SOH, STX, etc.) rather than invisible glyphs. The converter handles the full 8-bit range per ISO/IEC 8859-1. Note: bytes above 127 map to extended ASCII and may render differently depending on your system's code page.

bytes to ascii byte converter decimal to ascii hex to text binary to ascii character encoding byte array converter

Formulas

Each byte B is an unsigned 8-bit integer with valid range:

0 ≀ B ≀ 255

The mapping function from byte to character is:

C = fromCharCode(B)

For hexadecimal input tokens, the decimal value is recovered via base conversion:

B = nβˆ’1βˆ‘i=0 di β‹… 16i

where di is the i-th hex digit from the right, and n is the total digit count. For binary input, the same formula applies with base 2:

B = 7βˆ‘i=0 bi β‹… 2i

where bi ∈ {0, 1}. Non-printable characters are those where B < 32 or B = 127. These are displayed using their standard control code abbreviations (NUL, SOH, STX, ETX, etc.) per ANSI X3.4-1986.

Reference Data

DecHexBinaryCharDescription
00x0000000000NULNull character
70x0700000111BELBell / Alert
80x0800001000BSBackspace
90x0900001001HTHorizontal Tab
100x0A00001010LFLine Feed (Unix newline)
130x0D00001101CRCarriage Return
270x1B00011011ESCEscape
320x2000100000SPSpace
480x30001100000Digit zero
570x39001110019Digit nine
650x4101000001AUppercase A
900x5A01011010ZUppercase Z
970x6101100001aLowercase a
1220x7A01111010zLowercase z
1270x7F01111111DELDelete
1280x8010000000€Euro sign (Windows-1252)
1600xA010100000NBSPNon-breaking space
1690xA910101001Β©Copyright sign
1760xB010110000Β°Degree symbol
1810xB510110101Β΅Micro sign
1880xBC10111100ΒΌVulgar fraction one quarter
1910xBF10111111ΒΏInverted question mark
1920xC011000000Γ€Latin capital A with grave
2230xDF11011111ßLatin small sharp S (Eszett)
2330xE911101001Γ©Latin small E with acute
2410xF111110001Γ±Latin small N with tilde
2520xFC11111100ΓΌLatin small U with diaeresis
2550xFF11111111ΓΏLatin small Y with diaeresis

Frequently Asked Questions

Non-printable bytes are rendered using their standard ASCII control code abbreviations: 0 = NUL, 1 = SOH, 2 = STX, through 31 = US, and 127 = DEL. In the detailed byte table view, each non-printable byte is shown with its abbreviation inside a distinct tag so you can identify it at a glance. The plain text output replaces them with the Unicode Control Pictures block (U+2400 - U+2421) where available.
Any token that parses to a value less than 0 or greater than 255 is flagged as invalid. The converter highlights the offending token in the input breakdown table and excludes it from the output string. A single 8-bit byte can only represent 256 distinct values (0x00 through 0xFF). If you need to encode larger code points (e.g., Unicode), you must split them into multi-byte sequences first (UTF-8 encoding uses 1 to 4 bytes per character).
Yes. When the input format is set to Auto-Detect, each token is classified independently. Tokens prefixed with 0x or 0X are parsed as hexadecimal. Tokens consisting solely of 0s and 1s with exactly 8 digits are parsed as binary. All other numeric tokens are parsed as decimal. Ambiguous tokens (e.g., 10 could be decimal ten or binary two) default to decimal unless the 8-digit binary pattern matches. For unambiguous results, select a specific format.
Standard ASCII (ANSI X3.4) defines only 128 characters (bytes 0 - 127). Bytes 128 - 255 fall into the "extended ASCII" region whose interpretation depends on the code page. ISO 8859-1 (Latin-1) maps them to Western European characters. Windows-1252 differs for bytes 128 - 159, placing characters like the Euro sign (€) at 0x80. This tool uses the browser's native Latin-1 mapping via String.fromCharCode, which aligns with ISO 8859-1 for the 0 - 255 range.
The parser accepts spaces, commas, semicolons, tabs, and newlines as delimiters. Multiple consecutive delimiters are treated as one. This means you can paste data from spreadsheet columns, comma-separated logs, or space-delimited hex dumps without reformatting. Brackets and parentheses are stripped automatically to handle array notations like [72, 101, 108, 108, 111].
Binary auto-detection requires exactly 8 digits of 0s and 1s per token. A token like 101 (3 digits) is interpreted as decimal 101 (ASCII 'e'), not binary 5. To force binary parsing, either pad to 8 digits (00000101) or explicitly select the Binary input format. Similarly, 11111111 in binary equals 255 decimal, but in auto-detect mode a number like 11001100 could be misread if it also happens to be a valid decimal (it would be parsed as decimal 11001100, which exceeds 255 and would be flagged as invalid, causing the fallback to binary).