تبلیغات
تکنولوژی الکترونیک - مبنای اعداد
پنجشنبه 15 مهر 1389  10:36 ب.ظ    ویرایش: - -

 

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

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

 




تاریخچه


اولین شرح از سیستم عددی دو دویی در قرن 2 قبل از میلاد یا 5 قبل از میلاد توسط پینگالا(pingala ) ارائه شد. پینگالا سیستم عددی دو دویی را در ارتباط با وزن های شعری ودیک (Vedic) با هجاهای بلند و کوتاه توصیف کرد. سیستم عددی دو دویی جدید اول بار به صورت مستند توسط گاتفرید لاینبتیز (Gottfried Leibniz) ارائه شد. سیستم عددی پینگال با یک شروع می شد ولی سیستم عددی لاینبتیز و کامپیوترهای جدید از صفر شروع می شود.

 

ادامه مطلب


نمایش

یک عدد دودویی توسط هر توالی بیت ها (رقم های دودویی) که توسط هر مکانیسم با دو حالت محدود و دو سویه قابل بیان باشد، قابل نمایش است.
رشته علامت های زیر می تواند اعداد دودویی باشد که مقادیر مختلفی را نمایش می دهند:
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 مبنای هشت

   


نظرات()  
real psychic
چهارشنبه 19 مهر 1396 08:28 ب.ظ
Aw, this was a very good post. Taking the time and actual
effort to produce a really good article…
but what can I say… I put things off a whole lot and never manage to get nearly anything done.
How do you get rid of Achilles tendonitis?
دوشنبه 27 شهریور 1396 03:38 ق.ظ
What's up, after reading this amazing article i am as well glad to share my familiarity here with mates.
cheap psychics
دوشنبه 20 شهریور 1396 04:57 ق.ظ
یک فرد لزوما دست را به انتقاد از دست می دهد
مقالات من ممکن است اعلام کنم این اولین بار است که من صفحات وب خود را تا کنون مرور کرده ام؟
من با تحقیقاتی که انجام داده اید را برای ایجاد این واقعیت شگفت زده کردید
پست باور نکردنی. فعالیت عالی!
cheap phone psychic reading
دوشنبه 20 شهریور 1396 02:57 ق.ظ
سلام، من احساس می کنم که من دیدم شما از وبلاگ من بازدید کردید بنابراین من کردم
در اینجا برای رفتن به ترجیح دادن؟ من در تلاش برای پیدا کردن چیزهایی به
بهبود وب سایت من! من حدس می زنم آن را به اندازه کافی خوب برای استفاده از چند ایده های خود را!
std screening near me
یکشنبه 19 شهریور 1396 04:05 ب.ظ
در صورتی که چیزی به طور کامل درک نکنید، سوالاتی که در این مورد مطرح می شوند، واقعا خوب است. اما این
پست حتی لذت بخش را نیز ارائه می دهد.
chaturbatefreetokenshack.com
دوشنبه 13 شهریور 1396 03:44 ق.ظ
I every time used to study paragraph in news papers but now as I
am a user of web therefore from now I am using net for posts,
thanks to web.
chaturbate premium and token generator
یکشنبه 5 شهریور 1396 01:01 ق.ظ
At this moment I am ready to do my breakfast, once having my breakfast coming again to
read other news.
Why does it hurt right above my heel?
دوشنبه 30 مرداد 1396 12:56 ب.ظ
Nice post. I learn something totally new and
challenging on sites I stumbleupon on a daily basis.
It will always be helpful to read through
articles from other writers and use a little something from other websites.
http://emaanderlik.hatenablog.com
پنجشنبه 28 اردیبهشت 1396 06:49 ب.ظ
My brother recommended I might like this web site.
He was totally right. This post actually made my
day. You cann't imagine simply how much time I had spent for this information! Thanks!
Chante
دوشنبه 25 اردیبهشت 1396 03:58 ب.ظ
You could certainly see your enthusiasm within the work you write.
The sector hopes for even more passionate writers
such as you who are not afraid to mention how they believe.
All the time follow your heart.
BHW
پنجشنبه 24 فروردین 1396 04:45 ق.ظ
For most recent information you have to pay a visit
world wide web and on world-wide-web I found this
site as a most excellent web site for most recent updates.
BHW
دوشنبه 21 فروردین 1396 01:29 ب.ظ
Howdy I am so glad I found your blog, I really found you by
error, while I was searching on Digg for something else, Anyhow I am here now and would just like to say thank you for a
tremendous post and a all round enjoyable blog (I also love the theme/design), I
don’t have time to go through it all at the minute but I have book-marked it and also added in your RSS feeds, so when I have time I will
be back to read much more, Please do keep up the awesome jo.
manicure
یکشنبه 20 فروردین 1396 04:39 ق.ظ
Hi it's me, I am also visiting this web site regularly, this
site is really good and the visitors are in fact sharing nice thoughts.
manicure
جمعه 18 فروردین 1396 02:17 ب.ظ
Hello, i feel that i noticed you visited my web site so i came to go back the desire?.I am trying to find things
to improve my website!I assume its adequate to make use of some of your ideas!!
manicure
چهارشنبه 16 فروردین 1396 11:56 ق.ظ
I am curious to find out what blog system you're utilizing?
I'm having some small security issues with
my latest site and I'd like to find something more safeguarded.
Do you have any suggestions?
manicure
سه شنبه 15 فروردین 1396 02:23 ب.ظ
Write more, thats all I have to say. Literally, it seems
as though you relied on the video to make your
point. You clearly know what youre talking about, why waste your
intelligence on just posting videos to your weblog when you could be giving us something informative to read?
یکشنبه 12 دی 1389 06:11 ق.ظ
mamnoon Aali bood
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر

تکنولوژی الکترونیک

ElectronicTech for a better life