در دنیای امروزی پیشرفت روز افزون تکنولوژی و ماشین آلات ، ما را به سمت و سوی دنیایی پیشرفته تر و ۰ و ۱ تر هدایت می کند . از این رو شناخت آن چیزی که همه روزه با آن درگیر هستیم بدلیل شرایط کنونی حاکم بر اجتماع و بهتر کردن زندگی خودمان ، نه تنها امری اختیاری نیست بلکه امری کاملا حیاتی و ضروری است .
از این رو در این مجموعهٔ ویرگول بر این شدیم که شما را با این مبحث که هممان قطعا تا به حال اسم آن را شنیده ، آشنا کنیم :
این مجموعه که براتون داریم آماده می کنیم مجموعه ای چند قسمتی است تا با نحوه و سازوکار سیستم های کامپیوتری بطور کامل آشنا شوید ، پس وقتی این قسمت رو خوندین خوب یادش بگیرید و منتظر قسمت های بعدی باشید .

در دنیای کامپیوتری اصل و مبنای مورد نظر و کاربردی ما ، مبنای دودویی است ؛ یعنی ما برای توصیف منطق کامپیوتر باید از دو وسیله استفاده کنیم . این وسیله می تواند دو عبارت یا چیز متضاد هم باشد که نمونه هایی از آن ها در پایین آمده است ( اگر درک این مطالب برایتان کمی سخت است ، نگران نباشید در ادامه این مجموعه کاملا سوال هایتان بر طرف خواهد شد ) :
مبنای دودویی : یعنی همه اعداد را می توانیم با ترکیب دو عدد 0 و 1 بدست آوریم ( هر عددی !) . که ما در این مجموعه ، فوکوس و تمرکزمان روی این مورد است و با سیستم شکل گیری آن در ادامه به طور کامل آشنا می شویم .
مبنای دهدهی : این سیستم متشکل از تمامی اعدادی است که ما می شناسیم و در زندگی روزمره با آن سروکار داریم . مبنای کار این سیستم هم به این شکل است که : ابتدا اعداد ۰ تا ۹ را به ترتیب در نظر می گیریم و بعد مرتبا به هرکدام از آنها عدد ۱۰ را اضافه می کنیم و سطر جدیدی تشکیل میشود ، باز هم به آن ۱۰ تا اضافه میکنیم و به این ترتیب تا بینهایت پیش میرود . نگران نباش الان می فهمی چی گفتم :)) به روایت تصویر زیر :

و اما مبنای دودویی ؛ این مبنا درست است که کمی پیچیده به نظر می رسد اما کامپیوتر ها بسیار راحت تر با آنها ، نسبت به سیستم دهدهی کار می کنند . توجه کنید که می شود هر عددی را به این مبنا تبدیل کرد ، می گی چگونه ؟ پس خوب گوش کن .
ما برای تبدیل اعداد به این مبنا باید ارزش گذاری اون رو بلد باشیم .
خیلی راحته ، تنها کاری که باید بکنیم اینه که اول عدد ۱ را در نظر میگریم بعد در دو ضرب می کنیم و ادامه میدیم ، این ضرب کردن رو می تونیم تا بی نهایت ادامه بدیم :

اما لازم نیست تا بینهایت ادامه بدیم ، معمولا تا ارزش 128 جلو تر نمیریم . (دلیلشو بعدا میگم چرا !!)
برای تبدیل اعداد به مبنای دودویی ابتدا ارزش گذاری را تا جایی برای آن عدد ادامه میدهیم که ارزش بعدی از خود عدد بزرگتر نباشد و سرریز نکند . برای مثال عدد 25 را در نظر بگیرید ، ارزش گذاری آن به روایت تصویر :

مرحله بعدی اینه که راهی پیدا کنیم که با جمع این ارزش گذاری ها به عدد مورد نظر دست پیدا کنیم .
در مورد عدد 25 ما اگه 16 و 8 رو با هم جمع کنیم داریم :
16 + 8 = 24
پس فقط یدونه ۱ کم داریم که جمعش بشه 25 که :
16 + 8 + 1 = 25
و تمام ؛ حالا باید جای ارزش هایی که استفاده کردیم ( یعنی 16 ، 8 و 1) ، عدد یک بزاریم و جای ارزش هایی که نقش ماست رو داشتن ( 4 , 2 )هم عدد صفر بزاریم . یعنی

به این صورت است که عدد باینری 11001 معرف عدد 25 در سیستم دهدهی است .
و اما چند نکته :
۱ – در سیستم کامپیوتری کوچک ترین مقدار اندازه گیری ، بیت است که این بیت یا صفر است یا یک ؛ پس به هر یک از 0 و 1 های موجود در عبارت بالا ، بیت میگیم .
۲ – ولی کوچکترین اندازه قابل آدرس دهی حافظه ، بایت هست و هر بایت متشکل از ۸ بیت است .
به بیانی ساده تر ما بیت خالی را نمیتوانیم در حافظه ذخیره کنیم و برای ذخیره سازی از واحد بایت استفاده می شود .یعنی عددی مثل 25 وقتی به حافظه میره در یک بایت که معادل ۸ بیت است قرار می گیره . خب ، یه سوال ؟ مگه ما عدد 25 ای که به 0 و 1 تبدیل کردیم ۵ بیت نبود ؟ پس اینجا چه کار کنیم ؟
در اینجا جواب این است که باید ببینیم که این عدد باینری ما چند بیت کم دارد تا به تعداد ۸ بیت ( یک بایت ) برسد ،
که میبینیم در اینجا عدد باینری ما ۵ بیتی است و برای رسیدن به ۸ بیت ، ۳ بیت کم دارد . پس : ما ۳ بیت با مقدار صفر را به پشت عدد باینری مان اضافه می کنیم و همه چی درست می شود :

در نهایت وقتی این عدد ما به حافظه برای ذخیره سازی فرستاده می شود ، حافظه ما یه خونه هشت خوابه برای او اجاره می کنه و به عدد 25 مظلوم ما سر پناهی میده : ))
و در آخر لینک دانلود PDF ای که برای این قسمت درست کردم رو به منظور راحتی و دسترسی هر چه بیشتر شما کاربران عزیز به این قسمت ، در زیر قرار میدم :
فعلا تا همینجا بسه امیدوارم خوشتون اومده باشه و کلی لذت برده باشین . اگه انتقاد ، پیشنهاد یا سوالی دارین همین پایین برام بنویسید تا بتونم پست های بهتری منتشر کنم .
منتظر قسمت های بعد باشید !!