زکات علم

زَکاةُ العِلمِ أن تُعَلِّمَهُ عِبادَ اللّه‏ِ امام باقر (ع)
زکات علم

مطالبی در زمینه کامپیوتر و علاقه مندی های شخصی من مطالب این وبلاگ غالبا مطالبی ست که در جای جای اینترنت کتاب یا دانشته های شخصی خودم می باشد که به عنوان مرجعی برای رجوع دوباره در اینجا جمع آوری شده اند .
ehsunitd.ir personal website

پیوندها

تبدیل مبناها

شنبه, ۳۰ آذر ۱۳۹۲، ۰۲:۱۷ ب.ظ

تبدیل مبناها :

هر مبنایی به اندازه عدد مبنا کد دارد  که از  صفر  شروع و تا  عدد مبنا منهای یک  ادامه دارد

 مثلاً مبنای 10 دارای 10 کد می باشد که  شامل 0 تا 9  می باشد 

یا مبنای 16 دارای 16 کد میباشد که از 0تا 15 ادامه دارد  ولی اعداد دو رقمی در این مبنا با حروف الفبا نشان داده می شود

 

مبنای 10

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

مبنای 16

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

 

 

یا مبنای 8  که دارای 8 کد می باشد که از صفر شروع و تا 7 ادامه دارد

