Back
Asciify Logo
Asciify
°²

ASCII 177

Plus-minus signMedium shade

ASCII 177 is ± on Windows and ▒ in old DOS.

± (Plus-Minus Sign) is byte 177 in Windows-1252, Unicode U+00B1. It gives a range around a value: a tolerance like 25 mm ± 0.1 mm, or a result like 5.0 ± 0.2 in a lab report. In science that second form is ambiguous on its own. The 0.2 could be a standard deviation, a standard error or a confidence interval, and a 95% interval is roughly twice the standard error, so say which one you mean. Formulas bring its mirror image ∓ (U+2213, minus-plus), which pairs with ± to flip the sign in step: cos(a ± b) = cos a cos b ∓ sin a sin b. Windows-1252 has no ∓. Old DOS had ± too, at 241. In UTF-8 it's C2 B1, which misreads as ±. The HTML entity is ±.

▒ (Medium Shade) is byte 177 in code page 437, the original IBM PC character set, and maps to Unicode U+2592. It sits between ░ and ▓ as a half-dense checker pattern, used for text-mode backgrounds and mid-gray fills in ANSI art. Porting old code is where 177 trips people up. In C on a DOS-style console, char(177) meant ▒, but modern languages treat the number as a Unicode code point: Python's chr(177), Java's (char)177 and C#'s (char)177 all give ±, because U+00B1 is the plus-minus sign. To get the shade, use its own code point, U+2592, or decode the byte explicitly, as bytes([177]).decode('cp437') does in Python. In UTF-8 it takes three bytes, E2 96 92, which a code page 437 console prints as ΓûÆ and a page misread as Windows-1252 shows as â–’. The HTML entity is ▒.

Math SymbolBlock Element

Technical Details

Technical Details

Code Example

</>
#include <stdio.h>
int main(void) {
/* On Windows (code page 1252) byte 177 is ±.
Modern terminals expect UTF-8, so print the code point, not the byte. */
printf("\u00B1\n"); /* UTF-8: C2 B1 */
unsigned char b = 177; /* the raw Windows-1252 byte */
printf("%d 0x%02X\n", b, b); /* 177 0xB1 */
return 0;
}

Code Example

</>
#include <stdio.h>
int main(void) {
/* Byte 177 is ▒ only on a console using code page 437
(chcp 437 on Windows, or DOSBox). On a UTF-8 terminal the
lone byte 0xB1 is invalid and prints as garbage, often �. */
putchar(177);
/* char is signed on x86, so a plain char holding 0xB1 is -79.
Use unsigned char when you compare or index by byte value. */
char c = (char)177;
unsigned char u = 177;
printf("\n%d %d\n", c, u); /* -79 177 */
/* Portable: print the Unicode character as UTF-8 instead. */
printf("\u2592\n"); /* E2 96 92 */
return 0;
}

How to Type It

Windows
Hold Alt and type 0177 on the numeric keypad, with Num Lock on. The leading zero picks the Windows code page. Alt+241, without the zero, types it too. No numeric keypad? In Word, type 00B1 and press Alt+X.
Mac
Press Option+Shift+=.
Linux
In GNOME, or any desktop running IBus, press Ctrl+Shift+U, type b1, then Space. With a Compose key set up, press Compose, plus, minus.
Phone
Tap the character at the top of this page to copy it.

How to Type It

Windows
Hold Alt and type 177 on the numeric keypad, with no leading zero. Windows reads it as a DOS code and inserts ▒. No numeric keypad? In Word, type 2592 and press Alt+X.
Mac
Press Control+Command+Space to open the Character Viewer, then search for "medium shade".
Linux
In GNOME, or any desktop running IBus, press Ctrl+Shift+U, type 2592, then Space.
Phone
Phone keyboards have no key for it. Tap the character at the top of this page to copy it.

