แปลงเลขระหว่างระบบเลขฐานสองและฐานสิบได้อย่างง่ายดายด้วยเครื่องมือนี้ฟรีออนไลน์ การแปลงทันทีพร้อมการแสดงภาพเพื่อการศึกษา
แปลงระหว่างระบบเลขฐานสองและฐานสิบได้ทันที
หมายเลขฐานสองใช้เฉพาะ 0 และ 1
หมายเลขฐานสิบใช้ตัวเลข 0-9
กรอกค่าลงในช่องใดช่องหนึ่งเพื่อดูการแปลงในอีกช่องหนึ่ง
ไบนารี-เดซิมัล คอนเวอร์เตอร์ เป็นเครื่องมือที่จำเป็นสำหรับผู้ที่ทำงานกับระบบตัวเลขที่แตกต่างกัน ไบนารี (ฐาน-2) และเดซิมัล (ฐาน-10) เป็นสองระบบตัวเลขพื้นฐานที่ใช้ในคอมพิวเตอร์และคณิตศาสตร์ เครื่องมือแปลงไบนารีเป็นเดซิมัลของเราอนุญาตให้คุณแปลตัวเลขระหว่างระบบเหล่านี้ได้ทันทีด้วยความถูกต้องสมบูรณ์ ไม่ว่าคุณจะเป็นนักศึกษาวิทยาการคอมพิวเตอร์ที่เรียนรู้เกี่ยวกับการแทนค่าด้วยไบนารี นักพัฒนาซอฟต์แวร์ที่กำลังดีบักโค้ด หรือผู้ที่สนใจด้านอิเล็กทรอนิกส์ที่ทำงานกับวงจรดิจิตอล เครื่องมือนี้ทำให้กระบวนการแปลงระหว่างรูปแบบตัวเลขไบนารีและเดซิมัลเป็นเรื่องง่ายและปราศจากข้อผิดพลาด
ตัวเลขไบนารีซึ่งประกอบด้วย 0 และ 1 เท่านั้น เป็นพื้นฐานของระบบคอมพิวเตอร์ดิจิตอลทั้งหมด ในขณะที่ระบบเดซิมัลที่มีตัวเลข 0-9 เป็นสิ่งที่เราใช้ในชีวิตประจำวัน การเข้าใจความสัมพันธ์ระหว่างระบบเหล่านี้เป็นสิ่งสำคัญสำหรับผู้ที่เกี่ยวข้องกับวิทยาการคอมพิวเตอร์ การเขียนโปรแกรม หรืออิเล็กทรอนิกส์ดิจิตอล เครื่องมือนี้ช่วยเชื่อมช่องว่างระหว่างระบบตัวเลขเหล่านี้ ทำให้การแปลงเป็นเรื่องง่ายและปราศจากข้อผิดพลาด
ระบบเดซิมัลเป็นระบบตัวเลขมาตรฐานของเรา โดยใช้ตัวเลข 10 ตัว (0-9) ในระบบตัวเลขเชิงตำแหน่งนี้ ตำแหน่งของแต่ละตัวเลขจะแทนค่ากับพลังของ 10:
ตัวอย่างเช่น หมายเลขเดซิมัล 427 แทนค่า:
การบวกค่าต่างๆ: 400 + 20 + 7 = 427
ระบบไบนารีใช้เพียงสองตัวเลข (0 และ 1) โดยแต่ละตำแหน่งในหมายเลขไบนารีจะแทนค่าด้วยพลังของ 2:
ตัวอย่างเช่น หมายเลขไบนารี 1010 แทนค่า:
การบวกค่าต่างๆ: 8 + 0 + 2 + 0 = 10 ในเดซิมัล
ในการแปลงหมายเลขไบนารีเป็นเดซิมัล ให้คูณแต่ละตัวเลขด้วยพลังของ 2 ที่สอดคล้องกันแล้วบวกผลลัพธ์:
โดยที่:
ตัวอย่าง: การแปลงไบนารี 1101 เป็นเดซิมัล
ในการแปลงหมายเลขเดซิมัลเป็นไบนารี ให้แบ่งหมายเลขนั้นด้วย 2 ซ้ำๆ และบันทึกเศษในลำดับย้อนกลับ:
ตัวอย่าง: การแปลงเดซิมัล 25 เป็นไบนารี
คอนเวอร์เตอร์ไบนารี-เดซิมัลของเราออกแบบมาให้ใช้งานง่ายและเป็นมิตรกับผู้ใช้ ทำตามขั้นตอนง่ายๆ เหล่านี้เพื่อแปลงระหว่างหมายเลขไบนารีและเดซิมัล:
คอนเวอร์เตอร์ยังมีคำอธิบายเชิงภาพเกี่ยวกับกระบวนการแปลง โดยแสดงให้คุณเห็นว่าการแปลงแต่ละครั้งดำเนินการทางคณิตศาสตร์อย่างไร ฟีเจอร์การศึกษานี้ช่วยให้คุณเข้าใจหลักการพื้นฐานของการแปลงระบบตัวเลข
การแปลงไบนารี-เดซิมัลเป็นพื้นฐานในหลายสาขาและการใช้งาน:
ที่อยู่ IPv4 เช่น 192.168.1.1 สามารถแทนในรูปแบบไบนารีได้ดังนี้:
รวมกัน: 11000000.10101000.00000001.00000001
ในขณะที่ไบนารีและเดซิมัลเป็นระบบตัวเลขที่ใช้กันมากที่สุด แต่ระบบอื่นๆ ก็มีการใช้งานที่สำคัญ:
เฮกซาเดซิมัลใช้ตัวเลข 16 ตัว (0-9 และ A-F) และมักใช้เป็นวิธีที่กระชับกว่าในการแทนข้อมูลไบนารี ตัวเลขเฮกซาเดซิมัลแต่ละตัวแทนค่าด้วย 4 ตัวเลขไบนารี
ตัวอย่าง: ไบนารี 1010 1101 = เฮกซาเดซิมัล AD
ออคตัลใช้ตัวเลข 8 ตัว (0-7) และมีความสำคัญในประวัติศาสตร์การคอมพิวเตอร์ ตัวเลขออคตัลแต่ละตัวแทนค่าด้วย 3 ตัวเลขไบนารี
ตัวอย่าง: ไบนารี 101 011 = ออคตัล 53
BCD แทนแต่ละตัวเลขเดซิมัลโดยใช้จำนวนตัวเลขไบนารีที่กำหนด (โดยทั่วไป 4) มันถูกใช้ในแอปพลิเคชันที่ต้องการการแทนค่าด้วยเดซิมัล เช่น นาฬิกาดิจิตอล
ตัวอย่าง: เดซิมัล 42 ใน BCD = 0100 0010
ระบบเดซิมัลเป็นระบบตัวเลขที่โดดเด่นในประวัติศาสตร์ของมนุษย์ อาจเป็นเพราะมนุษย์มีนิ้วมือสิบ นิทรรศการของระบบการนับแบบเดซิมัลมีมาตั้งแต่สมัยโบราณ:
ระบบไบนารีมีประวัติศาสตร์ที่น่าสนใจแต่มีความทันสมัยมากขึ้น:
นี่คือตัวอย่างการใช้งานการแปลงไบนารี-เดซิมัลในภาษาโปรแกรมต่างๆ:
1// การแปลงไบนารีเป็นเดซิมัล
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "หมายเลขไบนารีไม่ถูกต้อง";
5 }
6 return parseInt(binary, 2);
7}
8
9// การแปลงเดซิมัลเป็นไบนารี
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "หมายเลขเดซิมัลไม่ถูกต้อง";
13 }
14 return Number(decimal).toString(2);
15}
16
17// การใช้งานตัวอย่าง
18console.log(binaryToDecimal("1010")); // แสดงผล: 10
19console.log(decimalToBinary("42")); // แสดงผล: 101010
20
1# การแปลงไบนารีเป็นเดซิมัล
2def binary_to_decimal(binary):
3 try:
4 # ตรวจสอบว่าข้อมูลมีเพียง 0 และ 1
5 if not all(bit in '01' for bit in binary):
6 return "หมายเลขไบนารีไม่ถูกต้อง"
7 return int(binary, 2)
8 except ValueError:
9 return "หมายเลขไบนารีไม่ถูกต้อง"
10
11# การแปลงเดซิมัลเป็นไบนารี
12def decimal_to_binary(decimal):
13 try:
14 # ตรวจสอบว่าข้อมูลเป็นจำนวนเต็มที่ไม่เป็นลบ
15 decimal = int(decimal)
16 if decimal < 0:
17 return "หมายเลขเดซิมัลไม่ถูกต้อง"
18 return bin(decimal)[2:] # ลบคำนำหน้า '0b'
19 except ValueError:
20 return "หมายเลขเดซิมัลไม่ถูกต้อง"
21
22# การใช้งานตัวอย่าง
23print(binary_to_decimal("1010")) # แสดงผล: 10
24print(decimal_to_binary("42")) # แสดงผล: 101010
25
1public class BinaryDecimalConverter {
2 // การแปลงไบนารีเป็นเดซิมัล
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("หมายเลขไบนารีไม่ถูกต้อง");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // การแปลงเดซิมัลเป็นไบนารี
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("หมายเลขลบไม่รองรับ");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // แสดงผล: 10
20 System.out.println(decimalToBinary(42)); // แสดงผล: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// การแปลงไบนารีเป็นเดซิมัล
7int binaryToDecimal(const std::string& binary) {
8 // ตรวจสอบว่าข้อมูลมีเพียง 0 และ 1
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("หมายเลขไบนารีไม่ถูกต้อง");
11 }
12
13 int decimal = 0;
14 for (int i = 0; i < binary.length(); i++) {
15 if (binary[binary.length() - 1 - i] == '1') {
16 decimal += std::pow(2, i);
17 }
18 }
19 return decimal;
20}
21
22// การแปลงเดซิมัลเป็นไบนารี
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("หมายเลขลบไม่รองรับ");
26 }
27
28 if (decimal == 0) {
29 return "0";
30 }
31
32 std::string binary = "";
33 while (decimal > 0) {
34 binary = (decimal % 2 == 0 ? "0" : "1") + binary;
35 decimal /= 2;
36 }
37 return binary;
38}
39
40int main() {
41 std::cout << binaryToDecimal("1010") << std::endl; // แสดงผล: 10
42 std::cout << decimalToBinary(42) << std::endl; // แสดงผล: 101010
43 return 0;
44}
45
1' การแปลงไบนารีเป็นเดซิมัล
2Function BinaryToDecimal(binary As String) As Variant
3 ' ตรวจสอบว่าข้อมูลมีเพียง 0 และ 1
4 Dim i As Integer
5 For i = 1 To Len(binary)
6 If Mid(binary, i, 1) <> "0" And Mid(binary, i, 1) <> "1" Then
7 BinaryToDecimal = CVErr(xlErrValue)
8 Exit Function
9 End If
10 Next i
11
12 BinaryToDecimal = Application.WorksheetFunction.Bin2Dec(binary)
13End Function
14
15' การแปลงเดซิมัลเป็นไบนารี
16Function DecimalToBinary(decimal As Long) As String
17 If decimal < 0 Then
18 DecimalToBinary = CVErr(xlErrValue)
19 Exit Function
20 End If
21
22 DecimalToBinary = Application.WorksheetFunction.Dec2Bin(decimal)
23End Function
24
25' การใช้งานในเซลล์:
26' =BinaryToDecimal("1010") ' คืนค่า: 10
27' =DecimalToBinary(42) ' คืนค่า: 101010
28
หมายเลขไบนารีคือหมายเลขที่แสดงในระบบตัวเลขฐาน-2 ซึ่งใช้เพียงสองสัญลักษณ์: โดยทั่วไปคือ "0" และ "1" ตัวเลขแต่ละตัวเรียกว่าบิต (binary digit) ตัวเลขไบนารีเป็นพื้นฐานของการคอมพิวเตอร์ดิจิตอล เนื่องจากข้อมูลทั้งหมดในคอมพิวเตอร์จะถูกแทนในรูปแบบไบนารีในที่สุด
คอมพิวเตอร์ใช้ไบนารีเพราะส่วนประกอบอิเล็กทรอนิกส์สามารถแทนสองสถานะได้อย่างง่ายดาย: เปิด/ปิด แรงดันสูง/ต่ำ หรือขั้วแม่เหล็ก ไบนารียังคณิตศาสตร์ง่ายกว่าในการนำไปใช้ในฮาร์ดแวร์ ทำให้คอมพิวเตอร์มีความเชื่อถือได้และมีประสิทธิภาพมากขึ้น นอกจากนี้ตรรกะบูล (AND, OR, NOT) ยังแมพได้อย่างสมบูรณ์แบบกับการดำเนินการไบนารี
ในการแปลงหมายเลขไบนารีเป็นเดซิมัลด้วยตนเอง:
ตัวอย่างเช่น ไบนารี 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
ในการแปลงหมายเลขเดซิมัลเป็นไบนารีด้วยตนเอง:
ตัวอย่างเช่น เดซิมัล 13: 13 ÷ 2 = 6 เศษ 1 6 ÷ 2 = 3 เศษ 0 3 ÷ 2 = 1 เศษ 1 1 ÷ 2 = 0 เศษ 1 อ่านจากล่างขึ้นบน: 1101
การใช้งานปัจจุบันของเรามุ่งเน้นไปที่จำนวนเต็มที่ไม่เป็นลบเพื่อความเรียบง่ายและการศึกษา หมายเลขลบในไบนารีมักใช้เทคนิคต่างๆ เช่น ขนาดที่เซ็นเซอร์อยู่, คอมพลีเมนต์หนึ่ง หรือคอมพลีเมนต์สอง ซึ่งเป็นแนวคิดที่ซับซ้อนกว่า
คอนเวอร์เตอร์สามารถจัดการกับจำนวนเต็มได้สูงสุดถึงขีดจำกัดจำนวนเต็มที่ปลอดภัยของ JavaScript (2^53 - 1) ซึ่งคือ 9,007,199,254,740,991 สำหรับข้อมูลไบนารี นั่นหมายความว่าสูงสุดถึง 53 บิต สำหรับจำนวนที่มีขนาดใหญ่มาก จะต้องใช้ไลบรารีเฉพาะ
เศษเดซิมัลถูกแทนในไบนารีโดยใช้เศษไบนารี ตัวอย่างเช่น 0.5 เดซิมัลคือ 0.1 ไบนารี (1×2^-1) กระบวนการนี้เกี่ยวข้องกับการคูณเศษส่วนด้วย 2 และบันทึกส่วนที่เป็นจำนวนเต็มจนกว่าคุณจะถึง 0 หรือเริ่มทำซ้ำ คอนเวอร์เตอร์ปัจจุบันมุ่งเน้นไปที่จำนวนเต็มเท่านั้น
ข้อผิดพลาดทั่วไป ได้แก่:
หน่วยความจำคอมพิวเตอร์ถูกจัดระเบียบเป็นลำดับของตำแหน่งที่สามารถเข้าถึงได้ โดยแต่ละตำแหน่งมีที่อยู่เฉพาะ ซึ่งเป็นหมายเลขที่แท้จริง ที่อยู่เหล่านี้จะแทนในไบนารีภายในวงจรของคอมพิวเตอร์ เมื่อโปรแกรมต้องการเข้าถึงหน่วยความจำ มันจะระบุที่อยู่ไบนารีของตำแหน่งที่ต้องการ
ทั้งหมดเป็นระบบตัวเลขเชิงตำแหน่ง แต่มีฐานที่แตกต่างกัน เฮกซาเดซิมัลและออคตัลมักใช้เป็นวิธีที่กระชับกว่าในการแทนข้อมูลไบนารี โดยแต่ละตัวเลขเฮกซาเดซิมัลแทนค่าด้วย 4 ตัวเลขไบนารี และแต่ละตัวเลขออคตัลแทนค่าด้วย 3 ตัวเลขไบนารี
Knuth, Donald E. "The Art of Computer Programming, Volume 2: Seminumerical Algorithms." Addison-Wesley, 1997.
Leibniz, Gottfried Wilhelm. "Explication de l'Arithmétique Binaire" (คำอธิบายของการคำนวณไบนารี). Mémoires de l'Académie Royale des Sciences, 1703.
Boole, George. "An Investigation of the Laws of Thought." Dover Publications, 1854 (ตีพิมพ์ใหม่ 1958).
Shannon, Claude E. "A Symbolic Analysis of Relay and Switching Circuits." Transactions of the American Institute of Electrical Engineers, vol. 57, no. 12, 1938, pp. 713-723.
Ifrah, Georges. "The Universal History of Numbers: From Prehistory to the Invention of the Computer." Wiley, 2000.
"หมายเลขไบนารี." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Binary_number. เข้าถึงเมื่อ 15 ส.ค. 2023.
"เดซิมัล." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Decimal. เข้าถึงเมื่อ 15 ส.ค. 2023.
"การแปลงระบบตัวเลข." National Institute of Standards and Technology, https://www.nist.gov/dads/HTML/numbersysconv.html. เข้าถึงเมื่อ 15 ส.ค. 2023.
ลองใช้ไบนารี-เดซิมัล คอนเวอร์เตอร์ของเราเดี๋ยวนี้เพื่อแปลงระหว่างระบบตัวเลขไบนารีและเดซิมัลได้อย่างรวดเร็วและแม่นยำ ไม่ว่าคุณจะกำลังศึกษาเกี่ยวกับวิทยาการคอมพิวเตอร์ ทำงานในโครงการอิเล็กทรอนิกส์ดิจิตอล หรือเพียงแค่สงสัยเกี่ยวกับวิธีที่คอมพิวเตอร์แทนตัวเลข เครื่องมือของเราทำให้กระบวนการแปลงเป็นเรื่องง่ายและให้การศึกษา
ค้นพบเครื่องมือเพิ่มเติมที่อาจมีประโยชน์สำหรับการทำงานของคุณ