Autor Tema: flotantes  (Leído 2078 veces)

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

Desconectado instrumentista

  • PIC10
  • *
  • Mensajes: 2
flotantes
« en: 27 de Septiembre de 2005, 18:20:00 »
Ayuda para operaciones con flotantes (decimales)!!Llorica

Desconectado gemur3x

  • PIC10
  • *
  • Mensajes: 8
RE: flotantes
« Respuesta #1 en: 28 de Septiembre de 2005, 04:03:00 »
Lo mejor es que uses mikroBasic o Proton y haces la declaracion

DIM variable as FLOAT  

mikroBasic lo puedes descargar desde
http://www.mikroelektronika.co.yu/english/product/compilers/compilers.htm

En PBP no se puede trabajar con flotantes de forma directa. Puedes usar
aritmetica de punto flotante o inventar algun artificio dependiendo de la
situacion.

Un ejemplo de artificio
multiplicar 26*3,14

a=26
b=314 c=2    //donde c es el numero de decimales
d=a*b c=2    //d=8164 y tiene 2 decimales, es decir 81,64

e=d/(c*10)   //entrega la parte entera, es decir e=81
f=d//(c*10)  //entrega la parte decimal, es decir f=64


multiplicar 2,6*3,14

a=26 n=1     //donde n es el numero de decimales
b=314 c=2    //donde c es el numero de decimales
d=a*b m=n+c    //d=8164 y tiene m=3 decimales, es decir 8,164

e=d/(m*10)   //entrega la parte entera, es decir e=8
f=d//(m*10)  //entrega la parte decimal, es decir f=164

de donde viene esto?

2,6*3,14 = 26*10^(-1) * 314*10^(-2)
2,6*3,14 = 26*314*10^(-1 + -2)
2,6*3,14 = 8164*10^(-3)

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: flotantes
« Respuesta #2 en: 28 de Septiembre de 2005, 22:35:00 »
si es lo malo de pbp en la pagina de melabs hay unas rutinas que solo las agregas en tu codigo cualquiera y puedes trabajar con flotantes ya no inventas nada la verdad no lo e intentado pero entra y ali esta

Desconectado RALF2

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2060
RE: flotantes
« Respuesta #3 en: 14 de Octubre de 2005, 10:26:00 »
que tal amigos!
Las rutinas que dice el pana electronando que estan en melabs al pareser no trabajan exactamente con punto flotante, ya que las variables que uno ingresa son enteros y el resultado solo aparece con decimales, los cuales uno puede programar,  cuando se realiza una division.

Por ejemplo no se puede multiplicar 0.345 * 3.678 segun entiendo esas rutinas no pueden realizar esas operaciones directamente.

Si alguien sabe como realizar este tipo de calculos lo esperamos por aca!

Saludos

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: flotantes
« Respuesta #4 en: 25 de Octubre de 2005, 20:29:00 »
si pues eso es lo malo de pbp no como el proton o el c tb creo que lo pasa de frente a float pero se podria hacer un algoritmo propio la verdad lo pense hacer en asembler pero vi el de microchipm y me desanime bueno ahora no lo e necesitado pero seria buena idea ir masticando un codigo
Ardiendo

Desconectado RALF2

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2060
RE: flotantes
« Respuesta #5 en: 26 de Octubre de 2005, 08:34:00 »
Eso es correcto mi pana electronando!

Hay que realizar algun algoritmop para poder trabajar con punto flotante, para realizar la division de dos numeros es facil colocarle el punto flotante por software pero cuando intento multiplicar o dividir numeros con decimales hay se pone la cosa algo dificil, espero que algunos de los genios del foro si sabe como hacerlo para el pbp nos de una ayudita!

Saludos

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: flotantes
« Respuesta #6 en: 26 de Octubre de 2005, 12:19:00 »
en la red encontre este link sobre el punto flotante no se si debi dejarlo en el post de asembler pero bueno Sonrisa Gigante para que se vea que no es tan facil la cosa pero no imposible por ahora no pienso entretenerme con este formato pero si alguien quiere jugar un rato con el le dejo uno de un ingeniero pero est para el motorola d repente sirva
http://www.led.uc.edu.py/micro2/tpante.htm


 

anything