دستگاه اعداد دودویی
دستگاه اعداد دودویی یا باینری (به انگلیسی: Binary) هر عدد (شماره) را با دو رقم ۰ و ۱ نشان میدهند. این نمایش اعداد را نمایش اعداد در مبنای (پایه) دو نیز مینامند.
شیوهٔ نمایش
یک عدد در مبنای دو با تعدادی ۰ و ۱ پیاپی نشان داده میشود. در رایانهها، اعداد دودویی با دو سطح ولتاژ گوناگون نمایش داده میشوند؛ دلیلش آنست که پیادهسازی این سامانه توسط دستگاههای الکترونیک بسیار سادهتر از دیگر سیستمهای عددی است. مثلاً برای پیادهسازی این سیستم ممکن است ولتاژ ۵- بهعنوان «صفر» در نظر گرفته شود و ولتاژ ۵+ بهعنوان «یک» (حالت دو قطبی) یا ولتاژ صفر بهعنوان «صفر» و ولتاژ ۵+ بهعنوان «یک» (حالت دودویی) در نظر گرفته شود. در دیسکهای مغناطیسی نیز از نقاط دارای مغناطیس (یک) و بدون آن (صفر) برای نمایش دادهها و اعداد استفاده میشود.
تبدیل دودویی به دهدهی و برعکس
تبدیل از دهدهی به دودویی
یکی از روشهای تبدیل از مبنای دهدهی به دودویی تقسیم متوالی بر عدد دو است؛ که طی آن باقیماندهها مورد استفاده قرار میگیرند. تقسیمات را تا صفر شدن خارجقسمت انجام میدهیم. در نهایت آخرین خارج قسمت و بعد از آن باقیماندهها را از آخر به اول کنار همدیگر قرار میدهیم. عدد بدست آمده معادل دودویی خواهد بود.
0 | 16 | 32/2 |
---|---|---|
0 | 8 | 16/2 |
0 | 4 | 8/2 |
0 | 2 | 4/2 |
0 | 1 | 2/2 |
1 |
حالا اعداد را از پایین به بالا می خوانیم : 100000
تبدیل از دودویی به دهدهی
ابتدا ارزش مکانی رقمها را محاسبه نموده بدین طریق که رقم اول از سمت راست در جایگاه ورقم دوم در جایگاه و… میباشند. سپس هر کدام از رقمها را در ارزش مکانیش ضرب کرده و همه را با هم جمع میکنیم (جمع در مبنای ده) عدد به دست آمده در مبنای ده و برابر عدد ابتدایی در مبنای دو است.
مثال:
- ۱۰۰۱۰۱۲ = [( ۱ ) × ۲۵] + [( ۰ ) × ۲۴] + [( ۰ ) × ۲۳] + [( ۱ ) × ۲۲] + [( ۰ ) × ۲۱]+ [( ۱ ) × ۲۰]
- ۱۰۰۱۰۱2 = [۱ × ۳۲] + [۰ × ۱۶] + [۰ × ۸] + [۱ × ۴] + [۰ × ۲] + [۱ × ۱]
- ۱۰۰۱۰۱۲ = ۳۷۱۰
اعمال ریاضی در اعداد دو دویی
جمع
سادهترین عملیات ریاضی در باینری جمع است. جمع دو عدد دودویی تک رقمی نسبتاً ساده است.
- ۰ + ۰ → ۰
- ۰ + ۱ → ۱
- ۱ + ۰ → ۱
- ۱ + ۱ → ۰, یک ۱ به ستون بعد میرود (زیرا ۱ + ۱ = ۲ = ۰ + (۱ × ۲۱))
برای جمع کردن اعداد چند رقمی، از روشی مثل روش ده بر یک استفاده میکنیم و به آن دو بر یک میگوییم. یعنی اگر جمع در یکی از ارقام بزرگتر یا مساوی دو شد، به رقم بعدی یک واحد اضافه میکنیم.
به این روش حمل کردن نیز میگویند. یعنی اگر مقدار یک رقم از عدد مبنا بزرگتر شود، یک یک به رقم بعدی حمل میشود. این روش در هر مبنایی (از جمله ۲ و ۱۰) قابل اجراست. همچنین این اعداد مربوط است به اعداد ۳٬۶٬۹ (اشاره به جمله معروف نیکولا تسلا)
۱ ۱ ۱ ۱ ۱ (ارقام حمل شده)
۰ ۱ ۱ ۰ ۱
+ ۱ ۰ ۱ ۱ ۱
-------------
۱ ۰ ۰ ۱ ۰ ۰ = ۳۶
در این مثال، دو عدد جمع شده ۰۱۱۰۱۲ (۱۳۱۰) و ۱۰۱۱۱۲ (۲۳۱۰) هستند. سطر بالا بیتهای حمل شده را نشان میدهد. در ابتدا در راستترین ستون، نتیجه ۲ است پس جواب در آن رقم صفر میشود و یک واحد به رقم بعد حمل میشود. در ستون دوم جمع ۱ است و با آن رقم حمل شده جمع ۲ میشود. پس بهطور مشابه نتیجه ۰ و یک واحد به رقم بعد حمل میشود. در رقم بعد نتیجه ۳ است، جواب یک و یک واحد هم دو بر یک اتفاق میافتد. اگر به همین ترتیب ادامه دهیم، جواب برابر ۳۶ خواهد شد.
ساعت باینری
ساعت باینری زمان را طبق اصول باینری نشان میدهد، ساعت، دقیقه و ثانیه در سه ستون با چهار سطر نشان داده میشود، مطابق شکل سطر اول رقم ۱، سطر دوم ۲، سطر سوم ۴، و سطر آخر رقم ۹ است، ستون سمت چپ رقم دهگان و ستون سمت راست رقم یکان را نشان میدهد که با جمع ارقام هر ستون و جمعبندی آنها با هم عدد ساعت، دقیقه و ثانیه به دست میآید.
اعداد دو دویی در کامپیوتر
در کامپیوتر هر حرف بسته به نوع زخیره سازی و زبان 8 یا 16 بیت(هر بیت معادل یک 0 یا 1 است) است.
در زخیره سازی unicode حروف انگلیسیی به شکل زیر هستند :
01111001 | y | 01110001 | q | 01101001 | i | 01100001 | a |
---|---|---|---|---|---|---|---|
01111010 | z | 01110010 | r | 01101010 | j | 01100010 | b |
01110011 | s | 01101011 | k | 01100011 | c | ||
01110100 | t | 01101100 | l | 01100100 | d | ||
01110101 | u | 01101101 | m | 01100101 | e | ||
01110110 | v | 01101110 | n | 01100110 | f | ||
01110111 | w | 01101111 | o | 01100111 | g | ||
01111000 | x | 01110000 | p | 01101000 | h |