نظام العد الثنائي

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

نظام العد الذي نستخدمه في حياتنا اليومية يسمى نظام العد العشري، نقوم فيه بترتيب الأرقام بجانب بعضها البعض وتكون الأرقام عبارة عن 0 و 1 و .. و 9، والرقم الأول يحدد قيمة الآحاد والثاني يحدد قيمة العشرات فالمئات، في كل مربع نقوم بوضع قيمة ما نضربها في قيمة الخانة ونجمع الناتج لنحصل على الرقم النهائي فمثلا 365 يتم حسابه كالآتي :

العدد = 1 × 5 + 10 × 6 + 100 × 5

الأمر لا يختلف كثيرا في نظام العد الثنائي، إلا أنك لا تستخدم إلا الرقمان 0 و 1 لتحديد قيمة كل خانة، وقيمة كل خانة تختلف في تسلسلها عن قيم الخانات في نظام العد الستعشري، فهي تكون عبارة عن 1 ثم 2 ثم 4 ثم 8 وهكذا في كل مرة تضرب الرقم 2 في العدد الأخير لتحصل على العدد التالي، في المثال السابق كان العدد الذي أخذناه هو 365 أما نظيره في نظام العد الثنائي فهو 101101101 دعنا نتحقق من ذلك :

العدد = 1 × 1 + 2 × 0 + 4 × 1 + 8 × 1 + 16 × 0 + 32 × 1 + 64 × 1 + 128 × 0 + 256 × 1
= 1 + 4 + 8 + 32 + 64 + 256
= 365

يقوم الكمبيوتر بجميع عملياته باستخدام نظام العد الثنائي، لأنه يعطي كل خانة أحد قيمتين فقط إما 0 أو 1 وذلك عن طريق التمييز بين عمليتين فيزيائيتين تحدثان داخل الكمبيوتر هما توصيل التيار ( 1 ) وقطع التيار ( 0 )، وفي الأقراص الصلبة تخزن المعلومات في صورة مغناطيسات صغيرة منتشرة عى سطح من مادة خاصة ( فيرومغناطيسية ) وهي تميز أيضا بين حالتين فقط الأولى عندما يكون اتجاه قطب المغناطيس الصغير الموجب إلى الأعلى، والحالة الثانية هي الحالة المعاكسة، لهذا السبب فإن الكمبيوتر لا بد له من استخدام نظام العد الثنائي.

تخزين البيانات
في الأعداد العشرية إذا قلنا أننا نستطيع كتابة 5 خانات فهذا يعني أننا نستطيع كتابة الأرقام من 0 إلى 99999 أي تفسير ذلك أننا نستطيع ترتيب الأرقام من 0 إلى 9 ( عشرة أرقام ) في خمس خانات فذلك يعني أننا نستطيع تغيير الأرقام وترتيبها للحصول على العديد الإحتمالات، عدد هذا الإحتمالات هو 10 × 10 × 10 × 10 × 10 لأن كل خانة تحتمل 10 احتمالات، وكل احتمال منها يحتمل عشر احتمالات معه في الخانة المجاورة وهكذا حتى الخانة الأخيرة، وهذا يعني أننا نمتلك عدد من الاحتمالات يساوي 10 أس 5 أي عدد الأرقام في كل خانة أس عدد الخانات، ويكون الناتج هو 100000 احتمال كل منها يعبر عن رقم وهذه الأرقام تبدأ من 0 إلى 99999.

الأمر ينطبق هنا أيضا على الأعداد الثنائية، فإذا قلنا أن عدد الخانات هو 5 فإن عدد الإحتمالات الكلية = عدد الإحتمالات في كل خانة أس عدد الخانات = 2 أس 5 = 32 وهي 32 احتمال تعبر عن الأرقام من 0 إلى 31، ويسمى عدد الخانات بطول الرقم، فالمتغيرة أو العداد أو أي شيء طوله 5 يعني أنه يتكون من 5 خانات ثنائية.

