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

من فضلكم أريد مساعدتكم؟

مغلق
بدأه hatem في 26 أكتوبر 2005 · 2 رد · 587 مشاهدة · في هندسة البرمجيات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

بعد قرائتي لسلسلة رقم 3 من سلسلة شخل مخك أردت أن أفهم شيء واحد وهو بأي طريقة أو بأي علم تم كتابة الكود بهذا الشكل

x = (x & 0x55555555) + ((x & 0xaaaaaaaa) >> 1);

x = (x & 0x33333333) + ((x & 0xcccccccc) >> 2);

x = (x & 0x0f0f0f0f) + ((x & 0xf0f0f0f0) >> 4);

x = (x & 0x00ff00ff) + ((x & 0xff00ff00) >> 8);

x = (x & 0x0000ffff) + ((x & 0xffff0000) >> 16);

return(x);

حيث كتبت البرمجة بأرقام النظام السادس عشر وعلى ما أعتقد لها علاقة بالذاكرة أو شي من هذا القبيل هل هناك من يشرح لي كيف تمت العملية مع مثال بسيط أوهل هناك موقع قد يفيدوني وجزاكم الله خيرا

#2

هذا المثال معقد نوعاً منا يجب عليك ان تدرس منطق (logic) لكيى تفهم ما يحدث,,

علامة & تعنى AND وهى التى تقوم بعملية AND المنطقية

علامة << تعنى إزاحة لليسار وهى التى تقوم بعمل إزاحة للمتغير بحسب العدد الذى يتبعها

مثلاً الرقم 10101010 إذا قمنا بعملة إزاحة بالعدد 2 تصبح 00101010 الرقمين فى بداية العدد اصبح صفر والرقمين فى نهاية العدد اختفو وهاكذا ...

راجع الروابط التالية لمعرفة المزيد

http://webster.cs.ucr.edu/AoA/DOS/ch02/CH0...html#HEADING1-8

http://webster.cs.ucr.edu/AoA/DOS/ch02/CH0...tml#HEADING1-55

فى الواقع يمكنك قرائة الفصل الاول والثانى من كتاب AoA لانه يحتوى على معلومات هامة جداً

http://webster.cs.ucr.edu/AoA/DOS/AoADosIndex.html

والسلام عليكم

لا إله إلا الله محمد رسول الله

busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.

#3

السلام عليكم

جزاك الله خيرا أخي أحمد على المساعدة أرجو أن تتحملني قليلا لقد درست منذ سنتين تقريبا في مدرسة خاصة كتقني سامي في الإعلام الآلي وقد تطرقنا إلى الجبر البولي ومنها البوبات المنطيقة ولكن ليس بشكل معمق المهم عرفن كيف تسير الأمور وكذلك درست البرمجة باللغة البسكال وذلك لتطبيق الخوارزميات وكليبر أي تحت بيئة الدوس ولكن الشيء الذي لم أفهمه هو كيفة تمن البرمجة بهذا الشكل على حسب ما أره كأنه عبارة على برنامج لذاكرة أو شيء من هذا القبيل إن لم يكن هناك حرج أريد مثال بسيط على كيفية سير هذه البرمجة وإن شاء الله سأفهمه .

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

مواضيع مشابهة