وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

هگزادسیمال را به اعشاری در Bash تبدیل کنید

0 12
زمان لازم برای مطالعه: 3 دقیقه


چهار نوع سیستم اعداد در سیستم های کامپیوتری رایج هستند. اینها اعشاری، باینری، اکتال و هگزادسیمال هستند. سیستم باینری 2 پایه است و کلیه محاسبات حسابی توسط کامپیوتر در سیستم باینری انجام می شود. فقط از دو رقم 0 و 1 برای محاسبه استفاده می کند. سیستم اعدادی که برای محاسبه کلی استفاده می کنیم، سیستم اعشاری است که بر اساس 10 است. از اعداد 0 تا 9 در سیستم اعشاری برای محاسبه استفاده می شود. سیستم اعداد اکتالی 8 است و با 0 تا 7 رقم نشان داده می شود. سیستم اعداد هگزادسیمال 16 است و از 0 تا 9 و کاراکترهای A تا F برای نشان دادن عدد استفاده می کند. شما به راحتی می توانید یک عدد را به سیستم اعداد دیگر با استفاده از bash اسکریپت روش تبدیل عدد هگزا دسیمال (هگز) به عدد اعشاری در Bash در این آموزش با استفاده از مثال های مختلف نشان داده شده است.

مثال-1: استفاده از obase، ibase و bc

یکی از راه های ساده برای تبدیل هر سیستم عددی به سیستم عددی دیگر استفاده از ibase، obase و bc است. ایجاد یک bash فایل به نام hexodec1.sh و کد زیر را اضافه کنید با توجه به این مثال، یک عدد هگز به عنوان ورودی گرفته می شود و بر اساس عدد اعشاری تبدیل می شود روی ارزش obase و ibase. در اینجا، obase برای تبدیل عدد اعشاری روی 10، ibase روی 16 تنظیم شده است تا عدد ورودی را به عنوان عدد هگز و `bc` دستور برای تبدیل استفاده می شود.

#!/صندوقچه/bash
echo “یک عدد هگز تایپ کنید”
خواندن hexNum
echo -n “مقدار اعشاری از $hexNum=”
echo “obase=10; ibase=16; $hexNum | قبل از میلاد مسیح

خروجی:

پیشنهاد می‌کنیم بخوانید:  جمع و تفریق ساده اعداد در Bash

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

$ bash hextodec1.sh

هگزادسیمال را به اعشاری در Bash تبدیل کنید

مثال-2: با استفاده از ibase، آرگومان خط فرمان و bc

ایجاد یک bash فایل به نام hextodec2.sh و کد زیر را اضافه کنید در این مثال، مقدار ورودی باید در آرگومان خط فرمان داده شود که توسط آن خوانده می شود $@. در اینجا، فقط ibase با مقدار 16 برای تبدیل هگز به عدد اعشاری استفاده می شود.

#!/صندوقچه/bash
echo -n “مقدار اعشاری $@=”
echo “ibase=16; $@”|قبل از میلاد مسیح

خروجی:

اسکریپت را با bash دستور، نام فایل و یک عدد هگزادسیمال به عنوان آرگومان خط فرمان. اینجا، FF به عنوان آرگومان خط فرمان داده می شود که به عنوان مقدار هگز در نظر گرفته می شود.

$ bash hextodec2.sh FF

هگزادسیمال را به اعشاری در Bash تبدیل کنیدهگزادسیمال را به اعشاری در Bash تبدیل کنید

مثال-3: با استفاده از روش printf

گزینه دیگر برای تبدیل هگز به عدد اعشاری است printf. ‘%d’ مشخص کننده فرمت در استفاده می شود printf روش تبدیل هر عدد به عدد اعشاری ایجاد یک bash فایل به نام hextodec3.sh و کد زیر را اضافه کنید طبق این اسکریپت، یک عدد هگز به عنوان ورودی گرفته می شود و در آن استفاده می شود printf روش با %d به print مقدار اعشاری

#!/صندوقچه/bash
echo “یک عدد هگز تایپ کنید”
خواندن hexNum
printf “مقدار اعشاری از $hexNum=%d\n $((16#$hexNum))

خروجی:

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

$ bash hextodec3.sh

هگزادسیمال را به اعشاری در Bash تبدیل کنیدهگزادسیمال را به اعشاری در Bash تبدیل کنید

مثال-4: استفاده از دو براکت

روش دیگری برای تبدیل هگز به عدد اعشاری بدون استفاده از روش ibase، obase و bc یا printf وجود دارد. می توانید از عبارت دو براکتی با پایه 16 برای تبدیل هگز به عدد اعشاری استفاده کنید. ایجاد یک bash فایل به نام hextodec4.sh و کد زیر را اضافه کنید اینجا، echo دستور عدد را به صورت هگز و print خروجی در سیستم اعداد اعشاری

#!/صندوقچه/bash
echo “یک عدد هگز تایپ کنید”
خواندن hexNum
echo $(( 16#$hexNum ))

خروجی:

پیشنهاد می‌کنیم بخوانید:  روش استفاده از Find Command در Bash Script

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

$ bash hextodec4.sh

هگزادسیمال را به اعشاری در Bash تبدیل کنیدهگزادسیمال را به اعشاری در Bash تبدیل کنید

مثال-5: تبدیل لیست اعداد هگزادسیمال

فرض کنید، یک فایل متنی به نام دارید ‘hexList.txt’ که شامل لیست زیر از اعداد هگز است.

HexList.txt
AB05
FF
آ ب پ ت
ACCD
بستر

ایجاد یک bash فایل به نام hextodec5.sh و کد زیر را برای تبدیل هر مقدار هگز اضافه کنید hexList.txt به مقدار اعشاری. در اینجا از obase، ibase و bc برای تبدیل استفاده می شود. در حالی که حلقه برای خواندن هر مقدار هگز از فایل متنی، تبدیل به مقدار اعشاری و print.

#!/صندوقچه/bash
در حالی که خواندن عدد
انجام دادن
echo -n “مقدار اعشاری از $شماره(هگز)=”
echo “obase=10; ibase=16; $شماره | قبل از میلاد مسیح
انجام شده < hexList.txt

خروجی:

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

$ bash hextodec5.sh

هگزادسیمال را به اعشاری در Bash تبدیل کنیدهگزادسیمال را به اعشاری در Bash تبدیل کنید

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

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1403-01-01 01:22:05

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید