آشنایی با مبناهای عددی در جاوااسکریپت: از مبنای ۲ تا مبنای ۱۶
۱۴۰۳/۵/۴مبناها توی ریاضی و برنامهنویسی مهمن و به ما کمک میکنن تا اعداد رو به شکلهای مختلف نمایش بدیم و باهاشون کار کنیم. توی این مقاله، به بررسی مبناهای مختلف از جمله مبنای ۲ (دودویی یا باینری)، مبنای ۸ (هشتهشتی)، مبنای ۱۰ (دهدهی) و مبنای ۱۶ (شانزدهشانزدهی) میپردازیم و چندتا مثال عملی هم براتون میزنم.
مبناهای عددی در ریاضی و جاوااسکریپت
در ریاضیات و برنامهنویسی، عددها میتونن در مبناهای مختلفی نمایش داده بشن. هر مبنا یا پایه، نشوندهندهی تعداد واحدهای مختلفه که میتونه توی یک جایگاه عددی قرار بگیره. مثلاً در مبنای ۱۰ (دهدهی)، هر جایگاه میتونه از ۰ تا ۹ باشه. در ادامه مبناهای مختلف رو بررسی میکنیم:
مبنای ۲ (دودویی)
مبنای ۲ یا دودویی، فقط از دو رقم ۰ و ۱ تشکیل شده. این مبنا پایه و اساس محاسبات کامپیوتریه، چون کامپیوترها با سیگنالهای برقی که یا خاموش (۰) یا روشن (۱) هستن کار میکنن.
مثال:
let binaryNumber = 0b1010; // ۱۰ در مبنای ۲
console.log(binaryNumber); // 10 در مبنای ۱۰
مبنای ۸ (هشتهشتی)
مبنای ۸ یا هشتهشتی، از ارقام ۰ تا ۷ تشکیل شده. این مبنا کمتر استفاده میشه ولی تو بعضی موارد خاص مثل پردازشهای خاص کامپیوتری به کار میره.
مثال:
let octalNumber = 0o12; // ۱۰ در مبنای ۸
console.log(octalNumber); // 10 در مبنای ۱۰
مبنای ۱۰ (دهدهی)
مبنای ۱۰ یا دهدهی، همون مبنای رایج و آشنای خودمونه که از ارقام ۰ تا ۹ تشکیل شده. این مبنا بیشترین استفاده رو تو زندگی روزمره و محاسبات عادی داره.
مثال:
let decimalNumber = 10; // ۱۰ در مبنای ۱۰
console.log(decimalNumber); // 10 در مبنای ۱۰
مبنای ۱۶ (شانزدهشانزدهی)
مبنای ۱۶ یا شانزدهشانزدهی، از ارقام ۰ تا ۹ و حروف A تا F تشکیل شده. این مبنا توی برنامهنویسی و به ویژه توی نمایش رنگها در صفحات وب و پردازشهای کامپیوتری خیلی کاربرد داره.
مثال:
let hexNumber = 0xA; // ۱۰ در مبنای ۱۶
console.log(hexNumber); // 10 در مبنای ۱۰
نمایش اعداد در مبناهای مختلف
توی جاوااسکریپت، وقتی اعداد رو توی کنسول وارد میکنیم، به صورت پیشفرض به صورت دهدهی نمایش داده میشن حتی وقتی یک عدد در مبنایی غیر از ۱۰ را وارد کنیم، با زدن دکمه اینتر عدد به مبنای ۱۰ تبدیل و نمایش داده میشه. با استفاده از متد toString
میتونیم اعداد رو توی مبناهای مختلف نمایش بدیم.
مثالهای نمایش اعداد در مبناهای مختلف:
مبنای ۲ (دودویی):
let number = 10;
console.log(number.toString(2)); // "1010"
مبنای ۸ (هشتهشتی):
let number = 10;
console.log(number.toString(8)); // "12"
مبنای ۱۶ (شانزدهشانزدهی):
let number = 10;
console.log(number.toString(16)); // "a"
تبدیل و نمایش اعداد
برای تبدیل اعداد به مبناهای مختلف و نمایش اونها، میتونیم از ترکیبی از متد toString
و parseInt
استفاده کنیم.
مثال کامل:
// تعریف اعداد در مبناهای مختلف
let binaryNumber = 0b1010; // ۱۰ در مبنای ۲
let octalNumber = 0o12; // ۱۰ در مبنای ۸
let hexNumber = 0xA; // ۱۰ در مبنای ۱۶
// تبدیل و نمایش اعداد در مبناهای مختلف
console.log(binaryNumber.toString(2)); // "1010"
console.log(octalNumber.toString(8)); // "12"
console.log(hexNumber.toString(16)); // "a"
// تبدیل عدد دهدهی به سایر مبناها
let decimalNumber = 255;
console.log(decimalNumber.toString(2)); // "11111111" (دودویی)
console.log(decimalNumber.toString(8)); // "377" (هشتهشتی)
console.log(decimalNumber.toString(16)); // "ff" (شانزدهشانزدهی)
نتیجهگیری
مبناهای عددی مختلف به ما کمک میکنن تا اعداد رو به شکلهای مختلف نمایش بدیم و باهاشون کار کنیم. جاوااسکریپت ابزارهای قدرتمندی برای کار با این مبناها داره. با درک صحیح و استفاده مناسب از این مبناها، میتونیم کدهای بهینهتر و خواناتری بنویسیم و محاسبات پیچیده رو به راحتی انجام بدیم.