2015-08-19 10 views
14

आईएसओ सी स्टैंडर्ड CHAR_BIT की आवश्यकता होने के लिए कम से कम 8क्या CHAR_BIT कभी> 8 है?

POSIX अनिवार्य CHAR_BIT 8 के बराबर हो, और (लगभग?) सभी नेटवर्किंग और संचार मानकों ओक्टेट्स का उपयोग कर के साथ

, वहाँ किसी भी समकालीन सी कार्यान्वयन है जहां CHAR_BIT> 8?

(नोट: मुझे 18 या 36 बिट शब्दों का उपयोग करके ऐतिहासिक कंप्यूटर आर्किटेक्चर में दिलचस्पी नहीं है। यह वास्तव में सी के बारे में एक सवाल है क्योंकि इसका उपयोग वर्तमान हार्डवेयर पर आज किया जाता है; सी 99 या बाद में कार्यान्वयन के साथ सिस्टम सोचें)।

+5

http://stackoverflow.com/questions/2098149/what-platforms-have-sethingething-other-than-8-bit-char –

+3

आईआईआरसी 16 बिट वर्णों के साथ डीएसपी चिप्स हैं। – wildplasser

+0

विस्तृत वर्ण, कई भाषा वर्णमाला में उपयोग किए जाने वाले आमतौर पर 16 बिट्स – user3629249

उत्तर

13

TMS320C28x टेक्सास इंस्ट्रूमेंट्स के डीएसपी में 16 बिट्स के साथ एक बाइट है।

संकलक के लिए Documentation निर्दिष्ट करता CHAR_BIT पेज 101.

यह एक आधुनिक प्रोसेसर प्रतीत होता है पर 16 के रूप में (वर्तमान में बेचा जा रहा है), C99 और सी ++ 03 समर्थन compilers।

+0

दो उत्कृष्ट उत्तर एक बाउंटी विजेता का चयन करना मुश्किल बनाते हैं। तो मैंने एक पासा घुमाया ... आप में से एक को "स्वीकार" स्कोर मिलता है, दूसरा बक्षीस। – Jens

9

एक और उदाहरण एनालॉग डिवाइस 'SHARC processor family है। इसका सी कार्यान्वयन, CrossCore Embedded Studio, CHAR_BIT == 32 और claims है जो फ्रीस्टैंडिंग सी 99 और सी ++ 11 अनुरूपता प्रदान करता है।

1

एनालॉग डिवाइस 'SHARC डीएसपी पहले से ही उल्लेख किया गया था (CHAR_BIT == 32)। मुझे कि हाल के SHARC + कोर जोड़ते हैं (मैं ADSP-SC589 और CCES toolchain का उपयोग) के दो स्वरूप में लिखा क्षुधा चला सकते हैं: CHAR_BIT == 8 या CHAR_BIT == 32। आप mix'n'match एक ऐप में दो मोड एक साथ भी कर सकते हैं। हालांकि मैं सामान्य रूप से विकास के लिए इसकी अनुशंसा नहीं करता हूं, लेकिन कोड को पोर्ट करते समय मुझे यह उपयोगी लगता है।

संबंधित मुद्दे