Suzhou numerals

The Suzhou numerals, also known as Sūzhōu mǎzi (蘇州碼子), is a numeral system used in China before the introduction of Hindu numerals. The Suzhou numerals are also known as huāmǎ (花碼), cǎomǎ (草碼), jīngzǐmǎ (菁仔碼), fānzǐmǎ (番仔碼) and shāngmǎ (商碼).

History
The Suzhou numeral system is the only surviving variation of the rod numeral system. The rod numeral system is a positional numeral system used by the Chinese in mathematics. Suzhou numerals are a variation of the Southern Song rod numerals.

Suzhou numerals were used as shorthand in number-intensive areas of commerce such as accounting and bookkeeping. At the same time, standard Chinese numerals were used in formal writing, akin to spelling out the numbers in English. Suzhou numerals were once popular in Chinese marketplaces, such as those in Hong Kong and Chinese restaurants in Malaysia before the 1990s, but they have gradually been supplanted by Hindu numerals. This is similar to what had happened in Europe with Roman numerals used in ancient and medieval Europe for mathematics and commerce. Nowadays, the Suzhou numeral system is only used for displaying prices in Chinese markets or on traditional handwritten invoices.

Symbols
In the Suzhou numeral system, special symbols are used for digits instead of the Chinese characters. The digits of the Suzhou numerals are defined between U+3021 and U+3029 in Unicode. An additional three code points starting from U+3038 were added later.

The symbols for 5 to 9 are derived from those for 0 to 4 by adding a vertical bar on top, which is similar to adding an upper bead which represents a value of 5 in an abacus. The resemblance makes the Suzhou numerals intuitive to use together with the abacus as the traditional calculation tool.

The numbers one, two, and three are all represented by vertical bars. This can cause confusion when they appear next to each other. Standard Chinese ideographs are often used in this situation to avoid ambiguity. For example, "21" is written as "〢一" instead of "〢〡" which can be confused with "3" (〣). The first character of such sequences is usually represented by the Suzhou numeral, while the second character is represented by the Chinese ideograph.

Notations
The digits are positional. The full numerical notations are written in two lines to indicate numerical value, order of magnitude, and unit of measurement. Following the rod numeral system, the digits of the Suzhou numerals are always written horizontally from left to right, just like how numbers are represented in an abacus, even when used within vertically written documents.

For example: The first line contains the numerical values, in this example, "〤〇〢二" stands for "4022". The second line consists of Chinese characters that represents the order of magnitude and unit of measurement of the first digit in the numerical representation. In this case "十元" which stands for "ten yuan". When put together, it is then read as "40.22 yuan".

Possible characters denoting order of magnitude include:
 * wàn for myriads (As a variant of the traditional character, it is used for speed of writing in Suzhou numerals even before simplification of Chinese characters.)
 * qiān for thousands
 * bǎi for hundreds
 * shí for tens
 * blank for ones

Other possible characters denoting unit of measurement include:
 * yuán for dollar
 * máo ( or  ) for 10 cents
 * lǐ for the Chinese mile
 * any other Chinese measurement unit

Notice that the decimal point is implicit when the first digit is set at the ten position. Zero is represented by the character for zero (〇). Leading and trailing zeros are unnecessary in this system.

This is very similar to the modern scientific notation for floating point numbers where the significant digits are represented in the mantissa and the order of magnitude is specified in the exponent. Also, the unit of measurement, with the first digit indicator, is usually aligned to the middle of the "numbers" row.



Hangzhou misnomer
In the Unicode standard version 3.0, these characters are incorrectly named Hangzhou style numerals. In the Unicode standard 4.0, an erratum was added which stated:

All references to "Hangzhou" in the Unicode standard have been corrected to "Suzhou" except for the character names themselves, which cannot be changed once assigned, in accordance with the Unicode Stability Policy. (This policy allows software to use the names as unique identifiers.)