وقد تم الإتفاق على أن كل خانة تسمى ( بت ) وكل 8 خانات ( 8 بتات ) تسمى بايت، والبايت الواحد عبارة عن خانة كبيرة عدد احتمالاتها هو 2 أس 8 = 256 أي أنها تأخذ الأرقام من 0 إلى 255، وقد تم الإتفاق على أن يتم إعطاء كل رقم وحرف ورمز قيمة مقابلة بين الرقمين 0 و 255، حسب ما يسمى بصفحة المحارف، أشهر صفحات المحارف الإنجليزية هي صفحة الأسكي ASCII والأنسي ANSI، ولكن هذا العدد من الخانات في جدول الأسكي سرعان ما يمتلأ بالحروف والأرقام، فلا يبقى أماكن شاغرة فيه للرموز الإضافية كالرموز العربية ورموز اللغات الأخرى، وهنا قامت كل لغة بعمل صفحة محارف خاصة بها، وقامت عدة هيئات عربية بإنشاء صفحات محارف مختلفة منها صفحة محارف DOS العربي، وصفحة محارف صخر إلا أن أكثرها انتشارا هي صفحة محارف windows العربية ورمزها windows-1256 وهنالك أيضا صفحة محارف ISO العربية، وبعد ظهور انترنت أصبح أمر صفحات المحارف المختلفة مربكا جدا، وسبب العديد من المشاكل، فمثلا إذا فتحت صفحة ما مكتوبة على أساس صفحة محارف عربية وفتحتها في متصفح صيني فسوف تظهر الرموز الصينية لأن الرقم 23 فرضا يشير إلى حرف أ العربي في جدول الرموز العربي، ويشير إلى الحرف ! في جدول الرموز الصيني، فتحدث التضاربات، والمشكلة الأكبر هي اختلاف صفحات المحارف للغة الواحدة كما في اللغة العربية، ولحل هذه المشكلة تم عمل هيئة لتوحيد صفحات محارف العالم في صفحة محارف وحيدة وضخمة بحيث تسع جميع الحروف والرموز المستخدمة في العالم، وبالتالي لن تحصل التضاربات لأن لكل حرف رمز مختلف وتسمى صفحة المحارف هذه بصفحة محارف اليونيكود UNICODE.



الزبون × المزود

الزبون : هو الشخص العادي الذي يحصل على خدمات من الشبكة، مثلك أنت الآن تحصل على صفحات من الشبكة فأنت زبون.

المزود : هي الجهة التي تعطي الخدمات للزبائن، مثل مزود الويب التي يعطيك هذه الصفحة أو ما يسمى بمستضيف الصفحات.

البرمجة جهة الزبون
وفيها يتم كتابة برامج من قبل أي شخص، وعندما يأتي أحد الزبائن إلى الموقع يتم إرسال البرنامج إليه فينفذ البرنامج على جهاز الزبون، وقد يرسل البرنامج في صورة شفرة نصية مثل JavaScript و VBScript، أو في صورة برامج مجمعة ومصنفة مسبقا مثل ActiveX و Java Applets، وتستخدم الشفرات البرمجية في عمل الحركات والتأثيرات البسيطة في صفحات ويب، وتسمى سكريبتات Scripts ومن أمثلتها السكريبت الموجود في موقع مايكروسوفت والذي يعطيك القوائم المنسدلة وتتميز بكونها أكثر أمانا وسهولة في الإستخدام، وأما السكريبتات المجمعة مسبقا فهي تستخدم مثل البرامج الكاملة تماما وهي أقل أمانا بالنسبة للزبون لذلك فإن المتصفح يحذرك دائما ويسألك إذا كنت متأكدا من أنك تريد تشغيل البرنامج، وسبب تجميعها المسبق أنها عادة تكون برامج بذل عليها جهد لعملها لذلك فالشركات لا تريد أن يحصل أي شخص على شفرة البرنامج مجانا.

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

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

وأشهر البروتوكولات المستخدمة للعمل جهة المزود هي واجهة البوابات الشائعة Common Gateway Interface أو CGI، وهي عبارة عن صيغة متفق عليها لتبادل البيانات بين المزود والبرامج التي تنفذ على المزود، لذلك يمكن عمل هذه البرامج في أي لغة برمجة عادية بشرط أن يكون البرنامج الناتج يطابق مواصفات CGI، إلا أن أشهر لغات البرمجة استخداما لهذا الغرض هي لغة Perl وذلك لما تتميز به من سهولة عالية ومرونة وقدرة عالية على معالجة النصوص.

وتوجد أيضا لغات برمجبة أخرى مصممة خصيصا للعمل جهة المزود من بينها PHP و ASP و ColdFusion وغيرها.

المصدر: منتديات برمجة
  • Currently 112/5 Stars.
  • 1 2 3 4 5
42 تصويتات / 1794 مشاهدة
نشرت فى 25 نوفمبر 2010 بواسطة eaglesoft

ساحة النقاش

mohamed ahmed abd elmonem

eaglesoft
أهلا بك في موقعكم ايجل سوفت للبرمجة و نتمني لكم زيارة سعيدة و تصفح مفيد »

ابحث

تسجيل الدخول

عدد زيارات الموقع

13,945