X
تبلیغات
تخصصی در مورد سخت افزار - سیستم اعداد دو دویی

تخصصی در مورد سخت افزار

مطالب تخصصی پیرامون سخت افزار و کامپیوتر

سیستم اعداد دو دویی


سیستم عددی دو دویی یا مبنای دو سیستمی برای نمایش اعداد با پایه دو است؛ یعنی، هر رقم دودویی می تواند هر کدام از دو مقدار را داشته باشد. از نمادهای 1,0 برای نمایش دادن اعداد دودویی استفاده می شود. سیستم های دودویی، به خاطر اجرای تقریباً سر راست در مدارهای الکترونیکی در تمام کامپیوترهای جدید به کار برده می شوند.
در برابر سیستم دو دویی، سیستم عددی ده دهی متداول، در مبنای ده بوده و از ارقام 0 تا 9 استفاده می کند. در سیستم های دو دویی برای نمایش اعداد بزرگتر از یک به تعداد ارقام بیشتری نسبت به سیستم ده دهی نیاز است. تعداد زیاد ارقام معمولاً سیستم دو دویی را برای انسان دست و پا گیر می کند به همین خاطر آنهایی که از اعداد دو دویی استفاده می کنند برای کوتاه نویسی مبنای هشت و شانزده را ترجیح می دهند.


تاریخچه


اولین شرح از سیستم عددی دو دویی در قرن 2 قبل از میلاد یا 5 قبل از میلاد توسط پینگالا(pingala ) ارائه شد. پینگالا سیستم عددی دو دویی را در ارتباط با وزن های شعری ودیک (Vedic) با هجاهای بلند و کوتاه توصیف کرد. سیستم عددی دو دویی جدید اول بار به صورت مستند توسط گاتفرید لاینبتیز (Gottfried Leibniz) ارائه شد. سیستم عددی پینگال با یک شروع می شد ولی سیستم عددی لاینبتیز و کامپیوترهای جدید از صفر شروع می شود.
در سال 1854، ریاضی دان انگلیسی ،جرج بول ( George Boole) نوعی عملیات منطقی را ارائه داد که با نام جبر بولی شناخته شد. سیستم منطقی بول در توسعه سیستم های دو دویی به خصوص در اجرای آن در مدارهای الکترونیکی مؤثر واقع شد.


نمایش


یک عدد دودویی توسط هر توالی بیت ها (رقم های دودویی) که توسط هر مکانیسم با دو حالت محدود و دو سویه قابل بیان باشد، قابل نمایش است.
رشته علامت های زیر می تواند اعداد دودویی باشد که مقادیر مختلفی را نمایش می دهند:
11010011
on off off on
مقداری که خط نشان می دهد به مقداری که به علامت نسبت داده شده بستگی دارد. در یک کامپیوتر مقادیر عددی ممکن است توسط اختلاف پتانسیلهای مختلف نشان داده شود بر روی یک دیسک مغناطیسی هم ممکن است از قطبیت های مغناطیسی استفاده شود. برای مشخص کردن پایه یا مبنای اعداد پس از نوشتن عدد از اندیس یا پسوند استفاده می شود:
100101 binary
( b پسوندی برای نشان دادن دودویی) 100101 b
( اندیس 2 برای نمایش مبنای دو) 1001012
در هنگام به کار بردن در گفتار برای بیان اعداد دودویی برای تمیز دادن آن از اعداد دهدهی رقم های آنها تک تک تلفظ می شود.
برای مثال عدد دودویی "100" به صورت "یک صفر صفر" تلفظ می شود نه به صورت "صد".


شمارش اعداد دودویی


شمارش اعداد دودویی همانند دیگر سیستم های عددی می باشد. با شروع از یک رقم تنها شمارش با عبور از علائم مختلف انجام می شود.
هنگامی که علائم رقم اول تمام می شود به رقم مرتبه بالا (سمت چپی) یک واحد اضافه و شمارش دوباره از صفر آغاز می شود.
در اعداد دودویی، شمارش همانند دهدهی است با این تفاوت که فقط از 0 و 1 استفاده می شود. وقتی به عدد 1 می رسیم، شمارش دوباره از 0 شروع می شود و به رقم سمت چپ یک واحد اضافه می شود.
(رقم سمت راست صفر شده و به رقم سمت چپ آن یک واحد اضافه می شود) 000 , 001
(رقم سمت راست و میانی صفر شده و به صفر اولی یک واحد اضافه می شود) 010 , 011
100 , 101...
گفته می شود "در این دنیا دو نوع از مردم وجود دارند: آنهایی که دودویی را می فهمند و آنهایی که نمی فهمند"


ریاضیات دودویی

ریاضیات دودویی همانند ریاضیات در دیگر سیستم های عددی است.




جمع


