द्विआधारी क्षेत्र का विवरण डिकोड करने के लिए कैसे:अजगर, द्विआधारी कोडित दशमलव (बीसीडी)
से भर रहे हैंकोलर संख्या, संकुचित बीसीडी कोड के साथ व्यक्त किया और अधिशेष बिट्स "0xF"
मैंने संरचना प्रारूप '16c'
के साथ प्रिंट करने का प्रयास किया है और मुझे लगता है: ('3', '\x00', '\x02', '\x05', '\x15', '\x13', 'G', 'O', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff', '\xff')
और यदि मैं '16b'
का उपयोग करता हूं तो मुझे (51, 0, 2, 5, 21, 19, 71, 79, -1, -1, -1, -1, -1, -1, -1, -1)
मिलता है। और यह सही नहीं है, मुझे फोन नंबर मिलना चाहिए, और उपरोक्त संख्याएं अमान्य हैं।
print struct.unpack_from('>16b', str(data.read()),offset=46)
ऊपर कोड है जो काम नहीं करता है और मुझे अमान्य संख्या मिलती है। मुझे किस प्रारूप के साथ 16 बाइट फ़ील्ड को अनपैक करना चाहिए और बीसीडी कोड को कैसे परिवर्तित करना चाहिए?
आपको बहुत बहुत धन्यवाद। – Whit3H0rse
+1 बहुत सुरुचिपूर्ण और अजगर! – Kos