ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١
-١-١ﮐﺎﻣﭙﭕوﺗﺮ و ﺳﻴﺴﺘﻢ هﺎﯼ دﯾﺠﻴﺘﺎﻟﯽ ﮐﺎﻣﭙﭕوﺗﺮ هﺎﯼ دﯾﺠﻴﺘﺎل ﺑﺴﻴﺎرﯼ از ،ﭘﻴﺸﺮﻓﺖ هﺎﯼ ﻋﻠﻤﯽ ،ﺻﻨﻌﺘﯽ و ﺗﺠﺎرﯼ را ﮐﻪ ﺑﻪ ﺻﻮرت دﯾﮕﺮ ﻗﺎﺑﻞ دﺳﺘﺮس ﻧﺒﻮدﻧﺪ ﻣﻤﮑﻦ ﺳﺎﺧﺘﻪ اﻧﺪ .ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎ در ﻣﺤﺎﺳﺒﺎت ﻋﻠﻤﯽ ، ﭘﺮدازش دادﻩ هﺎﯼ ﺗﺠﺎرﯼ ،ﮐﻨﺘﺮل ﺗﺮاﻓﻴﮏ هﻮاﯾﯽ ،هﺪاﯾﺖ ﻓﻀﺎﯾﯽ ،زﻣﻴﻨﻪ هﺎﯼ ﻓﺮهﻨﮕﯽ و ﻣﻮارد ﺑﺴﻴﺎر دﯾﮕﺮﯼ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﮔﻔﺘﻪ اﻧﺪ .ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﯽ ﺗﻮاﻧﺪ از ﻣﺠﻤﻮﻋﻪ اﯼ دﺳﺘﻮراﻟﻌﻤﻞ هﺎﯼ ﺑﻨﺎم ﺑﺮﻧﺎﻣﻪ ﮐﻪ روﯼ دادﻩ هﺎﯼ ﻣﻔﺮوض ﻋﻤﻞ ﻣﯽ ﮐﻨﻨﺪ ﺗﺒﻌﻴﺖ ﻧﻤﺎﯾﺪ .اﺳﺘﻔﺎدﻩ ﮐﻨﻨﺪﻩ ﻗﺎدر اﺳﺖ ﺗﻐﻴﻴﺮات ﮔﻮﻧﺎﮔﻮﻧﯽ را در ﺑﺮﻧﺎﻣﻪ ،دادﻩ هﺎ و ﯾﺎ هﺮ دوﯼ ﺁﻧﻬﺎ ،ﺑﺮ ﺣﺴﺐ ﻧﻴﺎز اﯾﺠﺎد ﮐﻨﺪ .ﺑﻪ دﻟﻴﻞ اﯾﻦ اﻧﻌﻄﺎف ﭘﺬﯾﺮﯼ ﻣﯽ ﺗﻮان ﻧﺘﻴﺠﻪ ﮔﺮﻓﺖ ﮐﻪ ﮐﺎﻣﭙﺒﻮﺗﺮ دﯾﺠﻴﺘﺎل هﻤﻪ ﻣﻨﻈﻮرﻩ ﻗﺎدر هﺴﺘﻨﺪ وﻇﺎﯾﻒ ﭘﺮدازش اﻃﻼﻋﺎت را در ﯾﮏ ﻣﺤﺪودﻩ وﺳﻴﻊ و ﻣﺘﻨﻮع ﺑﻪ اﻧﺠﺎم ﺑﺮﺳﺎﻧﺪ . ﯾﮏ ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل هﻤﻪ ﻣﻨﻈﻮرﻩ ،ﺷﻨﺎﺧﺘﻪ ﺷﺪﻩ ﺗﺮﯾﻦ ﻧﻤﻮﻧﻪ از ﯾﮏ دﺳﺘﮕﺎﻩ دﯾﺠﻴﺘﺎل اﺳﺖ .ﻣﺸﺨﺼﻪ ﯾﮏ ﺳﻴﺴﺘﻢ دﯾﺠﻴﺘﺎل ،ﺗﻮاﻧﺎﯾﯽ اش در دﺳﺘﮑﺎرﯼ اﺟﺰاﯼ ﮔﺴﺴﺘﻪ اﻃﻼﻋﺎﺗﯽ اﺳﺖ .ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎﯼ دﯾﺠﻴﺘﺎل اوﻟﻴﻪ ﺑﻴﺸﺘﺮ ﺑﺮاﯼ ﻣﺤﺎﺳﺒﺎت ﻋﺪدﯼ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﻣﯽ ﮔﺮﻓﺘﻨﺪ .در اﯾﻦ ﺣﺎﻟﺖ اﺟﺮاء ﮔﺴﺴﺘﻪ ،ارﻗﺎم هﺴﺘﻨﺪ .ﻋﺒﺎرت ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل هﻢ از هﻤﻴﻦ ﮐﺎرﺑﺮد ﻧﺎﺷﯽ ﺷﺪﻩ اﺳﺖ .ﺳﻴﺴﺘﻢ ﭘﺮدازش اﻃﻼﻋﺎت ﮔﺴﺴﺘﻪ ﻣﯽ ﺗﻮاﻧﺪ ﻧﺎم ﻣﻨﺎﺳﺒﺘﺮﯼ ﺑﺮاﯼ ﯾﮏ ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل ﺑﺎﺷﺪ . اﺟﺰاء ﮔﺴﺴﺘﻪ اﻃﻼﻋﺎت در ﯾﮏ ﺳﻴﺴﺘﻢ دﯾﺠﻴﺘﺎل را ﮐﻤﻴﺖ هﺎﯾﯽ ﻓﻴﺰﯾﮑﯽ ﺑﻪ ﻧﺎم ﺳﻴﮕﻨﺎل ﻣﯽ ﺳﺎزﻧﺪ ،ﮐﻪ ﺳﻴﮕﻨﺎﻟﻬﺎﯼ اﻟﮑﺘﺮﯾﮑﯽ ﻣﺜﻞ وﻟﺘﺎژ و ﺟﺮﯾﺎن هﺎﯼ ﻣﻌﻤﻮل ﺗﺮﯾﻦ هﺴﺘﻨﺪ .ﺳﻴﮕﻨﺎل هﺎ در ﺗﻤﺎم ﺳﻴﺴﺘﻤﻬﺎﯼ دﯾﺠﻴﺘﺎل اﻟﮑﺘﺮوﻧﻴﮑﯽ اﻣﺮوز ،ﺗﻨﻬﺎ دو ﻣﻘﺪار ﻣﺠﺰا داﺷﺘﻪ و دودوﯾﯽ ﻧﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮﻧﺪ .ﺑﻪ دﻟﻴﻞ ﻗﺎﺑﻠﻴﺖ اﻋﺘﻤﺎد ﮐﻤﯽ ﮐﻪ ﻣﺪارهﺎﯼ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢
اﻟﮑﺘﺮوﻧﻴﮑﯽ ﭼﻨﺪ ﻣﻘﺪارﻩ دارا هﺴﺘﻨﺪ ،ﻃﺮاح ﯾﮏ ﺳﻴﺴﺘﻢ دﯾﺠﻴﺘﺎل ﺑﻪ اﺳﺘﻔﺎدﻩ از ﺳﻴﮕﻨﺎﻟﻬﺎﯼ دودوﯾﯽ ﻣﻘﻴﺪ اﺳﺖ .ﺑﻪ ﻋﺒﺎرت دﯾﮕﺮ ﻣﯽ ﺗﻮان ﺑﺎ اﺳﺘﻔﺎدﻩ از دﻩ وﻟﺘﺎژ ﻣﺨﺘﻠﻒ ﯾﮏ ﻣﺪار دﻩ ﺣﺎﻟﺘﻪ را ﻃﺮاﺣﯽ ﮐﺮد اﻣﺎ اﯾﻦ ﻣﺪار از ﻟﺤﺎظ ﻋﻤﻠﻴﺎﺗﯽ داراﯼ ﻗﺎﺑﻠﻴﺖ اﻋﺘﻤﺎد ﮐﻤﯽ ﻣﯽ ﺑﺎﺷﺪ .ﺑﺮ ﻋﮑﺲ ،ﯾﮏ ﻣﺪار ﺗﺮاﻧﺰﯾﺴﺘﻮرﯼ ﺧﺎﻣﻮش ﯾﺎ روﺷﻦ داراﯼ دو ﻣﻘﺪار ﺳﻴﮕﻨﺎل ﺑﻮدﻩ و ﻣﯽ ﺗﻮاﻧﺪ ﺑﺎ ﻗﺎﺑﻠﻴﺖ اﻋﺘﻤﺎد زﯾﺎدﯼ ﺳﺎﺧﺘﻪ ﺷﻮد . ﺑﻠﻮﮎ دﯾﺎﮔﺮام ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل در ﺷﮑﻞ ) (١-١ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﺳﺖ .واﺣﺪ ﺣﺎﻓﻈﻪ ، ﺑﺮﻧﺎﻣﻪ هﺎ ،دادﻩ هﺎﯼ ورودﯼ ،ﺧﺮوﺟﯽ و دادﻩ هﺎﯼ واﺳﻄﻪ را ذﺧﻴﺮﻩ ﻣﯽ ﮐﻨﺪ .واﺣﺪ ﭘﺮدازﺷﮕﺮ ﯾﺎ ﭘﺮدازﻧﺪﻩ وﻇﻴﻔﻪ اﺟﺮاﯼ ﻋﻤﻠﻴﺎت رﯾﺎﺿﯽ و دﯾﮕﺮ وﻇﺎﯾﻒ ﭘﺮدازش دادﻩ هﺎﯼ را ﺁﻧﻄﻮرﯼ ﮐﻪ در ﺑﺮﻧﺎﻣﻪ ﻣﺸﺨﺺ ﺷﺪﻩ اﺳﺖ ﺑﻌﻬﺪﻩ دارد .واﺣﺪ ﮐﻨﺘﺮل ﺑﺮ ﺟﺮﯾﺎن اﻃﻼﻋﺎت ﺑﻴﻦ ﻗﺴﻤﺖ هﺎﯼ ﮔﻮﻧﺎﮔﻮن ﻧﻈﺎرت ﻣﯽ ﮐﻨﺪ .اﯾﻦ واﺣﺪدﺳﺘﻮرات را ﯾﮏ ﺑﻪ ﯾﮏ از ﺑﺮﻧﺎﻣﻪ اﯼ ﮐﻪ در ﺣﺎﻓﻈﻪ ذﺧﻴﺮﻩ ﺷﺪﻩ اﺳﺖ ﺑﺎزﯾﺎﺑﯽ ﮐﺮدﻩ و ﺑﺮاﯼ هﺮ دﺳﺘﻮراﻟﻌﻤﻞ ،ﭘﺮدازﻧﺪﻩ را ﻣﻄﻠﻊ ﻣﯽ ﻧﻤﺎﯾﺪ ﺗﺎ ﻋﻤﻠﻴﺎت ﻣﺸﺨﺺ ﺷﺪﻩ در ﺁن دﺳﺘﻮر را اﺟﺮا ﮐﻨﺪ . واﺣﺪ ﻣﺤﺎﺳﺒﻪ وﭘﺮدازش
واﺣﺪ ﺣﺎﻓﻈﻪ
وﺳﺎﯾﻞ ﺧﺮوﺟﯽ
وﺳﺎﯾﻞ ورودﯼ
و ﮐﻨﺘﺮل
و ﮐﻨﺘﺮل
ﺷﮑﻞ ) (١-١ﺑﻠﻮﮎ دﯾﺎﮔﺮام ﯾﮏ ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل
واﺣﺪ ﮐﻨﺘﺮل
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٣
ﺑﺮﻧﺎﻣﻪ هﺎ و دادﻩ هﺎﯾﯽ ﮐﻪ ﺗﻮﺳﻂ اﺳﺘﻔﺎدﻩ ﮐﻨﻨﺪﻩ ﺗﻬﻴﻪ ﺷﺪﻩ اﻧﺪ ﺑﻮﺳﻴﻠﻪ ﯾﮏ دﺳﺘﮕﺎﻩ ورودﯼ ﻣﺜﻞ ﺻﻔﺤﻪ ﮐﻠﻴﺪﺑﻪ واﺣﺪ ﺣﺎﻓﻈﻪ ﻣﻨﺘﻘﻞ ﻣﯽ ﮔﺮدﻧﺪ .ﯾﮏ دﺳﺘﮕﺎﻩ ﺧﺮوﺟﯽ ﻣﺜﻞ ﭼﺎﭘﮕﺮ ﻧﺘﺎﯾﺞ ﻣﺤﺎﺳﺒﺎت را درﯾﺎﻓﺖ ﮐﺮدﻩ و ﻧﺘﺎﯾﺞ ﭼﺎپ ﺷﺪﻩ را در اﺧﺘﻴﺎر اﺳﺘﻔﺎدﻩ ﮐﻨﻨﺪﻩ ﻗﺮار ﻣﯽ دهﺪ .دﺳﺘﮕﺎهﻬﺎﯼ ورودﯼ و ﺧﺮوﺟﯽ ،ﺳﻴﺴﺘﻢ هﺎﯼ دﯾﺠﻴﺘﺎل ﺑﺨﺼﻮﺻﯽ هﺴﺘﻨﺪ ﮐﻪ ﺑﺎ ﻗﺴﻤﺖ هﺎﯼ اﻟﮑﺘﺮو ﻣﮑﺎﻧﻴﮑﯽ راﻩ اﻧﺪازﯼ ﺷﺪﻩ و ﺑﻮﺳﻴﻠﻪ ﻣﺪارهﺎﯼ اﻟﮑﺘﺮوﻧﻴﮑﯽ دﯾﺠﻴﺘﺎل ﮐﻨﺘﺮل ﻣﯽ ﺷﻮﻧﺪ. هﻤﺎﻧﻄﻮرﯼ ﮐﻪ ﻗﺒﻼً اﺷﺎرﻩ ﺷﺪ ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎﯼ دﯾﺠﻴﺘﺎل روﯼ اﺟﺰاﯼ ﮔﺴﺴﺘﻪ اﻃﻼﻋﺎت ﻋﻤﻞ ﻣﯽ ﮐﻨﻨﺪ و اﯾﻦ اﻃﻼﻋﺎت ﺑﻪ ﺷﮑﻞ دودوﯾﯽ ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮﻧﺪ .ﻋﻤﻠﻮﻧﺪهﺎﯼ ﻣﻮرد اﺳﺘﻔﺎدﻩ در ﻣﺤﺎﺳﺒﺎت ﻣﻤﮑﻦ اﺳﺖ در دﺳﺘﮕﺎﻩ اﻋﺪاد دودوﯾﯽ ﺑﻴﺎن ﺷﻮﻧﺪ .اﺟﺰاﯼ ﮔﺴﺴﺘﻪ دﯾﮕﺮ ﻣﺜﻞ ارﻗﺎم دهﺪهﯽ ﺑﻪ ﮐﺪهﺎﯼ دودوﯾﯽ ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮﻧﺪ .ﭘﺮدازش دادﻩ هﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از اﺟﺰاﯼ ﻣﻨﻄﻘﯽ دودوﯾﯽ ﮐﻪ از ﺳﻴﮕﻨﺎﻟﻬﺎﯼ دودوﯾﯽ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ اﻧﺠﺎم ﻣﯽ ﺷﻮد و ﻣﻘﺎدﯾﺮ در اﻟﻤﺎن هﺎﯼ ﺣﺎﻓﻈﻪ دودوﯾﯽ ذﺧﻴﺮﻩ ﻣﯽ ﺷﻮﻧﺪ . -١-٢اﻋﺪاد دودودﯾﯽ ﯾﮏ ﻋﺪد در ﻣﺒﻨﺎﯼ دﻩ ﻣﺜﻞ ٧٣٩٢ﻣﻘﺪارﯼ ﻣﻌﺎدل ٧هﺰارﺗﺎﯾﯽ و ﺑﻪ اﺿﺎﻓﻪ ٣ﺻﺪﺗﺎﯾﯽ ﺑﻪ اﺷﺎﻓﻪ ٩دﻩ ﺗﺎﯾﯽ ﺑﻪ اﺿﺎﻓﻪ ٢ﯾﮑﯽ را ﻧﺸﺎن ﻣﯽ دهﺪ .هﺰارﮔﺎن ،ﺻﺪﮔﺎن و ﻏﻴﺮﻩ ﺗﻮاﻧﻬﺎﯾﯽ از دﻩ هﺴﺘﻨﺪ ﮐﻪ دﻻﻟﺖ ﺑﺮ ﻣﮑﺎن ﺿﺮاﯾﺐ ﻣﯽ ﮐﻨﻨﺪ .ﺑﻪ ﻣﻨﻈﻮر دﻗﺖ ﺑﻴﺸﺘﺮ ﻋﺪد ٧٣٩٢ﺑﻬﺘﺮ اﺳﺖ ﺑﻪ ﺻﻮرت زﯾﺮ ﻧﻮﺷﺘﻪ ﺷﻮد :
7 ×103 + 3 ×102 + 9 ×101 + 2 ×100 ﺑﻬﺮ ﺣﺎل ﻗﺮار داد اﯾﻦ اﺳﺖ ﮐﻪ ﻓﻘﻂ ﺿﺮاﯾﺐ را ﺑﻨﻮﯾﺴﻴﻢ و ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﻣﮑﺎن ﺁﻧﻬﺎ ﺗﻮاﻧﻬﺎﯼ دﻩ را اﺳﺘﻨﺘﺎج ﻧﻤﺎﯾﻴﻢ .ﺑﻄﻮر ﮐﻠﯽ ﯾﮏ ﻋﺪ ﺑﺎ ﻧﻘﻄﻪ اﻋﺸﺎر در ﻣﺒﻨﺎﯼ دﻩ ﺑﻮﺳﻴﻠﻪ ﺿﺮاﯾﺐ ﺑﻪ ﺻﻮرت زﯾﺮ ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮﻧﺪ :
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٤
a a a a a a ,a a a 5 4 3 2 1 0 −1 −2 −3 ﮐﻪ ﺿﺮﯾﺐ
j
a
ﯾﮑﯽ ارﻗﺎم 0ﺗﺎ ٩ﺑﻮدﻩ و ﻣﻘﺪار اﻧﺪﯾﺲ jارزش ﻣﮑﺎﻧﯽ ﺁن رﻗﻢ وﻟﺬا ﺗﻮان
دهﯽ ﮐﻪ ﺿﺮﯾﺐ ﺑﺎﯾﺴﺘﯽ در ﺁن ﺿﺮب ﺷﻮد را ﻣﯽ دهﺪ .
105 a +104 a + 103 a + 10 2 a + 101a + 100 a + 10− 1a + 10 − 2 a + 10 − 3 a 5 −2 4 3 2 1 0 −1 −3 ﺑﻨﺎ ﺑﻪ ﺗﻌﺮﯾﻒ ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد ﮐﻪ ﺳﻴﺴﺘﻢ اﻋﺪاد اﻋﺸﺎرﯼ از ﻣﺒﻨﺎ ﯾﺎ ﭘﺎﯾﻪ ١٠ﻣﯽ ﺑﺎﺷﺪ ﭼﺮا ﮐﻪ دﻩ رﻗﻢ در ﺁن اﺳﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد و ﺿﺮاﯾﺐ ﻧﻴﺰ در ﺗﻮاﻧﻬﺎﯾﯽ از دﻩ ﺿﺮب ﻣﯽ ﮔﺮدﻧﺪ ،دﺳﺘﮕﺎﻩ دودوﯾﯽ ﺳﻴﺴﺘﻢ دﯾﮕﺮﯼ از اﻋﺪاد اﺳﺖ .ﺿﺮاﯾﺐ دﺳﺘﮕﺎﻩ اﻋﺪاد دودودﯾﯽ داراﯼ دو ارزش ﻣﻤﮑﻦ ﻣﯽ ﺑﺎﺷﻨﺪ ٠ :و ١هﺮ ﺿﺮﯾﺐ
j
a
ﺿﺮﯾﺐ در
2j
ﻣﯽ ﺷﻮد .
ﺑﺮاﯼ ﻣﺜﺎل ﻣﻌﺎدل ﻣﺒﻨﺎﯼ دﻩ ﻋﺪد دودوﯾﯽ ١١٠١٠٫١١هﻤﺎﻧﻄﻮر ﮐﻪ در زﯾﺮ ﻧﺸﺎن دادﻩ ﺷﺪﻩ رﻳﺎل ﻋﺪد ٢۶٫٧۵از ﺿﺮﯾﺐ ﺗﻮاﻧﺎﯾﯽ از ٢در ﺿﺮاﯾﺐ ﺑﺪﺳﺖ ﻣﯽ ﺁﯾﺪ . 1× 24 + 1× 23 + 0 × 22 + 1× 21 + 0 × 20 + 1× 2−1 + 1× 2− 2 = 26.75
ﺑﻄﻮر ﮐﻠﯽ ﯾﮏ ﻋﺪد در ﻣﺒﻨﺎﯼ rﺑﻪ ﺻﻮرت ﺣﺎﺻﻠﻀﺮب ﺗﻮاﻧﻬﺎﯼ rدر ﺿﺮاﯾﺐ ﻣﺮﺑﻮﻃﻪ اش ﺑﻴﺎن ﻣﯽ ﺷﻮد .
.r n − 1 + ...a .r 2 + a .r + a + a .r − 1 + a .r − 2 + a− m.r − m a n.r n + a −2 2 1 0 −1 n −1 ﺑﻴﻦ ٠ﺗﺎ ١-هﺴﺘﻨﺪ .
j
aﮐﻪ ﺿﺮاﯾﺐ
در ﻣﺒﻨﺎﯼ rﮐﻤﺘﺮ از ١٠ﻣﯽ ﺑﺎﺷﺪ ،ﻣﺮﺳﻮم اﺳﺖ ﮐﻪ rرﻗﻢ ﻣﻮرد ﻧﻴﺎز ﺑﺮاﯼ ﯾﮏ ﻋﺪد از دﺳﺘﮕﺎﻩ دهﺪهﯽ ﮔﺮﻓﺘﻪ ﻣﯽ ﺷﻮد .وﻗﺘﯽ ﻣﺒﻨﺎﯼ ﻋﺪد ﺑﺰرﮔﺘﺮ از دﻩ اﺳﺖ از ﺣﺮوف اﻟﻔﺒﺎ ﺑﺮاﯼ ﺗﮑﻤﻴﻞ ارﻗﺎم دهﺪهﯽ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮔﺮدد .در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ،دﻩ رﻗﻢ اول از ﺳﻴﺴﺘﻢ دهﺪهﯽ ﮔﺮﻓﺘﻪ ﺷﺪﻩ و ﺣﺮوف F,E,D,C,B,Aﺑﻪ ﺗﺮﺗﻴﺐ ﺑﻪ ﺟﺎﯼ اﻋﺪاد
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٥
) ( ١۵٫١۴٫١٣٫١٢٫١١٫١٠ﺑﮑﺎر ﻣﯽ روﻧﺪ .ﻣﺜﺎﻟﯽ از ﯾﮏ ﻋﺪد در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﺑﺼﻮرت زﯾﺮ اﺳﺖ ،
)(B65F ) = 11×163 + 6 ×162 + 5 ×16 + 15 = (46687 10 10 ﺷﺎﻧﺰدﻩ ﻋﺪد اول دﺳﺘﮕﺎﻩ اﻋﺪاد ﺷﺎﻧﺰدﻩ ﺗﺎﯾﯽ ،هﺸﺖ ﺗﺎﯾﯽ ،دودوﯾﯽ و دهﺪهﯽ در ﺟﺪول ) ( ١-١ﺁﻣﺪﻩ اﺳﺖ . ﺟﺪول ) ( ١-١اﻋﺪاد ﺑﺎ ﻣﺒﻨﺎهﺎﯼ ﻣﺘﻔﺎوت ﺷﺎﻧﺰدﻩ ﺗﺎﯾﯽ ) ﭘﺎﯾﻪ ( ١۶ ٠ ١ ٢ ٣ ۴ ۵ ۶ ٧ ٨ ٩ A B C D E F
هﺸﺘﺎﯾﯽ ) ﭘﺎﯾﻪ (٨ ٠٠ ٠١ ٠٢ ٠٣ ٠۴ ٠۵ ٠۶ ٠٧ ١٠ ١١ ١٢ ١٣ ١۴ ١۵ ١۶ ١٧
دودوﯾﯽ ) ﭘﺎﯾﻪ (٢ ٠٠٠٠ ٠٠٠١ ٠٠١٠ ٠٠١١ ٠١٠٠ ٠١٠١ ٠١١٠ ٠١١١ ١٠٠٠ ١٠٠١ ١٠١٠ ١٠١١ ١١٠٠ ١١٠١ ١١١٠ ١١١١
دهﺪهﯽ ) ﭘﺎﯾﻪ ( ١٠ ٠٠ ٠١ ٠٢ ٠٣ ٠۴ ٠۵ ٠۶ ٠٧ ٠٨ ٠٩ ١٠ ١١ ١٢ ١٣ ١۴ ١۵
اﻋﻤﺎل رﯾﺎﺿﯽ ﺑﺎ ﻣﺒﻨﺎﯼ rاز هﻤﺎن ﻗﻮاﻋﺪﯼ ﮐﻪ ﺑﺮاﯼ اﻋﺪاد دهﺪهﯽ ﺣﺎﮐﻢ اﺳﺖ ﭘﻴﺮوﯼ ﻣﯽ ﮐﻨﺪ .وﻗﺘﯽ از ﻣﺒﻨﺎﯼ ﻏﻴﺮ از ١٠اﺳﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد ﻣﯽ ﺑﺎﯾﺴﺖ دﻗﺖ ﮐﺮد ﺗﺎ ﻓﻘﻂ r رﻗﻢ ﻣﺠﺎز ﺁن ﻣﺒﻨﺎ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﮔﻴﺮد .ﻣﺜﺎﻟﻬﺎﯼ از ﺟﻤﻊ ،ﺗﻔﺮﯾﻖ و ﺿﺮب دو ﻋﺪد دودوﯾﯽ در زﯾﺮ ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﺳﺖ :
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٠١١ﻣﻀﺮوب
٦
١٠١١٠١
*١٠١ﻣﻀﺮوب ﻓﻴﻪ -١٠٠١١١ ١٠١١
٠٠٠١١٠
ﻣﻔﺮوق
١٠١١٠١
ﻣﻀﺎف
ﻣﻔﺮوق ﻣﻨﻪ +١٠٠١١١ﻣﻀﺎف اﻟﻴﻪ ﺑﺎﻗﻴﻤﺎﻧﺪﻩ
١٠١٠١٠٠
ﺣﺎﺻﻞ ﺟﻤﻊ
٠٠٠٠ ١٠١١ ١١٠١١١
ﺣﺎﺻﻞ ﺿﺮب
ﻣﺠﻤﻮع دو ﻋﺪد دودوﯾﯽ ﻃﺒﻖ هﻤﺎن ﻗﻮاﻧﻴﻦ دﺳﺘﮕﺎﻩ دهﺪهﯽ ﻣﺤﺎﺳﺒﻪ ﻣﯽ ﺷﻮد ،ﺑﺠﺰ اﯾﻨﮑﻪ ارﻗﺎم ﺑﺎ ارزش ﺣﺎﺻﻞ ﺟﻤﻊ در ﺗﻤﺎم ﻣﮑﺎن هﺎﯼ ﺑﺎ ﻣﻌﻨﯽ ﻓﻘﻂ ﻣﯽ ﺗﻮاﻧﺪ ٠ﯾﺎ ١ ﺑﺎﺷﻨﺪ .هﺮ رﻗﻢ ﻧﻘﻠﯽ ﺑﺪﺳﺖ ﺁﻣﺪﻩ در ﻣﮑﺎﻧﯽ ﻣﻔﺮوض ﺑﻮﺳﻴﻠﻪ ﺟﻔﺖ رﻗﻢ هﺎﯼ ﻣﺮﺗﺒﻪ ﺑﺎﻻﺗﺮ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﻣﯽ ﮔﻴﺮد .ﻋﻤﻞ ﺗﻔﺮﯾﻖ ﮐﻤﯽ ﭘﻴﭽﻴﺪﻩ ﺗﺮ اﺳﺖ .ﻗﻮاﻧﻴﻦ ﺑﺎز هﻢ هﻤﺎن ﻗﺎﻧﻮﻧﻬﺎﯼ دهﺪهﯽ هﺴﺘﻨﺪ ،ﺑﺠﺰ اﯾﻨﮑﻪ رﻗﻢ ﻗﺮﺿﯽ ﺑﺎ ارزش ﻣﮑﺎﻧﯽ دادﻩ ﺷﺪﻩ ٢ واﺣﺪ ﺑﻪ رﻗﻢ ﻣﻔﺮوق اﺿﺎﻓﻪ ﻣﯽ ﮐﻨﺪ ) .ﯾﮏ رﻗﻢ ﻗﺮﺿﯽ از دﺳﺘﮕﺎﻩ دهﺪهﯽ ١٠ ،واﺣﺪ ﺑﻪ رﻗﻢ ﻣﻔﺮوق اﺿﺎﻓﻪ ﻣﯽ ﮐﻨﺪ ( ﻋﻤﻞ ﺿﺮب ﺑﺴﻴﺎر ﺳﺎدﻩ اﺳﺖ .ارﻗﺎم ﻣﻀﺮوب ﻓﻴﻪ هﻤﻴﺸﻪ ١ﯾﺎ ٠هﺴﺘﻨﺪ .ﺑﻨﺎﺑﺮاﯾﻦ ﺣﺎﺻﻞ ﺿﺮب هﺎﯼ ﺟﺰﺋﯽ ﯾﺎ ٠و ﯾﺎ ﻣﺴﺎورﯼ ﻣﻀﺮوب ﻣﯽ ﺑﺎﺷﻨﺪ . -١-٣ﺗﺒﺪﯾﻞ ﻣﺒﻨﺎﯼ اﻋﺪاد ﯾﮏ ﻋﺪد دودوﯾﯽ ﺑﻪ وﺳﻴﻠﻪ ﺟﻤﻊ ﮐﺮدن ﺗﻮاﻧﻬﺎﯾﯽ از ٢ﮐﻪ ﻣﻘﺪار ﺿﺮاﯾﺒﺸﺎن ﯾﮏ اﺳﺖ ﺑﻪ ﺻﻮرت دهﺪهﯽ ﺁن ﺗﺒﺪﯾﻞ ﻣﯽ ﺷﻮد .ﺑﺮاﯼ ﻣﺜﺎل :
)(1010.011) = 23 + 21 + 2− 2 + 2− 3 = (10.375 2 10
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٧
در زﯾﺮ ﻣﺜﺎﻟﯽ از ﺗﺒﺪﯾﻞ ﻣﺒﻨﺎﯼ هﺸﺖ ﺑﻪ دﻩ ﺁﻣﺪﻩ اﺳﺖ :
)(630.4) = 6 × 82 + 3 × 8 + 4 × 8− 1 = (408.5 3 10 در ﺗﺒﺪﯾﻞ ﻣﺒﻨﺎﯼ دﻩ ﺑﻪ دو ﯾﺎ ﺑﻪ هﺮ ﻣﺒﻨﺎﯼ دﯾﮕﺮ راﺣﺖ ﺗﺮ اﺳﺖ ﮐﻪ ﻗﺴﻤﺖ ﺻﺤﻴﺢ و ﻗﺴﻤﺖ اﻋﺸﺎرﯼ ﻋﺪد را ﺟﺪا ﮐﺮدﻩ و هﺮ ﮐﺪام را ﺑﻪ ﻃﻮر ﺟﺪاﮔﺎﻧﻪ ﺗﺒﺪﯾﻞ ﮐﻨﻴﻢ . ﻣﺜﺎل -١-١ﻋﺪد ۴١را ﺑﻪ دودوﯾﯽ ﺗﺒﺪﯾﻞ ﮐﻨﻴﺪ . اﺑﺘﺪا ۴١ﺑﺮ ﺣﺴﺐ ٢ﺗﻘﺴﻴﻢ ﺷﺪﻩ ﺗﺎ ﺧﺎرج ﻗﺴﻤﺖ ٢٠و ﺑﺎﻗﻴﻤﺎﻧﺪﻩ ١/٢ﺑﺪﺳﺖ ﺁﯾﺪ . ﺧﺎرج ﻗﺴﻤﺖ ﻣﺠﺪداً ﺗﻘﺴﻴﻢ ﺷﺪﻩ ﺗﺎ ﺧﺎرج ﻗﺴﻤﺖ و ﺑﺎﻗﻴﻤﺎﻧﺪﻩ ﺟﺪﯾﺪﯼ ﺣﺎﺻﻞ ﮔﺮدد . اﯾﻦ روال ﺑﻪ هﻤﻴﻦ ﺻﻮرت ﺗﺎ زﻣﺎﻧﯽ اداﻣﻪ ﻣﯽ ﯾﺎﺑﺪ ﮐﻪ ﺧﺎرج ﻗﺴﻤﺖ ﺻﺤﻴﺢ ﺑﻪ دﺳﺖ ﺁﻣﺪﻩ ﺻﻔﺮ ﺷﻮد .ﺿﺮاﯾﺐ ﻋﺪد دودوﯾﯽ ﻣﻄﻠﻮب ﺑﻪ ﺻﻮرت زﯾﺮ از ﺑﺎﻗﻴﻤﺎﻧﺪﻩ هﺎ ﺑﺪﺳﺖ ﻣﯽ ﺁﯾﻨﺪ . ﺿﺮﯾﺐ ﻋﺪد دودوﯾﯽ
ﺑﺎﻗﻴﻤﺎﻧﺪﻩ
a =1 0 a =0 1 a =0 2
1 2
+
٠
+
٠
+
10 =5 2
1 2
+
٠
+
5 =2 2
1 2
+
a =1 3 a =0 4 a =1 5
ﺧﺎرج ﻗﺴﻤﺖ ﺻﺤﻴﺢ 41 = 20 2 20 =10 2
2 =1 2 1 =0 2
) : (41) = (a a a a a a ) = (101001ﺟﻮاب 5 4 3 2102 10 2
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٨
روال رﯾﺎﺿﯽ ﻓﻮق ﻣﯽ ﺗﻮاﻧﺪ ﺑﺼﻮرت ﻣﻨﺎﺳﺒﺘﺮﯼ ﺑﺼﻮرت زﯾﺮ ﻋﻤﻞ ﺷﻮد :
ﺟﻮاب = ١٠١٠٠١
ﺧﺎرج ﻗﺴﻤﺖ ﺑﺎﻗﻴﻤﺎﻧﺪﻩ ﺻﺤﻴﺢ ۴١ ٢٠ ١ ١٠ ٠ ۵ ٠ ٢ ١ ١ ٠ ٠ ١
ﺗﺒﺪﯾﻞ اﻋﺪاد ﺻﺤﻴﺢ دهﺪهﯽ ﺑﻪ ﻣﺒﻨﺎﯼ rﺷﺒﻴﻪ ﺑﻪ ﻣﺜﺎل ﻣﺬﮐﻮر اﺳﺖ ﺑﺠﺰ اﯾﻨﮑﻪ ﺗﻘﺴﻴﻢ ﻣﯽ ﺑﺎﯾﺴﺖ ﺑﻪ ﺟﺎﯼ ٢ﺑﺮ rﺻﻮرت ﮔﻴﺮد . ﻣﺜﺎل : -١-٢ :ﻋﺪد ١۵٣را ﺑﻪ ﻣﺒﻨﺎﯼ هﺸﺖ ﺑﺒﺮﯾﺪ.
= (231)8
١ ٣ ٢
١۵٣ ١٩ ٢ ٠
ﻣﺜﺎل -١-٣ :ﻋﺪد ) (0.6875را ﺑﻪ ﻣﺒﻨﺎﯼ دو ﺑﺒﺮﯾﺪ . 10 ﺿﺮﯾﺐ
ﮐﺴﺮﯼ
a =1 −1 a =0 −2 a =1 −3 a =1 −4
ﺻﺤﻴﺢ
٠٫٣٧۵٠
+
١
= 0.6875 × 2
٠٫٧۵٠٠
+
٠
= 0.3750 × 2
٠٫۵٠٠٠
+
١
= 0.7500 × 2
٠٫٠٠٠٠
+
١
= 0.5000 × 2
: (0.6875) = (0.a aﺟﻮاب
a a ) = (0.1011 −1 − 2 − 3 − 4 2 2
10
ﺑﺮاﯼ ﺗﺒﺪﯾﻞ ﯾﮏ ﻋﺪد ﮐﺴﺮﯼ از ﻣﺒﻨﺎﯼ دﻩ ﺑﻪ ﯾﮏ ﻋﺪد در ﭘﺎﯾﻪ ، rروش ﻣﺸﺎﺑﻬﯽ اﻧﺠﺎم ﻣﯽ ﺷﻮد .
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٩
ﻓﻘﻂ ﺑﻪ ﺟﺎﯼ ﺿﺮب در ، ٢ﺿﺮب در rاﻧﺠﺎم ﻣﯽ ﮔﺮدد و ﺿﺮاﯾﺐ ﺣﺎﺻﻞ از ﻗﺴﻤﺘﻬﺎﯼ ﺻﺤﻴﺢ ﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﻪ ﺟﺎﯼ ٠و ١در ﻣﺤﺪودﻩ ﺑﻴﻦ ٠ﺗﺎ r-١ﺑﺎﺷﻨﺪ .
ﻣﺜﺎل : ١-۴ :ﻋﺪد _ )(0.513 10
را ﺑﻪ ﻣﺒﻨﺎﯼ هﺸﺖ ﺑﺒﺮﯾﺪ .
0.413× 8 = 4.104 0.104 × 8 = 0.832 0.832 × 8 = 6.656 0.656 × 8 = 5.248 0.248 × 8 = 1.984 0.984 × 8 = 7.872 ﺟﻮاب ﺗﺎ هﻔﺖ رﻗﻢ ﺑﺎ ﻣﻌﻨﯽ ،از ﻗﺴﻤﺘﻬﺎﯼ ﺻﺤﻴﺢ ﺣﺎﺻﻞ ﺿﺮب هﺎ ﺑﺪﺳﺖ ﻣﯽ ﺁﯾﺪ . )(0.513) = (0.406517... 10 8
ﺗﺒﺪﯾﻞ اﻋﺪاد دهﺪهﯽ ﮐﻪ داراﯼ هﺮ دو ﻗﺴﻤﺖ ﺻﺤﻴﺢ و ﮐﺴﺮﯼ هﺴﺘﻨﺪ ﺑﻪ اﯾﻦ ﺻﻮرت اﻧﺠﺎم ﻣﻴﮕﻴﺮد ﮐﻪ هﺮ ﻗﺴﻤﺖ ﺑﻄﻮر ﻣﺠﺰا ﺗﺒﺪﯾﻞ ﺷﺪﻩ ﺳﭙﺲ ﺟﻮاﺑﻬﺎ ﺑﺎ هﻢ ﺗﺮﮐﻴﺐ ﻣﯽ ﺷﻮﻧﺪ .ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻧﺘﺎﯾﺞ ﻣﺜﺎل ١-١و ١-٣دارﯾﻢ : )(41.6875) = (101001.1011 10 2
از ﻣﺜﺎﻟﻬﺎﯼ ١-٢و ١-۴ﻧﻴﺰ دارﯾﻢ : )(153.513) = (231.406517 10 8
١-۴اﻋﺪاد ﻣﺒﻨﺎﯼ هﺸﺖ و ﺷﺎﻧﺰدﻩ ﺗﺒﺪﯾﻞ از ﻣﺒﻨﺎﯼ دو ﺑﻪ ﻣﺒﻨﺎﯼ هﺸﺖ و ﺷﺎﻧﺰدﻩ و ﺑﺎﻟﻌﮑﺲ ﻧﻘﺶ ﻣﻬﻤﯽ در ﮐﺎﻣﭙﻴﻮﺗﺮهﺎﯼ دﯾﺠﻴﺘﺎل دارد .ﭼﻮن 23 = 8و
24 = 16
اﺳﺖ ،هﺮ رﻗﻢ در ﻣﺒﻨﺎﯼ هﺸﺖ ﻣﻄﺎﺑﻖ ﺳﻪ رﻗﻢ
دودوﯾﯽ و هﺮ رﻗﻢ ﺑﺮ ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ،ﭼﻬﺎر رﻗﻢ دودوﯾﯽ اﺳﺖ .ﺗﺒﺪﯾﻞ ﻣﺒﻨﺎﯼ دو ﺑﻪ هﺸﺖ ﺑﻪ ﺳﺎدﮔﯽ ﺑﺎ ﺗﻘﺴﻴﻢ ﻋﺪد دودوﯾﯽ ﺑﻪ دﺳﺘﻪ هﺎﯼ ﺳﻪ ﺗﺎﯾﯽ از ﻧﻘﻄﻪ اﻋﺸﺎرﯼ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٠
دودوﯾﯽ ﺑﻪ ﺳﻤﺖ ﭼﭗ و راﺳﺖ ﺻﻮرت ﻣﯽ ﮔﻴﺮد و ﺑﻪ هﺮ دﺳﺘﻪ از اﯾﻦ اﻋﺪاد ﯾﮏ رﻗﻢ در ﻣﺒﻨﺎﯼ هﺸﺖ ﻧﺴﺒﺖ دادﻩ ﻣﯽ ﺷﻮد .ﻣﺜﺎل زﯾﺮ ﻧﺸﺎن دهﻨﺪﻩ روﻧﺪ ﻣﺮﺑﻮﻃﻪ اﺳﺖ : 10 110 001 101 011 111 100 000 110 )) = (26153.7406 . 8 2 6 1 5 3 7 4 0 6 2
(
ﺗﺒﺪﯾﻞ از ﻣﺒﻨﺎﯼ دو ﺑﻪ ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﻧﻴﺰ ﻣﺸﺎﺑﻪ ﺑﺎ روﻧﺪ ﺑﺎﻻ اﺳﺖ ،ﺑﺎ اﯾﻦ ﺗﻔﺎوت ﮐﻪ ﻋﺪد دودوﯾﯽ ﺑﻪ دﺳﺘﻪ هﺎﯼ ﭼﻬﺎرﺗﺎﯾﯽ از ارﻗﺎم ﺗﻘﺴﻴﻢ ﺑﻨﺪﯼ ﻣﯽ ﺷﻮﻧﺪ. 10 1100 0110 1011 1111 0010 )) = (2C 6B.F 2 16 B 2 C 6 F 2 2
(
هﺮ ﻋﺪد در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ) هﺸﺖ ٩ﻣﺘﻨﺎﺳﺐ ﺑﺎ هﺮ دﺳﺘﻪ از ارﻗﺎم دودوﯾﯽ ،ﺑﻌﺪ از ﻣﻄﺎﻟﻌﻪ ﻣﻘﺎدﯾﺮ ﺛﺒﺖ ﺷﺪﻩ در ﺟﺪول ) (١-١ﺑﻪ ﺳﺎدﮔﯽ ﺗﻌﻴﻴﻦ ﻣﯽ ﺷﻮد . ﺗﺒﺪﯾﻞ از ﻣﺒﻨﺎﯼ هﺸﺖ ﯾﺎ ﺷﺎﻧﺰدﻩ ﺑﻪ ﻣﺒﻨﺎﯼ دو ﺑﺎ روﺷﯽ ﻋﮑﺲ روش ﺑﺎﻻ ﺻﻮرت ﻣﯽ ﮔﻴﺮد .هﺮ رﻗﻢ در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﺑﻪ ﭼﻬﺎر رﻗﻢ ﻣﻌﺎدل در ﻣﺒﻨﺎﯼ دو ﺗﺒﺪﯾﻞ ﻣﯽ ﺷﻮد . ﺑﻄﻮر ﻣﺸﺎﺑﻪ هﺮ رﻗﻢ در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﺑﻪ ﻣﻌﺎدل دودوﯾﯽ ﭼﻬﺎر رﻗﻤﯽ ﺧﻮد ﺗﺒﺪﯾﻞ ﻣﯽ ﮔﺮدد .اﯾﻦ ﻣﻄﻠﺐ در ﻣﺜﺎل زﯾﺮ ﺗﺸﺮﯾﺢ ﺷﺪﻩ اﺳﺖ :
110 111 011 001 010 100 ( = )(673.124 ) 8 6 7 3 1 2 4 2 0011 0000 0110 1101 ( = )(306.D . ) 16 D 2 3 0 6 ﮐﺎرﮐﺮدن ﺑﺎ اﻋﺪاد دودوﯾﯽ ﺑﻪ دﻟﻴﻞ اﯾﻨﮑﻪ ﺗﻌﺪاد ارﻗﺎﻣﺸﺎن ﺳﻪ ﯾﺎ ﭼﻬﺎر ﺑﺮاﺑﺮ ﻋﺪد ﻣﻌﺎدﻟﺸﺎن در ﻣﺒﻨﺎﯼ دﻩ ﻣﯽ ﺑﺎﺷﺪ ﻣﺸﮑﻞ اﺳﺖ ) .ﻣﺜﻼً ﻋﺪد دودوﯾﯽ ١١١١ ١١١١ ١١١١ﻣﻌﺎدل ﻋﺪد دهﺪهﯽ ۴٠٩۵اﺳﺖ .ﺑﺎ اﯾﻦ وﺟﻮد ﮐﺎﻣﭙﻴﻮﺗﺮهﺎﯼ دﯾﺠﻴﺘﺎل از اﻋﺪاد دودوﯾﯽ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ و ﮔﺎهﯽ ﻧﻴﺰ ﻻزم اﺳﺖ ﮐﻪ اﭘﺮاﺗﻮر و ﯾﺎ اﺳﺘﻔﺎدﻩ ﮐﻨﻨﺪﻩ ﻣﺴﺘﻘﻴﻤﺎٌ ﺑﻪ وﺳﻴﻠﻪ اﻋﺪاد دودوﯾﯽ ﺑﺎ ﻣﺎﺷﻴﻦ ارﺗﺒﺎط ﺑﺮﻗﺮار ﮐﻨﺪ .ﯾﮏ راﻩ ﺑﺮاﯼ ﻧﮕﻬﺪارﯼ ﺳﻴﺴﺘﻢ دودوﯾﯽ در ﮐﺎﻣﭙﻴﻮﺗﺮ ﮐﻪ ﺿﻤﻨﺎً ﺗﻌﺪاد ارﻗﺎم را ﻧﻴﺰ ﮐﺎهﺶ ﻣﯽ دهﺪ ،اﯾﻦ اﺳﺖ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١١
ﮐﻪ از ارﺗﺒﺎط ﺑﻴﻦ ﺳﻴﺴﺘﻢ اﻋﺪاد دودوﯾﯽ و ﺳﻴﺴﺘﻢ هﺸﺖ ﺗﺎﯾﯽ ﯾﺎ ﺷﺎﻧﺰدﻩ اﺳﺘﻔﺎدﻩ ﺷﻮد .ﺑﺎ اﯾﻦ روش اﻧﺴﺎن ﻣﯽ ﺗﻮاﻧﺪ ﺑﺮ ﺣﺴﺐ اﻋﺪاد ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﯾﺎ هﺸﺖ ﺗﺎﯾﯽ ﻓﮑﺮ ﮐﺮدﻩ و در ﻣﻮاﻗﻌﯽ ﮐﻪ ارﺗﺒﺎط ﻣﺴﺘﻘﻴﻢ ﺑﺎ ﻣﺎﺷﻴﻦ ﻻزم اﺳﺖ ﺗﺒﺪﯾﻞ ﻻزﻣﻪ را ﺑﺎ ﺑﺎزدﯾﺪ ﮐﺮدن اﯾﻦ اﻋﺪاد اﻧﺠﺎم دهﺪ .ﺑﻪ اﯾﻦ ﺗﺮﺗﻴﺐ ﻋﺪد دودوﯾﯽ ١١١١ ١١١١ ١١١١ﮐﻪ داراﯼ دوازدﻩ رﻗﻤﻦ اﺳﺖ در ﻣﺒﻨﺎﯼ هﺸﺖ ﺑﻪ ﺻﻮرت ﭼﻬﺎر رﻗﻢ ٧٧٧٧ﺑﻴﺎن ﻣﯽ ﺷﻮد و ﯾﺎ در ﻣﺒﻨﺎﯼ ﺷﺎﻧﺰدﻩ ﺑﻪ ﺻﻮرت ﺳﻪ رﻗﻢ FFFﺧﻮاهﺪ ﺑﻮد .در ارﺗﺒﺎﻃﺎت ﺑﻴﻦ ﻣﺮدم ) در ﻣﻮرد اﻋﺪاد اردودوﯾﯽ در ﮐﺎﻣﭙﻴﻮﺗﺮ ( ﻧﻤﺎﯾﺶ اﻋﺪاد در ﻣﺒﻨﺎهﺎﯼ هﺸﺖ و ﺷﺎﻧﺰدﻩ ﻣﻄﻠﻮب ﺗﺮ اﺳﺖ زﯾﺮا ﮐﻪ در اﯾﻦ ﻣﺒﻨﺎهﺎ اﻋﺪاد ﺑﻪ ﺻﻮرت ﮐﻮﭼﮑﺘﺮﯼ ﺑﺎ ١/٣ﯾﺎ ١/۴ﺗﻌﺪاد ارﻗﺎم ﻣﻌﺎدﻟﺸﺎن در دودوﯾﯽ ﻗﺎﺑﻞ ﻧﻤﺎﯾﺶ هﺴﺘﻨﺪ . -١-۵ﻣﮑﻤﻞ هﺎ ﻣﮑﻤﻞ هﺎ در ﮐﺎﻣﭙﻴﻮﺗﺮهﺎﯼ دﯾﺠﻴﺘﺎل ﺑﺮاﯼ ﺳﺎدﻩ ﮐﺮدن ﻋﻤﻞ ﺗﻔﺮﯾﻖ و ﯾﺎ ﻋﻤﻠﻴﺎت ﻣﻨﻄﻘﯽ ﺑﻪ ﮐﺎر ﻣﯽ روﻧﺪ .در هﺮ ﻣﺒﻨﺎﯼ rدو ﻧﻮع ﻣﮑﻤﻞ ﺑﺮاﯼ هﺮ ﺳﻴﺴﺘﻢ وﺟﻮد دارد :ﯾﮑﯽ ﻣﮑﻤﻞ ﻣﺒﻨﺎ ﯾﺎ ﭘﺎﯾﻪ و دﯾﮕﺮﯼ ﻣﮑﻤﻞ ﻣﺒﻨﺎ ﯾﺎ ﭘﺎﯾﻪ ﮐﺎهﺶ ﯾﺎﻓﺘﻪ اﺳﺖ .ﻓﺮم اول ﺑﻪ ﻣﮑﻤﻞ r و دوﻣﯽ ﺑﻪ ﻣﮑﻤﻞ ) ( r -١ﻣﻮﺳﻮم اﺳﺖ .وﻗﺘﯽ ﻣﻘﺪار ﭘﺎﯾﻪ را ﺟﺎﯾﮕﺰﯾﻦ ﮐﻨﻴﻢ ،ﺑﺮاﯼ اﻋﺪاد دودوﯾﯽ ﻣﮑﻤﻞ هﺎﯼ ٢و ١ﺑﺮاﯼ اﻋﺪاد ﻣﮑﻤﻞ هﺎﯼ ١٠و ٩را ﺧﻮاهﻴﻢ داﺷﺖ . ﻣﮑﻤﻞ در ﭘﺎﯾﻪ ﮐﺎهﺶ ﯾﺎﻓﺘﻪ ﺑﺮاﯼ ﻋﺪدﯼ ﻣﺎﻧﻨﺪ Nدر ﻣﺒﻨﺎ ﯾﺎ ﭘﺎﯾﻪ rﮐﻪ داراﯼ nرﻗﻢ اﺳﺖ ،ﻣﮑﻤﻞ ) ( r-١ﻣﺮﺑﻮط ﺑﻪ N ﺑﺼﻮرت
(r n − 1) − N
ﺗﻌﺮﯾﻒ ﻣﯽ ﺷﻮد .ﺑﺮاﯼ اﻋﺪادﯼ ﺑﺎ r = ١٠و ، r -١= ٩ﻣﮑﻤﻞ
٩ﺑﺮاﯼ ﻋﺪد Nﺑﺮاﺑﺮ اﺳﺖ ﺑﺎ
(10n − 1) − N
.ﻋﺪد
n
١٠ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ﯾﮏ ﻋﺪد ١ﮐﻪ
nﻋﺪد ٠ﺑﺪﻧﻴﺎل ﺁن ﺁﻣﺪﻩ اﺳﺖ .ﺑﻬﻤﻴﻦ ﺗﺮﺗﻴﺐ ١٠n-١ﺑﺮاﺑﺮﺳﺖ ﺑﺎ nﻋﺪد . ٩ﻣﺜﻼً اﮔﺮ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٢
n=۴ﺑﺎﺷﺪدارﯾﻢ 104 =10000و 104 −1 = 9999دﯾﺪﻩ ﻣﯽ ﺷﻮد ﮐﻪ ﻣﮑﻤﻞ ٩ﯾﮏ ﻋﺪد دهﺪهﯽ از ﺗﻔﺮﯾﻖ هﺮ رﻗﻢ ﺁن از ٩ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد .ﺑﻪ ﭼﻨﺪ ﻣﺜﺎل ﻋﺪدﯼ ﺗﻮﺟﻪ ﮐﻨﻴﺪ . ﻣﮑﻤﻞ ٩ﻋﺪد ۵۴۶٧٠٠ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٩٩٩٩٩٩-۵۴۶٧٠٠=۴۵٣٢٩٩ ﻣﮑﻤﻞ ٩ﻋﺪد ٠١٢٣٩٨ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٩٩٩٩٩٩-٠١٢٣٩٨=٩٨٧۶٠١ ﺑﺮاﯼ اﻋﺪاد دودوﯾﯽ r=٢ ،و r-١=١اﺳﺖ ،ﻟﺬا ﻣﮑﻤﻞ ١ﻋﺪد nﺑﺮاﺑﺮﺳﺖ ﺑﺎ . (٢n -١)– nﻣﺠﺪداً ٢nاز ﯾﮏ ﻋﺪد دودوﯾﯽ ﻣﺘﺸﮑﻞ از ﯾﮏ ١و ﺗﻌﺪادﯼ ٠ﺑﺪﻧﺒﺎل ﺁن اﺳﺖ ٢n -١ .ﻧﻴﺰ ﺑﻮﺳﻴﻠﻪ nﻋﺪد ١ﻧﺸﺎن دادﻩ ﻣﯽ ﺷﻮد .ﻣﺜﻼً اﮔﺮ n=۴ﺑﺎﺷﺪ دارﯾﻢ 2
) 24 = (10000و . 24 − 1 = 1111
ﻣﮑﻤﻞ ١ﯾﮏ ﻋﺪد دودوﯾﯽ از ﺗﺒﺪﯾﻞ ١هﺎ ﺑﻪ ٠هﺎ و ﺑﻪ ١ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد . ﻣﮑﻤﻞ ١ﻋﺪد ١٠١١٠٠٠ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٠١٠٠١١١ ﻣﮑﻤﻞ ١ﻋﺪد ٠١٠١١٠١ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ١٠١٠٠١٠ ﻣﮑﻤﻞ ) ( r-١اﻋﺪاد ﻣﺒﻨﺎﯼ هﺸﺖ و ﺷﺎﻧﺰدﻩ ﺑﻪ ﺗﺮﺗﻴﺐ از ﺗﻔﺮﯾﻖ ارﻗﺎم از ٧ﯾﺎ ) Fﻣﻌﺎدل ١۵دهﺪهﯽ ( ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد . ﻣﮑﻤﻞ ﭘﺎﯾﻪ r ﻣﮑﻤﻞ rﯾﮏ ﻋﺪد nرﻗﻤﯽ ﻣﺎﻧﻨﺪ Nدر ﻣﺒﻨﺎﯼ rﺑﺼﻮرت rn-Nﺑﻪ ازاﯼ
N # 0
و ﺑﺼﻮرت ٠
ﺑﻪ ازاﯼ N=٠ﺗﻌﺮﯾﻒ ﻣﯽ ﺷﻮد .ﺑﺎ ﻣﻘﺎﯾﺴﻪ اﯾﻦ ﻧﻮع ﻣﮑﻤﻞ ﺑﺎ ﻣﮑﻤﻞ ) ( r-١ﻣﻼﺣﻈﻪ ﻣﯽ ﺷﻮد ﮐﻪ ﻣﮑﻤﻞ rاز ﺟﻤﻊ ١ﺑﺎ ﻣﮑﻤﻞ ) ( r-١ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد .زﯾﺮا r n − N = [(r n − 1) − N ] + 1اﺳﺖ .ﺑﻨﺎﺑﺮاﯾﻦ ﻣﮑﻤﻞ ١٠ﯾﮏ ﻋﺪد دهﺪهﯽ ﻣﺎﻧﻨﺪ ٢٣٨٩ ﺑﺮاﺑﺮاﺳﺖ ﺑﺎ ٧۶١٠+١=٧۶١١و ﺑﺎ اﻓﺰودن ١ﺑﻪ ﻣﻘﺪار ﻣﮑﻤﻞ ٩ﺣﺎﺻﻞ ﮔﺮدﯾﺪﻩ اﺳﺖ .
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٣
ﻣﮑﻤﻞ ﻋﺪد دودوﯾﯽ ١٠١١٠٠ﺑﺮاﺑﺮ اﺳﺖ ﺑﺎ ٠١٠٠١١+١=٠١٠١٠٠و از ﺟﻤﻊ ١ﺑﺎ ﻣﮑﻤﻞ ١ﻋﺪ ﺣﺎﺻﻞ ﺷﺪﻩ اﺳﺖ .
ﭼﻮن 10n
ﻋﺪدﯼ اﺳﺖ ﮐﻪ ﺑﺎ ﯾﮏ ١و nﻋﺪد ٠ﺑﺪﻧﻴﺎل ﺁن ﺳﺎﺧﺘﻪ ﺷﺪﻩ اﺳﺖ ،ﻣﮑﻤﻞ
ﻋﺪد Nﯾﻌﻨﯽ
−N
10nﻧﻴﺰ ﺑﺎ ﺗﻐﻴﻴﺮ ﻧﺪادن ٠هﺎﯼ ﮐﻢ ارزﺷﺘﺮ و ﮐﺴﺮ اوﻟﻴﻦ رﻗﻢ ﻏﻴﺮ
ﺻﻔﺮ از ١٠و ﺗﻔﺮﯾﻖ ﺗﻤﺎم ارﻗﺎم ﺑﺎ ارزﺷﺘﺮ از ٩ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد . ﻣﮑﻤﻞ ١٠ﻋﺪد ٠١٢٣٩٨ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٩٨٧۶٠٢ ﻣﮑﻤﻞ ١٠ﻋﺪد ٢۴۶٧٠٠ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٧۵٣٣٠٠ ﻣﮑﻤﻞ ١٠اوﻟﻴﻦ ﻋﺪد از ﺗﻔﺮﯾﻖ ٨از ١٠در ﮐﻢ ارزش ﺗﺮﯾﻦ ﻣﮑﺎن و ﺗﻔﺮﯾﻖ ﺑﻘﻴﻪ ارﻗﺎم از ٩ ﺣﺎﺻﻞ ﺷﺪﻩ اﺳﺖ .ﻣﮑﻤﻞ ١٠دوﻣﻴﻦ ﻋﺪ ﺑﺪﯾﻦ ﻓﺮم ﺣﺎﺻﻞ ﺷﺪﻩ ﮐﻪ دو ﻋﺪد ٠ﺑﺎ ارزش ﮐﻤﺘﺮ ﺑﺪون ﺗﻐﻴﻴﺮ ﻣﺎﻧﺪﻩ درﺣﺎﻟﻴﮑﻪ ٧از ١٠و ﺳﻪ رﻗﻢ دﯾﮕﺮ از ٩ﮐﺴﺮ ﺷﺪﻩ اﺳﺖ . ﺑﻄﻮر ﻣﺸﺎﺑﻪ ﻣﮑﻤﻞ ٢دﻣﯽ ﺗﻮاﻧﺪ ﺑﺎ ﺑﺪوت ﺗﻐﻴﻴﺮ ﮔﺬاردن ٠هﺎﯼ ﮐﻢ ارزش ﺗﺮ و اوﻟﻴﻦ ١ ﭘﺲ از ﺁﻧﻬﺎو ﺟﺎﯾﮕﺰﯾﻨﯽ ١هﺎ ﯾﺎ ٠هﺎ ﺑﺎ ١در ﺳﺎﯾﺮ ﺳﺘﻮن هﺎﯼ ارﻗﺎم ﺑﺎ ارزﺷﺘﺮ ﺑﺪﺳﺖ ﺁﯾﺪ . ﻣﮑﻤﻞ ٢ﻋﺪد ١١٠١١٠٠ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ٠٠١٠١٠٠ ﻣﮑﻤﻞ ٢ﻋﺪد ٠١١٠١١١ﺑﺮاﺑﺮﺳﺖ ﺑﺎ ١٠٠١٠٠١ ﻣﮑﻤﻞ ٢اوﻟﻴﻦ ﻋﺪد ﺑﺎ ﺑﺪون ﺗﻐﻴﻴﺮ ﮔﺬاﺷﺘﻦ دو ٠ﺑﺎ ارزش ﮐﻤﺘﺮ و ﻧﻴﺰ اوﻟﻴﻦ ١ﭘﺲ از ﺁﻧﻬﺎ و ﺳﭙﺲ ﺟﺎﯾﮕﺰﯾﻨﯽ ١هﺎ ﺑﺎ ٠و ٠هﺎ ﺑﺎ ١در ﭼﻬﺎر ﺳﺘﻮن ﺑﺎﻗﻴﻤﺎﻧﺪﻩ ﺣﺎﺻﻞ ﺷﺪﻩ اﺳﺖ . دوﻣﻴﻦ ﻣﮑﻤﻞ ٢ﺑﺎ ﺗﻐﻴﻴﺮ ﻧﺪادن ﮐﻢ ارزش ﺗﺮﯼ ١و ﻣﮑﻤﻞ ﻧﻤﻮدن ﺑﻘﻴﻪ ارﻗﺎم ﺑﺪﺳﺖ ﺁﻣﺪﻩ اﺳﺖ . اﮔﺮ ﻋﺪد اوﻟﻴﻪ Nداراﯼ ﻣﻤﻴﺰ ﺑﺎﺷﺪ ﺑﺎﯾﺪ ﺁن را ﻣﻮﻗﺘﺎ ﺣﺬف و ﻣﮑﻤﻞ هﺎﯼ rو ) ( r-١را ﺑﺪﺳﺖ ﺁورد .ﺳﭙﺲ ﺁن را ﺑﻪ هﻤﺎن ﻣﮑﺎﻧﯽ ﻧﺴﺒﯽ ﻋﺪد ﻣﮑﻤﻞ ﺑﺎزﮔﺮداﻧﺪ .هﻤﭽﻨﻴﻦ ذﮐﺮ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٤
اﯾﻦ ﻧﮑﺘﻪ ﮐﻪ ﻣﮑﻤﻞ ﻣﺮﺑﻮط ﺑﻪ ﻣﮑﻤﻞ ﯾﮏ ﻋﺪد هﻤﺎن اوﻟﻴﻪ را ﻧﺘﻴﺠﻪ ﻣﯽ دهﺪ ﻣﻔﻴﺪ ﺑﻨﻈﺮ ﻣﯽ رﺳﺪ .ﻣﮑﻤﻞ rﻋﺪد Nﺑﺮاﺑﺮﺳﺖ ﺑﺎ rn - Nﻣﮑﻤﻞ ﻣﺮﺑﻮط ﺑﻪ اﯾﻦ ﻣﮑﻤﻞ ﺑﺮاﺑﺮﺳﺖ ﺑﺎ r n − (r n − N ) = Nﮐﻪ هﻤﺎن ﻋﺪد اوﻟﻴﻪ اﺳﺖ . ﺗﻔﺮﯾﻖ ﺑﻪ ﮐﻤﮏ ﻣﮑﻤﻞ هﺎ ﺗﻔﺮﯾﻖ دو ﻋﺪد nرﻗﻤﯽ ﺑﺪون ﻋﻼﻣﺖ M-Nدر ﭘﺎﯾﻪ rﺑﻄﺮﯾﻖ زﯾﺮ ﺻﻮرت ﻣﯽ ﮔﻴﺮد . -١ﻣﻔﺮوق Mرا ﺑﻪ ﻣﮑﻤﻞ rﻣﻔﺮوق ﻣﻨﻪ Nاﺿﺎﻓﻪ ﮐﻨﻴﺪ ﯾﻌﻨﯽ
M + (r n − N ) = M − N − r n -٢اﮔﺮ M ≥ N
ﺑﺎﺷﺪ ،ﺟﻤﻊ ﯾﮏ رﻗﻢ ﻧﻘﻠﯽ ﻧﻬﺎﯾﯽ rnﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﭼﺸﻢ ﭘﻮﺷﯽ
ﻣﯽ ﺷﻮد ،ﺁﻧﭽﻪ ﺑﺎﻗﯽ ﻣﯽ ﻣﺎﻧﺪ M-Nاﺳﺖ . -٣اﮔﺮ
M
ﺑﺎﺷﺪ ،ﺟﻤﻊ هﻴﭽﮕﻮﻧﻪ رﻗﻢ ﻧﻘﻠﯽ ﻧﻬﺎﯾﯽ ﺗﻮﻟﻴﺪ ﻧﻨﻤﻮدﻩ وﺟﻮاب
) r n − ( N − Mﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﻣﮑﻤﻞ rﻋﺪد ) (M-Nاﺳﺖ .ﺑﺮاﯼ ﯾﺎﻓﺘﻦ ﺟﻮاب ﺑﻔﺮم ﻣﻌﻤﻮل ،ﻣﮑﻤﻞ rﺣﺎﺻﻞ ﺟﻤﻊ را ﺑﺪﺳﺖ ﺁوردﻩ و ﯾﮏ ﻋﻼﻣﺖ ﻣﻨﻔﯽ در ﺟﻠﻮ ﺁن ﻗﺮار ﻣﯽ دهﻴﻢ . ﻣﺜﺎل : ١-۵ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ٧٢۵٣٢ – ٣٢۵٠ ،١٠را ﺑﺪﺳﺖ ﺁورﯾﺪ . ٧٢۵٣٢
=M
+٩۶٧۵٠
= ﻣﮑﻤﻞ ١٠ﻋﺪد N
١۶٩٢٨٢
= ﺣﺎﺻﻞ ﺟﻤﻊ
-١٠٠٠٠٠
= ﺣﺬف رﻗﻢ ﻧﻘﻠﯽ ١٠
۶٩٢٨٢
= ﺟﻮاب
۵
دﻗﺖ ﮐﻨﻴﺪ ﮐﻪ Mداراﯼ ﭘﻨﺞ رﻗﻢ وﻟﯽ Nﻓﻘﻂ داراﯼ ﭼﻬﺎر رﻗﻢ اﺳﺖ .ﭼﻮن هﺮ دو ﻋﺪد ﺑﺎﯾﺪ داراﯼ ﺗﻌﺪاد ارﻗﺎم ﺑﺮاﺑﺮ ﺑﺎﺷﻨﺪ ،ﭘﺲ ﺑﺎﯾﺪ ﺑﺼﻮرت ٠٣٢۵٠ﻧﻮﺷﺘﻪ ﻣﯽ ﺷﻮد .
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٥
ﻣﺜﺎل : ١-۶ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ٣٢۵٠-٧٢۵٣٢ ، ١٠را ﺑﺪﺳﺖ ﺁورﯾﺪ . ٠٣٢۵
=M
+٢٧۴۶٨
= ﻣﮑﻤﻞ ١٠ﻋﺪد N
30718
= ﺣﺎﺻﻞ ﺟﻤﻊ رﻗﻢ ﻧﻘﻠﯽ وﺟﻮد ﻧﺪارد
) =-۶٩٢٨٢ﻣﮑﻤﻞ ١٠ﻋﺪد : -( ٣٠٧١٨ﺟﻮاب ﺗﻮﺟﻪ ﮐﻨﻴﺪ ﭼﻮن ٣٢۵٠ < ٧٢۵٣٢اﺳﺖ ،ﺟﻮاب ﻣﻨﻔﯽ اﺳﺖ . ﻣﺜﺎل : ١-٧ﺑﺎ ﻓﺮض دود ﻋﺪد دودوﯾﯽ X=١٠١٠١٠٠و ، Y = ١٠٠٠٠١١ﺗﻔﺮﯾﻖ هﺎﯼ : ) اﻟﻒ ( X-Yو )ب ( Y-Xرا ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ٢ﺑﺪﺳﺖ ﺁورﯾﺪ . ١٠١٠١٠٠
=X
+٠١١١١٠١
= ﻣﮑﻤﻞ ٢ﻋﺪد Y
١٠٠١٠٠٠١
= ﺣﺎﺻﻞ ﺟﻤﻊ
-١٠٠٠٠٠٠٠
= رﻗﻢ ﻧﻘﻠﯽ ﺣﺬف ﺷﺪﻩ ٢
٠٠١٠٠٠١
= ﺟﻮاب X-Y
١٠٠٠٠١١
=Y
+٠١٠١١٠٠
= ﻣﮑﻤﻞ ٢ﻋﺪد X
١١٠١١١١
= ﺣﺎﺻﻞ ﺟﻤﻊ
٧
رﻗﻢ ﻧﻘﻠﯽ وﺟﻮد ﻧﺪارد ) = -٠٠١٠٠٠١ﻣﮑﻤﻞ ٢ﻋﺪد : Y-X = -( ١١٠١١١١ﺟﻮاب
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٦
ﺗﻔﺮﯾﻖ اﻋﺪاد ﺑﺪون ﻋﻼﻣﺖ ﻣﯽ ﺗﻮاﻧﺪ ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ) ( R-١ﻧﻴﺰ اﻧﺠﺎم ﺷﻮد .ﺑﺨﺎﻃﺮ ﺑﻴﺎورﯾﺪ ﮐﻪ ﻣﮑﻤﻞ ) ( R-١ﯾﮑﯽ ﮐﻤﺘﺮ از ﻣﮑﻤﻞ rاﺳﺖ .ﺑﻪ اﯾﻦ ﻋﻠﺖ ،ﻧﺘﻴﺠﻪ ﺟﻤﻊ ﻣﻔﺮوق ﺑﻪ ﻣﮑﻤﻞ ﻣﻔﺮوق ﻣﻨﻪ ﺣﺎﺻﻞ ﺟﻤﻌﯽ ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﯾﮑﯽ ﮐﻤﺘﺮ از ﺗﻔﺎﺿﻞ ﺻﺤﻴﺢ ﺑﻬﻨﮕﺎم رﺧﺪاد رﻗﻢ ﻧﻘﻠﯽ ﻧﻬﺎﯾﯽ اﺳﺖ .ﺣﺬف رﻗﻢ ﻧﻘﻠﯽ ﻧﻬﺎﯾﯽ و اﻓﺰودن ﺁن ﺑﻪ ﺣﺎﺻﻞ ﺟﻤﻊ ﺑﻨﺎم رﻗﻢ ﻧﻘﻠﯽ ﭼﺮﺧﺸﯽ ﺧﻮاﻧﺪﻩ ﻣﯽ ﺷﻮد . ﻣﺜﺎل : ١-٨ﻣﺜﺎل ١-٧را ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ١ﺗﮑﺮار ﮐﻨﻴﺪ . ) اﻟﻒ( X-Y=١٠١٠١٠٠-١٠٠٠٠١١ ١٠١٠١٠٠
=X
+ ٠١١١١٠٠
= ﻣﮑﻤﻞ ١ﻋﺪد Y
١٠٠١٠٠٠٠
= ﺣﺎﺻﻞ ﺟﻤﻊ ب
١+ ٠٠١٠٠٠١
= رﻗﻢ ﻧﻘﻠﯽ ﭼﺮﺧﺸﯽ = : X-Yﺟﻮاب
) ب( Y-X=١٠٠٠٠١١-١٠١٠١٠٠ ١٠٠٠٠١١
=Y
+ ٠١٠١٠١١
= ﻣﮑﻤﻞ ١ﻋﺪد X
١١٠١١١٠
= ﺣﺎﺻﻞ ﺟﻤﻊ رﻗﻢ ﻧﻘﻠﯽ وﺟﻮد ﻧﺪارد
-٠٠١٠٠٠١
= ) ﻣﮑﻤﻞ ١ﻋﺪد :Y-X =-( ١١٠١١١٠ﺟﻮاب
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٧
ﺗﻮﺟﻪ ﮐﻨﻴﺪ ﮐﻪ ﻧﺘﻴﺠﻪ ﻣﻨﻔﯽ ﭘﺲ از ﮔﺮﻓﺘﻦ ﻣﮑﻤﻞ ١از ﺣﺎﺻﻞ ﺟﻤﻊ ﺑﺪﺳﺖ ﺁﻣﺪﻩ اﺳﺖ . زﯾﺮا ﻣﮑﻤﻞ ١در ﺑﺎﻻ ﺑﮑﺎر رﻓﺘﻪ اﺳﺖ .روش رﻗﻢ ﻧﻘﻠﯽ ﭼﺮﺧﺸﯽ ﺑﺮاﯼ ﺗﻔﺮﯾﻖ اﻋﺪاد دهﺪهﯽ ﺑﺪون ﻋﻼﻣﺖ ﺑﺎ ﻣﮑﻤﻞ ٩ﻧﻴﺰ ﻗﺎﺑﻞ اﺳﺘﻔﺎدﻩ اﺳﺖ .
١-۶اﻋﺪاد دودودﯾﯽ ﻋﻼﻣﺖ دار ﺑﻌﻠﺖ ﻣﺤﺪودﯾﺖ ﺳﺨﺖ اﻓﺰار ،ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎ ﺑﺎﯾﺪ هﺮ ﭼﻴﺰﯼ را ﺑﺎ ارﻗﺎم دودﯾﯽ ﻧﺸﺎن دهﻨﺪ ،ﮐﻪ ﻣﻌﻤﻮﻻً اﯾﻦ ارﻗﺎم ﺑﻴﺖ ﻧﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮﻧﺪ .ﻣﻌﻤﻮل اﺳﺖ ﮐﻪ ﺳﻤﺖ ﭼﭗ ﺗﺮﯾﻦ ﺑﻴﺖ ﻋﺪد را ﺑﻪ ﻋﻼﻣﺖ اﺧﺘﺼﺎص ﻣﯽ دهﻨﺪ .ﻗﺮار اﯾﻦ اﺳﺖ ﮐﻪ اﻋﺪاد ﻣﺜﺒﺖ را ﺑﺎ ﮔﺬاﺷﺘﻦ ٠ و اﻋﺪاد ﻣﻨﻔﯽ را ﺑﺎ ﮔﺬاﺷﺘﻦ ١در ﻣﺤﻞ ﺑﻴﺖ ﻣﺰﺑﻮر ﻧﺸﺎن دهﻨﺪ . ﻣﺜﻼً ،رﺷﺘﻪ ﺑﻴﺖ هﺎﯼ ٠١٠٠١ﻣﯽ ﺗﻮاﻧﺪ ﺑﻌﻨﻮان ) ٩دودوﯾﯽ ﺑﺪون ﻋﻼﻣﺖ ( و ﯾﺎ +٩ ) دودوﯾﯽ ﻋﻼﻣﺖ دار( در ﻧﻈﺮ ﮔﺮﻓﺘﻪ ﺷﻮد زﯾﺮا ﺳﻤﺖ ﭼﭙﺘﺮﯾﻦ ﺑﻴﺖ ٠اﺳﺖ .رﺷﺘﻪ ﺑﻴﺖ هﺎﯼ ، ١١٠٠١هﺮﮔﺎﻩ ﺑﻌﻨﻮان ﻋﺪد ﺑﺪون ﻋﻼﻣﺖ در ﻧﻈﺮ ﮔﺮﻓﺘﻨﻪ ﺷﻮد ﺑﺮاﺑﺮ ٢۵ﺗﻮ ﺑﻬﻨﮕﺎم ﻋﻼﻣﺖ دار ﺑﻮدن ﺑﺮاﺑﺮ ٩را ﻧﺸﺎن ﻣﯽ دهﺪ .ﻣﮑﺎن ﻋﺪد رﻗﻢ ١وﺟﻮد دارد ﮐﻪ ﺑﻴﺎﻧﮕﺮ ﻣﻨﻔﯽ ﺑﻮدن ﻋﺪد و ﺑﻘﻴﻪ ﭼﻬﺎر ﺑﻴﺖ ﻋﺪد ٩را ﻧﺸﺎن ﻣﯽ دهﺪ .ﻣﻌﻤﻮﻻً اﮔﺮ ﻧﻮع ﻋﺪد ﻣﺸﺨﺺ ﺑﺎﺷﺪ هﻴﭽﮕﻮﻧﻪ اﺷﺘﺒﺎهﯽ در ﺗﺸﺨﻴﺺ وﺟﻮد ﻧﺨﻮاهﺪ داﺷﺖ . ﻧﻤﺎﯾﺶ اﻋﺪاد ﻋﻼﻣﺖ دار در ﺁﺧﺮﯾﻦ ﻣﺜﺎل ﻓﻮق ،ﻧﻤﺎﯾﺶ ﻣﻘﺪار – ﻋﻼﻣﺖ ﻧﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮد .در ﯾﻦ ﻧﺎﻣﮕﺬارﯼ ﻋﺪد ﺷﺎﻣﻞ ﻣﻘﺪار و ﯾﮏ ﻧﻤﺎد ) +ﯾﺎ ( -ﯾﺎ ﯾﮏ ﺑﻴﺖ ) ٠ﯾﺎ ( ١ﺑﺮاﯼ ﻣﺸﺨﺺ ﻧﻤﻮدن ﻋﻼﻣﺖ اﺳﺖ .اﯾﻦ روش ﻣﻮرد اﺳﺘﻔﺎدﻩ اﻋﺪاد ﻋﻼﻣﺖ دار در رﯾﺎﺿﻴﺎت ﻣﻌﻤﻮﻟﯽ اﺳﺖ .وﻗﺘﯽ ﮐﻪ اﻋﻤﺎل رﯾﺎﺿﯽ در ﯾﮏ ﮐﺎﻣﭙﻴﻮﺗﺮ ﭘﻴﺎدﻩ ﺳﺎزﯼ ﻣﯽ ﺷﻮﻧﺪ ،ﺑﻬﺘﺮ اﺳﺖ از روش دﯾﮕﺮﯼ ﺑﻨﺎم ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ – ﻋﻼﻣﺖ ﺑﺮاﯼ اراﺋﻪ اﻋﺪاد ﻣﻨﻔﯽ اﺳﺘﻔﺎدﻩ ﺷﻮد .در اﯾﻦ ﺳﻴﺴﺘﻢ ،ﯾﮏ ﻋﺪد ﻣﻨﻔﯽ ﺑﻮﺳﻴﻠﻪ ﻣﮑﻤﻞ ﺁن ﻣﺸﺨﺺ ﻣﯽ ﺷﻮد .در
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٨
ﺣﺎﻟﻴﮑﻪ ﺳﻴﺴﺘﻢ ﻣﻘﺪار – ﻋﻼﻣﺖ ،ﻋﺪ را ﺑﺎ ﺗﻐﻴﻴﺮ ﻋﻼﻣﺘﺶ ﻣﻨﻔﯽ ﻣﯽ ﻧﻤﺎﯾﺪ ،ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ – ﻋﻼﻣﺖ ﺑﺎ ﻣﮑﻤﻞ ﺳﺎزﯼ ،ﻣﻨﻔﯽ ﺁن را ﺗﻬﻴﻪ ﻣﯽ ﻧﻤﺎﯾﺪ .ﭼﻮن اﻋﺪاد ﻣﺜﺒﺖ هﻤﻮارﻩ ﺑﺎ ) ٠ﻣﺜﺒﺖ ( در ﺳﻤﺖ ﭼﭙﺸﺎن ﺷﺮوع ﻣﯽ ﺷﻮﻧﺪ ،ﻣﮑﻤﻞ ﺁﻧﻬﺎ هﻤﻴﺸﻪ ﺑﺎ ١ ﺁﻏﺎز ﺧﻮاهﻨﺪ ﺷﺪ ،اﯾﻦ ﻧﺸﺎﻧﮕﺮ ﻋﺪد ﻣﻨﻔﯽ اﺳﺖ .ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ – ﻋﻼﻣﺖ ﻣﯽ ﺗﻮاﻧﺪ از ﻣﮑﻤﻞ ١ﯾﺎ ٢اﺳﺘﻔﺎدﻩ ﻧﻤﺎﯾﺪ .وﻟﯽ ﻣﮑﻤﻞ ٢ﻣﺮﺳﻮم ﺗﺮ اﺳﺖ . ﺑﻌﻨﻮان ﻣﺜﺎل ،ﻓﺮض ﮐﻨﻴﺪ ﻋﺪد ٩ﺑﺼﻮرت دودوﯾﯽ ﺑﺎ هﺸﺖ ﺑﻴﺖ ﻧﺸﺎن دادﻩ ﺷﺪﻩ ﺑﺎﺷﺪ . +٩ﺑﻮﺳﻴﻠﻪ ﯾﮏ ٠در ﺳﻤﺖ ﭼﭗ ﺗﺮﯾﻦ اﻣﮑﺎن از هﺸﺖ ﺑﻴﺖ و ﺑﺪﻧﺒﺎل ﺁن ﻣﻌﺎدل دودوﯾﯽ ، ٩ﻧﺸﺎن دادﻩ ﻣﯽ ﺷﻮد و ﻧﺘﻴﺠﻪ ٠٠٠٠١٠٠١ﺧﻮاهﺪ ﺑﻮد .ﺗﻮﺟﻪ داﺷﺘﻪ ﺑﺎﺷﻴﺪ ﮐﻪ ﺗﻤﺎم هﺸﺖ ﺑﻴﺖ ﺑﺎﯾﺪ ﻣﻘﺪار داﺷﺘﻪ ﺑﺎﺷﺪ ،ﺑﻨﺎﺑﺮاﯾﻦ ٠هﺎ از ﻣﺤﻞ ﻋﻼﻣﺖ ﺗﺎ اوﻟﻴﻦ ١از ﺳﻤﺖ ﭼﭗ وارد ﺷﺪﻩ اﻧﺪ .هﺮ ﭼﻨﺪ ﮐﻪ ﻓﻘﻂ ﯾﮏ راﻩ ﺑﺮاﯼ ﻧﻤﺎﯾﺶ +٩وﺟﻮد دارد ،ﺑﺮاﯼ ﻧﻤﺎﯾﺶ -٩ﺑﺎ هﺸﺖ ﺑﻴﺖ ﺳﻪ روش ﻣﻮﺟﻮد اﺳﺖ : در ﻧﻤﺎﯾﺶ ﻣﻘﺪار – ﻋﻼﻣﺖ ١٠٠٠١٠٠١ در ﻧﻤﺎﯾﺶ ﻣﮑﻤﻞ -١ﻋﻼﻣﺖ ١١١١٠١١٠ در ﻧﻤﺎﯾﺶ ﻣﮑﻤﻞ -٢ﻋﻼﻣﺖ ١١١١٠١١١ در ﺳﻴﺴﺘﻢ ﻣﻘﺪار – ﻋﻼﻣﺖ -٩ ،از +٩و ﺑﺎ ﺗﻐﻴﻴﺮ ﺑﻴﺖ ﻋﻼﻣﺖ در ﺳﻤﺖ ﭼﭗ ﺗﺮﯾﻦ ﻣﮑﺎن از ٠ﺑﻪ ١ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد .در ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ -١ﻋﻼﻣﺖ -٩ ،را ﺑﺎ ﻣﮑﻤﻞ ﮐﺮدن ﺗﻤﺎم ﺑﻴﺖ هﺎﯼ +٩از ﺟﻤﻠﻪ ﺑﻴﺖ ﻋﻼﻣﺖ ﺑﺪﺳﺖ ﻣﯽ ﺁورﯾﻢ .در ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ -٢ﻋﻼﻣﺖ ، -٩را از ﻣﮑﻤﻞ ٢ﻋﺪد ﻣﺜﺒﺖ و از ﺟﻤﻠﻪ ﺑﻴﺖ ﻋﻼﻣﺖ ﺑﺪﺳﺖ ﻣﯽ ﺁورﯾﻢ . ﺳﻴﺴﺘﻢ ﻣﻘﺪار – ﻋﻼﻣﺖ در رﯾﺎﺿﯽ ﻣﻌﻤﻮﻟﯽ ﺑﮑﺎر ﻣﯽ رود ،وﻟﯽ وﻗﺘﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺑﮑﺎر رود ﻣﺸﮑﻼﺗﯽ ﺑﻪ هﻤﺮاﻩ دارد .ﺑﻨﺎﺑﺮاﯾﻦ ﻣﻌﻤﻮﻻً درﮐﺎﻣﭙﻴﻮﺗﺮ روش ﻣﮑﻤﻞ – ﻋﻼﻣﺖ ﺑﮑﺎر ﮔﺮﻓﺘﻪ ﻣﯽ ﺷﻮد .ﻣﮑﻤﻞ ١ﻧﻴﺰ ﻣﺸﮑﻼﺗﯽ را اﯾﺠﺎد ﻣﯽ ﻧﻤﺎﯾﺪ و ﺑﻨﺪرت ﺑﺮاﯼ اﻋﻤﺎل
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
١٩
رﯾﺎﺿﯽ ،ﺑﺠﺰ در ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎﯼ ﻗﺪﯾﻤﯽ اﺳﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد .ﻣﮑﻤﻞ ١ﺑﺮاﯼ اﻋﻤﺎل ﻣﻨﻄﻘﯽ ﻣﻔﻴﺪ اﺳﺖ ﭼﻮن ﺗﺒﺪﯾﻞ ٠ﺑﻪ ١و ﯾﺎ ﺑﻪ ١ﺑﻪ ٠ﻣﻌﺎدل ﺑﺎ ﯾﮏ ﻣﮑﻤﻞ ﺳﺎزﯼ ﻣﻨﻄﻘﯽ اﺳﺖ ﮐﻪ در ﻓﺼﻞ ﺑﻌﺪﯼ ﻧﺸﺎن دادﻩ ﺧﻮاهﺪ ﺷﺪ ..روش ﻣﺸﺎﺑﻬﯽ ﺑﻪ ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ -١ﻋﻼﻣﺖ ﻗﺎﺑﻞ اﻋﻤﺎل اﺳﺖ و در ان رﻗﻢ ﻧﻘﻠﯽ ﭼﺮﺧﺸﯽ ،هﻤﭽﻮن اﻋﺪاد ﺑﺪون ﻋﻼﻣﺖ ،ﻧﻴﺰ ﻣﻨﻈﻮر ﻣﯽ ﺷﻮد . ﺟﻤﻊ ﺣﺴﺎﺑﯽ ﺟﻤﻊ دو ﻋﺪد در ﺳﻴﺴﺘﻢ ﻣﻘﺪار – ﻋﻼﻣﺖ از ﻗﻮاﻧﻴﻦ ﻣﻌﻤﻮﻟﯽ رﯾﺎﺿﯽ ﺗﺒﻌﻴﺖ ﻣﯽ ﻧﻤﺎﯾﺪ . اﮔﺮ ﻋﻼﻣﺘﻬﺎ ﯾﮑﺴﺎن ﺑﺎﺷﻨﺪ ،دو ﻣﻘﺪار را ﺑﻪ هﻢ اﺿﺎﻓﻪ ﻣﯽ ﮐﻨﻴﻢ ﺗﺎ ﻣﺠﻤﻮع ﺑﺎ ﻋﻼﻣﺖ ﻣﺸﺘﺮﮎ را ﺑﺪهﺪ .اﮔﺮ ﻋﻼﻣﺘﻬﺎ ﻣﺨﺘﻠﻒ ﺑﺎﺷﻨﺪ ﻣﺎ ﻣﻘﺪار ﮐﻮﭼﮑﺘﺮ را از ﺑﺰرﮔﺘﺮ ﮐﻢ ﻣﯽ ﮐﻨﻴﻢ و ﻋﻼﻣﺖ ﻣﻘﺪار را ﺑﺮ ﻣﯽ ﮔﺰﻧﻴﻢ ﻣﺜﻼً ،
(+25) + (−37) = −(37 − 25) = −12 و ﺑﺪﯾﻦ ﺗﺮﺗﻴﺐ اﻧﺠﺎم ﺷﺪﻩ ﮐﻪ ﻣﻘﺪار ﮐﻮﭼﮑﺘﺮ ٢۵از ٣٧ﮐﻢ ﺷﺪﻩ و ﻋﻼﻣﺖ ٣٧ﺑﻌﻨﻮان ﻋﻼﻣﺖ ﺟﻮاب ﺑﮑﺎر رﻓﺘﻪ اﺳﺖ .اﯾﻦ روﻧﺪ ﺑﻪ ﻣﻘﺎﯾﺴﻪ ﻋﻼﻣﺘﻬﺎ و ﺳﭙﺲ اﺟﺮاﯼ ﺟﻤﻊ ﯾﺎ ﺗﻔﺮﯾﻖ ﻧﻴﺎز دارد .روش ﻣﺸﺎﺑﻬﯽ ﺑﻪ اﻋﺪاد دودوﯾﯽ در ﻓﺮم ﻣﻘﺪار – ﻋﻼﻣﺖ ﻗﺎﺑﻞ اﻋﻤﺎل اﺳﺖ .ﺑﺮﻋﮑﺲ ،ﻗﺎﻧﻮن ﺟﻤﻊ در ﺳﻴﺴﺘﻢ ﻣﮑﻤﻞ – ﻋﻼﻣﺖ ﻣﻘﺎﯾﺴﻪ ﯾﺎ ﺗﻔﺮﯾﻘﯽ را اﺣﺘﻴﺎج ﻧﺪارد ﺑﻠﮑﻪ ﻓﻘﻂ ﺟﻤﻊ ﻣﻮرد ﻧﻴﺎز اﺳﺖ . ﺟﻤﻊ دو ﻋﺪد دودوﯾﯽ ﻋﻼﻣﺖ دار ﺑﺎ اﻋﺪاد ﻣﻨﻔﯽ ﮐﻪ ﺑﻔﺮم ﻣﮑﻤﻞ ٢ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﻧﺪ از ﺟﻤﻊ دو ﻋﺪد ﺣﺎﺻﻞ ﻣﯽ ﺷﻮد ﮐﻪ ﺑﻴﺖ ﻋﻼﻣﺘﺸﺎن ﻧﻴﺰ ﻣﻨﻈﻮر ﻣﯽ ﮔﺮدد .رﻗﻢ ﻣﻨﻔﯽ در اﺑﺘﺪا ﺑﺼﻮرت ﻣﮑﻤﻞ ٢ﻣﯽ ﺑﺎﺷﻨﺪ و ﺣﺎﺻﻞ ﺟﻤﻊ اﮔﺮ ﻣﻨﻔﯽ ﺑﺎﺷﺪ ﺑﺼﻮرت ﻣﮑﻤﻞ ٢ اﺳﺖ .
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٠
١١١١١٠١٠
-۶
٠٠٠٠٠١١٠
٠٠٠٠١١٠١
+١٣
٠٠٠٠١١٠١
+۶
+٠١٣ ٠٠٠١٠٠١١
+١٩
٠٠٠٠٠١١١
+٧
١١١١١٠١٠
-۶
٠٠٠٠٠١١٠
+۶
١١١١٠٠١١
-١٣
١١١١٠٠١١
-١٣
١١١٠١١٠١
-١٩
١١١١١٠٠١
-٧
ﺑﺮاﯼ ﯾﺎﻓﺘﻦ ﯾﮏ ﺟﻮاب ﺻﺤﻴﺢ ،ﻣﺎ ﺑﺎﯾﺪ ﻣﻄﻤﺌﻦ ﺑﺎﺷﻴﻢ ﮐﻪ ﺑﺮاﯼ ﺟﺎ ﺳﺎزﯼ ﺟﺎﺻﻞ ﺟﻤﻊ ﺗﻌﺪاد ﮐﺎﻓﯽ ﺑﻴﺖ وﭼﻮد دارد .اﮔﺮ ﺑﺎ دو ﻋﺪد nﺑﻴﺖ ﺁﻏﺎز ﮐﻨﻴﻢ و ﺟﻤﻊ n+١ﺑﻴﺖ را اﺷﻐﺎل ﮐﻨﺪ ﮔﻮﯾﻴﻢ ﺳﺮرﯾﺰ رخ دادﻩ اﺳﺖ .ﺳﺮرﯾﺰ ﮐﺎﻣﭙﻴﻮﺗﺮ ﯾﮏ ﻣﺴﺌﻠﻪ اﺳﺖ زﯾﺮا ﺗﻌﺪاد ﺑﻴﺖ هﺎﯾﯽ ﮐﻪ ﻋﺪد را ﻧﮕﻪ ﻣﯽ دارﻧﺪ ﻣﺤﺪود اﺳﺖ و اﮔﺮ ﺟﻮاب ﺑﻪ اﻧﺪازﻩ ١واﺣﺪ از ﺣﺪاﮐﺜﺮ ﻣﻘﺪار ﻗﺎﺑﻞ ﻧﮕﻬﺪارﯼ در nﺑﻴﺖ ﺗﺠﺎوز ﮐﻨﺪ ﻗﺎﺑﻞ ﺟﺎﯼ دهﯽ ﻧﺨﻮاهﺪ ﺑﻮد . ﺗﻔﺮﯾﻖ ﺣﺴﺎﺑﯽ ﺗﻔﺮﯾﻖ دود ﻋﺪد ﻋﻼﻣﺖ دار ،وﻗﺘﯽ ﮐﻪ ﺑﺼﻮرت ﻣﮑﻤﻞ ٢ﺑﺎﺷﺪ ﺑﺴﻴﺎر ﺳﺎدﻩ اﺳﺖ و ﺑﺼﻮرت زﯾﺮ ﺑﻴﺎن ﻣﯽ ﮔﺮدد . ﻣﮑﻤﻞ ٢ﻣﻔﺮوق ﻣﻨﻪ را ﺑﺪﺳﺖ ﺁورﯾﺪ ) ﺑﺎ ﺑﻴﺖ ﻋﻼﻣﺖ ( و ﺁن را ﺑﺎ ﻣﻔﺮوق ) ﺑﺎ ﺑﻴﺖ ﻋﻼﻣﺖ ( ﺟﻤﻊ ﮐﻨﺪ .رﻗﻢ ﻧﻘﻠﯽ از ﻣﮑﺎن ﺑﻴﺖ ﻋﻼﻣﺖ ﺣﺬف ﻣﯽ ﮔﺮدد .
) ( ± A ) − ( + B ) = ( ± A ) + (−B ) ( ± A ) − ( − B ) = ( ± A ) + (+ B اﻣﺎ ﺗﺒﺪﯾﻞ ﯾﮏ ﻋﺪ ﻣﺜﺒﺖ ﺑﻪ ﻣﻨﻔﯽ ﺑﻪ ﺳﺎدﮔﯽ ﺑﺎ ﯾﺎﻓﺘﻦ ﻣﮑﻤﻞ ٢ﺁن اﻣﮑﺎن ﭘﺬﯾﺮ اﺳﺖ . ﻋﮑﺲ ﻣﻄﻠﺐ ﻧﻴﺰ ﺻﺤﻴﺢ اﺳﺖ زﯾﺮا ﻣﮑﻤﻞ ﯾﮏ ﻋﺪد ﻣﻨﻔﯽ ﺑﻔﺮم ﻣﮑﻤﻞ ،ﯾﮏ ﻋﺪ ﻣﺜﺒﺖ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢١
ﺗﻮﻟﻴﺪ ﻣﯽ ﻧﻤﺎﯾﺪ .ﺗﻔﺮﯾﻖ (-۶) – (-٣ ) = +٧را ﻣﻼﺣﻈﻪ ﮐﻨﻴﺪ .در دودوﯾﯽ ﺑﺎ هﺸﺖ ﺑﻴﺖ ،اﯾﻦ ﺗﻔﺮﯾﻖ ﺑﺼﻮرت ١١١١١٠١٠ – ١١١١٠٠١١ﻧﻮﺷﺘﻪ ﻣﯽ ﺷﻮد و ﻋﻤﻞ ﺗﻔﺮﯾﻖ ﺑﺎ ﺑﺪﺳﺖ ﺁوردن ﻣﮑﻤﻞ ٢ﻣﻔﺮوض ﻣﻨﻪ ) (-١٣ﺑﺼﻮرت ) (+١٣در ﻣﯽ ﺁﯾﺪ .در دودوﯾﯽ ﺑﺮاﺑﺮﺳﺖ ﺑﺎ . ١١١١١٠١٠ – ٠٠٠٠١١٠١ = ١٠٠٠٠٠١١١ﺑﺎ ﺣﺬف رﻗﻢ ﻧﻘﻠﯽ ﻧﻬﺎﯾﯽ ﭘﺎﺳﺦ ﺻﺤﻴﺢ ٠٠٠٠٠١١١ﮐﻪ هﻤﺎن ) (+٧اﺳﺖ ﺑﺪﺳﺖ ﻣﯽ ﺁﯾﺪ . ١-٧ﮐﺪهﺎﯼ دودوﯾﯽ ﯾﮏ ﻋﺪد دودوﯾﯽ nرﻗﻤﯽ را ﻣﯽ ﺗﻮان ﺑﺎ ﯾﮏ ﻣﺪار ﮐﻪ داراﯼ nﺟﺰء دودوﯾﯽ اﺳﺖ و هﺮ ﮐﺪام داراﯼ ﯾﮏ ﺳﻴﮕﻨﺎل ﺧﺮوﺟﯽ ﻣﻌﺎدل ٠و ﯾﺎ ١هﺴﺘﻨﺪ ،ﻧﺸﺎن داد .ﺳﻴﺴﺘﻢ هﺎﯼ دﯾﺠﻴﺘﺎل ﻧﻪ ﺗﻨﻬﺎ اﻋﺪاد دودوﯾﯽ ﺑﻠﮑﻪ ﺑﺴﻴﺎرﯼ از اﺟﺰاء ﮔﺴﺴﺘﻪ اﻃﻼﻋﺎﺗﯽ دﯾﮕﺮ را ﻧﻴﺰ ﻧﻤﺎﯾﺶ ﻣﯽ دهﻨﺪ و روﯼ ﺁﻧﻬﺎ ﻋﻤﻞ ﻣﯽ ﮐﻨﻨﺪ .هﺮ ﻋﻨﺼﺮ ﮔﺴﺴﺘﻪ ﻣﺴﺘﻘﻞ اﻃﻼﻋﺎﺗﯽ در ﻣﻴﺎن ﯾﮏ ﮔﺮوﻩ از ﻣﻘﺎدﯾﺮ را ﻣﯽ ﺗﻮان ﺑﺎ اﺳﺘﻔﺎدﻩ از ﮐﺪ دودوﯾﯽ ﻧﺸﺎن داد .ﮐﺪهﺎ ﺑﺎﯾﺪ ﺑﺼﻮرت دودوﯾﯽ ﺑﺎﺷﻨﺪ زﯾﺮا ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎ ﻗﺎدر ﺑﻪ ﻧﮕﻬﺪارﯼ ٠هﺎ و ١هﺎ ﻣﯽ ﺑﺎﺷﻨﺪ . ﯾﮏ ﺑﻴﺖ ،ﻃﺒﻖ ﺗﻌﺮﯾﻒ ﯾﮏ رﻗﻢ دودوﯾﯽ اﺳﺖ .وﻗﺘﯽ ﮐﻪ ﺑﻪ هﻤﺮاﻩ ﯾﮏ ﮐﺪ ﺑﮑﺎر ﻣﯽ رود ﺑﻬﺘﺮ اﺳﺖ ﮐﻪ ﺁن را ﺑﻪ ﯾﮏ ﮐﻤﻴﺖ دودوﯾﯽ ﺑﺮاﺑﺮ ﺑﺎ ٠ﯾﺎ ١هﺎ ﺗﺼﻮر ﻣﯽ ﮐﻨﻴﻢ .ﻧﻤﺎﯾﺶ ﯾﮏ ﮔﺮوﻩ از ٢nﻋﻨﺼﺮ ﺑﻪ ﺻﻮرت ﮐﺪ ،ﺑﻪ ﺣﺪاﻗﻞ nﺑﻴﺖ ﻧﻴﺎز دارد ،زﯾﺮا nﺑﻴﺖ را ﻣﯽ ﺗﻮان ﺑﻪ 2nﻃﺮﯾﻖ ﻣﺠﺰا در ﮐﻨﺎر هﻢ ﻗﺮار داد .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل هﺸﺖ ﻋﻨﺼﺮ ﻧﻴﺎزﻣﻨﺪ ﯾﮏ ﮐﺪ ﺳﻪ ﺑﻴﺘﯽ اﺳﺖ ﮐﻪ هﺮ ﺟﺰء ﺁن ﻓﻘﻂ و ﻓﻘﻂ ﺑﻪ ﯾﮑﯽ از ﺗﺮﮐﻴﺒﺎت ، ٠١١ ، ٠١٠ ، ٠٠١ ، ٠٠٠ ١١٠ ، ١٠١ ، ١٠٠و ١١١ﻧﺴﺒﺖ دادﻩ ﻣﯽ ﺷﻮد .ﻣﺜﺎﻟﻬﺎﯼ ﻓﻮق ﻧﺸﺎن ﻣﯽ دهﻨﺪ ﮐﻪ ﺗﺮﮐﻴﺒﺎت ﯾﮏ ﮐﺪ nﺑﻴﺘﯽ را ﻣﯽ ﺗﻮان ﺑﺎ ﺷﻤﺎرش دودوﯾﯽ از ﺻﻔﺮ ﺗﺎ ) ( ٢n-١ﺑﻪ دﺳﺖ ﺁورد .وﻗﺘﯽ ﮐﻪ ﺗﻌﺪاد اﺟﺰاﯼ ﯾﮏ ﮔﺮوﻩ اﻃﻼﻋﺎﺗﯽ دﻗﻴﻘﺎً ﻣﻌﺎدل ﺗﻮاﻧﯽ از ٢ﻧﺒﺎﺷﺪ ﺗﻌﺪادﯼ از ﺗﺮﮐﻴﺒﺎت ﮐﺪهﺎ را ﺑﻼاﺳﺘﻔﺎدﻩ ﺑﺎﻗﯽ ﻣﯽ ﮔﺬارﯾﻢ .ارﻗﺎم ٩ ، ... ، ١ ، ٠در دﺳﺘﮕﺎهﯽ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٢
دهﺪهﯽ ﻣﺜﺎﻟﯽ از ﭼﻨﻴﻦ ﮔﺮوهﯽ اﺳﺖ .ﭼﻬﺎر ﺑﻴﺖ ﻣﯽ ﺗﻮاﻧﺪ ﺷﺎﻧﺰدﻩ ﺗﺮﮐﻴﺐ ﻣﺠﺰا را ﺑﻪ وﺟﻮد ﺁورد اﻣﺎ از ﺁﻧﺠﺎﯾﯽ ﮐﻪ دﻩ رﻗﻢ را ﺑﻴﺸﺘﺮ ﻧﻤﯽ ﺧﻮاهﻴﻢ ﮐﺪ ﮔﺬارﯼ ﮐﻨﻴﻢ ﺷﺶ ﺗﺮﮐﻴﺐ ﺑﺎﻗﯽ ﻣﺎﻧﺪﻩ دﯾﮕﺮ ﺑﻪ ﮐﺎر ﮔﺮﻓﺘﻪ ﻧﺸﺪﻩ وﺑﻼ اﺳﺘﻔﺎدﻩ ﻣﯽ ﻣﺎﻧﺪ . اﮔﺮ ﭼﻪ ﺑﺮاﯼ ﮐﺪ ﮐﺮدن ٢nﻣﻘﺪار ﻣﺸﺘﻤﻞ ،ﻣﻴﻨﻴﻤﻢ ﺗﻌﺪاد ﺑﻴﺘﻬﺎ ﻻزم nﺗﺎﺳﺖ .وﻟﯽ ﻣﻘﺪار ﻣﺎﮐﺰﯾﻤﻢ ﺑﺮاﯼ ﺗﻌﺪاد ﺑﻴﺘﻬﺎﯼ ﻣﻮرد اﺳﺘﻔﺎدﻩ وﺟﻮد ﻧﺪارد .ﻣﺜﻼً دﻩ رﻗﻢ دهﺪهﯽ را ﻣﯽ ﺗﻮان ﺑﺎ دﻩ ﺑﻴﺖ ﺑﻪ اﯾﻦ ﺻﻮرت ﮐﺪ ﮐﺮد ﮐﻪ هﺮ رﻗﻢ دهﺪهﯽ را ﺑﻪ رﻗﻢ دودوﯾﯽ ﻧﺴﺒﺖ ﺑﺪهﻴﻢ ﮐﻪ ٩ﺗﺎ ﺻﻔﺮ و ﯾﮏ ١دارد .در اﯾﻦ ﮐﺪ ﮔﺬارﯼ وﯾﭙﻪ رﻗﻢ ۶ﺑﺎ اﯾﻦ ﺗﺮﮐﻴﺐ ﺑﺼﻮرت ٠٠٠١٠٠٠٠٠٠ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮد . ﮐﺪهﺎﯼ دهﺪهﯽ ﮐﺪهﺎﯼ دودوﯾﯽ ﺑﺮاﯼ ارﻗﺎم دهﺪهﯽ ﺣﺪاﻗﻞ ﭼﻬﺎر ﺑﻴﺖ ﻻزم دارﻧﺪ .از ﮐﻨﺎر هﻢ ﻗﺮار دادن ﭼﻬﺎر ﺑﻴﺖ ﯾﺎ ﺑﻴﺸﺘﺮ در دﻩ ﺗﺮﮐﻴﺐ ﻣﺴﺘﻘﻞ ﻣﻤﮑﻦ ،ﮐﺪهﺎﯼ ﻣﺘﻌﺪدﯼ ﻣﯽ ﺗﻮان ﺑﻪ دﺳﺖ اورد .در ﺟﺪول ) (١-٢ﺗﻌﺪادﯼ از اﯾﻦ ﺣﺎﻻت ﻣﻤﮑﻦ ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﺳﺖ . ﮐﺪ BCDﮐﺪﯼ اﺳﺖ ﮐﻪ در ﺁن از ﻣﻌﺎدل دودوﯾﯽ اﻋﺪاد در ﻣﺒﻨﺎﯼ دﻩ ﻣﺴﺘﻘﻴﻤﺎً اﺳﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد .ﺑﻪ ﺑﻴﺘﻬﺎﯼ دودوﯾﯽ ﺑﺮ ﻃﺒﻖ ﻣﮑﺎﻧﺸﺎن ﻣﯽ ﺗﻮان وزن ﯾﺎ ارزﺷﯽ ﻧﺴﺒﺖ داد . اﯾﻦ روش در ﮐﺪ ١،٢،۴،٨ ، BCDاﺳﺖ .ﻣﺜﻼً ﮐﺪ ٠١١٠ﺑﺮﺣﺴﺐ ارزش ﺑﻴﺘﻬﺎ ﻧﺸﺎن دهﻨﺪﻩ رﻗﻢ ۶دهﺪهﯽ اﺳﺖ :ﭼﻮن 0 × 8 + 1× 4 + 1× 2 + 0 ×1 = 6هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮان ارزﺷﻬﺎﯼ ﻣﻨﻔﯽ ﺑﻪ ﺻﻮرت ٨ ، ۴ ،-٢،-١را ﺑﻪ ﮐﺪ دهﺪهﯽ ﺗﺨﺼﻴﺺ داد .در اﯾﻦ ﺣﺎﻟﺖ ﺗﺮﮐﻴﺐ ، ٠١١٠ﻋﺪد ٢ﺗﻔﺴﻴﺮ ﻣﯽ ﺷﻮد و ﺑﻄﺮﯾﻖ زﯾﺮ ﻣﺤﺎﺳﺒﻪ ﻣﯽ ﮔﺮدد :
0 × 8 + 1× 4 + 1× (−2) + 0 × (−1) = 2
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٣
دو ﮐﺪ وزﯾﻦ دﯾﮕﺮ ﮐﻪ در ﺟﺪول ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﻧﺪ ٢۴٢١ ،و ۵٠۴٣٢١٠هﺴﺘﻨﺪ ﮐﻪ دهﺪهﯽ ﮐﻪ در ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎﯼ ﻗﺪﯾﻤﯽ ﺑﻪ ﮐﺎر ﻣﯽ رﻓﺘﻪ ﮐﺪ اﻓﺰوﻧﯽ -٣ﺑﻮدﻩ اﺳﺖ .اﯾﻦ ﯾﮏ ﮐﺪ ﻏﻴﺮ وزﯾﻦ اﺳﺖ ،و از ﺟﻤﻊ ﻋﺪد ٣ﺑﺎ ﻣﻘﺪار BCDﺁن ﺑﻪ دﺳﺖ ﻣﯽ ﺁﯾﺪ . ﺟﺪول ) (١-٢ﮐﺪهﺎﯼ دودوﯾﯽ ﺑﺮاﯼ ارﻗﺎم دهﺪهﯽ دوﭘﻨﺠﯽ ۵٠۴٣٢١٠ ٠١٠٠٠٠١ ٠١٠٠٠١٠ ٠١٠٠١٠٠ ٠١٠١٠٠٠ ٠١١٠٠٠٠ ١٠٠٠٠٠١ ١٠٠٠٠١٠ ١٠٠٠١٠٠ ١٠٠١٠٠٠ ١٠١٠٠٠٠
٢۴٢١
٨۴-٢-١
اﻓﺰوﻧﯽ ٣-
٠٠٠٠ ٠٠٠١ ٠٠١٠ ٠٠١١ ٠١٠٠ ١٠١١ ١١٠٠ ١١٠١ ١١١٠ ١١١١
٠٠٠٠ ٠١١١ ٠١١٠ ٠١٠١ ٠١٠٠ ١٠١١ ١٠١٠ ١٠٠١ ١٠٠٠ ١١١١
٠٠١١ ٠١٠٠ ٠١٠١ ٠١١٠ ٠١١١ ١٠٠٠ ١٠٠١ ١٠١٠ ١٠١١ ١١٠٠
)( BCD ٨۴٢١ ٠٠٠٠ ٠٠٠١ ٠٠١٠ ٠٠١١ ٠١٠٠ ٠١٠١ ٠١١٠ ٠١١١ ١٠٠٠ ١٠٠١
رﻗﻢ دهﺪهﯽ ٠ ١ ٢ ٣ ۴ ۵ ۶ ٧ ٨ ٩
اﻋﺪاد در ﮐﺎﻣﭙﻴﻮﺗﺮ دﯾﺠﻴﺘﺎل ﺑﻪ ﺻﻮرت دودوﯾﯽ و ﯾﺎ ﺑﻪ ﺻﻮرت دهﺪهﯽ ﺗﻮﺳﻂ ﯾﮏ ﮐﺪ دودوﯾﯽ ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮﻧﺪ .ﻣﺜﻼً وﻗﺘﯽ ﮐﻪ ﻋﺪد ٣٩٢ﺑﻪ دودوﯾﯽ ﺗﺒﺪﯾﻞ ﻣﯽ ﺷﻮد ﻋﺪد ١١٠٠٠١٠١١ﺑﻪ دﺳﺖ ﻣﯽ ﺁﯾﺪ ﮐﻪ ﺷﺎﻣﻞ ٩رﻗﻢ دودوﯾﯽ اﺳﺖ .هﻤﺎن ﻋﺪد وﻗﺘﯽ ﺑﻪ ﻓﺮم BCDﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮد ﺑﺮاﯼ هﺮ رﻗﻢ دهﺪهﯽ ﭼﻬﺎر ﺑﻴﺖ اﺷﻐﺎل ﻣﯽ ﮔﺮدد ﮐﻪ ﺟﻤﻌﺎً دوازد ﺑﻴﺖ ﺧﻮاهﺪ ﺷﺪ ،ﯾﻌﻨﯽ . ٠٠١١١٠٠١٠١٠١ درﮎ اﺧﺘﻼف ﺗﺒﺪﯾﻞ ﯾﮏ ﻋﺪد دهﺪهﯽ ﺑﻪ دودوﯾﯽ و ﮐﺪ ﮔﺬارﯼ دودوﯾﯽ هﻤﺎن ﻋﺪد دهﺪهﯽ اﻣﺮ ﻣﻬﻤﯽ اﺳﺖ .در هﺮ ﺣﺎﻟﺖ ﻧﺘﻴﺠﻪ ﻧﻬﺎﯾﯽ ﻣﺠﻤﻮﻋﻪ اﯼ از ﺑﻴﺘﻬﺎ اﺳﺖ .ﮐﺪ BCDﺑﻪ ﻋﻨﻮان ﮐﺪﯼ ﮐﻪ ﺑﻪ دو ﺻﻮرت ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﻣﯽ ﮔﻴﺮد ،اﻧﺘﺨﺎب ﺷﺪﻩ اﺳﺖ .ﻣﺎداﻣﯽ ﮐﻪ ﻋﺪد ﺑﻴﻦ ٠اﻟﯽ ٩ﺑﺎﺷﺪ اﻃﻼﻋﺎﺗﯽ دودوﯾﯽ ،ﻧﺘﻴﺠﻪ ﺗﺒﺪﯾﻞ ﻣﺴﺘﻘﻴﻢ اﻋﺪاد ﻓﻮق ﺑﻪ ﺻﻮرت دودوﯾﯽ اﺳﺖ وﻟﯽ اﮔﺮ ﻋﺪد ﺑﻴﺶ از ٩ﺑﺎﺷﺪ دﯾﮕﺮ اﯾﻦ ﺗﺒﺪﯾﻞ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٤
ﻣﻔﻬﻮﻣﯽ ﻧﺪارد و در اﯾﻦ ﺻﻮرت ﺗﺒﺪﯾﻞ و ﮐﺪ ﮔﺬارﯼ ﺑﺎ ﯾﮑﺪﯾﮕﺮ اﺧﺘﻼف دارﻧﺪ .اﯾﻦ ﻣﻔﻬﻮم ﺁﻧﻘﺪر اهﻤﻴﺖ دارد ﮐﻪ ﺗﮑﺮار ﯾﮏ ﻣﺜﺎل دﯾﮕﺮ در ﻣﻮرد ﺁن ارزﺷﻤﻨﺪ اﺳﺖ .ﻣﻌﺎدل ﻋﺪد دهﺪهﯽ ١٣ﺑﻪ دودوﯾﯽ ﻋﺪد ١١٠١اﺳﺖ و ﮐﺪ ﺁن در ٠٠٠١٠٠١١ ، BCDﻣﯽ ﺑﺎﺷﺪ . از ﻣﻴﺎن ﭘﻨﺞ ﮐﺪ ﻓﻬﺮﺳﺖ ﺷﺪﻩ در ﺟﺪول ) (١-٢ﺑﻪ ﻧﻈﺮ ﻣﯽ رﺳﺪ ﮐﻪ BCDﻃﺒﻴﻌﯽ ﺗﺮﯾﻦ ﮐﺪ ﺑﺮاﯼ اﺳﺘﻔﺎدﻩ ﺑﻮدﻩ و در ﺣﻘﻴﻘﺖ ﻣﻌﻤﻮﻟﻴﺘﺮﯾﻦ ﺁﻧﻬﺎﺳﺖ .ﮐﺪهﺎﯼ دﯾﮕﺮ ﭼﻬﺎر ﺑﻴﺘﯽ ﯾﮏ ﻣﺸﺨﺼﻪ ﻣﺸﺘﺮﮎ دارﻧﺪ ﮐﻪ در BCDﯾﺎﻓﺖ ﻧﻤﯽ ﺷﻮد .ﮐﺪ اﻓﺰوﻧﯽ ٣-و ٢،٢،۴،١و ﮐﺪ ٨ ، ۴ ، -٢ ، -١ﮐﺪهﺎﯼ ﺧﻮد ﻣﮑﻤﻞ هﺴﺘﻨﺪ ،ﺑﻪ اﯾﻦ ﻣﻔﻬﻮم ﮐﻪ ﻣﮑﻤﻞ ٩ﻋﺪد دهﺪهﯽ ﺑﻪ ﺳﺎدﮔﯽ ﺑﺎ ﺗﺒﺪﯾﻞ ٠هﺎ ﺑﻪ ١هﺎ و ١هﺎ ﺑﻪ ٠هﺎ ﺑﺪﺳﺖ ﻣﯽ ﺁﯾﺪ .ﻣﺜﻼً ﻋﺪد ٣٩۵در ﻣﺪ ١،٢،۴،٢ﺑﻪ ﺷﮑﻞ ٠٠١١١١١١١٠١١اﺳﺖ .ﻣﮑﻤﻞ ٩اﯾﻦ ﻋﺪد ﯾﻌﻨﯽ ۶٠۴ﺑﺎ ١١٠٠٠٠٠٠٠١٠٠ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮدﮐﻪ ﺑﻪ ﺳﺎدﮔﯽ از ﺟﺎﯾﮕﺰﯾﻨﯽ ١هﺎ ﺑﺎ ٠هﺎ و ٠ هﺎ ﺑﺎ ١هﺎ ﺑﻪ دﺳﺖ ﻣﯽ ﺁﯾﺪ .اﯾﻦ ﺧﺎﺻﻴﺖ زﻣﺎﻧﯽ ﮐﻪ اﻋﻤﺎل ﻣﺤﺎﺳﺒﺎﺗﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺑﺎ اﻋﺪاد دهﺪهﯽ ) در ﮐﺪ دودوﯾﯽ ( ﺻﻮرت ﻣﯽ ﮔﻴﺮد و ﻋﻤﻞ ﺗﻔﺮﯾﻖ ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﮑﻤﻞ ٩ اﻧﺠﺎم ﻣﯽ ﺷﻮد ،ﺳﻮدﻣﻨﺪ اﺳﺖ . ﮐﺪ دو ﭘﻨﺠﯽ ﮐﻪ در ﺟﺪول ) (١-٢ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﺳﺖ ﻣﺜﺎﻟﯽ از ﯾﮏ ﮐﺪ هﻔﺖ ﺑﻴﺘﯽ ﺑﺎ ﺧﺎﺻﻴﺖ ﺁﺷﮑﺎر ﺳﺎزﯼ ﺧﻄﺎ اﺳﺖ .هﺮ رﻗﻢ دهﺪهﯽ ،ﺷﺎﻣﻞ ﭘﻨﺞ ٠و دو ، ١ﮐﻪ در ﺳﺘﻮﻧﻬﺎﯼ وزﯾﻦ ﻣﺮﺑﻮﻃﻪ ﺟﺎﯼ ﮔﺮﻓﺘﻪ اﻧﺪ ﻣﯽ ﺑﺎﺷﺪ .ﺧﺎﺻﻴﺖ ﺁﺷﮑﺎر ﺳﺎزﯼ ﺧﻄﺎﯼ اﯾﻦ ﮐﺪ زﻣﺎﻧﯽ ﻗﺎﺑﻞ درﮎ اﺳﺖ ﮐﻪ ﺑﺪاﻧﻴﻢ ﺳﻴﺴﺘﻤﻬﺎﯼ دﯾﺠﻴﺘﺎل ١و ٠دودوﯾﯽ را ﺑﺎ دو ﺳﻄﺢ وﻟﺘﺎژ ﯾﺎ ﺟﺮﯾﺎن ﻣﺴﺘﻘﻞ از هﻢ ﻧﺸﺎن ﻣﯽ دهﻨﺪ .در ﻃﻮل اﻧﺘﻘﺎل اﯾﻦ ﺳﻄﺢ وﻟﺘﺎژ ﯾﺎ ﺳﻴﮕﻨﺎﻟﻬﺎ ،از ﯾﮏ ﻣﺤﻞ ﺑﻪ ﻣﺤﻞ دﯾﮕﺮ ،ﺧﻄﺎﯾﯽ ﻣﻤﮑﻦ اﺳﺖ اﺗﻔﺎق اﻓﺘﺪ و ﯾﮏ ﯾﺎ ﭼﻨﺪ ﺑﻴﺖ اﺣﺘﻤﺎﻻً ﺗﻐﻴﻴﺮ ارزش ﺑﺪهﺪ .ﯾﮏ ﮐﺪار در ﻣﻘﺼﺪ ﻗﺎدر اﺳﺖ وﺟﻮد دو و ١ﯾﺎ ﮐﻤﺘﺮ در
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٥
ﮐﺪ دو ﭘﻨﺠﯽ را ﺁﺷﮑﺎر ﮐﻨﺪ .اﮔﺮ ﺗﺮﮐﻴﺐ ﺑﻴﺘﻬﺎﯼ رﺳﻴﺪﻩ ﺑﺎ ﺗﺮﮐﻴﺐ ﻣﺠﺎز در ﮐﺪ ﯾﮑﺴﺎن ﻧﺒﺎﺷﺪ ،ﯾﮏ ﺧﻄﺎ ﻣﺤﺴﻮب ﺷﺪﻩ و اﻃﻼع دادﻩ ﻣﯽ ﺷﻮد . ﮐﺪ هﺎﯼ ﺁﺷﮑﺎر ﺳﺎزﯼ ﺧﻄﺎ اﻃﻼﻋﺎت دودوﯾﯽ ﻣﻤﮑﻦ اﺳﺖ از ﯾﮏ ﻣﮑﺎن ﺑﻪ ﻣﮑﺎن دﯾﮕﺮ ﺑﮑﻤﮏ وﺳﺎﯾﻞ ارﺗﺒﺎﻃﯽ ﻣﺜﻞ ﺳﻴﻤﻬﺎ ﯾﺎ ﻣﻮﺟﻬﺎﯼ رادﯾﻮﯾﯽ اﻧﺘﻘﺎل ﯾﺎﺑﻨﺪ .هﺮ ﭘﺎرازﯾﺖ ﺧﺎرﺟﯽ ﮐﻪ وارد وﺳﺎﯾﻞ ﻓﻴﺰﯾﮑﯽ ﺷﻮد ارزش ﺑﻴﺘﻬﺎ را از ٠ﺑﻪ ١و ﯾﺎ ﺑﺮﻋﮑﺲ ﺗﻐﻴﻴﺮ ﻣﯽ دهﺪ .ﻣﻌﻤﻮل ﺗﺮﯾﻦ روش ﺧﻄﺎﯾﺎﺑﯽ ،اﺳﺘﻔﺎدﻩ از ﺑﻴﺖ ﺗﻮازن اﺳﺖ .ﯾﮏ ﺑﻴﺖ ﺗﻮازن ،ﺑﻴﺘﯽ اﺳﺖ اﺿﺎﻓﯽ ﮐﻪ ﺟﺰﺋﯽ از ﭘﻴﺎم اﺳﺖ ﺳﺒﺐ ﻣﯽ ﺷﻮد ﮐﻪ ﺗﻌﺪاد ﮐﻞ ١هﺎ در ﭘﻴﺎن زوج ﯾﺎ ﻓﺮد ﮔﺮدد ﯾﮏ ﭘﻴﻐﺎم ﭼﻬﺎر ﺑﻴﺘﯽ ﺑﻪ هﻤﺮاﻩ ﺑﻴﺖ ﺗﻮازن Pدر ﺟﺪول ) (١-٣ﻧﺸﺎن دادﻩ ﺷﺪﻩ اﺳﺖ .اﮔﺮ ﺑﻴﺖ ﺗﻮازن ﻓﺮد اﻧﺘﺨﺎب ﺷﺪﻩ ﺑﺎﺷﺪ Pﻃﻮرﯼ اﻧﺘﺨﺎب ﻣﯽ ﮔﺮدد ﮐﻪ ﻣﺠﻤﻮع ١هﺎ در ﭘﻨﺞ ﺑﻴﺖ ﻓﺮد ﺑﺎﺷﺪ و در ﺗﻮازن زوج Pﻃﻮرﯼ اﻧﺘﺨﺎب ﺷﺪﻩ ﺗﺎ ﻣﺠﻤﻮع هﻤﻪ ١هﺎ زوج ﺑﺎﺷﺪ . ﺟﺪول ) (١-٣ﺑﻴﺖ ﺗﻮازن ) زوج ( P ٠ ١ ١ ٠ ١ ٠ ٠ ١ ١ ٠ ٠ ١ ٠ ١ ١ ٠
ﭘﻴﺎم ) ( b ٠٠٠٠ ٠٠٠١ ٠٠١٠ ٠٠١١ ٠١٠٠ ٠١٠١ ٠١١٠ ٠١١١ ١٠٠٠ ١٠٠١ ١٠١٠ ١٠١١ ١١٠٠ ١١٠١ ١١١٠ ١١١١
)ﻓﺮد ( P ١ ٠ ٠ ١ ٠ ١ ١ ٠ ٠ ١ ١ ٠ ١ ٠ ٠ ١
ﭘﻴﺎم ) ( a ٠٠٠٠ ٠٠٠١ ٠٠١٠ ٠٠١١ ٠١٠٠ ٠١٠١ ٠١١٠ ٠١١١ ١٠٠٠ ١٠٠١ ١٠١٠ ١٠١١ ١١٠٠ ١١٠١ ١١١٠ ١١١١
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٦
ﻧﺤﻮﻩ ﺧﻄﺎﯾﺎﺑﯽ ﺑﺪون ﺷﺮح اﺳﺖ .ﯾﮏ ﺑﻴﺖ ﺗﻮازن زوج در ﻣﺒﺪا ﺑﺮاﯼ هﺮ ﭘﻴﺎم ﺗﻮﻟﻴﺪ ﻣﯽ ﺷﻮد .ﺑﻴﺖ ﺗﻮازن هﻤﺮاﻩ ﺑﺎ ﭘﻴﺎم ﺑﻪ ﺳﻤﺖ ﻣﻘﺼﺪ ارﺳﺎل ﻣﯽ ﺷﻮد .ﺗﻮزان در ﻣﻘﺼﺪ ﭼﮏ ﻣﯽ ﮔﺮدد .زوج ﻧﺒﻮدن دادﻩ رﺳﻴﺪﻩ ﺑﻪ ﻣﻌﻨﯽ اﯾﻦ اﺳﺖ ﮐﻪ ﺣﺪاﻗﻞ ﯾﮏ ﺑﻴﺖ در ﺿﻤﻦ اﻧﺘﻘﺎل ﺗﻌﻮﯾﺾ ﺷﺪﻩ اﺳﺖ .اﯾﻦ روش ﻗﺎدر اﺳﺖ هﺮ ﺗﺮﮐﻴﺐ ﻓﺮدﯼ از ﺗﻌﺪاد ﺧﻄﺎ ﻣﺎﻧﻨﺪ ﺗﻐﻴﻴﺮ ﯾﮏ ،ﺳﻪ و ...ﺑﻴﺖ را در هﺮ ﭘﻴﺎم اﻧﺘﻘﺎل ﯾﺎﻓﺘﻪ ﻣﺸﺨﺺ ﻧﻤﺎﯾﺪ .روش هﺎﯼ ﺗﺸﺨﻴﺺ ﺧﻄﺎﯼ اﺿﺎﻓﯽ دﯾﮕﺮﯼ ﺑﺮاﯼ ﯾﺎﻓﺘﻦ ﺧﻄﺎهﺎﯼ زوج ﻻزم اﺳﺖ . ﮐﺪ ﮔﺮﯼ ) اﻧﻌﮑﺎﺳﯽ ( ﺳﻴﺴﺘﻤﻬﺎﯼ دﯾﺠﻴﺘﺎل ﻓﻘﻂ ﺑﺮاﯼ ﭘﺮدازش دادﻩ هﺎﯼ ﮔﺴﺴﺘﻪ ﻃﺮاﺣﯽ ﻣﯽ ﺷﻮﻧﺪ . ﺑﺴﻴﺎرﯼ از دﺳﺘﮕﺎهﻬﺎﯼ ﻓﻴﺰﻳﮑﯽ دادﻩ ﺧﺮوﺟﯽ ﭘﻴﻮﺳﺘﻪ ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﻨﺪ ..اﻃﻼﻋﺎت ﭘﻴﻮﺳﺘﻪ ﯾﺎ ﺁﻧﺎﻟﻮگ ﺑﻮﺳﻴﻠﻪ ﻣﺒﺪل ﺁﻧﺎﻟﻮگ ﺑﻪ دﯾﺠﻴﺘﺎل ﺑﻪ ﻓﺮم دﯾﺠﻴﺘﺎل ﺗﺒﺪﯾﻞ ﻣﯽ ﺷﻮﻧﺪ . ﮔﺎهﯽ اوﻗﺎت اﺳﺘﻔﺎدﻩ از ﮐﺪ ﮔﺮﯼ ﻧﺸﺎن دادﻩ ﺷﺪﻩ در ﺟﺪول ) ، (١-۴ﺟﻬﺖ ﻧﻤﺎﯾﺶ دادﻩ هﺎﯼ دﯾﺠﻴﺘﺎل ﺗﺒﺪﯾﻞ ﺷﺪﻩ از دادﻩ هﺎﯼ ﺁﻧﺎﻟﻮگ ﻣﻌﻤﻮﻟﺘﺮ اﺳﺖ . ﻣﺰﯾﺖ ﮐﺪ ﮔﺮﯼ ﻧﺴﺒﺖ ﺑﻪ اﻋﺪاد دودوﯾﯽ ﻣﺤﺾ اﯾﻦ اﺳﺖ ﮐﻪ وﻗﺘﯽ از ﯾﮏ ﻋﺪد ﺑﻪ ﻋﺪد ﺑﻌﺪﯼ ﻣﯽ روﯾﻢ ﻓﻘﻂ ﯾﮏ ﻣﺰﯾﺖ ﺑﻴﺖ ﺗﻐﻴﻴﺮ ﻣﯽ ﮐﻨﺪ .ﻣﺜﻼً در رﻓﺘﻦ از ٧ﺑﻪ ، ٨ﮐﺪ ﮔﺮﯼ از ٠١٠٠ﺑﻪ ١١٠٠ﺗﻐﻴﻴﺮ ﻣﯽ ﯾﺎﺑﺪ .دﯾﺪﻩ ﻣﯽ ﺷﻮد ﮐﻪ ﻓﻘﻂ ﺳﻤﺖ ﭼﭗ ﺗﺮﯾﻦ ﺑﻴﺖ از ٠ﺑﻪ ١ ﺗﻐﻴﻴﺮ ﯾﺎﻓﺘﻪ و ﺳﻪ ﺑﻴﺖ ﺑﻘﻴﻪ ﯾﮑﺴﺎﻧﻨﺪ .وﻗﺘﯽ ﻣﻄﻠﺐ را ﺑﺎ اﻋﺪاد دودوﯾﯽ ﻣﻘﺎﯾﺴﻪ ﮐﻨﻴﻢ ، ﺗﻐﻴﻴﺮ از ٧ﺑﻪ ٨ﺳﺒﺐ ﺗﻐﻴﻴﺮ هﺮ ﭼﻬﺎر ﺑﻴﺖ ،ﯾﻌﻨﯽ از ٠١١١ﺑﻪ ١٠٠٠ﻣﯽ ﮔﺮدد . ﮐﺪ ﮔﺮﯼ در ﮐﺎرﺑﺮدهﺎﯾﯽ ﮐﻪ رﺷﺘﻪ ﻣﻌﻤﻮﻟﯽ اﻋﺪاد دودوﯾﯽ اﻣﮑﺎن ﺗﻮﻟﻴﺪ ﺧﻄﺎ دارﻧﺪ ﺑﮑﺎر ﻣﯽ رود .ﺑﻬﻨﮕﺎم ﺗﻐﻴﻴﺮ از ٠١١١ﺑﻪ ، ١٠٠٠اﮔﺮ ﺗﻐﻴﻴﺮ ﺳﻤﺖ راﺳﺖ ﺗﺮﯾﻦ ﺑﻴﺖ از ﺳﻪ ﺑﻴﺖ دﯾﮕﺮ ﺑﻴﺸﺘﺮ ﻃﻮل ﺑﮑﺸﺪ ﯾﮏ ﻋﺪد ﻣﻴﺎﻧﻪ اﯼ ﻣﺎﻧﻨﺪ ١٠٠١ﺗﻮﻟﻴﺪ ﻣﯽ ﺷﻮد .ﮐﺪ ﮔﺮﯼ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٧
اﯾﻦ ﻣﺸﮑﻞ را ﺣﺬف ﻣﯽ ﻧﻤﺎﯾﺪ زﯾﺮا ﺑﻬﻨﮕﺎم اﻧﺘﻘﺎل ﺑﻴﻦ دو ﻋﺪد ﻓﻘﻂ ﯾﮏ ﺗﻐﻴﺮ رخ ﻣﯽ دهﺪ . ﻧﻤﻮﻧﻪ اﯼ از ﮐﺎرﺑﺮد ﮐﺪ ﮔﺮﯼ هﻨﮕﺎﻣﯽ اﺳﺖ ﮐﻪ دادﻩ ﺁﻧﺎﻟﻮگ ﺑﻮﺳﻴﻠﻪ ﺗﻐﻴﻴﺮ ﭘﻴﻮﺳﺘﻪ ﺷﻔﺖ ﻧﻤﺎﯾﺶ دادﻩ ﻣﯽ ﺷﻮد .دور ﺷﻔﺖ ﺑﻪ ﻗﻄﻌﺎﺗﯽ ﺗﻘﺴﻴﻢ ﺷﺪﻩ ،و ﺑﻪ هﺮ ﻗﻄﻌﻪ ﻋﺪدﯼ ﺗﺨﺼﻴﺺ ﯾﺎﻓﺘﻪ اﺳﺖ .اﮔﺮ ﻗﻄﻌﺎت ﻣﺠﺎور ﺑﻮﺳﻴﻠﻪ ﮐﺪ ﮔﺮﯼ ﻣﺮﺗﺒﻂ ﺷﻮﻧﺪ ،اﺑﻬﺎم در ﺗﻔﮑﻴﮏ دو ﻧﺎﺣﻴﻪ ﻣﺠﺎور ﮐﻪ در ﺣﺎل اﺣﺴﺎس ﺷﺪن اﺳﺖ ﮐﺎهﺶ ﻣﯽ ﯾﺎﺑﺪ . ﺟﺪول ) (١-۴ﮐﺪ ﮔﺮﯼ ۴ﺑﻴﺘﯽ ﻣﻌﺎدل دهﺪهﯽ ٠ ١ ٢ ٣ ۴ ۵ ۶ ٧ ٨ ٩ ١٠ ١١ ١٢ ١٣ ١۴ ١۵
ﮐﺪ ﮔﺮﯼ ٠٠٠٠ ٠٠٠١ ٠٠١١ ٠٠١٠ ٠١١٠ ٠١١١ ٠١٠١ ٠١٠٠ ١١٠٠ ١١٠١ ١١١١ ١١١٠ ١٠١٠ ١٠١١ ١٠٠١ ١٠٠٠
ﮐﺪ هﺎﯼ ASCII در ﺑﺴﻴﺎرﯼ از ﮐﺎرﺑﺮدهﺎﯼ ﮐﺎﻣﭙﻴﻮﺗﺮ هﺎﯼ دﯾﺠﻴﺘﺎل ﻧﻪ ﺗﻨﻬﺎ ﻧﻴﺎز ﺑﻪ دﺳﺘﮑﺎرﯼ روﯼ دادﻩ هﺎﯼ ﻋﺪدﯼ ﺑﻠﮑﻪ روﯼ ﺣﺮوف ﻧﻴﺰ ﻣﯽ ﺑﺎﺷﺪ .ﯾﮏ ﮐﺎراﮐﺘﺮ اﻟﻔﺒﺎ ﻋﺪدﯼ ﻋﺒﺎرت از ﯾﮏ ﮐﺪ دودوﯾﯽ ﻣﺮﺑﻮط ﺑﻪ ﻋﻨﺼﺮﯼ از ﯾﮏ ﻣﺠﻤﻮﻋﻪ ﮐﻪ ﺷﺎﻣﻞ ١٠رﻗﻢ دهﺪهﯽ ٢۶ ،ﺣﺮوف اﻟﻔﺒﺎ و ﺗﻌﺪاد ﻣﻌﻴﻨﯽ از ﻋﻼﺋﻢ ﻣﺨﺼﻮص اﺳﺖ .ﭼﻨﻴﻦ ﻣﺠﻤﻮﻋﻪ اﯼ ﺑﻴﻦ ٣۶ﺗﺎ ۶۴ﻋﻨﺼﺮ ﺑﺮاﯼ
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٨
ﺣﺮوف ﺑﺰرگ و ﯾﺎ ﺑﻴﻦ ۶۴ﺗﺎ ١٢٨ﻋﻨﺼﺮ ﺑﺎ ﺣﺮوف ﺑﺎﻻ و ﭘﺎﯾﻴﻦ هﺮ ﮐﻠﻴﺪ دارد .در ﺣﺎﻟﺖ اول ﺑﻪ ﺷﺶ ﺑﻴﺖ و در ﺣﺎﻟﺖ دوم ﺑﻪ هﻔﺖ ﺑﻴﺖ ﻧﻴﺎز اﺳﺖ . ﮐﺪ دودوﯾﯽ اﺳﺘﺎﻧﺪارد ﺑﺮاﯼ ﮐﺎراﮐﺘﺮ هﺎﯼ اﻟﻔﺒﺎ ﻋﺪدﯼ ASCIIاﺳﺖ .اﯾﻦ ﮐﺪ از هﻔﺖ ﺑﻴﺖ ﺑﺮاﯼ ﮐﺪ ﻧﻤﻮدن ١٢٨ﮐﺎراﮐﺘﺮ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﺪ .هﻔﺖ ﺑﻴﺖ ﺑﺎ b1ﺗﺎ b7ﻣﺸﺨﺺ ﺷﺪﻩ اﻧﺪ ﮐﻪ b7ﺑﺎ ارزﺷﺘﺮﯾﻦ ﺑﻴﺖ را ﺗﺸﮑﻴﻞ ﻣﯽ دهﺪ .ﻣﺜﻼً ،ﺣﺮف Aدر ASCIIﺑﺼﻮرت ) ١٠٠٠٠٠١ﺳﺘﻮن ١٠٠ﺳﻄﺮ ( ٠٠٠١ﻣﯽ ﺑﺎﺷﺪ .ﮐﺪ ASCIIداراﯼ ٩۴ﮐﺪ ﺷﺎﻣﻞ ٢۶ ﮐﺎراﮐﺘﺮ ﻣﺮﺑﻮﻃﻪ ﺑﻪ ﺣﺮوف ﺑﺰرگ ) Aﺗﺎ ٢۶ ، ( Zﮐﺎراﮐﺘﺮ ﺣﺮوف ﮐﻮﭼﮏ ) aﺗﺎ ١٠ ، ( z ﻋﺪد ) ٠ﺗﺎ ( ٩و ٣٢ﮐﺎراﮐﺘﺮ ﻣﺨﺼﻮص ﭼﺎپ ﻧﺸﺪﻧﯽ ﻣﺎﻧﻨﺪ * ، %و $اﺳﺖ . ﮐﺪ هﻤﻴﻨﮓ ﺟﻬﺖ ﺗﺸﺨﻴﺺ و ﺗﺼﺤﻴﺢ ﺧﻄﺎ ﺑﮑﺎر ﻣﯽ رود .اﮔﺮ Mﭘﻴﺎم ارﺳﺎﻟﯽ mﺑﻴﺘﯽ ﺑﺎﺷﺪ. M :n n n n 1 2 3 4
kﺗﻌﺪاد ﺑﻴﺘﻬﺎﯼ ﺗﻮازن ﮐﻪ اﺿﺎﻓﻪ ﻣﯽ ﺷﻮد و از راﺑﻄﻪ زِﻳﺮ ﺗﺒﻌﻴﺖ ﻣﯽ ﮐﻨﺪk + m ≤ 2 k − 1 . n 0 1 2 ﺑﻴﺘﻬﺎﯼ ﺗﻮزان درﻣﺤﻠﻬﺎﯼ (2 2 2 .....) 2ﻗﺮار ﻣﯽ ﮔﻴﺮد p p m p m m m . 1 2 3 4 5 6 7
ﺑﻴﺘﻬﺎﯼ ﺗﻮازن ﺑﺪﻳﻨﺼﻮرت ﺑﺪﺳﺖ ﻣﯽ ﺁﻳﻨﺪ: ﻣﺤﺪودﻩ ﺑﻴﺖ هﺎﯼ ﭘﻴﺎم
ﺗﻌﺪاد ﺑﻴﺖ هﺎﯼ ﺗﻮزان k
2-4
3
1 1
5-11
4
0 1
12-26
5
1 0
27-57
6
1 1
m →0 3 m →1 5 m →1 6 m →0 7
P =m ⊕m ⊕m 5 7 1 3 P =m ⊕m ⊕m 7 2 3 6 P =m ⊕m ⊕m 5 7 4 6
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٢٩ ⇒ p1 p 2 1 p 4 0 1 1
M: 101 1
P = m ⊕ m ⊕ m = 1⊕ 0 ⊕1 = 0 5 7 1 3 P = m ⊕ m ⊕ m = 1⊕1⊕1 = 1 7 2 3 6 P = m ⊕ m ⊕ m = 0 ⊕1⊕1 = 0 5 7 4 6 ﺗﺸﺨﻴﺺ ﺧﻄﺎ: ﮐﺪ ﺧﻄﺎﻳﯽ از روﯼ اﻃﻼﻋﺎت درﻳﺎﻓﺘﯽ اﯾﺠﺎد ﻣﯽ ﺷﻮد. C :C C C 4 2 1 C = P ⊕m ⊕m ⊕m 5 7 1 1 3 C = P ⊕m ⊕ m ⊕ m 7 2 2 3 6 C = P ⊕m ⊕m ⊕m 5 7 4 4 6
اﮔﺮ C=0ﺧﻄﺎﯾﯽ رخ ﻧﺪادﻩ اﺳﺖ اﮔﺮ C ≠ 0ﺧﻄﺎ رخ دادﻩ و ﻣﻘﺪارﯼ cﻣﮑﺎن ﺧﻄﺎ ﺧﻮاهﺪ ﺑﻮد .
0 1 1 0 0 11→ 0 0 1 0 011
⇒C =0 1 0 = 2
C =0 1 C =1 2 C =0 3
ﺗﺸﺨﻴﺺ و ﺗﺼﺤﻴﺢ ﻳﻚ ﺧﻄﺎ
m=5 k =4 p p m p m m m p m 1 2 3 4 5 6 7 8 9 C = P ⊕m ⊕m ⊕m ⊕m 5 7 1 1 3 9 C = P ⊕m ⊕ m ⊕ m 7 2 2 3 6 C = P ⊕m ⊕m ⊕m 5 7 4 4 6 C =m 8 9
ﻓﺼﻞ اول :ﺳﻴﺴﺘﻢ دودوﻳﯽ و ﮐﺪﮔﺬارﯼ
٣٠
ﺗﻌﺮﻳﻒ minimum distance ﺣﺪاﻗﻞ ﻓﺎﺻﻠﻪ ﻋﺒﺎرﺗﺴﺖ از ﺣﺪاﻗﻞ ﺗﻌﺪاد ﺑﻴﺖ هﺎﯾﯽ ﮐﻪ ﺑﺎﯾﺪ در ﯾﮏ ﮐﺪ ﺗﻐﻴﻴﺮ ﯾﺎﺑﺪ ﺗﺎ ﮐﺪ ﻣﺠﺎز دﯾﮕﺮﯼ از هﻤﺎن ﺳﻴﺴﺘﻢ ﮐﺪ ﮔﺬارﯼ ﺑﻪ دﺳﺖ ﺁﯾﺪ . = ١ﮐﺪ ﮔﺮﯼ
M . D.
= ١ﮐﺪ 2421
M . D.
در ﺻﻮرﺗﻴﮑﻪ MD = 3ﺑﺎﺷﺪ و ﯾﮏ ﺑﻴﺖ دﭼﺎر ﺧﻄﺎ ﺷﻮد هﻢ ﻗﺎدر ﺑﻪ ﺗﺸﺨﻴﺺ ﺧﻄﺎ و هﻢ ﺗﻮاﻧﺎﯾﯽ ﺗﺼﺤﻴﺢ ﺁن را دارﯾﻢ . M = C + d +1
: dﺗﻌﺪاد ﺑﻴﺖ هﺎي ﺧﻄﺎي ﻗﺎﺑﻞ ﺗﺸﺨﻴﺺ : cﺗﻌﺪاد ﺑﻴﺖ هﺎي ﺧﻄﺎي ﻗﺎﺑﻞ ﺗﺼﺤﻴﺢ ﺑﻪ ﮐﺪ هﻤﻴﻨﮓ ﺑﻴﺖ ﺗﻮازن دﯾﮕﺮﯼ اﺿﺎﻓﻪ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺑﺎ ﺗﻤﺎم ﺑﻴﺘﻬﺎﯼ ﺗﻮزان زوج ﺑﺮﻗﺮارﯼ ﻣﯽ ﮐﻨﺪ . c 0 0 0 1 0 1 0 1 2
d 0 1 2 1 3 2 4 3 2
M 1 2 3 4 5
P p m p m m m p m ,p 1 2 3 4 5 6 7 8 9 0
در ﻣﻘﺼﺪ ﮐﻪ C :C C C Cو ﺗﻮزان دﯾﮕﺮﯼ ﺑﺎ ﻧﺎم pرا اﯾﺠﺎد ﻣﯽ ﮐﻨﻨﺪ . 8 4 2 1 P = P ⊕ p ⊕ ... m ⊕ p 1 2 9 0
ﺧﻄﺎﯾﯽ رخ ﻧﺪادﻩ اﺳﺖ
P=0
,
C =0
ﯾﮏ ﺧﻄﺎ رخ دادﻩ و ﻗﺎﺑﻞ ﺗﺼﺤﻴﺢ
P =1
,
C≠0
دو ﺧﻄﺎ رخ دادﻩ و ﻓﻘﻂ ﻗﺎﺑﻞ ﺗﺸﺨﻴﺺ
P=0
,
C≠0
,
C =0
ﺧﻮد Pدﭼﺎر ﺧﻄﺎ ﺷﺪﻩ اﺳﺖ
P =1