Conversor Binari-Decimales: Converteix Entre Sistemes Numèrics
Converteix fàcilment números entre sistemes binari i decimal amb aquesta eina en línia gratuïta. Conversió instantània amb visualització educativa.
Conversor Binari-Decimales
Converteix instantàniament entre sistemes de nombres binaris i decimals.
Els números binaris utilitzen només 0s i 1s
Els números decimals utilitzen dígits de 0 a 9
Introdueix un valor en qualsevol dels camps per veure la conversió en l'altre camp.
Introdueix un valor en qualsevol dels camps per veure la conversió en l'altre camp.
Documentació
Conversor Binari-Decimale: Converteix Entre Sistemes Numèrics Instantàniament
Introducció
El Conversor Binari-Decimale és una eina essencial per a qualsevol persona que treballi amb diferents sistemes numèrics. El binari (base-2) i el decimal (base-10) són dos sistemes numèrics fonamentals utilitzats en informàtica i matemàtiques. El nostre conversor de binari a decimal et permet traduir instantàniament números entre aquests sistemes amb una precisió perfecta. Tant si ets un estudiant d'informàtica que aprèn sobre la representació binària, un programador que depura codi, o un entusiasta de l'electrònica que treballa amb circuits digitals, aquest conversor simplifica el procés de conversió entre formats numèrics binaris i decimals sense requerir càlculs manuals complexos.
Els números binaris, que només consisteixen en 0s i 1s, formen la base de tots els sistemes informàtics digitals, mentre que el sistema decimal amb dígits de 0 a 9 és el que utilitzem en la vida quotidiana. Entendre la relació entre aquests sistemes és crucial per a qualsevol persona involucrada en informàtica, programació o electrònica digital. Aquesta eina tanca la bretxa entre aquests sistemes numèrics, fent que les conversions siguin sense esforç i sense errors.
Com Funcionen els Sistemes Numèrics Binari i Decimal
Entenent el Sistema Decimal (Base-10)
El sistema decimal és el nostre sistema numèric estàndard, que utilitza 10 dígits (0-9). En aquest sistema numèric posicional, la posició de cada dígit representa una potència de 10:
Per exemple, el número decimal 427 representa:
- 4 × 10² (400)
- 2 × 10¹ (20)
- 7 × 10⁰ (7)
Sumant aquests valors: 400 + 20 + 7 = 427
Entenent el Sistema Binari (Base-2)
El sistema binari utilitza només dos dígits (0 i 1). Cada posició en un número binari representa una potència de 2:
Per exemple, el número binari 1010 representa:
- 1 × 2³ (8)
- 0 × 2² (0)
- 1 × 2¹ (2)
- 0 × 2⁰ (0)
Sumant aquests valors: 8 + 0 + 2 + 0 = 10 en decimal
Fórmules i Algorismes de Conversió
Conversió de Binari a Decimal
Per convertir un número binari a decimal, multiplica cada dígit pel seu valor posicional corresponent de 2 i suma els resultats:
On:
- és el dígit binari (0 o 1)
- és la posició de dreta a esquerra (començant amb 0)
- és el nombre de dígits en el número binari menys 1
Exemple: Convertint binari 1101 a decimal
- 1 × 2³ = 8
- 1 × 2² = 4
- 0 × 2¹ = 0
- 1 × 2⁰ = 1
- Sumant: 8 + 4 + 0 + 1 = 13
Conversió de Decimal a Binari
Per convertir un número decimal a binari, divideix repetidament el número per 2 i registra els residus en ordre invers:
- Divideix el número decimal per 2
- Registra el residu (0 o 1)
- Divideix el quocient per 2
- Repeteix els passos 2-3 fins que el quocient esdevingui 0
- Llegeix els residus de baix a dalt
Exemple: Convertint decimal 25 a binari
- 25 ÷ 2 = 12 residu 1
- 12 ÷ 2 = 6 residu 0
- 6 ÷ 2 = 3 residu 0
- 3 ÷ 2 = 1 residu 1
- 1 ÷ 2 = 0 residu 1
- Llegint de baix a dalt: 11001
Guia Pas a Pas per Utilitzar el Conversor Binari-Decimale
El nostre conversor binari-decimale està dissenyat per ser intuïtiu i fàcil d'usar. Segueix aquests simples passos per convertir entre números binaris i decimals:
Convertint Binari a Decimal
- Introdueix el número binari: Escriu un número binari (que consisteixi només en 0s i 1s) al camp d'entrada "Binari".
- Veure el resultat: L'equivalent decimal apareixerà automàticament al camp "Decimal".
- Copia el resultat: Fes clic al botó "Copia" al costat del resultat decimal per copiar-lo al teu porta-retalls.
Convertint Decimal a Binari
- Introdueix el número decimal: Escriu un enter no negatiu al camp d'entrada "Decimal".
- Veure el resultat: L'equivalent binari apareixerà automàticament al camp "Binari".
- Copia el resultat: Fes clic al botó "Copia" al costat del resultat binari per copiar-lo al teu porta-retalls.
Entenent el Procés de Conversió
El conversor també proporciona una explicació visual del procés de conversió, mostrant-te exactament com es realitza cada conversió matemàticament. Aquesta característica educativa t'ajuda a entendre els principis subjacents de les conversions entre sistemes numèrics.
Aplicacions Pràctiques i Casos d'Ús
La conversió binari-decimale és fonamental en nombrosos camps i aplicacions:
Informàtica i Programació
- Representació de Dades: Entendre com els ordinadors emmagatzemen i representen dades internament
- Depuració: Convertir entre sistemes numèrics per verificar adreces de memòria i valors
- Operacions Bit a Bit: Realitzar operacions com AND, OR, XOR sobre representacions binàries
- Desenvolupament d'Algorismes: Implementar algorismes que treballin amb dades binàries
Electrònica Digital
- Disseny de Circuits: Dissenyar i analitzar circuits digitals que operen amb lògica binària
- Programació de Microcontroladors: Treballar amb registres i adreces de memòria en sistemes embeguts
- Interfícies de Maquinari: Entendre protocols de comunicació entre components de maquinari
Educació
- Educació en Informàtica: Ensenyar conceptes fonamentals dels sistemes numèrics
- Educació Matemàtica: Explorar diferents bases numèriques i tècniques de conversió
- Lògica i Àlgebra Booleana: Entendre la relació entre números binaris i operacions lògiques
Informàtica Quotidiana
- Adreçament IP: Entendre la representació binària en xarxes (IPv4/IPv6)
- Permisos de Fitxers: Els permisos de fitxers Unix/Linux sovint es representen en binari/octal
- Codis de Color: Els valors de color RGB es poden representar en binari o hexadecimal
Exemple: Convertint Adreces IP
Una adreça IPv4 com 192.168.1.1 es pot representar en binari com:
- 192 = 11000000
- 168 = 10101000
- 1 = 00000001
- 1 = 00000001
Combinat: 11000000.10101000.00000001.00000001
Alternatives a la Conversió Binari-Decimale
Si bé el binari i el decimal són els sistemes numèrics més utilitzats, altres sistemes tenen aplicacions importants:
Hexadecimal (Base-16)
El hexadecimal utilitza 16 dígits (0-9 i A-F) i sovint s'utilitza com una forma més compacta de representar dades binàries. Cada dígit hexadecimal representa exactament 4 dígits binaris.
Exemple: Binari 1010 1101 = Hexadecimal AD
Octal (Base-8)
L'octal utilitza 8 dígits (0-7) i era històricament important en informàtica. Cada dígit octal representa exactament 3 dígits binaris.
Exemple: Binari 101 011 = Octal 53
Decimal Codificat en Binari (BCD)
El BCD representa cada dígit decimal utilitzant un nombre fix de dígits binaris (normalment 4). S'utilitza en aplicacions on es requereix representació decimal, com ara rellotges digitals.
Exemple: Decimal 42 en BCD = 0100 0010
Història dels Sistemes Numèrics Binari i Decimal
Orígens del Sistema Decimal
El sistema decimal ha estat el sistema numèric predominant en la història humana, probablement perquè els humans tenim deu dits. L'evidència de sistemes de comptatge decimals es remunta a civilitzacions antigues:
- Antiga Egipte (3000 aC): Els números jeroglífics utilitzaven la base-10
- Babilònia (2000 aC): Utilitzaven un sistema mixt de base-60 i base-10
- Matemàtiques Indianes (500 dC): Van desenvolupar el concepte de zero i la notació posicional
- Matemàtiques Àrabs (800 dC): Van difondre el sistema numèric hindú-àrab a Europa
Desenvolupament del Sistema Binari
El sistema binari té una història més recent però igualment fascinant:
- Antiga Xina (1000 aC): El I Ching utilitzava una notació semblant al binari amb línies trencades i no trencades
- Gottfried Wilhelm Leibniz (1679): Va publicar "Explicació de l'Aritmètica Binària", el primer tractament formal del sistema binari
- George Boole (1854): Va desenvolupar l'àlgebra booleana, que utilitza valors binaris (veritable/fals)
- Claude Shannon (1937): Va aplicar l'àlgebra booleana als circuits electrònics, establint les bases de la computació digital
Binari en la Computació Moderna
- John Atanasoff i Clifford Berry (1939): Van dissenyar el primer ordinador digital electrònic utilitzant aritmètica binària
- John von Neumann (1945): Va proposar l'arquitectura d'ordinador amb programa emmagatzemat utilitzant codi binari
- IBM (1953): Va llançar l'IBM 701, un dels primers ordinadors binaris comercialment exitosos
- ASCII (1963): Va normalitzar la representació binària per a caràcters i símbols
- Computació Moderna: Tots els ordinadors digitals operen fonamentalment utilitzant binari, tot i que les abstraccions de nivell superior ho oculten a la majoria dels usuaris
Exemples de Codi per a la Conversió Binari-Decimale
Aquí hi ha implementacions de la conversió binari-decimale en diversos llenguatges de programació:
JavaScript
1// Conversió de Binari a Decimal
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Número binari invàlid";
5 }
6 return parseInt(binary, 2);
7}
8
9// Conversió de Decimal a Binari
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Número decimal invàlid";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Exemple d'ús
18console.log(binaryToDecimal("1010")); // Retorna: 10
19console.log(decimalToBinary("42")); // Retorna: 101010
20
Python
1# Conversió de Binari a Decimal
2def binary_to_decimal(binary):
3 try:
4 # Comprovar si l'entrada conté només 0s i 1s
5 if not all(bit in '01' for bit in binary):
6 return "Número binari invàlid"
7 return int(binary, 2)
8 except ValueError:
9 return "Número binari invàlid"
10
11# Conversió de Decimal a Binari
12def decimal_to_binary(decimal):
13 try:
14 # Comprovar si l'entrada és un enter no negatiu
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Número decimal invàlid"
18 return bin(decimal)[2:] # Eliminar el prefix '0b'
19 except ValueError:
20 return "Número decimal invàlid"
21
22# Exemple d'ús
23print(binary_to_decimal("1010")) # Retorna: 10
24print(decimal_to_binary("42")) # Retorna: 101010
25
Java
1public class BinaryDecimalConverter {
2 // Conversió de Binari a Decimal
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Número binari invàlid");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Conversió de Decimal a Binari
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Nombres negatius no suportats");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Retorna: 10
20 System.out.println(decimalToBinary(42)); // Retorna: 101010
21 }
22}
23
C++
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Conversió de Binari a Decimal
7int binaryToDecimal(const std::string& binary) {
8 // Comprovar si l'entrada conté només 0s i 1s
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Número binari invàlid");
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// Conversió de Decimal a Binari
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Nombres negatius no suportats");
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; // Retorna: 10
42 std::cout << decimalToBinary(42) << std::endl; // Retorna: 101010
43 return 0;
44}
45
Excel
1' Conversió de Binari a Decimal
2Function BinaryToDecimal(binary As String) As Variant
3 ' Comprovar si l'entrada conté només 0s i 1s
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' Conversió de Decimal a Binari
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' Exemple d'ús en una cel·la:
26' =BinaryToDecimal("1010") ' Retorna: 10
27' =DecimalToBinary(42) ' Retorna: 101010
28
Preguntes Freqüents
Què és un número binari?
Un número binari és un número expressat en el sistema numèric de base-2, que utilitza només dos símbols: típicament "0" i "1". Cada dígit es coneix com un bit (dígits binaris). Els números binaris són fonamentals per a la computació digital, ja que totes les dades en els ordinadors es representen finalment en forma binària.
Per què els ordinadors utilitzen binari en comptes de decimal?
Els ordinadors utilitzen binari perquè els components electrònics poden representar fàcilment dos estats: encès/apagat, alta/baixa tensió o polaritats magnètiques. El binari també és matemàticament més senzill d'implementar en maquinari, fent que els ordinadors siguin més fiables i eficients. A més, la lògica booleana (AND, OR, NOT) s'adapta perfectament a les operacions binàries.
Com puc convertir un número binari a decimal manualment?
Per convertir un número binari a decimal manualment:
- Escriu el número binari
- Assigna pesos a cada posició (de dreta a esquerra: 1, 2, 4, 8, 16, etc.)
- Multiplica cada dígit binari pel seu pes
- Suma tots els resultats
Per exemple, binari 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
Com puc convertir un número decimal a binari manualment?
Per convertir un número decimal a binari manualment:
- Divideix el número decimal per 2
- Escriu el residu (0 o 1)
- Divideix el quocient per 2
- Repeteix fins que el quocient esdevingui 0
- Llegeix els residus de baix a dalt
Per exemple, decimal 13: 13 ÷ 2 = 6 residu 1 6 ÷ 2 = 3 residu 0 3 ÷ 2 = 1 residu 1 1 ÷ 2 = 0 residu 1 Llegint de baix a dalt: 1101
Pot aquest conversor manejar números negatius?
La nostra implementació actual se centra en enters no negatius per simplicitat i propòsits educatius. Els números negatius en binari normalment utilitzen tècniques com magnitud signada, complement a un o complement a dos, que són conceptes més avançats.
Quin és el nombre més gran que puc convertir amb aquesta eina?
El conversor pot manejar enters fins al límit d'enters segurs de JavaScript (2^53 - 1), que és 9.007.199.254.740.991. Per a les entrades binàries, això significa fins a 53 bits. Per a números extremadament grans, serien necessàries biblioteques especialitzades.
Com es representen les fraccions decimals en binari?
Les fraccions decimals es representen en binari utilitzant fraccions binàries. Per exemple, 0.5 decimal és 0.1 binari (1×2^-1). El procés implica multiplicar la part fraccionària per 2 i registrar la part sencera fins que arribis a 0 o comencis a repetir. El nostre conversor actual se centra només en enters.
Quins errors comuns hi ha en convertir entre binari i decimal?
Els errors comuns inclouen:
- Oblidar els valors posicionals (potències de 2)
- Comptar incorrectament les posicions (especialment en números més llargs)
- Confondre el binari amb altres sistemes numèrics
- Errors en el transport o el préstec durant la conversió manual
- No llegir els dígits binaris de dreta a esquerra quan es calcula el valor decimal
Com s'utilitza el binari en l'adreçament de memòria dels ordinadors?
La memòria de l'ordinador està organitzada com una seqüència de localitzacions adreçables. Cada localització té una adreça única, que és essencialment un número. Aquestes adreces es representen en binari dins del circuit de l'ordinador. Quan un programa necessita accedir a la memòria, especifica l'adreça binària de la localització desitjada.
Quina és la diferència entre binari, octal i hexadecimal?
- Binari (base-2): Utilitza 2 dígits (0-1)
- Octal (base-8): Utilitza 8 dígits (0-7)
- Hexadecimal (base-16): Utilitza 16 dígits (0-9, A-F)
Tots tres són sistemes numèrics posicionals però amb bases diferents. El hexadecimal i l'octal s'utilitzen sovint com formes més compactes de representar dades binàries, amb cada dígit hexadecimal representant 4 dígits binaris i cada dígit octal representant 3 dígits binaris.
Referències
-
Knuth, Donald E. "The Art of Computer Programming, Volume 2: Seminumerical Algorithms." Addison-Wesley, 1997.
-
Leibniz, Gottfried Wilhelm. "Explicació de l'Aritmètica Binària" (Explanation of Binary Arithmetic). Mémoires de l'Académie Royale des Sciences, 1703.
-
Boole, George. "Una Investigació de les Lleis del Pensament." Dover Publications, 1854 (republicat 1958).
-
Shannon, Claude E. "Una Anàlisi Simbòlica de Relés i Circuits de Conmutació." Transactions of the American Institute of Electrical Engineers, vol. 57, no. 12, 1938, pp. 713-723.
-
Ifrah, Georges. "La Història Universal dels Números: Des de la Prehistòria fins a la Invasió de l'Ordre." Wiley, 2000.
-
"Número Binari." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Binary_number. Accedit el 15 d'agost de 2023.
-
"Decimal." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Decimal. Accedit el 15 d'agost de 2023.
-
"Conversió de Sistemes Numèrics." National Institute of Standards and Technology, https://www.nist.gov/dads/HTML/numbersysconv.html. Accedit el 15 d'agost de 2023.
Prova el nostre Conversor Binari-Decimale ara per convertir ràpidament i amb precisió entre sistemes numèrics binari i decimal. Tant si estudies informàtica, treballes en projectes d'electrònica digital, o simplement tens curiositat sobre com els ordinadors representen números, la nostra eina fa que el procés de conversió sigui senzill i educatiu.
Comentaris
Fes clic a la notificació de comentaris per començar a donar comentaris sobre aquesta eina
Eines relacionades
Descobreix més eines que podrien ser útils per al teu flux de treball