Every character has a story #25: U+00a4 (CURRENCY SYMBOL)

by Michael S. Kaplan, published on 2007/03/15 04:39 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2007/03/15/1885864.aspx

(Don't these 'Every character has a story' posts remind you of a Colbert-esque Better Know a District series? Maybe I should rename the series to Better Know a Character. What does everyone think?)

Just recently, John asked:

Just a quick question I can't seem to find an answer for: what is the purpose and actual utility of the International Monetary Symbol? (ALT-0164)

I have never seen it in use (except as a non printable character used as an end-of-cell marker) but I have been asked if it could/should be used in some of our applications. 

Although it is true that in Unicode Every Character has a Story, there are some characters encoded in Unicode whose story eludes us.

It is easy to look at ¤ (U+00a4, a.k.a. CURRENCY SIGN) and assume it must have a hell of a story.

People in the wide wide world on the whole don't recognize it, and it isn't actually a currency sign in any country in the world, nor has it ever been.

Unicode does give it a general category of Sc (Symbol, Currency), and it does have a place not only in Unicode but 0xA4 in Windows Code Page 1252 and 0xCF in OEM Code page 850 and 0xA4 in ISO-8859-1.

Everywhere you look, there's this currency sign, one that is used for no currency.

I even tried asking Ken Whistler, who had no conclusive thoughts to add:


Nothing more than my guesses. It predates my involvement, since it is an ISO 8859-1 thing, whence it got into Unicode.

And 8859-1 got it from IBM, perhaps. It is:

    SC010000 International Currency Symbol

in the old IBM Graphic Character Identification System.

Maybe some old hand at IBM would know what it was originally intended for.

I'm gonna guess that it was intended as a placeholder character for EBCDIC code pages, to enable formatting of currency that had symbols not otherwise representable on the code page.
In other words, as a *replacement* currency symbol for a missing currency symbol.

But that's just a guess, absent information from the horse's mouth.

A few more discrete inquiries long the lines Ken suggested also yielded nothing, though I did verify that IBM Graphic Character Identification System connection.

It is funny that when space was at such a premium in ISO 8859-1 that they would use up a slot for a character that isn't really used for anything. Though it does seem to be in every font and it is not used for anything else (maybe that is why it is used in Word as an end of cell marker in tables:

Weird, huh?

To answer John's question, in my opinion, why not use it? It has nothing better to contribute, so have fun! :-)

Maybe somebody out there knows for sure what IBM's original plans were for it. Plans so important that ISO 8859-1, which managed to miss out on an uppercase version of a letter (a character story for another day, one that I actually do know!), had to include it.

Because every character has a story, even if we don't know what it really is....


This post brought to you by ¤ (U+00a4, a.k.a. CURRENCY SIGN)

# Rosyna on 15 Mar 2007 6:24 AM:

Maybe it's more abstract. http://en.wiktionary.org/wiki/currency

Or maybe it's one of the great jew conspiracies to confound the white man, (or some other random conspiracy people spout out when they are a loss of words, like the Methodist conspiracy to name all pastors either tim or tom....)

# Rosyna on 15 Mar 2007 6:26 AM:

I really hope someone reading that above comment reads those Korean teacher's comments about what the US is like or else they're going to sound really, really out of context..

# Guy Coleman on 15 Mar 2007 6:57 AM:

It's used in Java as a placeholder for the current currency symbol when formatting a number:


# Peter Karlsson on 15 Mar 2007 7:09 AM:

The story, as I have heard it, is that it was introduced when the international versions of ISO 646 (i.e ASCII) were created. The various national character sets were based on ASCII, but since ASCII contains the dollar sign, and for several countries having a symbol devoted to the currency of the USA, and not for their own national currency (perhaps becuase there was none), was politically sensitive. Thus the character was replaced by a generic "currency symbol" that should not offend anyone in the International Reference Version (IRV) of ASCII.

I remember programming in BASIC on an old Swedish Luxor ABC 80 machine. It has the Swedish 7-bit character set (ISO 646-11), so instead of using "A$" for strings, one would use "A¤", which when read out load would be "A-sun" instead of "A-dollar".

According to http://en.wikipedia.org/wiki/ISO/IEC_646 it is "$" in some national versions, while others have "¤". I can't find any that actually replaced it with their own country's symbol.

# Centaur on 15 Mar 2007 7:10 AM:

When I was a seventh-grader (and that means 1994), Russian computers had this character. It was encoded 0x24 (in place of $), used primarily to denote string variables in BASIC, and called colloquially “rouble”, “cockroach” or “sun”, although the rouble does not actually have a currency symbol.

# Paul on 15 Mar 2007 7:12 AM:

Didn't the 'regional settings' control panel widget used to use this symbol to show how you wanted currency formatted? Like:

Currency: [¤1,234.56]

with a value in the drop-down to change to "1,234.56¤"?

On my install of XP it actually uses the appropriate symbol for the region, but I'm sure I remember a previous version (Windows 95?) using that symbol for this purpose.

Or maybe I imagined that.

# Szajd on 15 Mar 2007 9:34 AM:

Yeah, Paul is right, in the older versions of Windows the sign was used there as such. There was even a one-line legend label, something like "¤ = Currency sign".

And also, in the regional settings of Windows Mobile 2003 Second Edition, it is used as such. (So in the settings you don't see the live active currency symbol, just this universal thingy.

# Michael Dunn_ on 17 Mar 2007 1:16 AM:

"Better Know A Character" will have a lot more than 434 parts. ;)

# Michael S. Kaplan on 17 Mar 2007 4:11 AM:

That's true....

Of course, at the rate he fills the board he will be able to revisit districts as new people come in. We're getting to the point where Better Know a Character could be more recognizable to people!

# vid on 17 Apr 2007 7:15 PM:

i remember seeing it in couple of old DOS games representing currency ;)

# Radomir on 9 Jun 2007 4:47 PM:

I think I've seen this (or very similar) symbol in the character code tables for some old teleprinters. If I remember correctly, it was used as "disregard the previous character", kind like our backspace, only it was printed normally (since these machines couldn't "delete" anything they already printed on paper).

It's mentioned in a "note" as "character similar to asterisk" here: http://www.wps.com/projects/codes/index.html#BAUDOT

Van on 26 Nov 2010 3:10 AM:

My understanding was that it was intended as a placeholder for a local currency symbol that could be added by font hack. That having been said, the most authoritative sources I would have for such information is the same as you (Ken Whistler, Michael Everson, etc.)

go to newer or older post, or back to index or month or day