Frequently Asked Questions

  • Join two formatted numbers: `=TEXT(A2,"0.00")&" ± "&TEXT(B2,"0.00")` turns 12.3456 and 0.8 into 12.35 ± 0.80. TEXT keeps both at the same number of decimals, which a plain & join would lose. The result is text, so keep the original columns for any further calculation.

  • Put the unit where it clearly covers both numbers: (25.0 ± 0.1) mm or 25.0 mm ± 0.1 mm. Written as 25 ± 0.1 mm, the unit formally belongs only to the 0.1. Give the value as many decimals as the uncertainty, too, so 25.0 rather than 25.

  • Python and JavaScript have no ± operator, so you compute both branches. For the quadratic formula in Python, take `d = (b*b - 4*a*c) ** 0.5` and return `(-b + d) / (2*a)` and `(-b - d) / (2*a)`. The ± in the math is shorthand for two separate answers, and your code should hand back both.

  • In polls and surveys, yes: the margin is in percentage points, so the range is 37% to 43%. Read strictly, ± 3% could also mean 3% of 40, only 1.2 points either way, which is how a ±5% resistor tolerance works. Write ± 3 percentage points when the difference matters.

  • Type Alt+0177 instead. The version without the zero reads the DOS table, where 177 is the medium shade ▒. If you like the short codes, ± also lives in that DOS table at 241, so Alt+241 gets you there too.

  • The file is code page 437 art opened as Windows-1252. The three shades ░▒▓ sit at bytes 176 to 178, where Windows-1252 has °±², and the solid █ at 219 becomes Û. Convert it with `iconv -f CP437 -t UTF-8 art.nfo > art.txt`, then view it in a monospaced font that includes the block characters.

Frequently Asked Questions

  • Type Alt+0177 instead. The version without the zero reads the DOS table, where 177 is the medium shade ▒. If you like the short codes, ± also lives in that DOS table at 241, so Alt+241 gets you there too.

  • The file is code page 437 art opened as Windows-1252. The three shades ░▒▓ sit at bytes 176 to 178, where Windows-1252 has °±², and the solid █ at 219 becomes Û. Convert it with `iconv -f CP437 -t UTF-8 art.nfo > art.txt`, then view it in a monospaced font that includes the block characters.

@workani&@alexluthor
Privacy & legal

Privacy

No accounts, no ads, no tracking cookies, and no cross-site tracking. The only analytics we keep are faceless — anonymous, aggregated counts of pages and searches, never tied to you. We store no IP addresses, set no tracking cookies, and build no profiles. Cloudflare hosts the site and handles requests for delivery and security.

Full privacy policy·Extension privacy·legal@asciify.dev

Attributions & licenses

Twemoji
© Twitter, Inc and other contributors · CC-BY 4.0
Noto Color Emoji
© Google · Apache 2.0
Fluent UI Emoji
© Microsoft · MIT
OpenMoji
© HfG Schwäbisch Gmünd · CC-BY-SA 4.0
Toss Face
© Viva Republica (Toss) · SIL OFL 1.1
JoyPixels
© JoyPixels Inc. · Free Limited Use License
SerenityOS Emoji
© The SerenityOS Developers · BSD-2-Clause
EmojiTwo
© EmojiTwo contributors · CC-BY 4.0
Apple Color Emoji
© Apple, Inc.
Facebook Emoji
© Meta Platforms, Inc.

Apple and Facebook emoji styles are proprietary and shown here solely for reference and comparison — a common-sense application of nominative-use / fair-use principles. asciify is not affiliated with, endorsed by, or sponsored by Apple, Inc., Meta Platforms, Inc., or any other rights holder listed above. If a rights holder requests removal of their emoji style from this site, it will be removed.

All other vendor emoji are reproduced for reference and comparison under their respective open licenses listed above.

Character names and code points from the Unicode® Standard. Unicode® and the Unicode Logo are registered trademarks of Unicode, Inc.

Privacy
© asciify.dev 2025-2026