में सी रिवर्स बिट्स मैं बिटवाई ऑपरेटरों का उपयोग करके बाइनरी में एक हस्ताक्षरित पूर्णांक को परिवर्तित कर रहा हूं, और वर्तमान में बिट 0 या 0 और आउटपुट की जांच करने के लिए पूर्णांक & 1 पूर्ण करता है, फिर 2 से विभाजित करने के लिए दाएं स्थानांतरित करें। हालांकि बिट्स को गलत क्रम (रिवर्स) में वापस कर दिया जाता है, इसलिए मैंने शुरुआत से पहले पूर्णांक में बिट्स ऑर्डर को उलट दिया।सी अप्रतिबंधित पूर्णांक
क्या ऐसा करने का कोई आसान तरीका है?
उदाहरण: तो अगर मैं दिया हूँ अहस्ताक्षरित पूर्णांक 10 = 1010
while (x not eq 0)
if (x & 1)
output a '1'
else
output a '0'
right shift x by 1
इस रिटर्न 0101 जो सही नहीं है ... इसलिए मैं बिट्स के क्रम को उल्टा करने के लिए सोच रहा था मूल रूप से पहले से चल रहा है लूप, लेकिन मुझे यकीन नहीं है कि यह कैसे करें?
आप कुछ कोड पोस्ट करना चाहिए इसे थोड़ा और स्पष्ट करने के लिए (कोई इरादा नहीं है)। – user973572
उदाहरण ओपी –
में संभावित डुप्लिकेट [बिट रिवर्सल के लिए सर्वश्रेष्ठ एल्गोरिदम (एमएसबी-> एलएसबी से एलएसबी-> एमएसबी) सी में] (http://stackoverflow.com/questions/746171/best-algorithm-for-bit -reversal-from-msb-lsb-to-lsb-msb-in-c) –