Cómo convertir decimal a binario en C

Como Convertir Decimal A Binario En C



Los sistemas informáticos emplean con frecuencia números binarios para representar datos e instrucciones, pero dado que los dígitos decimales son más fáciles de entender para las personas que los binarios, se requiere conversión. Este artículo analizará la comprensión entre decimales y binarios y proporcionará ejemplos de programas de diferentes métodos que convierten decimales en binarios en el lenguaje de programación llamado C.

¿Cómo convertir decimal a binario en C?

El valor decimal dado se divide por 2 varias veces, registrándose el resto hasta llegar a 0 como cociente final. Este proceso se utiliza para convertir números enteros de decimal a binario. La fórmula que demuestra el proceso de conversión de decimal a binario se considera que son las siguientes etapas:







Paso 1: Encuentra el resto dividiendo el número por 2, luego súmalo a una matriz.



Paso 2: A continuación, divida el resto por dos.



Paso 3: Realice los dos primeros pasos de nuevo hasta que el resultado sea superior a 0.





Etapa 4: Muestre la matriz hacia atrás para obtener la forma binaria del número. El bit menos significativo (LSB) de un número binario se encuentra en la parte superior, mientras que el bit más significativo (MSB) se encuentra en la parte inferior, que es otra forma de interpretar esto. El equivalente binario del número decimal proporcionado es este.

Para entender esto mejor, aquí hay una conversión de 11 10 en conversión de decimal a binario:
 



División por 2 Cociente Resto
11 ÷ 2 5 1 (LSB)
5 ÷ 2 2 1
2 ÷ 2 1 0
1 ÷ 2 0 1 (MSB)

 
Ahora, escribe el resto en orden inverso, por lo tanto, decimal (11 10 ) se convierte en (1011 2 ).

El resto se anotará y luego se escribirá de modo que el (MSB) del número binario aparezca primero y luego el resto. En consecuencia, 1011 2 es el equivalente binario del valor decimal dado 11 10 . Como resultado, 11 10 = 1011 2 . A continuación se muestra la implementación de la conversión decimal a binaria mencionada anteriormente en lenguaje C.

Métodos utilizados para convertir decimal a binario

Estos métodos que se utilizan en lenguaje C convierten dígitos decimales en binarios:

Ahora, implemente la conversión de decimales en binarios uno por uno mediante los enfoques mencionados anteriormente.

Método 1: de decimal a binario en programación C con for Loop

A continuación se muestra la conversión del dígito decimal (11) en binario con la ayuda de for-loop en C:

#incluir
conversión nula ( int num1 ) {  
    si ( numero1 == 0 ) {
        imprimir ( '0' ) ;
        devolver ;
    }
int número_binario [ 32 ] ; // Asumiendo 32 bit entero.
En t i = 0 ;
    para ( ;num1 > 0 ; ) {
número_binario [ yo ++ ] = num1 % 2 ;
numero1 / = 2 ;
    }
    para ( int j = i- 1 ; j > = 0 ; j-- )
      imprimir ( '%d' , numero_binario [ j ] ) ;
}
int principal ( ) {
int num1;
    imprimir ( 'Ingrese un número decimal: ' ) ;
escanear ( '%d' , & numero1 ) ;
convertir ( numero1 ) ;
    devolver 0 ;
}

 
El programa anterior utiliza el ciclo for para convertir el número decimal proporcionado por el usuario a binario. La salida es:

Método 2: de decimal a binario en programación C con ciclo while

En este método, el ciclo while en C se usa para convertir el dígito decimal (11) en binario, como se muestra a continuación:

#incluir
int principal ( ) {
int numero_decimal, numero_binario = 0 , base = 1 , resto;
    imprimir ( 'Ingrese un número decimal: ' ) ;
escanear ( '%d' , & número_decimal ) ;
    mientras ( número_decimal > 0 ) {
resto = núm_decimal % 2 ;
número_binario = número_binario + resto * base;
numero_decimal = numero_decimal / 2 ;
base = base * 10 ;
    }
    imprimir ( 'El binario del número decimal dado con el ciclo while es: %d' , numero_binario ) ;
    devolver 0 ;
}

 
Las cuatro variables enteras número_decimal, número_binario, base y resto se declaran primero en este programa. El usuario ingresa un decimal_num, que convertiremos a su binary_num. La conversión binaria se realiza mediante el ciclo while.

Método 3: de decimal a binario en programación C con Stack

Este es el método sencillo con un programa C basado en pila que cambia un valor decimal a binario:

#incluir

#define MAX_SIZE 32 // número máximo de bits en representación binaria
int principal ( ) {
int número_decimal, binario [ TAMAÑO MÁXIMO ] , arriba = -1 ;
    imprimir ( 'Ingrese cualquier número decimal: ' ) ;
escanear ( '%d' , & número_decimal ) ;
    mientras ( número_decimal > 0 ) {
binario [ ++superior ] = numero_decimal % 2 ;
número_decimal / = 2 ;
    }
    imprimir ( 'El binario de %d usando el método de pila es: ' ) ;
    mientras ( arriba > = 0 ) {
        imprimir ( '%d' , binario [ arriba-- ] ) ;
    }
    devolver 0 ;
}

 
Primero declaramos las tres variables enteras top, binary y decimal_num en este programa. La parte superior es el índice del elemento más alto en la pila, decimal es el número en formato decimal que ingresa el usuario, binary es una matriz que contendrá los bits en binario como MAX_SIZE bits y decimal_num es la matriz binaria. Después de eso, la conversión binaria se lleva a cabo mediante un ciclo while.

La salida es:

Método 4: De decimal a binario en programación C con operador bit a bit

Un operador conocido como operación bit a bit manipula cada uno de los bits de los símbolos binarios que representan números enteros. El siguiente es un script C básico que usa operaciones bit a bit para traducir un número en decimales a binario:

#incluir

// Este método mostrará todos los 4 bits de un número
conversión nula ( int num1 ) {
    // Considere un 4 -número de bits
    para ( int yo = 3 ; i > = 0 ; i-- ) {
bit int = ( 1 << i ) ;
        si ( numero1 & poco )
            imprimir ( '1' ) ;  
        demás
            imprimir ( '0' ) ;
    }
}
int principal ( ) {
int num1;
    imprimir ( 'Ingrese un número decimal: ' ) ;
escanear ( '%d' , & numero1 ) ;
conversión ( numero1 ) ;
    devolver 0 ;
}

 
Este programa ejecutará un ciclo for a través del número comenzando en el bit más significativo y terminando en el bit con menos significado. Al realizar una operación 'Y bit a bit' en mask y num, podemos determinar si el bit es 0 o 1. Si no es cero, el bit actual es 1; de lo contrario, es 0.

Para mostrar la forma binaria de num1, genere el bit después de cada iteración. El resultado final después de la ejecución completa será el siguiente:

Conclusión

Es una habilidad esencial en la programación de computadoras para convertir números de decimal a binario. La transformación de números decimales a binarios nos permite realizar diferentes operaciones en programación C. Este artículo proporcionó 4 métodos para convertir valores decimales en valores binarios.