سیستم اعداد باینری یک روش نمایش اعداد و اطلاعات هست. از اونجایی که در کامپیوتر همه چیز به صورت باینری ذخیره میشه، هر برنامه نویسی باید توانایی درک این منطق رو داشته باشه. به همین دلیل اولین جلسه از دوره مقدمات ورود به دنیای برنامه نویسی رو به آموزش سیستم اعداد باینری اختصاص دادم. البته لازمه بگم که اگرچه همه چیز در کامپیوتر به شکل دودویی ذخیره میشه، اما ما به شکل دودویی برنامه نویسی نمیکنیم. پس لازم نیست از این بابت نگران باشید.
کدهای ما معمولا با استفاده از زبانهای سطح بالا و زبانهای سطح پایین برنامه نویسی میشن که بعدها دربارهشون صحبت میکنیم. با این وجود درک این سیستم کمک میکنه بعدها کارکرد دستورات برنامه نویسی رو بهتر درک کنید و بتونید کدهاتون رو بهتر توسعه بدید. به همین دلیل هم هست که اولین جلسه دوره به این موضوع اختصاص داره. پس در ادامه مطلب همراه من باشید.
سیستم اعداد باینری چیه؟
کلمه باینری به معنی دو دویی هست. حالا این یعنی چی؟!.
به عبارت ساده، در این سیستم عددی فقط دو مقدار صفر و یک وجود داره و همه مقادیر هم فقط با همین دو مقدار نمایش داده میشه. احتمالاً میپرسید چطوری؟!. در جواب باید بگم که در سیستم اعداد باینری همه مقادیر به کمک آرایشهای مختلف صفرها و یکها قابل نمایشه. برای مثال 10 نشون دهنده عدد 2 و 100 نشون دهنده عدد 4 هست. درحالی که برای نمایش عددی مثل عدد 7، عبارت 111 رو داریم. اجازه بدید با یه شکل ساده نحوه تبدیل اعداد در این سیستم رو بهتون نشون بدم.
در این سیستم برای محاسبه یک مقدار به خصوص، میتونیم یک ترکیب حداکثر 8 تایی از صفر و یکها در نظر بگیریم. و نحوه محاسبه هم با توجه به شکل به این صورت هست که مقدار (صفر یا یک) ضرب در 2 به توان جایگاه قرارگیری صفر یا یک در این آرایش 8 تایی.
اگه از سمت راست به این چینش 8 تایی نگاه کنیم، اولین مقدار صفر هست. پس داریم 0 ضرب در 2 به توان جایگاه، یعنی صفر (شمارش جایگاه از صفر شروع میشه)، که این مقدار برابر با صفر هست. و به همین ترتیب تا آخر. ممکنه کمی نسبت به نحوه تبدیل مقادیر دچار ابهام شده باشید که طبیعیه. به هر صورت این تبدیلها مربوط به مباحث ریاضیه که ما در زبانهای برنامه نویسی از یکسری دستورات مشخص برای انجام این تبدیلها استفاده میکنیم. بنابراین نیاز نیست ذهنتون رو درگیر انجام محاسبات ریاضی کنید. هدف ما هم از بیان سیستم اعداد باینری و نحوه تبدیل اینه که به طور کلی با این سیستم و نحوه عملکردش آشنا بشید.
اعداد دودویی در کامپیوتر:
همونطور که در مقدمه این مطلب اشاره کردم، همه چیز در کامپیوتر به صورت صفر و یک ذخیره میشه. درواقع اون چیزی که سیستم کامپیوتری متوجه میشه، آرایشی از صفر و یکهاست و هرچیزی مثل عکس، ویدیو، کد و… باید به صفر و یک تبدیل بشه. اما سوال اینه که چرا کامپیوتر بر مبنای اعداد باینری کار میکنه؟!.
حافظه کامپیوتر از واحدهای کوچیکی به نام بایت تشکیل شده. یک بایت کوچکترین واحد اطلاعاتی هست که در کامپیوتر قابل خوندن و نوشتنه. البته لازمه بدونید که اگرچه بایت کوچکترین واحد داده هست اما، از بخشهای کوچیکتری به نام بیت تشکیل شده. هر 8 بیت در کنار هم یک بایت رو تشکیل میدن. و نکته مهم درباره بیتها اینه که هر بیت فقط میتونی حاوی یک مقدار صفر یا یک باشه، که یک به معنی برقرار بودن جریان برق و صفر به معنی عدم برقراری جریان برق هست. وقتی این صفر و یکها به طور متوالی در کنار هم قرار میگیرن، آرایشی از صفر و یک ها (عدد باینری) خواهیم داشت. در نهایت اطلاعات مورد نظر ما مثل کد، فیلم، عکس، صدا و… به شکل همین رشتههای باینری در حافظه کامپیوتر ذخیره میشه.
جمعبندی:
امیدوارم این مطلب براتون مفید بوده باشه و متوجهش شده باشید. در درسهای بعدی این دوره متوجه میشید که چرا یادگیری سیستم اعداد باینری برای یک برنامه نویس مهمه؟.
اگه سوالی از مطالب گفته شده دارید و یا بخشی هست که به درستی متوجهش نشدید، پایین همین پست برام کامنت بذارید تا راهنماییتون کنم. پیروز و موفق باشید.