The hexadecimal value 0x09 equals 9 in decimal. Below you'll find the step-by-step conversion, binary equivalent, ASCII meaning, programming examples, and more.
0x09 is a hexadecimal (base-16) number. The 0x prefix is a standard notation used in programming to identify hexadecimal values. The actual hex digits are 09.
In the hexadecimal number system, each digit represents a power of 16. The available digits are 0–9 and A–F, where A = 10, B = 11, C = 12, D = 13, E = 14, and F = 15.
Since both digits in 09 are within the 0–9 range, this is one of the simpler hex values to convert — it looks the same as a regular decimal number, but the calculation method is different because the base is 16, not 10.
Converting hexadecimal to decimal uses a positional notation formula. Here's exactly how to convert 0x09 to decimal:
Where d₁ is the leftmost digit and d₀ is the rightmost digit.
The hex number 09 has two digits:
Therefore, 0x09 in hexadecimal = 9 in decimal.
In this specific case, since the left digit is 0, the 16¹ position contributes nothing. The entire value comes from the rightmost digit (9), which sits in the 16⁰ (ones) position. This makes 0x09 one of the hex values where the decimal result matches the hex digits — but only because the value is below 10. For hex values 0A (10) and above, the decimal result starts to diverge.
Here's how 0x09 looks in every common number base:
| Number System | Base | Value |
|---|---|---|
| Hexadecimal | Base 16 | 09 |
| Decimal | Base 10 | 9 |
| Octal | Base 8 | 11 |
| Binary | Base 2 | 00001001 |
Each hex digit maps to exactly 4 binary bits:
This binary value 00001001 represents the decimal number 9: the 2³ bit (8) and the 2⁰ bit (1) are set, giving 8 + 1 = 9.
To convert 0x09 to octal, first convert to decimal (9), then divide by 8:
In the ASCII character table, 0x09 (decimal 9) represents the Horizontal Tab (HT) character. This is a non-printable control character — it doesn't display as a visible symbol on screen.
The horizontal tab character advances the cursor to the next tab stop position. In most systems, tab stops are set at every 8 characters, though many editors use 4 spaces. It's one of the most commonly used control characters.
In almost every programming language, the tab character is represented by the escape sequence \t:
| Hex | Decimal | ASCII | Description |
|---|---|---|---|
| 0x07 | 7 | BEL | Bell (alert beep) |
| 0x08 | 8 | BS | Backspace |
| 0x09 | 9 | HT | Horizontal Tab ← this one |
| 0x0A | 10 | LF | Line Feed (new line) |
| 0x0B | 11 | VT | Vertical Tab |
| 0x0D | 13 | CR | Carriage Return |
Together, 0x09 (tab), 0x0A (line feed), and 0x0D (carriage return) are the three most commonly encountered whitespace control characters in programming and text processing.
Here's how you handle the hex value 0x09 in popular programming languages:
The hex value 0x09 appears in many contexts across computing and programming:
Tab-separated values (TSV) files use 0x09 as the column delimiter between data fields.
The tab character aligns output in columns when printing formatted data to the terminal.
When pasting tabular data, 0x09 tells the spreadsheet to place data in the next column.
When inspecting files in a hex editor, you'll frequently see 09 bytes representing tab characters.
In HTML, 0x09 is treated as whitespace. It can also be written as the entity 	 or 	.
Many network protocols and data formats use 0x09 as a field separator or whitespace token.
Here's a handy reference showing hex values around 0x09 and their decimal, binary, octal, and ASCII equivalents:
| Hex | Decimal | Binary | Octal | ASCII |
|---|---|---|---|---|
| 0x00 | 0 | 00000000 | 0 | NUL |
| 0x01 | 1 | 00000001 | 1 | SOH |
| 0x02 | 2 | 00000010 | 2 | STX |
| 0x03 | 3 | 00000011 | 3 | ETX |
| 0x04 | 4 | 00000100 | 4 | EOT |
| 0x05 | 5 | 00000101 | 5 | ENQ |
| 0x06 | 6 | 00000110 | 6 | ACK |
| 0x07 | 7 | 00000111 | 7 | BEL |
| 0x08 | 8 | 00001000 | 10 | BS |
| 0x09 | 9 | 00001001 | 11 | HT ◄ |
| 0x0A | 10 | 00001010 | 12 | LF |
| 0x0B | 11 | 00001011 | 13 | VT |
| 0x0C | 12 | 00001100 | 14 | FF |
| 0x0D | 13 | 00001101 | 15 | CR |
| 0x0E | 14 | 00001110 | 16 | SO |
| 0x0F | 15 | 00001111 | 17 | SI |
| 0x10 | 16 | 00010000 | 20 | DLE |
The 0x prefix is a widely recognized convention in programming that marks a number as hexadecimal. It originated in the C programming language and is now used across virtually all modern languages.
The prefix uses 0 (which signals a non-decimal literal in many languages) followed by x (for hexadecimal). This prevents ambiguity — without it, the number 09 might be interpreted as decimal 9 or even cause an error in languages that treat leading-zero numbers as octal.
| Notation | Example | Used In |
|---|---|---|
| 0x prefix | 0x09 | C, C++, Java, JavaScript, Python, C# |
| # prefix | #09 | HTML/CSS color codes |
| h suffix | 09h | Assembly language (Intel syntax) |
| $ prefix | $09 | Pascal, Motorola assembly |
| &H prefix | &H09 | Visual Basic |
| 16# prefix | 16#09# | Ada, VHDL |
For the value 0x09, the signed and unsigned interpretations are identical because the most significant bit is 0.
In 2's complement representation, any byte where the most significant bit (MSB) is 0 is positive, and its signed value equals its unsigned value. Since 0x09 = 00001001, the MSB is 0, so the signed value is also 9.
| Bit Position | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|
| Binary Value | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
| Power of 2 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Contribution | 0 | 0 | 0 | 0 | 8 | 0 | 0 | 1 |
Total: 8 + 1 = 9
0x09 in decimal is 9. The 0x prefix indicates hexadecimal notation, and the value 09 in base 16 equals 0 × 16 + 9 × 1 = 9 in base 10.
0x09 in binary is 00001001. Each hex digit converts to 4 bits: 0 → 0000, 9 → 1001.
0x09 is the Horizontal Tab (HT) character in ASCII. It's a non-printable control character represented in code as \t. It moves the cursor to the next tab stop, typically every 4 or 8 characters.
The 0x prefix is a notation convention from the C programming language that marks a number as hexadecimal (base 16). It's now universally used in C, C++, Java, JavaScript, Python, and many other languages. So 0x09 means "the hex number 09."
Yes, 0x09 equals decimal 9. For hex values 0x00 through 0x09, the decimal equivalent matches the hex digits. Starting from 0x0A (decimal 10), hex and decimal values begin to diverge because hex uses letters A–F for values 10–15.
0x09 in octal is 11. Convert to decimal first (9), then to octal: 9 ÷ 8 = 1 remainder 1, so octal = 11.
In Python, use int('09', 16) which returns 9. You can also use int('0x09', 16) or simply write the hex literal 0x09 directly in your code — Python automatically treats it as the integer 9.
In JavaScript, use parseInt('09', 16) which returns 9. Or use the hex literal 0x09 directly. You can also use Number('0x09') to get 9.
No. 0x09 is a non-printable control character (Horizontal Tab). ASCII printable characters start at 0x20 (space, decimal 32) and go through 0x7E (tilde ~, decimal 126). All values below 0x20 are control characters.
In terms of value, they are the same — both equal 9. The difference is notation: 0x09 explicitly indicates hexadecimal (base 16), while 9 without a prefix is assumed to be decimal (base 10). In programming, using 0x09 makes your intent clear when working with hex values, bit masks, or byte-level data.