In the mainland of China (I don't know how people in Taiwan use this character,sorry sorry), people usually use "yao" when reandingreading numerical serial numbernumbers,digit digit by digit. One typical application is the phone number. In almost all other cases, only "yi" should be used.
Why can it mean "one"?
The
The character for "yao" is "幺". Which origniallyoriginally (in classic Chinese) means "young,little". Especially this meaning is used (still used nowadays, very popular here in Chengdu) to refer to the youngest child in a family.
I believe the meaning "one" extends from this meaning, since 1 is the "youngest" element in natural number family (without 0).
Why is it used as "one"?
As
As Bathrobe pointed out, once this was very popular in military actions, to avoid the misunderstanding as 七, to express the numbers more clearly.