Skip to content
ASCII World
NAK

Negative Acknowledge

ControlASCII 21 | Hex 0x15 | U+0015
NAK (code 21) indicates that a received data block contained errors. In BSC and Kermit protocols, the receiver sends NAK to request retransmission of the corrupted block. The ACK/NAK mechanism is a simple form of automatic repeat request (ARQ) error recovery. NAK differs from a timeout: NAK means "I received your data but it failed the checksum," while a timeout means "I received nothing at all." Modern protocols like TCP use selective acknowledgment (SACK) instead of per-block NAK/ACK.

ASCII Code

Decimal
21
Hexadecimal
0x15
Octal
25
Binary
0001 0101

Unicode

Code Point
U+0015
Escape
\u0015
UTF-8 Hex
0xE2 0x90 0x95
UTF-8 Binary
111000101001000010010101
UTF-16
0x0015
UTF-32
0x00000015

HTML Entities

Numeric

Hex


How to Type

HTML Entity

Unicode InputU+0015

Source Code Representations

C / Java
"\u0015"
CSS
\0015
JavaScript
"\u0015"
Perl
\x{0015}
Python 2
u"\u0015"
Python 3
\u0015
Ruby
\u{0015}

Frequently Asked Questions

What is ASCII code 21?
ASCII code 21 represents the Negative Acknowledge character. In hexadecimal it is 0x15, in binary 0001 0101, and in octal 25. This is a non-printable control character used for device signaling and data transmission control.
How do I type ASCII 21 on a keyboard?
Control characters are typically entered using Ctrl key combinations. For example, Ctrl+U produces ASCII 21 in most terminal emulators. You can also use the HTML entity  in web pages.