Archive for the ‘Unicode’ Tag

ascii vs unicode

ANSI is an organization that standardizes various areas, both public and private. It is an acronym for American National Standards Institute. ANSI has standardized many areas of computing. One of the standards in computers was the character set (letters, numbers, and symbols) that a computer uses. This standard was called ASCII (American Standard Code for Information Interchange). This standard provided 256 different symbols that a computer can use. It was quick, efficient, and easy to implement. All modern operating systems fully understand ASCII.

As history as shown us that 640K ought to be enough for anybody…NOT(in this case 256 characters) thus the need for more characters led to Unicode which allowed for up to 65,536 different characters.

Interesting Fact:
So the question now becomes, if Windows NT supports both ASCII and Unicode, why do Unicode programs run faster. To answer this you have to understand Windows NT itself. All operating systems have what is called a “kernel.” The kernel is the heart of the OS; In Windows NT the kernel is written in Unicode, and therefore only understands Unicode. When an ANSI program runs on Windows NT, the OS must convert the strings from ASCII to Unicode. This takes both time to convert everything, and memory to store both copies (ASCII and Unicode). Whereas a Unicode program has straight access to the kernel and is faster.

The modern implementation of Unicode are:
Unicode is required by modern standards such as XML, Java,JavaScript, LDAP, CORBA 3.0, WML,python,etc. and is the official way to implement ISO/IEC 10646. It is supported in many operating systems, all modern browsers, and many other products.