Converta facilmente números entre os sistemas binário e decimal com esta ferramenta online gratuita. Conversão instantânea com visualização educacional.
Converta entre sistemas numéricos binário e decimal instantaneamente.
Números binários usam apenas 0s e 1s
Números decimais usam dígitos de 0 a 9
Insira um valor em qualquer campo para ver a conversão no outro campo.
O Conversor Binário-Decimal é uma ferramenta essencial para qualquer pessoa que trabalha com diferentes sistemas numéricos. Binário (base-2) e decimal (base-10) são dois sistemas numéricos fundamentais usados em computação e matemática. Nosso conversor de binário para decimal permite que você traduza instantaneamente números entre esses sistemas com precisão perfeita. Seja você um estudante de ciência da computação aprendendo sobre representação binária, um programador depurando código ou um entusiasta de eletrônica trabalhando com circuitos digitais, este conversor simplifica o processo de conversão entre formatos de números binários e decimais sem exigir cálculos manuais complexos.
Números binários, consistindo apenas de 0s e 1s, formam a base de todos os sistemas de computação digital, enquanto o sistema decimal, com dígitos de 0 a 9, é o que usamos no dia a dia. Compreender a relação entre esses sistemas é crucial para qualquer pessoa envolvida em ciência da computação, programação ou eletrônica digital. Esta ferramenta preenche a lacuna entre esses sistemas numéricos, tornando as conversões sem esforço e livres de erros.
O sistema decimal é nosso sistema numérico padrão, usando 10 dígitos (0-9). Neste sistema numérico posicional, a posição de cada dígito representa uma potência de 10:
Por exemplo, o número decimal 427 representa:
Somando esses valores: 400 + 20 + 7 = 427
O sistema binário usa apenas dois dígitos (0 e 1). Cada posição em um número binário representa uma potência de 2:
Por exemplo, o número binário 1010 representa:
Somando esses valores: 8 + 0 + 2 + 0 = 10 em decimal
Para converter um número binário em decimal, multiplique cada dígito pela sua correspondente potência de 2 e some os resultados:
Onde:
Exemplo: Convertendo binário 1101 para decimal
Para converter um número decimal em binário, divida repetidamente o número por 2 e registre os restos na ordem inversa:
Exemplo: Convertendo decimal 25 para binário
Nosso conversor binário-decimal é projetado para ser intuitivo e fácil de usar. Siga estes simples passos para converter entre números binários e decimais:
O conversor também fornece uma explicação visual do processo de conversão, mostrando exatamente como cada conversão é realizada matematicamente. Este recurso educacional ajuda você a entender os princípios subjacentes das conversões entre sistemas numéricos.
A conversão binário-decimal é fundamental em vários campos e aplicações:
Um endereço IPv4 como 192.168.1.1 pode ser representado em binário como:
Combinado: 11000000.10101000.00000001.00000001
Embora binário e decimal sejam os sistemas numéricos mais comumente usados, outros sistemas têm aplicações importantes:
Hexadecimal usa 16 dígitos (0-9 e A-F) e é frequentemente usado como uma maneira mais compacta de representar dados binários. Cada dígito hexadecimal representa exatamente 4 dígitos binários.
Exemplo: Binário 1010 1101 = Hexadecimal AD
Octal usa 8 dígitos (0-7) e foi historicamente importante na computação. Cada dígito octal representa exatamente 3 dígitos binários.
Exemplo: Binário 101 011 = Octal 53
BCD representa cada dígito decimal usando um número fixo de dígitos binários (tipicamente 4). É usado em aplicações onde a representação decimal é necessária, como relógios digitais.
Exemplo: Decimal 42 em BCD = 0100 0010
O sistema decimal tem sido o sistema numérico predominante na história humana, provavelmente porque os humanos têm dez dedos. Evidências de sistemas de contagem decimal remontam a civilizações antigas:
O sistema binário tem uma história mais recente, mas igualmente fascinante:
Aqui estão implementações de conversão binário-decimal em várias linguagens de programação:
1// Conversão de Binário para Decimal
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Número binário inválido";
5 }
6 return parseInt(binary, 2);
7}
8
9// Conversão de Decimal para Binário
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Número decimal inválido";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Exemplo de uso
18console.log(binaryToDecimal("1010")); // Saída: 10
19console.log(decimalToBinary("42")); // Saída: 101010
20
1# Conversão de Binário para Decimal
2def binary_to_decimal(binary):
3 try:
4 # Verifica se a entrada contém apenas 0s e 1s
5 if not all(bit in '01' for bit in binary):
6 return "Número binário inválido"
7 return int(binary, 2)
8 except ValueError:
9 return "Número binário inválido"
10
11# Conversão de Decimal para Binário
12def decimal_to_binary(decimal):
13 try:
14 # Verifica se a entrada é um inteiro não negativo
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Número decimal inválido"
18 return bin(decimal)[2:] # Remove o prefixo '0b'
19 except ValueError:
20 return "Número decimal inválido"
21
22# Exemplo de uso
23print(binary_to_decimal("1010")) # Saída: 10
24print(decimal_to_binary("42")) # Saída: 101010
25
1public class ConversorBinarioDecimal {
2 // Conversão de Binário para Decimal
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Número binário inválido");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Conversão de Decimal para Binário
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Números negativos não são suportados");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Saída: 10
20 System.out.println(decimalToBinary(42)); // Saída: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Conversão de Binário para Decimal
7int binaryToDecimal(const std::string& binary) {
8 // Verifica se a entrada contém apenas 0s e 1s
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Número binário inválido");
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// Conversão de Decimal para Binário
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Números negativos não são suportados");
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; // Saída: 10
42 std::cout << decimalToBinary(42) << std::endl; // Saída: 101010
43 return 0;
44}
45
1' Conversão de Binário para Decimal
2Function BinaryToDecimal(binary As String) As Variant
3 ' Verifica se a entrada contém apenas 0s e 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' Conversão de Decimal para Binário
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' Exemplo de uso em uma célula:
26' =BinaryToDecimal("1010") ' Retorna: 10
27' =DecimalToBinary(42) ' Retorna: 101010
28
Um número binário é um número expresso no sistema numérico de base-2, que usa apenas dois símbolos: tipicamente "0" e "1". Cada dígito é chamado de bit (dígito binário). Números binários são fundamentais para a computação digital, uma vez que todos os dados em computadores são, em última análise, representados em forma binária.
Os computadores usam binário porque componentes eletrônicos podem facilmente representar dois estados: ligado/desligado, alta/baixa tensão ou polaridades magnéticas. O binário também é matematicamente mais simples de implementar em hardware, tornando os computadores mais confiáveis e eficientes. Além disso, a lógica booleana (E, OU, NÃO) se mapeia perfeitamente para operações binárias.
Para converter um número binário em decimal manualmente:
Por exemplo, binário 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
Para converter um número decimal em binário manualmente:
Por exemplo, decimal 13: 13 ÷ 2 = 6 resto 1 6 ÷ 2 = 3 resto 0 3 ÷ 2 = 1 resto 1 1 ÷ 2 = 0 resto 1 Lendo de baixo para cima: 1101
Nossa implementação atual se concentra em inteiros não negativos para simplicidade e propósitos educacionais. Números negativos em binário normalmente usam técnicas como magnitude assinada, complemento de um ou complemento de dois, que são conceitos mais avançados.
O conversor pode lidar com inteiros até o limite de inteiro seguro do JavaScript (2^53 - 1), que é 9.007.199.254.740.991. Para entradas binárias, isso significa até 53 bits. Para números extremamente grandes, bibliotecas especializadas seriam necessárias.
Frações decimais são representadas em binário usando frações binárias. Por exemplo, 0,5 decimal é 0,1 binário (1×2^-1). O processo envolve multiplicar a parte fracionária por 2 e registrar a parte inteira até que você chegue a 0 ou comece a repetir. Nosso conversor atual se concentra apenas em inteiros.
Erros comuns incluem:
A memória do computador é organizada como uma sequência de locais endereçáveis. Cada local tem um endereço único, que é essencialmente um número. Esses endereços são representados em binário dentro da circuitaria do computador. Quando um programa precisa acessar a memória, ele especifica o endereço binário do local desejado.
Todos os três são sistemas numéricos posicionais, mas com bases diferentes. Hexadecimal e octal são frequentemente usados como maneiras mais compactas de representar dados binários, com cada dígito hexadecimal representando 4 dígitos binários e cada dígito octal representando 3 dígitos binários.
Knuth, Donald E. "The Art of Computer Programming, Volume 2: Seminumerical Algorithms." Addison-Wesley, 1997.
Leibniz, Gottfried Wilhelm. "Explicação da Aritmética Binária" (Explanation of Binary Arithmetic). Mémoires de l'Académie Royale des Sciences, 1703.
Boole, George. "Uma Investigação das Leis do Pensamento." Dover Publications, 1854 (republicado em 1958).
Shannon, Claude E. "Uma Análise Simbólica de Circuitos de Relé e Comutação." Transactions of the American Institute of Electrical Engineers, vol. 57, no. 12, 1938, pp. 713-723.
Ifrah, Georges. "A História Universal dos Números: Da Pré-História à Invenção do Computador." Wiley, 2000.
"Número Binário." Wikipedia, Wikimedia Foundation, https://pt.wikipedia.org/wiki/N%C3%BAmero_bin%C3%A1rio. Acesso em 15 de ago. de 2023.
"Decimal." Wikipedia, Wikimedia Foundation, https://pt.wikipedia.org/wiki/Decimal. Acesso em 15 de ago. de 2023.
"Conversão de Sistemas Numéricos." National Institute of Standards and Technology, https://www.nist.gov/dads/HTML/numbersysconv.html. Acesso em 15 de ago. de 2023.
Experimente nosso Conversor Binário-Decimal agora para converter rapidamente e com precisão entre sistemas numéricos binários e decimais. Seja você um estudante de ciência da computação, trabalhando em projetos de eletrônica digital ou apenas curioso sobre como os computadores representam números, nossa ferramenta torna o processo de conversão simples e educativo.
Descubra mais ferramentas que podem ser úteis para o seu fluxo de trabalho