مبنای 2 : سیستم دودئی شبیه سیستم ده دهی هستفقط به جای یگان ،دهگان ،صدگان...در این سیستم دوگان ،چهارگان ،هشتگان و...وجود دارد ( این مبنا فقط دارای 2 کد صفر و یک می باشد

 

برای تبدیل یک عدد از مبنای 10 به 2  باید آن عدد را بر 2 تقسیم کرد

روش تقسیم به شرحی است که در این شکل برای عدد 67 که قرار است به مبنای 2 تقسیم شود انجام شده است


حاصل می شود 1000011  یعنی اخرین خارج قسمت و سپس باقی مانده ها از آخر به اول

 

برای تبدیل یک عدد از مبنای 2 به 10 از ضرب متوالی ارقام آن  در توانی از عدد 2 استفاده می کنیم

 ابتدا ارقام عدد مبنای 2 را تعیین موقعیت می کنیم  از چپ به راست و از صفر به بعد   در مثال زیر دقت کنید

 

شماره موقعیت

0

1

2

3

4

5

6

عدد مبنای 2

1

1

0

0

0

0

1

 

 

 

حال هر یک از ارقام عدد مبنای 2 را در 2 به توان شماره موقعیت آن ضرب می کنیم و حاصل جمع را بدست می آوریم این حاصل جمع معادل مبنای 10  عدد می باشد

 (1*2^0)+(1*2^1)+ (0*2^2)+(0*2^3)+ (0*2^4)+(0*2^5)+ (1*2^6)=67

تبدیل مبنای 2 به 16

هر چهار رقم مبنای 2 را باهم یک دسته در نظر گرفته (از سمت راست دسته بندی کنیم)  و هر دسته را جداگانه  مثل تبدیل از مبنای 2 به  10 محاسبه می کنیم ولی اعداد  از 10 به بالا را باید کد معادل آنرا از جدول بدست آورده و جایگزین نماییم

مثال در عدد مبنای 2  روبرو  101111110101  آنرا به دسته های جهار تایی زیر تجزیه می کنیم

0101                 1111            1101

سپس هردسته را جدا از 2 به 10 تبدیل می کنیم و به ازای اعداد از 10 بالاتر معدال مبنای 16 آن را قرار می دهیم

>13     15    5     è  D F 5==101111110101  

 

 

 



برای تبدیل باینری به شانزده شانزدهی بعد از دسته بندی چهرتایی طبق جدول اعداد را از سمت چپ جایگذاریمیکنیم

(111011100011100010)=(11,1011,1000,1110,0010)=3B8E 2


تبدیل مبنای 16 به 2 

هر رقم مبنای 16 را جداگانه به مبنای 2 تبدیل میکنیم و به ازای هر رقم مبنای 16باید 4 رقم در مبنای 2 قرار می دهیم


16=>2::: (7DE)=0111,1101,1110.

تبدیل مبنای 16 به 10 :


16=>10::: (9D7A)=(10*16^0)+(7*16^1)+(13*16^2)+(9*16^3)=40314

اصول تبدیل اعداد

شناسایی اصول تبدیل اعداد مبناهای مختلف به یکدیگر

1-   تبدیل اعداد از مبنای 10 به بقیه مبناها :برای این کار قسمت صحیح  را از قسمت اعشاری آ ن جدا می کنیم ،برای تبدیل قسمت صحیح از تقسیمات متوالی استفاده می کنیم.مثلا

  (45)10=(101101)2                                   (92)10=(134)                                          

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

(45)10=(101101.1)2

0.5*2=1.00

تبدیل را تا چند رقم اعشار که مد نظر طراح سوال باشد باید انجام دهیم.

(0.12)10=(0.00011)2

0.12*2=0.24

0.24*2=0.48

0.48*2=0.96

0.96*2=1.92

0.92*2=1.84

– تبدیل از بقیه مبناها به مبنای 10: برای این کار ارقام را به توان های مختلف مبنای مبدا ضرب می کنیم .

 2*8+ 24*80 + 5*8-1 + 1*8-2

(A2.43)16=10*161 + 2*160 + 4*16-1 + 3*16-2=162.2617188

(2B3.21)16=2*162 + 11*161 + 3*160 + 2*16-1 + 1*16-2

                 =2*256+11*16+3+2/16+1/256

                 =512+176+3+0.125+0.0039063=691.12891

 

3 – تبدیل از بقیه مبناها به یکدیگر: برای اینکار اول باید مبنای مبدا را به مبنای10 تبدیل کنیم ، سپس مبنای 10 را به مبنای مقصد تبدیل کنیم، یعنی دو مرحل تبدیل داریم .

(12.43)8=(   ?   )9

(12.43)8=1*8 + 2 + 4/8 + 3/64=(10.546875)10

                                                =(11.482)9

0.546875*9=4.921875

0.921875*9=8.296875

0.296875*92.671875

 

4 – تبدیل از مبنای 2 به 16: برای تبدیل از مبنای 2 به مبنای 16 از ممیزبطرف راست وچپ اعداد را چهار رقم چهار رقم جدا می کنیم وبه جای هر چهار رقم باینری یک رقم HEXمی نویسیم.

(111.11011)2=(7.D8)16

(1101z10.110)2=(36.C)16

 

5 – تبدیل از مبنای 16 به 2 : برای اینکار بجای هر رقم در مبنای 16،یک کد چهار رقمی در مبنای 2 مینویسیم.

(AC2.45)16=(1010 1100 0010.0100 0101)2

(45A.2)16=(0100 0101 1010.0010)2

6 – تبدیل از مبنای 2 به 8 : برای تبدیل از مبنای 2 به مبنای 8 از ممیز به طرف راست وچپ،اعداد را سه رقم سه رقم جدا میکنیم وبه جای هر سه رقم باینری یک رقم در مبنای 8 می نویسیم.

(111.11011)2=(7.66)8

(110110.110)2=(66.6)8

 

7 – تبدیل از مبنای 8 به 2 : برای اینکار بجای هر رقم در مبنای 8یک کد سه رقمی در مبنای 2 می نویسیم.

(761.24)8=(111 110 001.010 100)2

(2242.1)8=(010 010 100 010.001)2

 

8 – تبدیل از مبنای 8 به 16و برعکس: برای تبدیل از مبنای 8 به 16و برعکس می توان از مبنای 2 به عنوان واسطه استفاده کرد.

 

 

  • ehsan gholami

نظرات (۰)

هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی