الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

BitCount

مغلق
بدأه TarekNajem04 في 12 ديسمبر 2005 · 0 رد · 452 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1

بسم الله الرحمن الرحيم

هل تريد أن تعرف عدد البتات التي قمتها 1 في المتحول الذي تستخدمه لربما تقوم لا يهمني الأمر ولكن هذا ما يستخدم في عملية التحقق من جميع البيانات التي يتم قرائتها من الذواكر عندما تضع خيار التحقق في البيوس أو ما يعمل في Protocol TCP في عملية التحقق من البينات المرسلة ليتم تخفيف حجم بينات التحقق

        private int BitCount(int Val)
        {
            int Count = 0;
            do
            {
                Val &= (Val - 1);
                Count++;
            } while (Val != 0);

            return Count;
        }

نتائج الكود عندما نمرر للـ Method الرقم 32 سوف يعيد لنا واحد وإذا مررنا له الرقم 127 سوف يعطينا 7 وإذا مررنا الرقم 128 سوف يعيد لنا واحد وهكذا

أي عدد البتات التي تحوي الرقم واحد في مجمع البايتات

32 = 00000000000000000000000000100000
127 = 00000000000000000000000001111111
128 = 00000000000000000000000010000000

لا تفعل إلا ما تستطيع أن تقوله ولا تقول إلا ما تسطيع أن تفعله

اللهم علمنا ما ينفعنا ونفعنا بما علمتنا وهب لنا من لدنك ولياً مرشدا

كلما أدبني الدهر أراني نقص عقلي ... وإذا ما زدت علماً زادني علماً بجهلي

أخوكم في الله أبو المجد

هيا نتعلم بعض المبادء لنطرق باب الإحتراف ************** جديد الدروس ( Application Domains and Assemblies)

التوقيت في دمشق:

<embed src="http://www.clocklink.com/clocks/0006-Gray.swf?TimeZone=R1T" width="200" height="240" wmode="transparent" type="application/x-shockwave-flash">

هذا الموضوع مغلق.