Autor Tema: Trabajar con decimales  (Leído 2274 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado zer0007

  • PIC16
  • ***
  • Mensajes: 106
Trabajar con decimales
« en: 26 de Septiembre de 2005, 08:03:00 »
Hay alguna manera de trabajar con decimales (me explico)

Uso esta funcion

unsigned int HextoDecimal(unsigned int Hex)
{
   unsigned int pHex;
   ldiv_t sHex;
   ldiv_t tHex;
   ldiv_t cHex;
   int total;
   
   cHex = ldiv(Hex,0x1000);
   tHex = ldiv(cHex.rem, 0x100);   
   sHex = ldiv(tHex.rem, 0x10);
   pHex = sHex.rem;

   total = ((cHex.quot * 4096) + (tHex.quot * 256) + (sHex.quot * 16)  + sHex.rem);
   return total;
}

En teoria debereia devolver un decimal pero no, por que puede ser ? Gracias.

Desconectado zer0007

  • PIC16
  • ***
  • Mensajes: 106
RE: Trabajar con decimales
« Respuesta #1 en: 27 de Septiembre de 2005, 04:15:00 »
He encontrado como es (cuando hablaba de decimales me referia a base 10) si operas por ejemplo dividiendo por 0x1000 el ya lo toma como hexa.

Por si acaso de retorno he puesto un long y todo correcto ya, creo...