دسیمال به باینری – باینری به دسیمال

منتشر شده در دسته : نتورک پلاس

چرا بایستی تبدیل اعداد دسیمال به باینری و تبدیل اعداد باینری به دسیمال را فرابگیریم . برای انجام فرایندهای سابنتینگ فراگیری این مهارت ضروری است .

خوب حالا با توجه به این مفاهیمی که گفتیم روی کاغذ شروع به تبدیل باینری و دسیمال به یکدیگر می کنیم .

تبدیل دسیمال به باینری و باینری به دسیمال به صورت زیر انجام می شود

ابتدا تبدیل باینری به دسیمال

تبدیل باینری به دسیمال را شروع می کنیم . فرض کنید عدد 10101010 را که یک عدد باینری است و فقط از 0 و 1 تبدیل شده است را می خواهیم به یک عدد دسیمال که از اعداد 0-9 تشکیل شده است تبدیل کنیم برای این کار مطابق زیر اعداد حاصل از مبنا های باینری را تا جایی که نیاز داریم می نویسیم . در اینجا عدد باینری ما هشت رقمی است پس تا 27 که 128 می شود را می نویسیم و سپس اعداد 0 و 1 باینری را به ترتیب زیر مبنای آن قرار می دهیم : عدد ما 10101010 بود پس به صورت زیر می شود :

باینری به دسیمال

حال عدد باینری را در ستون مربوط ضرب می کنیم و کل اعداد به دست آمده را با هم جمع می کنیم .مثلا 1 را در 128 ضرب می کنیم که می شود همان 128 و 0 را در 64 ضرب می کنیم که می شود همان صفر و … نتیجه به صورت زیر می شود که اعداد به دست آمده را با هم جمع می کنیم :  128 + 32 + 8 + 2  =  170

پس  معادل دسیمال عدد باینری 10101010 می شود  170 . تبدیل باینری به دسیمال را یاد گرفتید و اما دسیمال به باینری

اکنون تبدیل دسیمال به باینری

تبدیل دسیمال به باینری کمی پیچیده تر است و نیاز به دقت بیشتری دارد .

ما می خواهیم عدد 3482 را که یک عدد دسیمال است به باینری یا  0 و 1 تبدیل کنیم . برای اینکار همانطور که در زیر می بینید حاصل مبنا ها را تا توان 12 می نویسیم چرا تا توان دوازده ؟ چون عدد ما 3482 است و اگر عدد ما 28 بود فقط تا توان 5 که 32 بود را می نوشتیم .

دسیمال به باینری

کاری که ما در اینجا انجام می دهیم این است که به عدد خود دقت می کنیم و بزرگترین مبنایی که این عدد می تواند آن را تکمیل کند را پیدا می کنید . عدد ما 3482 است آیا این عدد می تواند مبنای 12 یا 4096 را پر کند خیر آیا می تواند مبنای 11 یا 2048 را پر کند بله پس کاری که ما می کنیم این است که در زیر 2048 عدد 1 را قرار داد و سپس 2048 را از 3482 کم می کنیم .

1434 = 3482 – 2048

در مرحله بعدی حاصل به دست آمده را که عدد 1434 است را دوباره با مبناهای بالا مقایسه کرده و بزرگترین مبنایی را که می تواند پر کند را پیدا می کنیم که می شود مبنای 10 یا 1024
در زیر 1024 عدد یک را قرار داده و آن را از 1434 کم می کنیم
410 = 1024 – 1434
حاصل می شود 410 دوباره 410 می تواند مبنای 9 یا 512 را پر کند ؟ خیر این بار به جای 1 در زیر 512 عدد صفر را قرار می دهیم .(در هر بخشی که عدد ما نمی تواند آن مبنا را پر کند , در زیر مبنا عدد صفر را قرار داده و به مبنای بعدی رجوع می کنیم)
410 می تواند مبنای 8 یا 256 را پر کند ؟ بله در زیر 256 عدد 1 را قرار داده و آن را از 410 کم می کنیم
154 = 256 – 410
حاصل می شود 154 آیا 154 می تواند مبنای 7 یا 128 را پر کند ؟ بله در زیر 128 عدد 1 را قرار داده و آن را از 154 کم می کنیم .
26 = 128 – 154
حاصل می شود 26 آیا 26 می تواند مبنای 6 یا 64 را پر کند ؟ خیر در زیر 64 عدد صفر را قرار داده آیا 26 می تواند مبنای 5 یا 32 را پر کند ؟ خیر در زیر 32 هم صفر قرار می دهیم .
آیا 26 می تواند مبنای 4 یا 16 را پر کند ؟ بله در زیر 16 عدد 1 را قرار داده و آن را از 26 کم می کنیم .
10 = 16 – 26
حاصل می شود 10 آیا 10 می تواند مبنای 3 یا 8 را پر کند ؟ بله در زیر 8 نیز عدد 1 را قرار می دهیم و از هم کم می کنیم . حاصل می شود 2 آیا 2 می تواند مبنای 2 را پر کند؟ خیر در زیر 4 نیز عدد صفر را قرار می دهیم . آیا 4 می تواند مبنای 1 راپر کند ؟ بله عدد 1 را در زیر عدد 2 قرار داده و از هم کسر می کنیم . حاصل می شود صفر پس زیر مبنای صفر یا 1 نیز صفر را قرار می دهیم
پس عدد 3482 که یک عدد دسیمال است به عدد باینری 110110011010 تبدیل گردید .
این همه جون کندیم که یک عدد را تبدیل کنید . به عنوان یک مدیر شبکه بایستی این مفهوم را بدانید و بتوانید این اعداد را به یکدیگر تبدیل کنید ولی دلیل بر استفاده از این روش نیست . شما مطابق شکل زیر به راحتی می توانید این کار را با ماشین حساب ویندوز انجام دهید . و این هم تبدیل دسیمال به باینری .

دسیمال به باینری

تعداد پیام ها 15

  1. از اینهمه زحمتی که می کشید واقعا سپاسگزارم. پایدار و سرفراز باشید.
    این تبدیل را با روش تقسیم های متوالی به 2 هم می توان انجام داد.درسته؟

  2. سلام،خیلی خوب و ساده توضیح دادید ، اگه امکان داره تبدیل به bcd ، oct و بکارگیری واسطه هم توضیح بفرمایید،ممنونم.

  3. سلام استاد من شنیدم که میشه از روش دودویی بعضی از جمله هایی که میخایمرو بنویسیم مثلا من ی جمله تو ذهنمه به روش دودویی بنویسم درسته ؟؟؟

  4. خیلی ممنون استاد عالی بود،الان فقط من یه مشکل دارم که متوجه نشدم بازم،اونم اینکه یک عدد دسیمال داده من چطور باید بدونم ک تا چند رقم باید بنویسم مثلا تا ۶۴ بنویسم یا ۵۱۲ ممنون میشم کمکم کنید

خوشحال می شویم دیدگاههای خود را در میان بگذارید * فرصت پاسخگویی به سوالات در بلاگ وجود ندارد

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *