Konvertera enkelt nummer mellan binära och decimala system med detta gratis onlineverktyg. Omedelbar konvertering med pedagogisk visualisering.
Konvertera mellan binära och decimala talsystem omedelbart.
Binära tal använder endast 0:or och 1:or
Decimala tal använder siffrorna 0-9
Ange ett värde i något av fälten för att se konverteringen i det andra fältet.
Binär-decimal konverteraren är ett viktigt verktyg för alla som arbetar med olika talsystem. Binär (bas-2) och decimal (bas-10) är två grundläggande numeriska system som används inom datavetenskap och matematik. Vår binär till decimal konverterare låter dig omedelbart översätta siffror mellan dessa system med perfekt noggrannhet. Oavsett om du är en datavetenskapsstudent som lär dig om binär representation, en programmerare som felsöker kod, eller en elektronikentusiast som arbetar med digitala kretsar, förenklar detta verktyg processen att konvertera mellan binära och decimala talformat utan att kräva komplexa manuella beräkningar.
Binära siffror, som endast består av 0:or och 1:or, utgör grunden för alla digitala datorsystem, medan decimalsystemet med siffrorna 0-9 är vad vi använder i vardagen. Att förstå relationen mellan dessa system är avgörande för alla som är involverade i datavetenskap, programmering eller digital elektronik. Detta verktyg överbryggar klyftan mellan dessa talsystem, vilket gör konverteringar enkla och felfria.
Decimalsystemet är vårt standardtalsystem, som använder 10 siffror (0-9). I detta positionsnummer system representerar varje siffra en makt av 10:
Till exempel representerar decimalnumret 427:
När vi adderar dessa värden: 400 + 20 + 7 = 427
Det binära systemet använder endast två siffror (0 och 1). Varje position i ett binärt tal representerar en makt av 2:
Till exempel representerar det binära numret 1010:
När vi adderar dessa värden: 8 + 0 + 2 + 0 = 10 i decimal
För att konvertera ett binärt tal till decimal multiplicera varje siffra med dess motsvarande makt av 2 och summera resultaten:
Där:
Exempel: Konvertera binär 1101 till decimal
För att konvertera ett decimalt tal till binärt, dela upprepade gånger numret med 2 och registrera resten i omvänd ordning:
Exempel: Konvertera decimal 25 till binär
Vår binär-decimal konverterare är utformad för att vara intuitiv och användarvänlig. Följ dessa enkla steg för att konvertera mellan binära och decimala tal:
Konverteraren ger också en visuell förklaring av konverteringsprocessen, som visar exakt hur varje konvertering utförs matematiskt. Denna utbildningsfunktion hjälper dig att förstå de underliggande principerna för konverteringar mellan talsystem.
Konvertering mellan binär och decimal är grundläggande inom många områden och tillämpningar:
En IPv4-adress som 192.168.1.1 kan representeras i binär som:
Sammanlagt: 11000000.10101000.00000001.00000001
Även om binär och decimal är de mest använda talsystemen, har andra system viktiga tillämpningar:
Hexadecimalt använder 16 siffror (0-9 och A-F) och används ofta som ett mer kompakt sätt att representera binär data. Varje hexadecimalt tecken representerar exakt 4 binära siffror.
Exempel: Binär 1010 1101 = Hexadecimalt AD
Oktalt använder 8 siffror (0-7) och var historiskt viktigt inom datavetenskap. Varje oktalt tecken representerar exakt 3 binära siffror.
Exempel: Binär 101 011 = Oktalt 53
BCD representerar varje decimal siffra med ett fast antal binära siffror (vanligtvis 4). Det används i tillämpningar där decimalrepresentation krävs, såsom digitala klockor.
Exempel: Decimal 42 i BCD = 0100 0010
Decimalsystemet har varit det dominerande talsystemet i mänsklighetens historia, troligen eftersom människor har tio fingrar. Bevis på decimalsystem dateras tillbaka till antika civilisationer:
Det binära systemet har en mer nyligen men lika fascinerande historia:
Här är implementationer av binär-decimal konvertering i olika programmeringsspråk:
1// Binär till decimal konvertering
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Ogiltigt binärt nummer";
5 }
6 return parseInt(binary, 2);
7}
8
9// Decimal till binär konvertering
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Ogiltigt decimalt nummer";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Exempelanvändning
18console.log(binaryToDecimal("1010")); // Utdata: 10
19console.log(decimalToBinary("42")); // Utdata: 101010
20
1# Binär till decimal konvertering
2def binary_to_decimal(binary):
3 try:
4 # Kontrollera om inmatningen endast innehåller 0:or och 1:or
5 if not all(bit in '01' for bit in binary):
6 return "Ogiltigt binärt nummer"
7 return int(binary, 2)
8 except ValueError:
9 return "Ogiltigt binärt nummer"
10
11# Decimal till binär konvertering
12def decimal_to_binary(decimal):
13 try:
14 # Kontrollera om inmatningen är ett icke-negativt heltal
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Ogiltigt decimalt nummer"
18 return bin(decimal)[2:] # Ta bort '0b' prefix
19 except ValueError:
20 return "Ogiltigt decimalt nummer"
21
22# Exempelanvändning
23print(binary_to_decimal("1010")) # Utdata: 10
24print(decimal_to_binary("42")) # Utdata: 101010
25
1public class BinaryDecimalConverter {
2 // Binär till decimal konvertering
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Ogiltigt binärt nummer");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Decimal till binär konvertering
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Negativa tal stöds inte");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Utdata: 10
20 System.out.println(decimalToBinary(42)); // Utdata: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Binär till decimal konvertering
7int binaryToDecimal(const std::string& binary) {
8 // Kontrollera om inmatningen endast innehåller 0:or och 1:or
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Ogiltigt binärt nummer");
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// Decimal till binär konvertering
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Negativa tal stöds inte");
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; // Utdata: 10
42 std::cout << decimalToBinary(42) << std::endl; // Utdata: 101010
43 return 0;
44}
45
1' Binär till decimal konvertering
2Function BinaryToDecimal(binary As String) As Variant
3 ' Kontrollera om inmatningen endast innehåller 0:or och 1:or
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' Decimal till binär konvertering
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' Exempelanvändning i en cell:
26' =BinaryToDecimal("1010") ' Återger: 10
27' =DecimalToBinary(42) ' Återger: 101010
28
Ett binärt nummer är ett nummer som uttrycks i bas-2 talsystemet, som endast använder två symboler: vanligtvis "0" och "1". Varje siffra kallas en bit (binär siffra). Binära nummer är grundläggande för digital databehandling eftersom all data i datorer i slutändan representeras i binär form.
Datorer använder binär eftersom elektroniska komponenter enkelt kan representera två tillstånd: på/av, hög/låg spänning eller magnetiska polariteter. Binär är också matematiskt enklare att implementera i hårdvara, vilket gör datorer mer pålitliga och effektiva. Dessutom passar Boolesk logik (OCH, ELLER, INTE) perfekt till binära operationer.
För att konvertera ett binärt nummer till decimal manuellt:
Till exempel, binär 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
För att konvertera ett decimalt nummer till binärt manuellt:
Till exempel, decimal 13: 13 ÷ 2 = 6 resten 1 6 ÷ 2 = 3 resten 0 3 ÷ 2 = 1 resten 1 1 ÷ 2 = 0 resten 1 Läsning från botten till toppen: 1101
Vår nuvarande implementation fokuserar på icke-negativa heltal för enkelhetens skull och utbildningssyften. Negativa nummer i binär representeras vanligtvis med tekniker som signerad magnitud, ett komplement eller tvås komplement, vilket är mer avancerade koncept.
Konverteraren kan hantera heltal upp till JavaScripts säkra heltalsgräns (2^53 - 1), vilket är 9 007 199 254 740 991. För binära inmatningar innebär detta upp till 53 bitar. För extremt stora nummer skulle specialiserade bibliotek krävas.
Decimala bråk representeras i binär med hjälp av binära bråk. Till exempel, 0.5 decimal är 0.1 binär (1×2^-1). Processen involverar att multiplicera den fractional delen med 2 och registrera heltalsdelen tills du når 0 eller börjar upprepa. Vår nuvarande konverterare fokuserar endast på heltal.
Vanliga fel inkluderar:
Datorminnet är organiserat som en sekvens av adresserbara platser. Varje plats har en unik adress, vilket i grunden är ett nummer. Dessa adresser representeras i binär inom datorns kretsar. När ett program behöver komma åt minnet specificerar det den binära adressen för den önskade platsen.
Alla tre är positionsnummer system men med olika baser. Hexadecimalt och oktalt används ofta som mer kompakta sätt att representera binär data, där varje hexadecimalt tecken representerar 4 binära siffror och varje oktalt tecken representerar 3 binära siffror.
Knuth, Donald E. "The Art of Computer Programming, Volume 2: Seminumerical Algorithms." Addison-Wesley, 1997.
Leibniz, Gottfried Wilhelm. "Explication de l'Arithmétique Binaire" (Förklaring av binär aritmetik). Mémoires de l'Académie Royale des Sciences, 1703.
Boole, George. "An Investigation of the Laws of Thought." Dover Publications, 1854 (återutgiven 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.
"Binärnummer." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Binary_number. Åtkomst 15 aug. 2023.
"Decimal." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Decimal. Åtkomst 15 aug. 2023.
"Konvertering mellan talsystem." National Institute of Standards and Technology, https://www.nist.gov/dads/HTML/numbersysconv.html. Åtkomst 15 aug. 2023.
Prova vår binär-decimal konverterare nu för att snabbt och noggrant konvertera mellan binära och decimala talsystem. Oavsett om du studerar datavetenskap, arbetar med digitala elektronikprojekt eller bara är nyfiken på hur datorer representerar siffror, gör vårt verktyg konverteringsprocessen enkel och lärorik.
Upptäck fler verktyg som kan vara användbara för din arbetsflöde