تبدیل هگز به باینری و بالعکس(ذهنی و سریع)


(این روش ذهنی بوده و به درخواست یکی از دوستان تهیه شده  و با روش ریاضی کمی متفوت می باشد)

در دنیای برنامه نویسی دیگر اعداد بصورت ده دهی استفاده نمی شود و برای کاهش حجم و همچنین آسان تر شدن فهم برنامه برای ماشین ها بیشتر از مبنا های ۱۶ و ۲ استفاده می کنند.

همان طور که می دانید اعداد هگزادسیمال یا اعداد مبنای ۱۶ اعدادی هستند که از صفر شروع شده و تا ۱۵ ادامه می یابد که به جای اعداد ۱۰ تا ۱۵ از حروف انگلیسی از a تا f  استفاده می کنند

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

حال می خواهیم با روشی ساده بدون استفاده از ماشین حساب این مبنا ها را به یک دیگر تبدیل کنیم(این روش به درخواست یکی از دوستان تهیه شده)

برای این کار باید کمی از اعداد را حفظ کنیم:

 

در مبنای ۱۶

در مبنای ۲اعداد در مبنای ۱۰

۰

۰۰
۱۱

۱

۲

۱۰۲
۳۱۱

۳

۴

۱۰۰۴
۵۱۰۱

۵

۶

۱۱۰

۶

۷

۱۱۱

۷

۸

۱۰۰۰۸

۹

۱۰۰۱۹

a

۱۰۱۰

۱۰

b

۱۰۱۱۱۱
c۱۱۰۰

۱۲

d۱۱۰۱

۱۳

e۱۱۱۰

۱۴

f۱۱۱۱

۱۵

برای تبدیل بصورت ذهنی باید اعدا بالا را حفظ کنید:

حال می خواهیم عدد مبنای ۲ زیر را به هگز تبدیل کنیم:
۰۱۱۰۱۱۰۱

عدد بالا را باید بصورت ۴ رقم ۴رقم از سمت راست جدا کنید سپس معادل آن را از جدول بالا جا گذاری کنید

۱۱۰۱=d  و ۰۱۱۰=۶ که عدد برابر ۶d می شود

عمل فوق را برعکس نیز می توان انجام داد مثلا عدد ۹f را با باینری یا مبنای ۲ تبدیل می کنیم:f برابر اس با ۱۱۱۱ و ۹ هم برابر اس با ۱۰۰۱ حال این اعداد را همان طوری که هستند کنار هم قرار می دهیم:۱۰۰۱۱۱۱۱

حال می خواهیم این اعداد را به مبنای ۱۰ یا دسیمال ببریم برای این کار بهتر است مبنای ۱۶ را به ۲ برده سپس به ۱۰ ببریم برای این کار به روش زیر عمل می کنیم در صورتی که در عمل ضرب ماهر باشید این قسمت را هم می توانید بصورت ذهنی حل کنید:

تبدیل هگز به باینری و بالعکس
تبدیل هگز به باینری و بالعکس

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


36 پاسخ به “تبدیل هگز به باینری و بالعکس(ذهنی و سریع)”

  1. باسلام
    ممنون از آموزشتون
    لطفا نحوه اتصال کی پد به میکرو و برنامه نویسی کی پد هم آموزش بدین.

  2. سلام.
    من میخوام اعداد هگز رو مستقیم به دسیمال تبدیل کنم.
    مثلا ۸۸FA = 35066 چجوری بدست بیارم؟

    • سلام.
      شما نمیتونید اینطور کاری رو انجام بدین چون اعداد هگزا دسیمال بر نوعی روی اعداد باینری یعنی دودویی وابسته اند.
      نمیدونم شما ریاضی این مطلب مفید رو خوندین یا نه اما برای تبدیل باینری به هگزا ما باید اونارو چهارتا چهار تا جدا کنیم و این طوری در ریاضی اعداد هگزا دسیمال رو مینویسن

  3. سلام دوست عزیز

    بابت آموزشتون بسیار سپاس گزارم

    شما برای تبدیل کردن مبنای ۱۶ به مبنای ۱۰ ابتدا به مبنای ۲ بردید سپس معادل عددی اون رو نوشتید و با ضرب کردن عدد سمت چپ در ۱۶ و جمع کردن با عدد بعدی به مبنای ده بردید و حالا مشکل من اینجاست که اگر بیشتر از دو عدد بود اون وقت چی ؟

    منظورم اینکه مثال شما دوتا عدد در مبنای ۱۶ بودش یعنی FA بود اگر بیشتر از دوتا بود چیکار کنیم ؟

    میشه اینو برام توضیح بدید۲B9؟
    میخوام ببرمش به مبنای ده دهی .

    با تشکر از شما

  4. سلام. اقا من قسمتیش رو متوجه نشدم. گفتید “دسیمالذهر قسمت را نوشته” من نفهمیدم که چگونه دسیمال ۱۱۱۱ شده ۱۵؟ممنون میشم

  5. بسیاربسیار عالی …ممنون …گویاترین توضیح ، هم این قسمت هم مبدل آنالوگ ، سوالات بسیاری به جواب رسید ……ممنون وخسته نباشی

  6. سلام داداش خیلی زحنت کشیدی ممنون.
    فقط ای کاش برای عددی مثل ۸۸c3 را هم توضیح میدادین اسباب زحمت یک شنبه امتحان دارم

    • تبدیل این عدد به باینری خیلی ساده هست که طبق روش بالا معادل هر عدد رو پشت سر هم بنویسی بدست میاد ولی برای تبدیل به مبنای ۱۰ یا دسیمال چون عدد بزرگی هست احتمالا ماشین حساب لازم باشه به هر حال
      مبنای ۲: ۳=۰۰۱۱ c=1100 8=1000 8=1000 که به ترتیب میشه ۱۰۰۰۱۰۰۰۱۱۰۰۰۰۱۱
      برای بتدیل به مبنای ۱۰ هم هر عدد رو تک تک به مبانی ۱۰ ببرید و در ۱۶ به توان محل عدد ضر ب کنید و همه رو با هم جمع کنیدبه طور مثال ۳ در مبنای ۱۰ همون ۳ هست c هم که ۱۲ هست ۸ هم که ۸ هست
      حالا ۳ ضرب در ۱۶ به توان ۰ بعلاوه ۱۲ ضرب در ۱۶ بتوان ۱ بعلاوه ۸ ضرب در ۱۶ بتوان ۲ بعلاوه ۸ ضرب در ۱۶ بتوان ۳
      که دیگه من نمیتونم ذهنی حل کنم شما رو نمیدونم من با ماشین حساب جمع زدم شد ۳۵۰۱۱
      روش ذهنی برای تبدیل مبنای ۱۶ به ۲ بسیار کاربرد داره و در تبدیل به مبنای ۱۰ برای اعداد کوچک بهتره

  7. خیلی ممنون من تو آلمانم دارم آیتی می خونم والله تو امتحان حفظی یادش گرفتم ولی اینجا به کمک شما فهمیدم چی به چیه تشکر فراوان سپاس بسیار

  8. باسلام من برنامه نویسی پایتون بلدم کمی میخواستم ببینم با هشلیب میشه کلمات رو صفرو یک کرد؟

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

    *******همیشه موفق باشید*********

  10. با سلام استاد.
    بنده یوسفی هستم.روی یک سری از برنامه های کد نویسی بر روی هگز تحقیق میکنم.خوشحال میشم در مورد این پروزه با شما صحبت کنم و از دانش شما بهره مند بشویم.
    لطفا با بنده تماس بگیرید .۰۹۱۲۳۰۹۵۳۰۷
    یوسفی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *