Sunday, 15 February 2015

vb.net - What does this comparison of hexadecimal (If ((&H7F And &H80) = &H80)) means ? -


मुझे एक मुक्त स्रोत से यह कोड मिला

  निजी उप सेटफ़िल्ड (ByRef FieldByte as Byte ) यदि ((फील्डबाइट और & amp; H80) = & amp; H80) तो फ़ील्डटाइम = True Else FieldTime = गलत अंत यदि यदि ((FieldByte और & amp; H40) = & amp; H40) तो FieldOpenInterest = True Else FieldOpenInterest = False End यदि यदि (फ़ील्डबिट एंड एंड एच 20) = & amp; H20) फिर फ़ील्ड ओपनप्रिस = ट्रू एल्स फ़ील्ड ओपनप्रिस = असत्य अंत यदि यदि ((फ़ील्डबिट और एच 10) = और एच 10) तो 'निश्चित नहीं है कि उच्च या निम्न फ़ील्डहॉल = ट्रू एल्स FieldHigh = False End यदि यदि ((FieldByte और & H8) = & amp; H8) तो 'सुनिश्चित नहीं है कि कौन से उच्च या निम्न फ़ील्डओल = ट्रू एल्स फ़ील्ड नीचे = गलत अंत अगर अंत उप  

फ़ील्डबिट के मूल्य भेजा गया है & amp; H7F, यह मान फ़ील्डटाइम को छोड़कर सभी क्षेत्रों को सक्षम करता है

फ़े का मूल्य क्या होना चाहिए सभी क्षेत्रों को सक्षम करने के लिए ldByte? और क्या कोई यह समझा सकता है कि यह तुलना क्या करता है?

पहले से धन्यवाद

बेस 16 वैल्यू और एच 7 एफ आधार 01111111 के बराबर है। 2. आधार 16 मान और एच 80 बेस 2 में 10000000 के बराबर है।

तो बिटवा ऑपरेशन के लिए

  0111111 और (& H7F) 1000000 = (& amp; H80) ------------ 0000000  

परिणाम शून्य है और आपका फील्डटाइम है

किसी भी अन्य मूल्य से कम & amp; H80 जब bitwise ऑपरेटर के साथ प्रयोग किया जाता है और इसके विरुद्ध & amp; H7F हमेशा एक ही मान वापस करेगा

उदाहरण के लिए

< पूर्व> 0111111 और (& H7F) 0100000 = (& amp; H40) ------- 0100000 (& amp; H40)

आपको अधिक विस्तृत लेख मिल सकता है

  1111111 और (& amp; एचएफएफ) 1000000 = (& amp; एच 80) - अपने फ़ील्डबिट वैरिएबल को & amp; एचएफएफ सेट करने के लिए आवश्यक सभी फ़ील्ड को सक्षम करने के लिए  

----------- 1000000 (& H80)


No comments:

Post a Comment