ए. ASCII बनाम यूनिकोड आर्किटेक्चर:
प्रारंभिक प्रोग्रामिंग भाषाएं (जैसे C और C++) ASCII (अमेरिकन स्टैंडर्ड कोड फॉर इंफॉर्मेशन इंटरचेंज) कैरेक्टर सेट पर बनाई गई थीं। ASCII 7 बिट्स (मानक, 128 अक्षर) या 8 बिट्स (विस्तारित, 256 अक्षर) का उपयोग करता है, जो केवल लैटिन अंग्रेजी वर्णमाला, अरबी अंकों और मानक विराम चिह्न के लिए पर्याप्त है।
वास्तविक वैश्विक सार्वभौमिकता प्राप्त करने के लिए, जावा ने यूनिकोड वर्ण सेट अपनाया:
- 16-बिट चौड़ाई: यूनिकोड प्रति वर्ण 16 बिट्स (2 बाइट्स) का उपयोग करता है, $2^{16} = 65,536$ अद्वितीय कोड बिंदु प्रदान करता है।
- वैश्विक अंतर्राष्ट्रीयकरण: यूनिकोड दुनिया भर में लगभग सभी जीवित लिखित भाषाओं को समायोजित करता है - जिनमें देवनागरी (हिंदी, संस्कृत), मंदारिन चीनी, जापानी कांजी, अरबी, सिरिलिक, ग्रीक और गणितीय प्रतीक शामिल हैं।
- बैकवर्ड संगतता: यूनिकोड के पहले 128 अक्षर मानक ASCII के समान हैं (उदाहरण के लिए,
'A'$65$ है,'a'$97$ है,'0'है $48$).