Konverter nemt tal mellem binære og decimale systemer med dette gratis online værktøj. Øjeblikkelig konvertering med uddannelsesmæssig visualisering.
Konverter mellem binære og decimale talsystemer på et øjeblik.
Binære tal bruger kun 0'er og 1'er
Decimale tal bruger cifrene 0-9
Indtast en værdi i et af felterne for at se konverteringen i det andet felt.
Binær-Decimalkonverteren er et vigtigt værktøj for alle, der arbejder med forskellige talsystemer. Binær (base-2) og decimal (base-10) er to grundlæggende numeriske systemer, der bruges i databehandling og matematik. Vores binær til decimal konverter gør det muligt for dig at oversætte tal mellem disse systemer øjeblikkeligt med perfekt nøjagtighed. Uanset om du er en datalogi studerende, der lærer om binær repræsentation, en programmør, der fejlretter kode, eller en elektronikentusiast, der arbejder med digitale kredsløb, forenkler denne konverter processen med at konvertere mellem binære og decimale talformater uden at kræve komplekse manuelle beregninger.
Binære tal, der kun består af 0'ere og 1'ere, danner grundlaget for alle digitale computersystemer, mens decimalsystemet med cifre 0-9 er det, vi bruger i hverdagen. At forstå forholdet mellem disse systemer er afgørende for alle, der er involveret i datalogi, programmering eller digital elektronik. Dette værktøj bygger bro over kløften mellem disse talsystemer, hvilket gør konverteringer problemfrie og fejlfri.
Decimalsystemet er vores standard talsystem, der bruger 10 cifre (0-9). I dette positionsnummer system repræsenterer hver ciffers position en potens af 10:
For eksempel repræsenterer decimalnummeret 427:
Når vi lægger disse værdier sammen: 400 + 20 + 7 = 427
Det binære system bruger kun to cifre (0 og 1). Hver position i et binært tal repræsenterer en potens af 2:
For eksempel repræsenterer det binære nummer 1010:
Når vi lægger disse værdier sammen: 8 + 0 + 2 + 0 = 10 i decimal
For at konvertere et binært tal til decimal, multiplicer hver ciffer med dens tilsvarende potens af 2 og summér resultaterne:
Hvor:
Eksempel: Konvertering af binær 1101 til decimal
For at konvertere et decimaltal til binært, divider tallet gentagne gange med 2 og registrer resterne i omvendt rækkefølge:
Eksempel: Konvertering af decimal 25 til binær
Vores binær-decimalkonverter er designet til at være intuitiv og brugervenlig. Følg disse enkle trin for at konvertere mellem binære og decimale tal:
Konverteren giver også en visuel forklaring af konverteringsprocessen, der viser dig præcist, hvordan hver konvertering udføres matematisk. Denne uddannelsesmæssige funktion hjælper dig med at forstå de underliggende principper for konverteringer mellem talsystemer.
Konvertering mellem binær og decimal er grundlæggende inden for mange områder og anvendelser:
En IPv4-adresse som 192.168.1.1 kan repræsenteres i binær som:
Kombineret: 11000000.10101000.00000001.00000001
Mens binær og decimal er de mest almindeligt anvendte talsystemer, har andre systemer vigtige anvendelser:
Hexadecimalt bruger 16 cifre (0-9 og A-F) og bruges ofte som en mere kompakt måde at repræsentere binære data på. Hvert hexadecimalt ciffer repræsenterer præcist 4 binære cifre.
Eksempel: Binær 1010 1101 = Hexadecimalt AD
Oktalt bruger 8 cifre (0-7) og var historisk vigtigt i databehandling. Hvert oktalt ciffer repræsenterer præcist 3 binære cifre.
Eksempel: Binær 101 011 = Oktalt 53
BCD repræsenterer hvert decimal ciffer ved hjælp af et fast antal binære cifre (typisk 4). Det bruges i applikationer, hvor decimalrepræsentation er påkrævet, såsom digitale ure.
Eksempel: Decimal 42 i BCD = 0100 0010
Decimalsystemet har været det dominerende talsystem i menneskets historie, sandsynligvis fordi mennesker har ti fingre. Beviser på decimalsystemer dateres tilbage til gamle civilisationer:
Det binære system har en mere nylig, men lige så fascinerende historie:
Her er implementeringer af binær-decimal konvertering i forskellige programmeringssprog:
1// Binær til Decimal konvertering
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Ugyldigt binært nummer";
5 }
6 return parseInt(binary, 2);
7}
8
9// Decimal til Binær konvertering
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Ugyldigt decimalt nummer";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Eksempel brug
18console.log(binaryToDecimal("1010")); // Udgiver: 10
19console.log(decimalToBinary("42")); // Udgiver: 101010
20
1# Binær til Decimal konvertering
2def binary_to_decimal(binary):
3 try:
4 # Tjek om input kun indeholder 0'ere og 1'ere
5 if not all(bit in '01' for bit in binary):
6 return "Ugyldigt binært nummer"
7 return int(binary, 2)
8 except ValueError:
9 return "Ugyldigt binært nummer"
10
11# Decimal til Binær konvertering
12def decimal_to_binary(decimal):
13 try:
14 # Tjek om input er et ikke-negativt heltal
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Ugyldigt decimalt nummer"
18 return bin(decimal)[2:] # Fjern '0b' præfiks
19 except ValueError:
20 return "Ugyldigt decimalt nummer"
21
22# Eksempel brug
23print(binary_to_decimal("1010")) # Udgiver: 10
24print(decimal_to_binary("42")) # Udgiver: 101010
25
1public class BinaryDecimalConverter {
2 // Binær til Decimal konvertering
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Ugyldigt binært nummer");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Decimal til Binær konvertering
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Negative tal understøttes ikke");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Udgiver: 10
20 System.out.println(decimalToBinary(42)); // Udgiver: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Binær til Decimal konvertering
7int binaryToDecimal(const std::string& binary) {
8 // Tjek om input kun indeholder 0'ere og 1'ere
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Ugyldigt 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 til Binær konvertering
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Negative tal understøttes ikke");
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; // Udgiver: 10
42 std::cout << decimalToBinary(42) << std::endl; // Udgiver: 101010
43 return 0;
44}
45
1' Binær til Decimal konvertering
2Function BinaryToDecimal(binary As String) As Variant
3 ' Tjek om input kun indeholder 0'ere og 1'ere
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 til 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' Eksempel brug i en celle:
26' =BinaryToDecimal("1010") ' Returnerer: 10
27' =DecimalToBinary(42) ' Returnerer: 101010
28
Et binært tal er et tal udtrykt i det base-2 numeriske system, som kun bruger to symboler: typisk "0" og "1". Hvert ciffer kaldes et bit (binært ciffer). Binære tal er grundlæggende for digital databehandling, da alle data i computere i sidste ende repræsenteres i binær form.
Computere bruger binær, fordi elektroniske komponenter nemt kan repræsentere to tilstande: tændt/slukket, høj/lav spænding eller magnetiske polariteter. Binær er også matematisk enklere at implementere i hardware, hvilket gør computere mere pålidelige og effektive. Derudover kortlægger boolesk logik (AND, OR, NOT) perfekt til binære operationer.
For at konvertere et binært tal til decimal manuelt:
For eksempel, binær 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
For at konvertere et decimaltal til binært manuelt:
For eksempel, decimal 13: 13 ÷ 2 = 6 rest 1 6 ÷ 2 = 3 rest 0 3 ÷ 2 = 1 rest 1 1 ÷ 2 = 0 rest 1 Læsning fra bund til top: 1101
Vores nuværende implementering fokuserer på ikke-negative heltal for enkelhed og uddannelsesmæssige formål. Negative tal i binær bruger typisk teknikker som signeret magnitude, one's complement eller two's complement repræsentation, som er mere avancerede koncepter.
Konverteren kan håndtere heltal op til JavaScripts sikre heltalsgrænse (2^53 - 1), som er 9.007.199.254.740.991. For binære input betyder dette op til 53 bits. For ekstremt store tal ville specialiserede biblioteker være nødvendige.
Decimale brøker repræsenteres i binær ved hjælp af binære brøker. For eksempel er 0.5 decimal 0.1 binær (1×2^-1). Processen involverer at multiplicere den fraktionære del med 2 og registrere heltalsdelen, indtil du når 0 eller begynder at gentage. Vores nuværende konverter fokuserer kun på heltal.
Almindelige fejl inkluderer:
Computerhukommelse er organiseret som en sekvens af adresserbare placeringer. Hver placering har en unik adresse, som i bund og grund er et nummer. Disse adresser repræsenteres i binær inden for computerens kredsløb. Når et program har brug for at få adgang til hukommelsen, angiver det den binære adresse for den ønskede placering.
Alle tre er positionsnummer systemer, men med forskellige baser. Hexadecimalt og oktalt bruges ofte som mere kompakte måder at repræsentere binære data på, hvor hvert hexadecimalt ciffer repræsenterer 4 binære cifre, og hvert oktalt ciffer repræsenterer 3 binære cifre.
Knuth, Donald E. "The Art of Computer Programming, Volume 2: Seminumerical Algorithms." Addison-Wesley, 1997.
Leibniz, Gottfried Wilhelm. "Explication de l'Arithmétique Binaire" (Forklaring af 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 (genudgivet 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ært Tal." Wikipedia, Wikimedia Foundation, https://da.wikipedia.org/wiki/Binært_tal. Tilgået 15. aug. 2023.
"Decimal." Wikipedia, Wikimedia Foundation, https://da.wikipedia.org/wiki/Decimal. Tilgået 15. aug. 2023.
"Nummer System Konvertering." National Institute of Standards and Technology, https://www.nist.gov/dads/HTML/numbersysconv.html. Tilgået 15. aug. 2023.
Prøv vores Binær-Decimalkonverter nu for hurtigt og præcist at konvertere mellem binære og decimale talsystemer. Uanset om du studerer datalogi, arbejder på digitale elektronikprojekter eller blot er nysgerrig efter, hvordan computere repræsenterer tal, gør vores værktøj konverteringsprocessen enkel og lærerig.
Opdag flere værktøjer, der måske kan være nyttige for din arbejdsgang.