ساده ترین عملیات ریاضی در دودویی، جمع است. جمع زدن دو عدد تک رقمی دودویی نسبتاً ساده است:
0 + 0 = 0
0 + 1 = 1
1 + 1 = 10 (رقم یک منتقل می شود)
هنگامی که نتیجه جمع از مقدار مبنا تجاوز می کند "عدد یک به سمت چپ منتقل" و به محل بعدی اضافه می شود.
1 1 1 1 (منتتقل شده)
0 1 1 0 1
+ 1 0 1 1 1
-------------------
= 1 0 0 1 0 0
شروع از ستون سمت راست، 1+1=10، رقم 1 به سمت چپ منتقل می شود و در پایین ستون 0 نوشته می شود. دومین ستون از سمت راست جمع زده می شود 1+1+0=10 دوباره 1 منتقل و 0 در پایین نوشته می شود ستون سوم، 1+1+1=11. این بار عدد 1 منتقل و درپایین ستون،1 نوشته می شود به همین صورت جواب 100100 به دست می آید.


تفریق


در تفریق هم تا حد زیادی به همان صورت کار می کنند:
0 – 0 = 0
0 – 1 = 1 (قرض گرفته شده)
1 – 0 = 1
1 – 1 = 0
* * * * (از ستون های ستاره دار قرض گرفته شده است)
1 1 0 1 1 1 0
- 1 0 1 1 1
-----------------
= 1 0 1 0 1 1 1
تفریق یک عدد مثبت از یک عدد دیگر مثل "جمع" منفی قدر مطلق آن با آن عدد است. کامپیوترها برای نمایش مقادیر منفی از مکمل عدد دو استفاده می کنند. برای جزئیات بیشتر مکمل عدد دو را ببیند.


ضرب

دو عدد "A" و "B" را با ضرب جزئی (partial) می توان در هم ضرب کرد برای هر رقم "B" حاصل ضرب آن را در عدد "A" به دست آورده و بر روی خطی جدید زیر رقم ضرب شده از "B" بنویسید. در آخر مجموع تمام ضرب های جرئی را محاسبه کنید.


برای مثال دو عدد 1010 و 1011 به صورت زیر در هم ضرب می شوند:*}
1 0 1 1 (A)
* 1 0 10 (B)
----------
0 0 0 0 B به خاطر رقم صفر عدد
1 0 1 1 B به خاطر رقم یک عدد
0 0 0 0
+ 1 0 1 1
------------------
= 1 1 0 1 1 1 0

تقسیم


تقسیم در مبنای دو نیز همانند تقسیم ده دهی است.
در اینجا مقسوم علیه 1012 یا عدد5 است.
1 1 0 1 1 1 0 1
1 0 1 1 0 1
--------
0 1 1
0 0 0
---------
1 1 1
1 0 1
--------
0 1
همانند ضرب های طولانی ده دهی سه رقم از مقسوم جدا و آن را بر مقسوم علیه تقسیم می کنیم بنابراین در خارج قسمت عدد1 را می نویسیم عدد یک از مقسوم علیه ضرب و حاصل از سه رقم جدا شده کم می شود. رقم بعدی "1" اضافه می شود. این کار ادامه پیدا می کند تا جایی که رقم های مقسوم تمام شود.
بنابراین خارج قسمت تقسیم 11011 بر 101 برابر 1012 و باقی مانده 102 است.


عملیات های منطقی بیتی



هر چند به طور مستقیم به تفسیر عددی علائم دودویی مربوط نمی شود، بیت ها را می توان با عملگرهای منطقی بولی دستکاری کرد. دستکاری رشته از علائم دودویی به این صورت را عملیات بیتی می گویند. عملگرهای منطقی و AND، یا OR وXOR ممکن است روی بیت های متناظر دو عدد باینری که به عنوان ورودی هستند عمل کنند. عملگر NOT منطقی ممکن است بر تک بیت های یک عدد دودویی ورودی کار کند. گاهی اوقات از این عملگرها می توان به عنوان میانبر محاسباتی استفاده کرد این عملگرها ممکن است فواید محاسباتی دیگری هم داشته باشد، عملگر بیتی را ببینید.


تبدیل از"و" به دیگر سیستم های عددی


ده دهی
در هر سیستم عددی ارقام به ترتیب دارای درجه اهمیت کمتری هستند و موقعیت ها به ترتیب، توان های کمتری از مبنا را نشان می دهد. توان اول یکی کمتر از تعداد ارقام عدد است. یک عدد سه رقمی با توان دو شروع می شود. در سیستم های ده دهی، مبنا ده است بنابراین سمت چپ ترین رقم یک عدد سه رقمی موقعیت صدگان را نشان می دهد. برای مثال


352 برابر است با:
3 مرتبه 102(300=100*3) بعلاوه
5 مرتبه 101 (50 = 10* 5) بعلاوه
2 مرتبه 100 (2 = 1*2)

این رابطه در دودویی هم وجود دارد. ارقام پشت سرهم توان های به ترتیب کم شونده ای از مبنای دو را نشان می دهد که برای یک عدد n رقمی از توان n-1 شروع می شود. عدد پنج رقمی زیر را در نظر بگیرید:

1 0 1 1 0 برابر است با
+ (1*16=16) 24 مرتبه 1 + (0*8=0) 23 مرتبه 0 + (1*4=4) 22 مرتبه 1 + (1*2=2) 21 مرتبه 1 (0*1=0) 20 مرتبه 0
که مجموعاً 2+4+16= 22 می شود.

