Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr.

Murtada El-Mukashfi El-Taher‬‬


‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻤدﺨل ‪:‬‬
‫ﻴﺘﻌﺎﻤل اﻝﺤﺎﺴوب ﻤﻊ اﻝﺒﻴﺎﻨﺎت وﻫﻲ ﻓﻲ ﺼورة رﻗﻤﻴﺔ ﺜﻨﺎﺌﻴﺔ )‪ ،(Binary‬أي ﻓﻲ ﺼورة ﻤﺠﻤوﻋﺔ ﻤن )‪.(0,1‬‬
‫ﺤﻴث ﻴﺘم ﺘﻤﺜﻴل اﻝﻘﻴﻤﺔ اﻝﻤﻨطﻘﻴﺔ ‪ 0‬ﺒﻤﺴﺘوى ﺠﻬد ﻤﻌﻴن داﺨل اﻝدواﺌر اﻹﻝﻜﺘروﻨﻴﺔ ﻝﻠﻨظﺎم اﻝرﻗﻤﻲ‪ ،‬و ﻴﺘم ﺘﻤﺜﻴل اﻝﻘﻴﻤﺔ‬
‫اﻝﻤﻨطﻘﻴﺔ ‪ 1‬ﺒﻤﺴﺘوى ﺠﻬد آﺨر‪.‬‬

‫اﻷﻋداد اﻝﺼﺤﻴﺤﺔ )‪(Integers‬‬


‫ﺘوﺠد اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ﻋﻠﻲ ﻫﻴﺌﺘﻴن ﺤﺴب طﺒﻴﻌﺔ اﻷﻋداد اﻝﺘﻲ ﻴﺘم ﺘﺨزﻴﻨﻪ وﻫﻤﺎ ‪-:‬‬
‫ أﻋداد اﻝﺼﺤﻴﺤﺔ ﺒدون إﺸﺎرة )‪ : (Unsigned Numbers‬وﻓﻴﻬﺎ ﻴﺘم ﺘﺨزﻴن اﻷﻋداد اﻝﻤوﺠﺒﺔ ﻓﻘط‪.‬‬
‫ أﻋداد اﻝﺼﺤﻴﺤﺔ ﺒﺈﺸﺎرة )‪ : ( Signed Integers‬وﻓﻴﻬﺎ ﻴﺘم ﺘﺨزﻴن اﻷﻋداد اﻝﻤوﺠﺒﺔ واﻝﺴﺎﻝﺒﺔ‪.‬‬

‫أﻨواع اﻷﻋداد اﻝﺼﺤﻴﺤﺔ‬


‫ﺘﻨﻘﺴم اﻷﻋداد اﻝﺼﺤﻴﺤﺔ إﻝﻰ ﻋدة أﻨواع ﺤﺴب اﻝﻤﺴﺎﺤﺔ اﻝﻤﺴﺘﺨدﻤﺔ ﻓﻲ ﺘﺨزﻴن اﻝﻌدد ﺴوى ﻜﺎﻨت ﺒﺈﺸﺎرة أو‬
‫ﺒدوﻨﻬﺎ وﻫﻲ ‪:‬‬
‫ ﻋدد ﺼﺤﻴﺢ ﻗﺼﻴر )‪ : (Short Integer‬طوﻝﻪ ‪ 1 Byte‬أي ‪.8 bits‬‬
‫ ﻋدد ﺼﺤﻴﺢ )‪ : ( Integer‬طوﻝﻪ ‪ 2 Byte‬أي ‪.16 bits‬‬
‫ ﻋدد ﺼﺤﻴﺢ طوﻴل )‪ :(Long Integer‬طوﻝﻪ ‪ 4 Byte‬أي ‪.32 bits‬‬

‫ﺘﻤﺜﻴل وﺘﺨزﻴن اﻷﻋداد اﻝﺼﺤﻴﺤﺔ‬


‫أوﻻً ‪ :‬ﺘﻤﺜﻴل وﺘﺨزﻴن اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ﺒدون إﺸﺎرة‬
‫ﻝﺘﻤﺜﻴل اﻝﻌدد اﻝﺼﺤﻴﺢ ﺒدون اﻹﺸﺎرة ﻨﻘوم ﺒﺘﺤوﻴل اﻝﻌدد ﻤن اﻝﺼورة اﻝﻌﺸرﻴﺔ )‪ (Decimal‬إﻝﻰ اﻝﺼورة‬
‫اﻝﺜﻨﺎﺌﻴﺔ )‪ .(Binary‬وذﻝك ﻋن طرﻴق اﻝﻘﺴﻤﺔ اﻝﻤﺘﻜررة ﻋﻠﻰ ‪ 2‬واﻻﺤﺘﻔﺎظ ﺒﺒﺎﻗﻲ اﻝﻘﺴﻤﺔ‪.‬‬
‫ﻤﺜﺎل ‪ -:‬اﻝﻌدد اﻝﺼﺤﻴﺢ اﻝﻌﺸري ‪ 135‬ﻴﻜﺎﻓﺊ اﻝﻌـ ـ ـ ـ ـ ـ ـ ـ ـ ـدد اﻝﺜﻨﺎﺌﻲ ‪ ،10000111‬وﻴﻜﺘب ذﻝك رﻴﺎﻀﻴﺎً ﻓﻲ اﻝﺼـ ـ ـ ـ ـ ـ ــورة‬
‫‪ .135ଵ଴ = 10000111ଶ‬وﻝﻠﺘﺤﻘق ﻤن ذﻝك ﻴﻤﻜن أن ﻨﻘوم ﺒﺎﻝﻌﻤﻠﻴﺔ اﻝﻌﻜﺴﻴﺔ‪ ،‬أي ﺘﺤوﻴل اﻝﻌدد اﻝﺜﻨﺎﺌﻲ إﻝﻰ اﻝﺼورة‬
‫اﻝﻌﺸرﻴﺔ‪.‬‬
‫ﺘﺴﻤﻰ اﻝﺨﺎﻨﺔ اﻝواﻗﻌﺔ ﻓﻲ أﻗﺼﻰ ﻴﻤﻴن اﻝﻌدد اﻝﺜﻨﺎﺌﻲ ﺒﺎﻝﺨﺎﻨﺔ اﻝدﻨﻴﺎ ‪ ،(Least Significant Bit) LSB‬ﺒﻴﻨﻤﺎ‬
‫ﺘﺴﻤﻰ اﻝﺨﺎﻨﺔ اﻝواﻗﻌﺔ ﻓﻲ أﻗﺼﻰ اﻝﻴﺴﺎر ﺒﺎﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ‪.(Most Significant Bit) MSB‬‬
‫ﻝﺘﺨزﻴن اﻝﻌدد اﻝﺼﺤﻴﺢ ﻨﻘوم ﺒوﻀﻊ اﻝﺨﺎﻨﺎت ﺒﺎﻝﺘرﺘﻴب ﻓﻴﻬﺎ ﻤﺒﺘدﺌﻴن ﺒﺎﻝﺨﺎﻨﺔ اﻝدﻨﻴﺎ ‪ ،LSB‬ﻤﻊ ﻤلء أي ﺨﺎﻨﺎت‬
‫ﻓﺎﺌﻀﺔ إﻝﻰ اﻝﻴﺴﺎر ﺒﺎﻷﺼﻔﺎر‪.‬‬
‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (1Byte‬ﻓﺈن اﻝﺘﺨزﻴن ﻴﺘم ﻋﻠﻲ اﻝﺼورة اﻝﺘﺎﻝﻴﺔ ﻝﻠﻌدد اﻝﻌﺸري ‪.135‬‬

‫‪1 0 0 0 0 1 1 1‬‬

‫‪MSB‬‬ ‫‪LSB‬‬

‫‪Page‬‬ ‫‪1 of 6‬‬


‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr. Murtada El-Mukashfi El-Taher‬‬
‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (2Byte‬ﻓﺈن اﻝﺘﺨزﻴن ﻴﺘم ﻋﻠﻲ اﻝﺼورة اﻝﺘﺎﻝﻴﺔ ﻝﻠﻌدد اﻝﻌﺸري ‪.135‬‬
‫‪0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1‬‬

‫‪MSB‬‬ ‫‪LSB‬‬
‫اﻝﺠدول اﻝﺘﺎﻝﻲ ﻴوﻀﺢ أﻨواع اﻷﻋداد اﻝﺼﺤﻴﺤﺔ وطول ﻜل ﻤﻨﻬﺎ وﻤدى اﻝﻘﻴم اﻝذي ﻴﻤﻜن ﺘﺨزﻴﻨﻪ ﻓﻲ ﻜل ﻨوع ‪.‬‬

‫ﻤدى اﻝﻘﻴم‬ ‫اﻝطول‬ ‫ﻨوع اﻝﻌدد اﻝﺼﺤﻴﺢ‬


‫)‪0 … 255 (28 -1‬‬ ‫‪1 Byte‬‬ ‫ﻋدد ﺼﺤﻴﺢ ﻗﺼﻴر‬
‫)‪0 … 65,535 (216 -1‬‬ ‫‪2 Bytes‬‬ ‫ﻋدد ﺼﺤﻴﺢ‬
‫‪0 … 4,294,967,295 (232 -1) 4 Bytes‬‬ ‫ﻋدد ﺼﺤﻴﺢ طوﻴل‬
‫)‪0 … (2N -1‬‬ ‫‪N bits‬‬ ‫ـــ‬

‫ﺜﺎﻨﻴﺎً ‪ :‬ﺘﻤﺜﻴل وﺘﺨزﻴن اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ذات اﻹﺸﺎرة‬


‫ﻝﺘﻤﺜﻴل اﻷﻋداد اﻝﺴﺎﻝﺒﺔ ﻴﺘم ﺤﺠز واﺤد ﺒت ﻝﺘﻤﺜﻴل إﺸﺎرة اﻝﻌدد‪ ،‬وﻋﺎدة ﻤﺎ ﺘﻜون ﻫذﻩ اﻝﺨﺎﻨﺔ ﻫﻲ اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ‬
‫‪ ،MSB‬و ﻴﺘم ﺘﺨزﻴن ﻤﻘدار اﻝﻌدد ﻓﻲ ﺒﻘﻴﺔ اﻝﺨﺎﻨﺎت‪ .‬ﺤﻴث ﻨﺴﺘﺨدم اﻝﻘﻴﻤﺔ ‪ 0‬ﻝﺘﻤﺜﻴل اﻹﺸﺎرة اﻝﻤوﺠﺒﺔ‪ ،‬ﻓﻲ ﺤﻴن ﺘﺴﺘﺨدم‬
‫اﻝﻘﻴﻤﺔ ‪ 1‬ﻝﺘﻤﺜﻴل اﻹﺸﺎرة اﻝﺴﺎﻝﺒﺔ‪.‬‬
‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (1Byte‬ﻗم ﺒﺘﺨزﻴن اﻝﻌدد ‪. +27‬‬
‫اﻝﺤل‪-:‬‬
‫اﻝﺨطــوة اﻷوﻝــﻲ‪ :‬ﻨﺘﺠـ ـ ـﺎﻫل إﺸـ ـ ـ ـ ـ ـﺎرة اﻝﻘﻴﻤـ ـﺔ وﻨﻘــوم ﺒﺘﺤ ـ ـ ـوﻴل اﻝﻤﻘــدار ﻤــن اﻝﺼــورة اﻝﻌﺸ ـرﻴﺔ إﻝــﻰ اﻝﺼــورة اﻝﺜﻨﺎﺌﻴــﺔ‪ .‬ﺤﻴــث أن‬
‫‪.27ଵ଴ = 11011ଶ‬‬
‫اﻝﺨطــوة اﻝﺜﺎﻨﻴــﺔ‪ :‬ﻨﻘــوم ﺒﺘﺨـزﻴن ﻤﻘــدار اﻝﻌــدد اﻝﺼــﺤﻴﺢ ذي اﻹﺸــﺎرة ﻓــﻲ اﻝﻤﺴــﺎﺤﺔ اﻝﻤﺘﺎﺤــﺔ ﻝــﻪ ﺒــﻨﻔس طرﻴﻘــﺔ ﺘﺨـزﻴن اﻷﻋــداد‬
‫اﻝﺼﺤﻴﺤﺔ ﺒدون إﺸﺎرة ﻤﻊ اﺴﺘﺒﻌﺎد اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ‪.‬‬
‫‪0 0 1 1 0 1 1‬‬
‫اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ‪ :‬ﻨﻀﻊ ‪ 0‬ﻓﻲ ﺨﺎﻨﺔ اﻹﺸﺎرة )اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ( ﻷن اﻝﻘﻴﻤﺔ ﻤوﺠﺒﺔ‪.‬‬
‫‪0 0 0 1 1 0 1 1‬‬

‫اﻻﺸﺎرة‬
‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (1Byte‬ﻗم ﺒﺘﺨزﻴن اﻝﻌدد ‪. -27‬‬
‫اﻝﺤل‪-:‬‬
‫ﻝﺘﻤﺜﻴل ‪ -27‬ﻨﺘﺒﻊ ﻨﻔس اﻝﺨطوات اﻝﺴﺎﺒﻘﺔ ﻤﻊ وﻀﻊ ﺘﻤﺜﻴل اﺸﺎرة اﻝﻌدد اﻝﺴﺎﻝب ﻓﻲ اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ﻋﻨد اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ‪.‬‬

‫‪1 0 0 1 1 0 1 1‬‬

‫اﻻﺸﺎرة‬
‫‪Page‬‬ ‫‪2 of 6‬‬
‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr. Murtada El-Mukashfi El-Taher‬‬
‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻓﻲ ﻫذا اﻝﻨوع ﻤن ﺘﻤﺜﻴل اﻷﻋداد اﻝﺼ ـﺤﻴﺤﺔ ذات اﻹﺸــﺎرة ﻴــﺘم ﺘﻤـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـ ـﺜﻴل اﻝﺼﻔ ـ ـ ـ ـ ـر ﺒﺘﻤﺜﻠﻴــﻴن ﻤﺨﺘﻠﻔــﻴن ﻫﻤـ ـ ـﺎ‬
‫)‪ (+0 = 00000000‬و )‪ ( -0 = 10000000‬وﻫﻤﺎ ﻓﻲ اﻝواﻗﻊ ﻤﺘﺸﺎﺒﻬﻴن‪ .‬ووﺠود ﺸﻜﻠﻴن ﻝﻠﺼﻔر ﻴﻌﻨﻲ أن ﻫــذﻩ اﻝﻌﻤﻠﻴــﺔ‬
‫ﻴﺠب إﺠراؤﻫﺎ ﻤرﺘﻴن‪ ،‬ﻤﻤﺎ ﻴﻘﻠل ﻜﺜﻴـ اًر ﻤــن ﻜﻔــﺎءة اﻝﻨظــﺎم اﻝرﻗﻤــﻲ‪ .‬وﻝﺤــل ﻫــذﻩ اﻝﻤﺸــﻜل ﻴــﺘم اﺴــﺘﺨدام ﻤﻜﻤــل اﻝﺜﻨﺎﺌﻴــﺎت ﻝﺘﻤﺜﻴــل‬
‫اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ذات اﻹﺸﺎرة‪.‬‬

‫اﺴﺘﺨدام ﻤﻜﻤل اﻝﺜﻨﺎﺌﻴﺎت ﻝﺘﻤﺜﻴل وﺘﺨزﻴن اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ذات اﻹﺸﺎرة‬


‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (1Byte‬ﻗم ﺒﺘﺨزﻴن اﻝﻌدد ‪ +27‬ﻤﺴﺘﺨدﻤﺎً ﻤﻜﻤل اﻝﺜﻨﺎﺌﻴﺎت‪.‬‬
‫اﻝﺨطــوة اﻷوﻝــﻲ‪ :‬ﻨﺘﺠﺎﻫــل إﺸــﺎرة اﻝﻘﻴﻤــﺔ وﻨﻘــوم ﺒﺘﺤوﻴــل اﻝﻤﻘــدار ﻤــن اﻝﺼ ـ ـ ـ ـ ـ ـ ــورة اﻝﻌﺸـرﻴﺔ إﻝــﻰ اﻝﺼـ ـ ـ ــورة اﻝﺜﻨﺎﺌﻴــﺔ‪ .‬ﺤﻴــث أن‬
‫‪.27ଵ଴ = 11011ଶ‬‬
‫اﻝﺨطوة اﻝﺜﺎﻨﻴﺔ‪ :‬ﻨﻘوم ﺒﺘﺨزﻴن ﻤﻘدار اﻝﻌدد اﻝﺼﺤﻴﺢ ذي اﻹﺸﺎرة ﻓﻲ اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ‪ .‬ﻤﻊ إﻜﻤﺎل طــول اﻝﻌــدد اﻝﺜﻨــﺎﺌﻲ إﻝــﻰ‬
‫‪ 8‬ﺨﺎﻨﺎت وذﻝك ﺒﺈﻀﺎﻓﺔ أﺼﻔﺎر إﻝﻰ ﻴﺴﺎر اﻝﻌدد ‪.27ଵ଴ = 00011011ଶ‬‬
‫اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ‪ :‬أﺨﻴ اًر ﻨﻘوم ﺒوﻀﻊ اﻝﻌدد اﻝﺜﻨﺎﺌﻲ ﻓﻲ اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ ﻝﻪ‬
‫‪0 0 0 1 1 0 1 1‬‬

‫اﻻﺸﺎرة‬

‫ﻤﺜﺎل ‪ -:‬إذا ﻜﺎﻨت اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ )‪ (1Byte‬ﻗم ﺒﺘﺨزﻴن اﻝﻌدد ‪ -27‬ﻤﺴﺘﺨدﻤﺎً ﻤﻜﻤل اﻝﺜﻨﺎﺌﻴﺎت‪.‬‬
‫اﻝﺨطوة اﻷوﻝﻲ‪ :‬ﻨﺘﺠﺎﻫل إﺸﺎرة اﻝﻘﻴﻤﺔ وﻨﻘوم ﺒﺘﺤوﻴل اﻝﻤﻘدار ﻤن اﻝﺼورة اﻝﻌﺸرﻴﺔ إﻝﻰ اﻝﺼورة اﻝﺜﻨﺎﺌﻴﺔ‪.‬‬
‫‪.27ଵ଴ = 11011ଶ‬‬
‫اﻝﺨطوة اﻝﺜﺎﻨﻴﺔ‪ :‬ﻨﻘوم ﺒﺘﺨزﻴن ﻤﻘدار اﻝﻌدد اﻝﺼﺤﻴﺢ ذي اﻹﺸﺎرة ﻓﻲ اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ‪ .‬ﻤﻊ إﻜﻤﺎل طــول اﻝﻌــدد اﻝﺜﻨــﺎﺌﻲ إﻝــﻰ‬
‫‪ 8‬ﺨﺎﻨﺎت وذﻝك ﺒﺈﻀﺎﻓﺔ أﺼﻔﺎر إﻝﻰ ﻴﺴﺎر اﻝﻌدد‪.‬‬
‫‪.27ଵ଴ = 00011011ଶ‬‬
‫اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ‪ :‬إﻴﺠﺎد اﻝﻤﻜﻤل اﻷﺤﺎدي وذﻝك ﺒﻌﻜس ﺜﻨﺎﺌﻴﺎت اﻝﻌدد اﻝﺜﻨﺎﺌﻲ ﻓﻲ اﻝﺨطوة اﻝﺴﺎﺒﻘﺔ‪.‬‬
‫‪11100100‬‬
‫اﻝﺨطوة اﻝراﺒﻌﺔ‪ :‬إﻴﺠﺎد ﻤﻜﻤل اﻝﺜﺎﻨﻲ وذﻝك ب إﻀﺎﻓﺔ ‪ 1‬ﻝﻠﻤﻜﻤل اﻷول‪.‬‬
‫‪1 1 1 0 0 1 0 0‬‬
‫‪1 +‬‬
‫= ‪1 1 1 0 0 1 0 1‬‬
‫اﻝﺨطوة اﻝﺨﺎﻤﺴﺔ‪ :‬أﺨﻴ اًر ﻨﻘوم ﺒوﻀﻊ اﻝﻌدد اﻝﺜﻨﺎﺌﻲ ﻓﻲ اﻝﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ ﻝﻪ‬
‫‪1 1 1 0 0 1 0 1‬‬

‫اﻻﺸﺎرة‬ ‫ﻤﻠﺤوظﺔ ‪-:‬‬

‫ اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ﺘﻤﺜل إﺸﺎرة اﻝﻌدد‪ ،‬ﻓـ ‪ MSB=0‬ﻝﻠﻘﻴﻤﺔ اﻝﻤوﺠﺒﺔ ‪ +27‬و ‪ MSB=1‬ﻝﻠﻘﻴﻤﺔ اﻝﺴﺎﻝﺒﺔ ‪.-27‬‬
‫ اﻝﻤﻜﻤل اﻝﺜﻨﺎﺌﻲ ﻝﻌدد ﺜﻨﺎﺌﻲ ﻴﻤﺜل ﺴﺎﻝب ذﻝك اﻝﻌدد‪.‬‬

‫‪Page‬‬ ‫‪3 of 6‬‬


‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr. Murtada El-Mukashfi El-Taher‬‬
‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻤﺜﺎل ‪ -:‬أوﺠد اﻝﻘﻴﻤﺔ اﻝﻌﺸرﻴﺔ ﻝﻠﻌدد اﻝﺜﻨﺎﺌﻲ ‪ 11100101‬إذا ﻜﺎن ﻴﻤﺜل ﻋدد ﺼﺤﻴﺢ ﻗﺼﻴر ﺒﺈﺸﺎرة‪.‬‬
‫اﻝﺤل ‪ -:‬ﺒﻤﺎ أن ‪ MSB=1‬ﻓﺈن اﻝﻌدد ﺴﺎﻝب‪ .‬وﻋﻠﻴﻪ ﻨﻘــوم ﺒﺈﻴﺠــﺎد اﻝﻤﻜﻤــل اﻝﺜﻨــﺎﺌﻲ )ﺴــﺎﻝب اﻝﻌــدد اﻝﺴــﺎﻝب ﻋﺒــﺎرة ﻋــن ﻋــدد‬
‫ﻤوﺠب(‬
‫‪1 1 1 0 0 1 0 1‬‬ ‫اﻝﻌدد‬

‫‪0 0 0 1 1 0 1 0‬‬ ‫اﻝﻤﻜﻤل اﻷﺤﺎدي‬


‫‪1 +‬‬
‫‪0 0 0 1 1 0 1 1‬‬ ‫اﻝﻤﻜﻤل اﻝﺜﻨﺎﺌﻲ‬
‫أﺨﻴ اًر ﻨﻘوم ﺒﺘﺤوﻴل اﻝﻤﻘدار ﻤن اﻝﺼورة اﻝﺜﻨﺎﺌﻴﺔ ﻝﻠﺼورة اﻝﻌﺸرﻴﺔ‪.‬‬
‫‪00011011 = 11011 = 2 +23+21+20 = 16+8+2+1 = 27‬‬
‫‪4‬‬

‫وﻋﻠﻴﻪ ﻓﺈن اﻝﻌدد ﻴﺴﺎوي ‪. -27‬‬


‫ﻤﻠﺤوظﺔ ‪:‬‬
‫ﻹﻴﺠﺎد ﻗﻴﻤﺔ ﻋدد ﺼﺤﻴﺢ ﺒﺈﺸﺎرة ﻨﻨظر إﻝﻰ اﻝﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ﻓﺈذا ﻜﺎﻨت ‪-:‬‬
‫ ‪ MSB = 0‬ﻓﺈن اﻝﻌدد ﻤوﺠب وﻋﻠﻴﻪ ﻨﺤول اﻝﻌدد اﻝﺜﻨﺎﺌﻲ إﻝﻲ ﻋﺸري‪.‬‬
‫ ‪ MSB = 1‬ﻓﺈن اﻝﻌدد ﺴﺎﻝب ﻨوﺠد اﻝﻤﻜﻤل اﻝﺜﻨﺎﺌﻲ‪ .‬ﺜم ﻨﺤول اﻝﻤﻜﻤل اﻝﺜﻨﺎﺌﻲ إﻝﻲ ﻋﺸري‪.‬‬
‫ﻤﺜﺎل ‪ -:‬وﻀﺢ ﻜﻴف ﻴﺘم ﺘﻤﺜﻴل اﻝﻘﻴﻤﺔ )‪ (-13‬ﻓﻲ ﺼورة ﻜل ﻤن‬
‫أ( ﻋدد ﺼﺤﻴﺢ ﻗﺼﻴر ﺒﺈﺸﺎرة‪.‬‬
‫ب( ﻋدد ﺼﺤﻴﺢ ﺒﺈﺸﺎرة‪.‬‬
‫اﻝﺤل ‪-:‬‬
‫اﻝﺨطوة اﻷوﻝﻲ‪ :‬ﻨﺤول اﻝﻘﻴﻤﺔ )‪ (-13‬إﻝﻲ ﺼورة ﺜﻨﺎﺌﻴﺔ‪13 = 1101 .‬‬
‫أ( ﻋدد ﺼﺤﻴﺢ ﻗﺼﻴر ﺒﺈﺸﺎرة‪.‬‬
‫‪00001101‬‬ ‫اﻝﺨطوة اﻝﺜﺎﻨﻴﺔ ‪ :‬ﻨﻜﻤل طول اﻝﻌدد إﻝﻲ ‪ 8‬ﺨﺎﻨﺎت‬
‫‪11110010‬‬ ‫اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ ‪ :‬إﻴﺠﺎد اﻝﻤﻜﻤل اﻷﺤﺎدي‬
‫‪1‬‬ ‫‪+‬‬
‫‪11110011‬‬ ‫اﻝﺨطوة اﻝراﺒﻌﺔ ‪ :‬اﻴﺠﺎد اﻝﻤﻜﻤل اﻝﺜﺎﻨﻲ وذﻝك ﺒﺈﻀﺎﻓﺔ واﺤد ﻝﻠﻤﻜﻤل اﻷﺤﺎدي‬
‫وﻋﻠﻴﻪ ﻓﺈن اﻝﻌدد ﻴﺴﺎوي ‪-1310 = 111100112‬‬
‫ب( ﻋدد ﺼﺤﻴﺢ ﺒﺈﺸﺎرة‪.‬‬
‫‪0000000000001101‬‬ ‫اﻝﺨطوة اﻝﺜﺎﻨﻴﺔ ‪ :‬ﻨﻜﻤل طول اﻝﻌدد إﻝﻲ ‪ 16‬ﺨﺎﻨﺎت‬
‫‪1111111111110010‬‬ ‫اﻝﺨطوة اﻝﺜﺎﻝﺜﺔ ‪ :‬إﻴﺠﺎد اﻝﻤﻜﻤل اﻷﺤﺎدي‬
‫‪1‬‬ ‫اﻝﺨطوة اﻝراﺒﻌﺔ ‪ :‬إﻀﺎﻓﺔ واﺤد ﻝﻠﻤﻜﻤل اﻷﺤﺎدي )اﻝﻤﻜﻤل اﻝﺜﺎﻨﻲ( ‪+‬‬
‫‪1111111111110011‬‬
‫وﻋﻠﻴﻪ ﻓﺈن اﻝﻌدد ﻴﺴﺎوي ‪-1310 = 11111111111100112‬‬

‫‪Page‬‬ ‫‪4 of 6‬‬


‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr. Murtada El-Mukashfi El-Taher‬‬
‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻨﻼﺤظ أﻨﻨﺎ ﻗد ﻗﻤﻨﺎ ﺒﻤلء اﻝﺨﺎﻨﺎت اﻝﻔﺎﺌﻀﺔ إﻝﻰ اﻝﻴﺴﺎر ﺒـ ‪.1‬‬
‫ﻴﻤﻜن ﺒﺼورة ﻋﺎﻤﺔ اﻝﻘول أﻨﻪ ﻋﻨد زﻴﺎدة طول اﻝﻌدد اﻝﺼﺤﻴﺢ ذي اﻹﺸﺎرة ﻓﺈﻨﻨﺎ ﻨﻘــوم ﺒﻤــلء اﻝﺨﺎﻨــﺎت اﻝﻔﺎﺌﻀــﺔ إﻝــﻰ‬
‫اﻝﻴﺴﺎر ﺒﺈﺸﺎرة اﻝﻌدد‪ .‬و ﺘﺴﻤﻰ ﻫذﻩ اﻝﻌﻤﻠﻴﺔ ﺒـﺘﻤدﻴد اﻹﺸﺎرة‪.‬‬

‫ﻤﺜﺎل‪ -:‬أوﺠد اﻝﻘﻴﻤﺔ اﻝﻌﺸرﻴﺔ ﻝﻠﻌدد اﻝﺜﻨﺎﺌﻲ ‪ 11110101‬وذﻝك إذا ﻜﺎن ﻴﻤﺜل‪:‬‬
‫ﻗﺼﻴر ﺒدون إﺸﺎرة‪.‬‬
‫اً‬ ‫) أ ( ﻋدداً ﺼﺤﻴﺤﺎً‬
‫ﻗﺼﻴر ﺒﺈﺸﺎرة‪.‬‬
‫اً‬ ‫)ب( ﻋدداً ﺼﺤﻴﺤﺎً‬
‫) أ ( اﻝﻌدد ﺒدون إﺸﺎرة و ﺒﺎﻝﺘﺎﻝﻲ ﻓﺈن ﻜل اﻝﺨﺎﻨﺎت ﺘﻤﺜل ﻤﻘدار اﻝﻌدد‪ ،‬وﻋﻠﻴﻪ ﻨﺤول ﻤن اﻝﺼورة اﻝﺜﻨﺎﺌﻴﺔ ﻝﻠﺼورة اﻝﻌﺸرﻴﺔ‪.‬‬
‫‪11110102 = 27 + 26 + 25 + 24 + 22 + 20 = 128+64+32+16+4+1= 245‬‬
‫)ب( اﻝﻌدد ﺒﺈﺸﺎرة و ﻋﻠﻴﻪ ﻨﻨظر ﻝﻠﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ‪ MSB‬ﻝﺘﺤدﻴد إﺸﺎرﺘﻪ‪ MSB=1 .‬ﻤﻤﺎ ﻴﻌﻨﻲ أن اﻝﻌدد ﺴﺎﻝب‪ .‬ﻝﺤﺴﺎب‬
‫اﻝﻤﻘدار ﻨﻘوم ﺒﺈﻴﺠﺎد اﻝﻤﻜﻤل اﻝﺜﺎﻨﻲ ‪.‬‬
‫‪11110101‬‬ ‫اﻝﻌدد‬
‫‪00001010‬‬ ‫اﻝﻤﻜﻤل اﻷﺤﺎدي‬
‫‪1‬‬ ‫‪+‬‬
‫‪00001011‬‬ ‫اﻝﻤﻜﻤل اﻝﺜﺎﻨﻲ‬
‫ﺜم ﻨﺤول اﻝﻤﻘدار ﻝﻠﺼورة اﻝﻌﺸرﻴﺔ ‪000010112 = 10112 = 2 + 2 + 2 = 11‬‬
‫‪3‬‬ ‫‪1‬‬ ‫‪0‬‬

‫أي أن اﻝﻘﻴﻤﺔ ﻫﻲ ‪-11‬‬

‫ﻤﺜﺎل‪ -:‬أوﺠد اﻝﻘﻴﻤﺔ اﻝﻌﺸرﻴﺔ ﻝﻠﻌدد اﻝﺜﻨﺎﺌﻲ ‪ 1110101‬وذﻝك إذا ﻜﺎن ﻴﻤﺜل‪:‬‬
‫ﻗﺼﻴر ﺒدون إﺸﺎرة‪.‬‬
‫اً‬ ‫) أ ( ﻋدداً ﺼﺤﻴﺤﺎً‬
‫ﻗﺼﻴر ﺒﺈﺸﺎرة‪.‬‬
‫اً‬ ‫)ب( ﻋدداً ﺼﺤﻴﺤﺎً‬
‫اﻝﺤل‪ -:‬ﻨﻜﻤل اﻝﻌدد اﻝﺜﻨﺎﺌﻲ إﻝﻰ ﻝﻴﺼﺒﺢ ﻋدد ﻗﺼﻴر )‪(0111010) (8 Bits‬‬
‫) أ ( اﻝﻌدد ﺒدون إﺸﺎرة و ﺒﺎﻝﺘﺎﻝﻲ ﻓﺈن ﻜل اﻝﺨﺎﻨﺎت ﺘﻤﺜل ﻤﻘدار اﻝﻌدد‪ ،‬وﻋﻠﻴﻪ ﻨﺤول ﻤن اﻝﺼورة اﻝﺜﻨﺎﺌﻴﺔ ﻝﻠﺼورة اﻝﻌﺸرﻴﺔ‪.‬‬
‫‪01110102 = 26 + 25 + 24 + 22 + 20 = 128+64+32+16+4+1= 117‬‬
‫)ب( اﻝﻌدد ﺒﺈﺸﺎرة وﻋﻠﻴﻪ ﻨﻨظر ﻝﻠﺨﺎﻨﺔ اﻝﻌﻠﻴﺎ ‪ MSB‬ﻝﺘﺤدﻴد إﺸﺎرﺘﻪ‪ MSB=0 .‬ﻤﻤﺎ ﻴﻌﻨﻲ أن اﻝﻌدد ﻤوﺠب‪ .‬وﻋﻠﻴﻪ ﻨﺤــول‬
‫ﻤن اﻝﺼورة اﻝﺜﻨﺎﺌﻴﺔ ﻝﻠﺼورة اﻝﻌﺸرﻴﺔ‪.‬‬
‫‪6‬‬ ‫‪5‬‬ ‫‪4‬‬ ‫‪2‬‬ ‫‪0‬‬
‫‪01110102 = 2 + 2 + 2 + 2 + 2 = 128+64+32+16+4+1= 117‬‬
‫أي أن اﻝﻘﻴﻤﺔ ﻫﻲ ‪+117‬‬

‫‪Page‬‬ ‫‪5 of 6‬‬


‫‪University of Bakht Al-Ruda‬‬ ‫‪Dr. Murtada El-Mukashfi El-Taher‬‬
‫‪Faculty Of Science‬‬ ‫‪E-mail morto@uofb.edu.sd‬‬ ‫‪Digital Logic Design Lectures‬‬
‫‪Department of Computer Science‬‬ ‫‪Lectures # 2‬‬
‫ﻤدى اﻝﻘﻴم اﻝﺘﻲ ﻴﻤﻜن ﺘﺨزﻴﻨﻬﺎ ﻓﻲ ﻤﺴﺎﺤﺔ ﻤﻌﻴﻨﺔ ﻓﻲ ﺼورة ﻋدد ﺼﺤﻴﺢ ﺒﺈﺸﺎرة‬

‫ﻤﺜﺎل‪ :‬ﺤدد ﺠﻤﻴﻊ اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ذات اﻹﺸﺎرة )‪ (Signed Integers‬اﻝﺘﻰ ﻴﻤﻜن ﺘﻤﺜﻴﻠﻬﺎ ﻓﻲ ﻤﺴﺎﺤﺔ ﻗدرﻫﺎ ‪ 4‬ﺨﺎﻨﺎت‪.‬‬
‫ﻗﻴم ﻤوﺠﺒﺔ‬ ‫اﻝﻘﻴﻤﺔ اﻝﻌﺸرﻴﺔ‬ ‫ﻗﻴم ﺴﺎﻝﺒﺔ‬ ‫اﻝﻘﻴﻤﺔ اﻝﻌﺸرﻴﺔ‬
‫)‪(MSB=0‬‬ ‫)‪(MSB=1‬‬
‫‪0000‬‬ ‫‪+0‬‬ ‫‪1000‬‬ ‫‪-8‬‬
‫‪0001‬‬ ‫‪+1‬‬ ‫‪1001‬‬ ‫‪-7‬‬
‫‪0010‬‬ ‫‪+2‬‬ ‫‪1010‬‬ ‫‪-6‬‬
‫‪0011‬‬ ‫‪+3‬‬ ‫‪1011‬‬ ‫‪-5‬‬
‫‪0100‬‬ ‫‪+4‬‬ ‫‪1100‬‬ ‫‪-4‬‬
‫‪0101‬‬ ‫‪+5‬‬ ‫‪1101‬‬ ‫‪-3‬‬
‫‪0110‬‬ ‫‪+6‬‬ ‫‪1110‬‬ ‫‪-2‬‬
‫‪0111‬‬ ‫‪+7‬‬ ‫‪1111‬‬ ‫‪-1‬‬

‫و ﻋﻠﻴﻪ ﻓﺈن ﻤدى اﻝﻘﻴم اﻝﺘﻲ ﻴﻤﻜن ﺘﻤﺜﻴﻠﻬﺎ ﻓﻲ ﺼورة ﻋدد ﺼﺤﻴﺢ ﺒﺈﺸﺎرة طوﻝﻪ ‪ 4‬ﺨﺎﻨﺎت ﻫو ‪-:‬‬
‫‪ +7‬إﻝﻲ ‪- 8‬‬
‫‪ +23 - 1‬إﻝﻲ ‪- 23‬‬
‫‪ +24-1 - 1‬إﻝﻲ ‪- 24-1‬‬
‫اﻝﺠدول اﻝﺘﺎﻝﻲ ﻴوﻀﺢ أﻨواع اﻷﻋداد اﻝﺼﺤﻴﺤﺔ و ﻤدى اﻝﻘﻴم اﻝذي ﻴﻘﺒﻠﻬﺎ ﻜل ﻨوع‬

‫ﻤدى اﻝﻘﻴم‬ ‫اﻝطول‬ ‫ﻨوع اﻝﻌدد‬


‫ﺒﺈﺸﺎرة‬ ‫ﺒدون إﺸﺎرة‬
‫)‪-2 … +(27 -1‬‬
‫‪7‬‬
‫)‪0 … 255 (28 -1‬‬ ‫‪1 Byte‬‬ ‫ﻋدد ﻗﺼﻴر‬
‫‪-128 … +127‬‬
‫)‪-215 … + (215 -1‬‬
‫)‪0 … 65,535 (216 -1‬‬ ‫‪2 Bytes‬‬ ‫ﻋدد ﺼﺤﻴﺢ‬
‫‪-32,768 … +32,767‬‬
‫)‪-231 … + (231 -1‬‬
‫‪0 … 4,294,967,295 (232 -1) 4 Bytes‬‬ ‫ﻋدد طوﻴل‬
‫‪-2,147,483,648 … +2,147,483,647‬‬
‫)‪-2N-1 … +(2N-1-1‬‬ ‫)‪0 … (2N -1‬‬ ‫‪N bits‬‬ ‫ـــ‬

‫ﻤﻤﺎ ﺴﺒق ﻴﺘﻀﺢ ﻝﻨﺎ أن اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ﻴﺘم ﺘﻤﺜﻴﻠﻬﺎ دون أي ﺨطﺄ‪ ،‬أي ﺒﺎﻝدﻗﺔ اﻝﻜﺎﻤﻠﺔ‪ ،‬طﺎﻝﻤﺎ أن ﻋدد اﻝﺨﺎﻨﺎت اﻝﻤﺘﺎﺤﺔ‬
‫ﻴﻜﻔﻲ ﻝﺘﻤﺜﻴل اﻝﻘﻴﻤﺔ‪ .‬اﻝﻤﺸﻜﻠﺔ اﻝوﺤﻴدة اﻝﺘﻲ ﻴﻤﻜن أن ﺘظﻬر ﻓﻲ ﺘﻤﺜﻴل اﻷﻋداد اﻝﺼﺤﻴﺤﺔ ﻫﻲ أن ﺘﻜون اﻝﻘﻴﻤﺔ اﻝﻤطﻠوب‬
‫ﺘﺨزﻴﻨﻬﺎ ﺨﺎرج اﻝﻤدى اﻝﻤﺤدد ﻝﻠﻤﺴﺎﺤﺔ اﻝﻤﺘﺎﺤﺔ‪ ،‬ﻋﻨد ذﻝك ﻴﺤدث ﻤﺎ ﻴﺴﻤﻰ ‪Mathematical Over Flow‬‬

‫‪Page‬‬ ‫‪6 of 6‬‬

You might also like