DevKits

ASCII 31

Unit Separator (US)

Control character

Legacy record separator.

Common uses & context

Decimal 31 (0x1F) is the Unit Separator control character — one of the 33 non-printing codes in the C0 control block (0–31 plus DEL at 127). Control characters were designed to command teletype and terminal hardware rather than to represent visible glyphs, so US produces no letter, digit, or symbol on screen. Its8-bit binary form is 00011111 and its octal value is 0037.

Legacy record separator.

BecauseUS is invisible, it is easiest to work with by its numeric code. In most languages you can produce it with the escape or code-point form shown below, and detect it by comparing a byte against 31 (0x1F). When it turns up unexpectedly in text — pasted from a terminal, a legacy file, or a binary blob — it is usually the cause of "invisible character" bugs that break parsing or comparisons.

All encodings at a glance

Decimal31
Hexadecimal0x1F
Octal0037
Binary00011111
HTML numeric entity
URL encoding%1F
UTF-8 bytes0x1F

Code snippets

JavaScript

String.fromCharCode(31); // "US"
31.toString(16); // "1f"

Python

chr(31)           # control char US
ord(chr(31))      # 31
hex(31)           # '0x1f'

HTML

&#31;   <!-- numeric entity (no named entity for this character) -->

Programming notes

  • Detect it by numeric comparison: byte === 31 (0x1F). It has no printable glyph to match on.
  • Control characters below 32 are stripped or rejected by many text validators — check for them when sanitizing user input.
  • In a hex dump US shows as 1F; in a "cat -v" style view it may appear as a caret sequence.

Frequently asked questions

What character is ASCII code 31?

ASCII code 31 is Unit Separator (US), a non-printing control/whitespace character. In hexadecimal it is 0x1F and in binary 00011111. It has no visible glyph — it controls formatting or hardware instead of drawing a symbol.

What is 0x1F in ASCII?

Hexadecimal 0x1F equals decimal 31, which is theUnit Separator control character (US). To convert hex to ASCII yourself, read the two hex digits as a base-16 number (0x1F = 31) and look up that code point.

How do I write the character with code 31 in code?

In JavaScript use String.fromCharCode(31); in Python use chr(31); in HTML use the numeric entity &#31;. In a URL it is percent-encoded as %1F, and in UTF-8 it is stored as the byte sequence 0x1F.

Is ASCII 31 (US) printable?

No. US (code 31) is a control character with no visible glyph. It instructs software or hardware rather than displaying a symbol, which is why it often appears as an invisible or replacement character when it leaks into ordinary text.

Nearby codes

Encode & convert this character