2011-04-23 18 views
5

मुझे संख्याओं, सकारात्मक और नकारात्मक, बाइनरी प्रारूप में कनवर्ट करने की आवश्यकता है - इसलिए, 2 "00000010" में, और -2 "11111110" में, उदाहरण के लिए। मुझे 12 से अधिक बिट्स की आवश्यकता नहीं है, इसलिए यदि स्ट्रिंग उस से अधिक लंबी है तो मैं केवल प्रमुख साइन बिट्स को ट्रिम कर सकता हूं। ऐसा लगता है कि Integer.toBinaryString() सकारात्मक संख्या करेगा, लेकिन क्या कोई ऐसा व्यक्ति है जो नकारात्मक कर सकता है?एक नकारात्मक पूर्णांक को दो पूरक पूरक बाइनरी रूप में कैसे परिवर्तित करें? (जावा)

उत्तर

10

Integer.toBinaryString नकारात्मक भी काम करता है। :-) उदाहरण के लिए, Integer.toBinaryString(-2) रिटर्न 11111111111111111111111111111110.

यदि आप सही 12 वर्ण लेते हैं, तो आपके पास आवश्यकतानुसार नीचे 12 बिट्स हैं।