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

  • تقريب أعداد عشرية في Python

    عندما تقوم بعمليات حسابية في Python باستخدام الأعداد العشرية (الأعداد ذات الأعشار)، قد تواجه أحيانًا مشكلة في الدقة العددية، وهذا ما تظهره النتيجة التي حصلت عليها. لفهم هذا الأمر بشكل أفضل، دعني أشرح لك بعض الأسباب وراء هذا السلوك الغريب.

    في لغة Python (وفي العديد من لغات البرمجة الأخرى أيضًا)، يتم تمثيل الأعداد العشرية باستخدام تقريب بنيوي (binary approximation)، حيث يتم تخزين الأعداد العشرية بنظام العد الثنائي (binary) بدلاً من النظام العشري (decimal). ونتيجة لهذا التمثيل، قد تحدث بعض التقريبات التي قد تؤدي إلى فقدان الدقة في النتائج.

    عند قيامك بالعملية التي ذكرتها:

    165.0 + 1.45 + 0.45

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

    في النهاية، تظهر النتيجة 166.89999999999998 بدلاً من 166.9 بسبب عمليات التقريب التي تحدث داخل الحاسوب عند العمليات الحسابية على الأعداد العشرية. هذا يعني أنه في بعض الحالات، قد تحتاج إلى استخدام دوال مثل round() لتقريب النتائج إلى القيمة المطلوبة بدقة.

    المزيد من المعلومات

    بالتأكيد، دعني أضيف بعض المعلومات الإضافية لفهم أعمق لهذه الظاهرة.

    1. تمثيل الأعداد العشرية في النظام الثنائي (Binary Representation): في الحواسيب، يتم تمثيل الأعداد العشرية باستخدام النظام الثنائي، حيث يتم تقسيم الجزء الصحيح والجزء العشري للعدد وتمثيلهما باستخدام أنظمة تمثيل ثنائية.

    2. تقريب الأعداد العشرية (Floating Point Approximation): نظرًا لأن الأعداد العشرية غير القابلة للتمثيل بدقة مطلقة في النظام الثنائي، يتم تمثيلها باستخدام تقريبات ثنائية، مما قد يؤدي إلى فقدان الدقة في النتائج.

    3. معدل الخطأ الناتج عن التقريب (Floating Point Error): تعتمد دقة النتائج على عدة عوامل، بما في ذلك عدد الأرقام الثنائية المستخدمة لتمثيل الأعداد العشرية ونوع التقريب المستخدم. يمكن أن ينتج عن هذا ما يُعرف بخطأ النقل (truncation error) وخطأ التقريب (rounding error).

    4. دقة المعالج (Processor Precision): يعتمد سلوك العمليات الحسابية على دقة المعالج (processor precision) وعلى تنفيذه لعمليات الحساب الثنائي بشكل دقيق.

    5. تأثير العمليات الحسابية المتتالية: قد تؤدي العمليات الحسابية المتتالية إلى تراكم الأخطاء الناتجة عن التقريب، مما يزيد من احتمالية حدوث الفجوة بين القيمة المتوقعة والقيمة الفعلية.

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

  • كيف يمكن تمثيل الأرقام العشرية والثنائية باستخدام ASCII Code؟

    كيف يمكن تمثيل الأرقام العشرية والثنائية باستخدام ASCII Code؟

    يمكن تمثيل الأرقام العشرية والثنائية باستخدام ASCII Code عن طريق تحويلها إلى قيم رقمية تمثل الحروف والأرقام. إليك كيفية تمثيلها:

    1. تمثيل الأرقام العشرية:
    • يتم تمثيل الأرقام العشرية باستخدام مجموعة من الأحرف الرقمية من 0 إلى 9. في ASCII Code, يتم تعيين القيم الرقمية لهذه الأحرف بشكل متسلسل من 48 للصفر (0) إلى 57 للتسعة (9). على سبيل المثال, حرف “0” يتم تمثيله بقيمة 48 وحرف “9” يتم تمثيله بقيمة 57.
    1. تمثيل الأرقام الثنائية:
    • يمكن تمثيل الأرقام الثنائية باستخدام الأرقام الثنائية من 0 و 1. في ASCII Code, يتم تعيين القيم الرقمية لهذين الحرفين بشكل متسلسل من 48 للصفر (0) إلى 49 للواحد (1). على سبيل المثال, حرف “0” يتم تمثيله بقيمة 48 وحرف “1” يتم تمثيله بقيمة 49.

    لتمثيل الأرقام العشرية أو الثنائية باستخدام ASCII Code, يمكن ببساطة استخدام الأحرف الرقمية المعتمدة في النظام الثنائي والعشري وتحويلها إلى قيم ASCII Code المقابلة.

  • كيف يتم تمثيل ASCII Code للحروف الكبيرة والصغيرة؟

    كيف يتم تمثيل ASCII Code للحروف الكبيرة والصغيرة؟

    في ASCII Code, تتم تمثيل الحروف الكبيرة والصغيرة باستخدام قيم رقمية مختلفة. تختلف القيم الرقمية للحروف الكبيرة عن الصغيرة بقيمة ثابتة. عندما يتم تمثيل الحرف بالشكل الرقمي, يتم استخدام النظام الثنائي (بايتات) لتخزين هذه القيم.

    للحروف الكبيرة:

    • يبدأ تمثيل الحروف الكبيرة من A (أول حرف كبير) بالقيمة الرقمية 65 في النظام العشري.
    • ويستمر التمثيل للحروف الكبيرة حتى Z (آخر حرف كبير) بالقيمة الرقمية 90 في النظام العشري.

    للحروف الصغيرة:

    • يبدأ تمثيل الحروف الصغيرة من a (أول حرف صغير) بالقيمة الرقمية 97 في النظام العشري.
    • ويستمر التمثيل للحروف الصغيرة حتى z (آخر حرف صغير) بالقيمة الرقمية 122 في النظام العشري.

    هكذا, يمكن التفريق بين الحروف الكبيرة والصغيرة في ASCII Code عن طريق قيم رقمية مختلفة, مما يسمح للكمبيوتر بفهم وعرض الحروف بالشكل الصحيح بناءً على هذه القيم.

  • أنظمة الأعداد في الحاسوب

    أنظمة الأعداد في الحاسوب

    أنظمة العد هي طريقة تستخدم في الحوسبة لتمثيل الأعداد. توجد عدة أنظمة للعد في الحاسوب، ومن أهمها:

    1. النظام العشري: يعتمد على الأعداد من 0 إلى 9، ويستخدم في العديد من التطبيقات الحاسوبية.
    2. النظام الثنائي (البايناري): يعتمد على الأعداد 0 و 1 فقط، ويستخدم في الحوسبة الرقمية.
    3. النظام الثماني (الأوكتالي): يعتمد على الأعداد من 0 إلى 7، ويستخدم في بعض التطبيقات الحاسوبية.
    4. النظام السداسي عشري (الهكساديسيمالي): يعتمد على الأعداد من 0 إلى 9 والأحرف من A إلى F، ويستخدم في تمثيل الألوان وعناوين الذاكرة والتطبيقات الأخرى.

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

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

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

  • ماهو النظام العددي الثنائي Binary Numeral System

    النظام الثنائي أو النظام العددي الثنائي، (بالإنجليزية: Binary Numeral System)، تمت تسمية النظام العددي الثنائي بهذا الاسم لأنه يستخدم رمزين لتمثيل الأعداد وهُم الرمز 0 والرمز ، وأحياناً يُسمى نظام العد ذو رقم الأساس إثنين (Base 2)، وذلك لأن النظام الثنائي يستخدم نظام الأساس 2، ويُسمى كل رمز من الرموز المستخدمة في تمثيل العدد الثنائي ب (بت  bit)، فعلى سبيل المثال الرقم 2 مُقابله ف نظام العد الثنائي هو (10110100) وهو رقم مكون من ثمانية رموز، وبالتالي يُصبح “8 بت” أو كما تُكتب بالإنجليزية 8bit، عند قراءة أي رقم في نظام العد الثنائي فإننا نقوم بقراءة كل رمو منفرداً، فعلى سبيل المثال الرقم 2 (100) يُقرأ “واحد صفر صفر” أو يُقرأ من اليمين “صفر صفر واحد”، ولا يُقرأ مئة.


    🔹 مالفائدة من تعلم نظام العد الثنائي؟

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

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

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