Micro signBox T-junction pointing left, double horizontal
ASCII 181 is µ on Windows and ╡ in old DOS.
µ (Micro Sign) is byte 181 in Windows-1252, Unicode U+00B5. It's the SI prefix for one millionth: µm, µs, µg. It has a twin, the Greek small letter mu μ (U+03BC), which looks the same on screen. Unicode treats the micro sign as a compatibility character, so NFKC normalization turns µ into μ, and a search that doesn't normalize will miss entries typed with the other one. Uppercasing is the stranger trap. The capital of µ is the Greek capital Mu, which looks like a Latin M, so 'µm'.upper() in Python or text-transform: uppercase in CSS gives ΜM, and an all-caps label reads as if it said MM. Old DOS had µ too, at 230. In UTF-8 it's C2 B5, which misreads as µ. The HTML entity is µ.
╡ (Single Vertical, Double Left) is byte 181 in code page 437, the original IBM PC character set, and maps to Unicode U+2561. It's a mixed tee for the right side of a single-line box, where a double horizontal ═ (205) comes in from the left and meets the single │ (179). The HTML entity spells that out: in ╡, lowercase v means a single vertical and capital L a double left branch. Code page 850 gave this byte to Á, so a screen drawn for 437 shows Á wherever the frame needed this piece. In UTF-8 it's E2 95 A1.
#include <stdio.h>int main(void) {/* On Windows (code page 1252) byte 181 is µ.Modern terminals expect UTF-8, so print the code point, not the byte. */printf("\u00B5\n"); /* UTF-8: C2 B5 */unsigned char b = 181; /* the raw Windows-1252 byte */printf("%d 0x%02X\n", b, b); /* 181 0xB5 */return 0;}
#include <stdio.h>int main(void) {/* Byte 181 is ╡ only on a console using code page 437(chcp 437 on Windows, or DOSBox). On a UTF-8 terminal thelone byte 0xB5 is invalid and prints as garbage, often �. */putchar(181);/* char is signed on x86, so a plain char holding 0xB5 is -75.Use unsigned char when you compare or index by byte value. */char c = (char)181;unsigned char u = 181;printf("\n%d %d\n", c, u); /* -75 181 *//* Portable: print the Unicode character as UTF-8 instead. */printf("\u2561\n"); /* E2 95 A1 */return 0;}
Because a handwritten µ can pass for an m, and mg is a thousand times more than µg. Safety bodies such as the Institute for Safe Medication Practices list µg as an error-prone abbreviation and ask for mcg instead. Outside medicine, µg is still the correct SI symbol.
Yes. u is the plain-ASCII stand-in for µ, so 10 uF means 10 µF, and it turns up in parts lists and schematics that can't count on having a µ. Older capacitors are marked mfd or MFD for microfarad, which is also µF and not millifarad, even though mF is the proper SI symbol for a millifarad.
Unicode gives the micro sign an uppercase, and it's the Greek capital Mu, which looks exactly like M. So µg becomes ΜG, and lowercasing that later yields the Greek μ rather than the micro sign you started with. Unit symbols are case-sensitive anyway (mg and Mg are different units), so keep them out of any case conversion.
Alt codes typed without a leading zero come from your PC's DOS code page, and neither of the usual ones has µ at 181: the US set shows the box piece ╡, the Western European one Á. Alt+0181 reads Windows-1252 instead and gives µ. Both DOS sets do carry µ at 230, so Alt+230 works too.
Text written in code page 850 is being read as code page 437, so every Á turns into this box piece. The same mix-up turns  into ╢ and À into ╖, while lowercase letters like á and ñ come through fine because both sets keep them in the same place. Decode with the right table, for example `new String(bytes, "IBM850")` in Java.
Alt codes typed without a leading zero come from your PC's DOS code page, and neither of the usual ones has µ at 181: the US set shows the box piece ╡, the Western European one Á. Alt+0181 reads Windows-1252 instead and gives µ. Both DOS sets do carry µ at 230, so Alt+230 works too.