Como converter decimal para binário em C

Como Converter Decimal Para Binario Em C



Os sistemas de computador freqüentemente empregam números binários para representar dados e instruções, mas como os dígitos decimais são mais simples para as pessoas entenderem do que os binários, a conversão é necessária. Este artigo abordará o entendimento entre decimais em binário e fornecerá exemplos de programas de diferentes métodos que convertem decimais em binário na linguagem de programação chamada C.

Como converter decimal para binário em C?

O valor decimal dado é dividido por 2 várias vezes, com o restante sendo registrado até chegarmos a 0 como o quociente final. Este processo é usado para converter números inteiros de decimal para binário. A fórmula que demonstra o processo de conversão de decimal para binário é considerada as etapas que são as seguintes:







Passo 1: Encontre o restante dividindo o número por 2 e adicione-o a uma matriz.



Passo 2: Em seguida, divida o restante por dois.



Etapa 3: Execute as duas primeiras etapas novamente até que o resultado exceda 0.





Passo 4: Exiba a matriz de trás para frente para obter a forma binária do número. O bit menos significativo (LSB) de um número binário está no topo, enquanto o bit mais significativo (MSB) está na parte inferior, que é outra maneira de interpretar isso. O equivalente binário do número decimal fornecido é este.

Para entender isso melhor, aqui está uma conversão de  11 10 na conversão decimal para binário:



Divisão por 2 Quociente Restante
11÷2 5 1 (LSB)
5 ÷ 2 2 1
2-2 1 0
1-2 0 1 (MSB)


Agora, escreva o restante na ordem inversa, portanto, decimal (11 10 ) torna-se (1011 2 ).

O resto será anotado e então escrito de forma que o (MSB) do número binário venha primeiro, depois o resto. Consequentemente, 1011 2 é o equivalente binário do valor decimal dado 11 10 . Como resultado, 11 10 = 1011 2 . A seguir está a implementação do decimal acima mencionado em conversão binária em linguagem C.

Métodos usados ​​para converter decimal em binário

Esses métodos usados ​​na linguagem C convertem dígitos decimais em binários:

Agora, implemente a conversão de decimais em binários por um pelas abordagens mencionadas acima.

Método 1: Programação Decimal para Binário em C com For Loop

Abaixo está a conversão do dígito decimal (11) em binário com a ajuda do loop for em C:

#include
conversão nula ( int num1 ) {
se ( num1 == 0 ) {
printf ( '0' ) ;
retornar ;
}
int binary_num [ 32 ] ; // assumindo 32 bit inteiro.
int eu = 0 ;
para ( ;num1 > 0 ; ) {
binário_num [ i++ ] = num1 % 2 ;
num1 / = 2 ;
}
para ( int j = i- 1 ; j > = 0 ; j-- )
printf ( '%d' , binário_num [ j ] ) ;
}
int principal ( ) {
int num1;
printf ( 'Digite um número decimal: ' ) ;
scanf ( '%d' , & num1 ) ;
converter ( num1 ) ;
retornar 0 ;
}


O programa acima está usando o loop for para converter o número decimal fornecido pelo usuário em binário. A saída é:

Método 2: Programação Decimal para Binário em C com Loop while

Neste método, o loop while em C é usado para converter o dígito decimal (11), em binário, conforme mostrado abaixo:

#include
int principal ( ) {
int decimal_num, binary_num = 0 , básico = 1 , restante;
printf ( 'Digite um número decimal: ' ) ;
scanf ( '%d' , & decimal_num ) ;
enquanto ( decimal_num > 0 ) {
restante = decimal_num % 2 ;
binary_num = binary_num + resto * base;
decimal_number = decimal_number / 2 ;
base = base * 10 ;
}
printf ( 'O binário do número decimal fornecido com loop while é: %d' , binário_num ) ;
retornar 0 ;
}


As quatro variáveis ​​inteiras decimal_num, binary_num, base e restante são declaradas primeiro neste programa. O usuário insere um decimal_num, que converteremos em seu binary_num. A conversão binária é realizada usando o loop while.

Método 3: Programação Decimal para Binário em C com Pilha

Este é o método direto com um programa C baseado em pilha que altera um valor decimal para um binário:

#include

#define MAX_SIZE 32 // número máximo de bits na representação binária
int principal ( ) {
int decimal_num, binário [ TAMANHO MÁXIMO ] , superior = -1 ;
printf ( 'Por favor, digite qualquer número decimal: ' ) ;
scanf ( '%d' , & decimal_num ) ;
enquanto ( decimal_num > 0 ) {
binário [ ++topo ] = decimal_num % 2 ;
decimal_num / = 2 ;
}
printf ( 'O binário de %d usando o método de pilha é: ' ) ;
enquanto ( principal > = 0 ) {
printf ( '%d' , binário [ principal-- ] ) ;
}
retornar 0 ;
}


Primeiro declaramos as três variáveis ​​inteiras top, binary e decimal_num neste programa. O topo é o índice do elemento mais alto na pilha, decimal é o número em uma forma decimal que é inserido pelo usuário, binary é uma matriz que conterá os bits em binário como MAX_SIZE bits e decimal_num é a matriz binária. Depois disso, a conversão binária é realizada usando um loop while.

A saída é:

Método 4: Programação Decimal para Binário em C com Operador Bitwise

Um operador conhecido como operação bit a bit manipula cada um dos bits de símbolos binários que representam números inteiros. O seguinte é um script C básico que usa operações bit a bit para converter um número em decimais em binário:

#include

// Este método mostrará todos os 4 bits de um número
conversão nula ( int num1 ) {
// Considere um 4 número de bits
para ( int eu = 3 ; eu > = 0 ; eu-- ) {
bit int = ( 1 << eu ) ;
se ( num1 & pedaço )
printf ( '1' ) ;
outro
printf ( '0' ) ;
}
}
int principal ( ) {
int num1;
printf ( 'Digite um número decimal: ' ) ;
scanf ( '%d' , & num1 ) ;
conversão ( num1 ) ;
retornar 0 ;
}


Este programa executará um loop for através do número começando no bit mais significativo e terminando no bit menos significativo. Executando uma operação “AND bit a bit” em mask e num, podemos determinar se o bit é 0 ou 1. Se for diferente de zero, o bit atual é 1; caso contrário, é 0.

Para mostrar a forma binária de num1, imprima o bit após cada iteração. A saída final após a execução completa será a seguinte:

Conclusão

É uma habilidade essencial em programação de computadores converter números decimais para binários. Transformar números decimais em binários nos permite realizar diferentes operações na programação C. Este artigo forneceu 4 métodos para converter valores decimais em valores binários.