2
من العشري إلى الثنائي بالقسمة على ٢
ICT Secondary 3 Term 1, Unit 1, Topic 1: pp. 14–17
الهدفحوّل عددًا عشريًّا إلى ثنائي بالقسمة المتكررة على ٢.
كلمات جديدة
خارج القسمة · ناتج القسمة الصحيحالباقي · ما يتبقى بعد القسمة؛ وعند القسمة على ٢ يكون ٠ أو ١القسمة المتكررة · قسمة كل خارج جديد على ٢ من جديد حتى يصير الخارج ٠
الشرح
لكتابة عدد عشري بالنظام الثنائي نقسمه على ٢ ونكتب الخارج والباقي (٠ أو ١). ثم نقسم الخارج على ٢، ونستمر حتى يصير الخارج ٠. البواقي هي خانات الجواب، لكنها تخرج بترتيب معكوس: فأول باقٍ ينتمي إلى الخانة التي قيمتها ١، أي إنه آخر خانة على اليمين. لذلك نقرأ البواقي من آخرها إلى أولها، أي من أسفل الجدول إلى أعلاه. في الجدول يعطي العدد ٤٥ البواقي 1 ، 0 ، 1 ، 1 ، 0 ، 1 من أعلى إلى أسفل، فيكون (45)₁₀ = (101101)₂. وللتحقق: 32 + 8 + 4 + 1 = 45.
| القسمة | الخارج | الباقي |
|---|---|---|
| 45 ÷ 2 | 22 | 1 |
| 22 ÷ 2 | 11 | 0 |
| 11 ÷ 2 | 5 | 1 |
| 5 ÷ 2 | 2 | 1 |
| 2 ÷ 2 | 1 | 0 |
| 1 ÷ 2 | 0 | 1 |
أمثلة محلولة
| القسمة | الخارج | الباقي |
|---|---|---|
| 29 ÷ 2 | 14 | 1 |
| 14 ÷ 2 | 7 | 0 |
| 7 ÷ 2 | 3 | 1 |
| 3 ÷ 2 | 1 | 1 |
| 1 ÷ 2 | 0 | 1 |
Php
1<?php 2$n = 29; 3$bits = ""; 4while ($n > 0) { 5 $bits = ($n % 2) . $bits; 6 $n = intdiv($n, 2); 7} 8echo $bits;
Output
11101
نشاط الفصل
اختر ثلاثة أعداد عشرية بين ١٠ و٥٠. حوّل كلًّا منها إلى ثنائي بالقسمة المتكررة على ٢ وارسم الجدول على الورق. ثم حوّل كل جواب إلى عشري بقيم الخانات للتحقق منه.
تدرّب
1
حوّل العدد ١٣ إلى ثنائي.
13 ÷ 2 = 6 والباقي 1؛ 6 ÷ 2 = 3 والباقي 0؛ 3 ÷ 2 = 1 والباقي 1؛ 1 ÷ 2 = 0 والباقي 1. نقرأ من آخر باقٍ: 1101.
2
حوّل العدد ٤٠ إلى ثنائي.
البواقي من أعلى إلى أسفل: 0 ، 0 ، 0 ، 1 ، 0 ، 1، فالجواب 101000 (32 + 8 = 40).
3
لماذا نتوقف عن القسمة حين يصير الخارج ٠؟
لأنه لم يبقَ شيء نقسمه: فقد وجدنا قيم خانات العدد كلها.
4
أعطت القسمة المتكررة على ٢ البواقي 0 ، 1 ، 1 بهذا الترتيب. ما العدد الثنائي؟
نقرأ من الأخير إلى الأول: 110.