روش تبدیل از ده دهی به دودویی قدری متفاوت است. برای تبدیل یک عدد صحیح ده دهی به دودویی، عدد را بر دو تقسیم کرده و باقی مانده را در جایی نگه می داریم. نتیجه را بر دو تقسیم و باقی مانده را سمت چپ رقم قبلی قرار می دهیم. تا وقتی که خارج قسمت صفر شود.



یک مثال: باقی مانده

118 / 2 = 59 0
59 / 2 = 29 1
29 / 2 = 14 1
14 / 2 = 7 0 ==> 1110110
7 / 2 = 3 1
3 / 2 = 1 1
1 / 2 = 0 1

اعداد مبنای شانزده


تبدیل اعداد دودویی به مبنای شانزده و برعکس تا حدودی ساده است. به این خاطر که شانزده توانی از مبنای سیستم های دودوی (2) است. به طور دقیق تر، 24 = 16، و برای نمایش یک رقم در مبنای 16 از چهار رقم در مبنای 2 استفاده می شود.
جدول زیر هر سری چهار رقمی مبنای دو و معادل مبنای شانزده آن را نمایش می دهد.

مبنای 16 مبنای 2
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

برای تبدیل یک عدد مبنای شانزده به دودویی معادلش، به سادگی معادل ها را جایگزین کنید. مثلاً:
3A در مبنای شانزده = 0011 1010 در مبنای دو
E7 در مبنای شانزده = 1110 0111 در مبنای دو
برای تبدیل یک عدد مبنای به مبنای شانزده آن را به گروه های چهارتایی تقسیم می کنیم، اگر تعداد ارقام مضرب چهار نیست در سمت چپ به تعداد لازم 0 قرار می دهیم مبنای شانزده. برای مثال:


1010010 مبنای دو = 0101 0010 مبنای دو = 52 مبنای شانزده
11011101 مبنای دو = 1101 1101 مبنای دو = DD مبنای شانزده



مبنای هشت


اعداد دودویی به راحتی به مبنای هشت تبدیل می شوند. چون این سیستم اعداد از پایه ی 8 استفاده می کنند که توانی از دو است ( 23، بنابراین هر سه رقم مبنای 2 معادل یک رقم مبنای هشت است). برای هشت عنصر اول جدول بالا رابطه بین دودویی و مبنای هشت همانند دودویی و مبنای شانزده است.


تبدیل اعداد مبنای هشت به دو مانند مبنای شانزده به دو است.
65 مبنای هشت = 110 101 مبنای دو
17 مبنای هشت = 001 111 مبنای دو

و از دودویی به مبنای هشت:
101100 مبنای دو = 101 100 مبنای دو = 54 مبنای هشت
10011 مبنای دو = 010 011 مبنای دو = 23 مبنای هشت

نمایش اعداد حقیقی


اعداد غیر صحیح با استفاده از توان های منفی قابل نمایش هستند که توسط یک نقطه مبنا ( که در سیستم ده دهی یک نقطه ده دهی ممیز نامیده می شود) از دیگر اعداد تمیز داده می شود.
برای مثال عدد دودویی 11.012 به این صورت تفسیر می شود:
+ (1*2=2) 21 مرتبه 1
+ (1*1=1) 20مرتبه 1
+ (0*(1/2)=0) 2-1 مرتبه 0
+ (1*(1/4)=0.25) 2-2 مرتبه 1
که مجموعاً 3.25 در مبنای ده می شود. تمام اعداد گویای زوج ؟؟؟ p/2a یک شکل دودویی مختوم دارند – نمایش دودویی پس از نقطه ی مبنا تعداد زیاد ولی محدودی جمله دارد. دیگر اعداد گویا دارای نمایشی از ارقام محدودی که به طور نا محدود تکرارمی شوند هستند.
برای مثال 1/310 = 1/112 = 0.0101010101...2
این واقعیت که نمایش دودویی اعداد گویا، یا مختوم اند و یا متناوب در دیگر سیستم های عددی مبنادار هم رخ می دهد برای مثال، توضیح ده دهی را ببینید. شباهت دیگر وجود نمایش های متناوب برای هر نمایش مختوم است با توجه به این واقعیت که 0.111111...2 مجموع سری هندسی 2-1 + 2-2 + 2-3 + ... که برابر 1 است می باشد.
اعداد دودویی که نه مختوم اند و نه متناوب، اعداد گنگ نامیده می شوند. برای مثال:
* 1.01101010000011... نمایش دودویی عدد گنگ است. این عدد الگوی مشخصی ندارد هر چند اثبات گنگ بودن به ابزارهای بیشتری نیاز دارد. اعداد گنگ را ببینید.

[ چهارشنبه 2 آذر1390 ] [ 10:51 AM ] [ نوید حبیبی ]

[ ]



مجله اینترنتی دانستنی ها ، عکس عاشقانه جدید ، اس ام اس های عاشقانه