Para empezar les dejare este vídeo donde te muestra los pasos para la conversión ya mencionada, espero les sirva de ayuda:
A continuación les dejo una tabla de conversión que encontré en www.ascii.cl, nos puede servir para comparar y verificar que hicimos bien nuestra operación, solo basta con que le den clic aquí en la palabra Tabla de conversión y podrán ir a la pagina directamente a esta tabla.
También les dejare el código de un programa que hice basándome en unos ejemplos que investigue, el código esta hecho en C++ y es el siguiente:
#include<stdio.h>
#include<conio.h>
/*
Programa que convierte numeros decimales a binarios
*/
void dec2bin(long decimal, char *binario); /* El dec2bin sirve para la conversion
de decimal a binario*/
main()
{
long int decimal;
char binario[80];
printf("Ingrese el numero que desea convertir: ");
scanf("%ld",&decimal);
printf("\n");
dec2bin(decimal,binario);
printf("\nEl numero binario de: %ld es %s \n",decimal,binario);
getchar(); /* Trampa de entrar */
getchar(); /* Esperar */
return 0;
getch();
}
void dec2bin(long decimal, char *binario)
{
int a=0, N=0; /* Contadores */
int indic_neg=0;
int sobrante; /* Variable para residuo */
int ant_decimal; /* Variable para antiguo decimal */
char temp[80]; /* Variable que contara con caracteres ya leidos */
if(decimal<0)
{
decimal=decimal-1;
indic_neg=1;
}
do{
ant_decimal=decimal; /* Antiguo decimal es igual a nuevo decimal*/
sobrante=decimal%2; /* Calculo de residuo */
decimal=decimal/2; /* Calculando nuevo decimal */
printf("%d/2 = %d, residuo = %d\n", ant_decimal, decimal, sobrante);
temp[a++]=sobrante + '0';
}while(decimal>0);
if(indic_neg){
temp[a++] = '-';
}
else{
temp[a++] = ' ';
}
while(a>=0)
binario[N++]=temp[--a];
binario[N-1]=0;
}
Visite estas paginas para darme una idea de como hacer el programa:
http://mygnet.net/codigos/cplusplus/analisisnumericos/convierte_de_decimal_a_binario.2339
http://www.foroz.org/foroz/topic50284.html
http://www.foroz.org/foroz/topic50284.html
Bueno espero les haya servido de ayuda.
Muy bien; te pongo 10 puntos por la segunda sesión.
ResponderEliminar