قسم لغات البرمجة php java c++ جافا Visual Basic فيجوال بيسك c# Delphi دلفي API PERL HTML و TML JavaScript ASP XML Oracle اوركال MySql sql server Access

أدوات الموضوع

student
:: مهندس ::
تاريخ التسجيل: Nov 2004
الدولة: الجزائر
المشاركات: 11
نشاط [ student ]
قوة السمعة:0
قديم 19-10-2005, 08:49 PM المشاركة 1   
سؤال في البرمجة للذين لهم خبرة في الإلكترونيك Twitter FaceBook Google+



السلام عليكم
هذا التمرين منقول من الفريق العربي للبرمجة ولم أستطع فهمه وأظن أن له علاقة بالـ الإلكترونيك وبالذواكر أو IC فهل هناك أحد يفهمنا هذه الطريقة أو مع بعض التمرينات الصغيرة لفهم أكثر والله يثبت أجركم في هذا الشهر
وهل هناكدروس على هذا النوع من الرياضيات وجزاكم الله خيرا
التمرين
ماهي أفضل طريقة من أجل عد الواحدات في عدد يتكون من 32 بت؟

مثلا 10 تحتوي على واحدتين لأنها تكتب 1010 ...

الحل
x -= ((x >> 1) & 0x55555555);
x = (((x >> 2) & 0x33333333) + (x & 0x33333333));
x = (((x >> 4) + x) & 0x0f0f0f0f);
x += (x >> 8);
x += (x >> 16);
return(x & 0x0000003f);


التعديل الأخير تم بواسطة : student بتاريخ 19-10-2005 الساعة 08:53 PM
اعلانات

student
:: مهندس ::
تاريخ التسجيل: Nov 2004
الدولة: الجزائر
المشاركات: 11
نشاط [ student ]
قوة السمعة:0
قديم 20-10-2005, 10:43 AM المشاركة 2   
ha



اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

فهد المنصور
:: مؤسس موقع القرية الالكترونية ::
تاريخ التسجيل: Feb 2004
المشاركات: 11,350
نشاط [ فهد المنصور ]
قوة السمعة:315
قديم 21-10-2005, 07:24 PM المشاركة 3   
افتراضي


الجواب بأي لغة مكتوب ؟

لكي تحسب عدد الوحدات " او الارقام " التى يمكن ان تحتويها عدد معين من البايتات أستخدم هذه الطريقة

2 اس n ..

n = عدد البايتات ..
2 = يمثل النظام الرقمي ..

مثلا

نظام 4 بايت ..

2 أس 4 = 16 رقم ..

ويمكن برمجة هذه الفكرة بواسطة اي لغة برمجة ..

:can:


الصورة الرمزية حمزة أحمد
حمزة أحمد
:: عضو ذهبي ::
تاريخ التسجيل: Oct 2004
الدولة: أرض الكنانة
المشاركات: 282
نشاط [ حمزة أحمد ]
قوة السمعة:91
قديم 21-10-2005, 11:52 PM المشاركة 4   
افتراضي


السلام عليكم
ممكن تضع لي رابط الموضوع حتي استطيع ان اشرحة لك


student
:: مهندس ::
تاريخ التسجيل: Nov 2004
الدولة: الجزائر
المشاركات: 11
نشاط [ student ]
قوة السمعة:0
قديم 23-10-2005, 01:45 PM المشاركة 5   
افتراضي


جزاك الله خيرا أخي Fahad على الرد ولكني أعرف لغة الحساب المشكل وهو أني لا أعرف كيف أصبح بهذا الشكل وهو مكتوب بلغة السي ++
& 0x55555555

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 03:58 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025