Programación Específica > Microcontroladores

 Como Trabajar Con Decimales Con Coma

(1/1)

farmada:
Gente:

    Necesitaria saber como poder trabajar en ASEMPBLER numeros decimales con coma, dado que tengo que trabajar con relaciones de 0,1 / 0,75 / etc las lecturas que hago desde el conversor analogico en un 16F877. Si me pueden dar una mano se los agradezco.

Gracias.

Huguen_aus_Tirol:
Hola Farmada!
Por mucho tiempo busqué la misma respuesta, y la mejor solución es programar en C...
Hay rutinas en asembler para esto, pero son complicadas y cuando te das cuenta te ocupan toda la memoria del micro. Podés hacer "trampa" usando tablas y cosas asi, pero con el tiempo te das cuenta de que los resultados no son satisfactorios :(
Al principio miraba con recelo al C; ahora me arrepiento de no haberle dado importancia antes...
No es para desanimarte, pero es asi.
Bueno, despues de todo, los programas que escribas en C se traducen a asembler (mejor dicho a código máquina o hexa); por lo tanto tiene que haber una solución en asembler. El tema es encontrarla.

No hay vuelta que darle, dijo el que dormía sobre un muro :lol:

Saludos :hola:

oldkami:
en la pagina de microchip existen unas Math routines para trabajar con coma flotante (de 16 y 32 bits) , Alguna vez tuve que hacer algo parecido (calcular Rpms midiendo el periodo, convertirlo a frecuencia y visualizarlo en display de 7 segmentos..)  y estas rutinas trabajaron muy bien.

revisa el AN526 Math Routines.. si requieres calcular algo mas complejo (raices cuadradas y logaritmos) revisa  el AN660 Float point Routines en la pagina de microchip.

suerte

oldkami

farmada:
Muchas gracias OldKami. Las probare.

lalo_soft:

--- Cita de: "farmada" --- Muchas gracias OldKami. Las probare.
--- Fin de la cita ---

No te confies mucho ya que las rutinas tienen Bag.

Navegación

[0] Índice de Mensajes

Ir a la versión completa