TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: j_fernandez en 13 de Abril de 2005, 05:01:00
-
Hola, estoy acostumbrado a trabajar en ASM y ahy se usan mucho los saltos condicionales, alguien sabe como o si se pueden realizar en CCS??
Gracias y un saludo
-
Si te refieres al
IF condicion GOTO destino
es algo que también existe en CCS, pero los puristas de la programación estructurada consideran un pecado mortal utilizar el GOTO.
En realidad, si te lo montas bien, no lo necesitas. Usando las condiciones IF ... ELSE, los bucles WHILE, los bucles FOR, y las llamadas a funciones se puede diseñar tu programa para que haga cualquier cosa sin saltos.
Sin embargo, a veces resulta mucho más sencillo poner un GOTO a tiempo, por lo que te diré cómo:
Para saltar tendrás que usar "GOTO etiqueta;" y la línea que reciba el salto debe tener al principio (o en la línea anterior) esto "etiqueta:"
-
GRACIAS NOCTURNO

ME HAS SIDO DE GRAN AYUDA.
UN SALUDO
-
Tambien decir, que existe una sentencia llamada goto_address(direccion), que te lleva incondicionalmente a la direccion de codigo que desees, esta sentencia me ha sido de gran utilidad en algunos programas para realizar salidas incondicionales de una rutina de interrupcion por ejemplo.
-
tienes razón nocturno, el otro día estaba hablando con un amigo q estudia informática y cuando le dije que utilizaba GOTO casi me pega! se me quedó miraando cun una cara..... y luego me comentó que eso es arcaico y que (como tu dijiste) se utilizan los comandos q comentaste IF..... ESLE
que cosas
-
Es mucho más legible un programa que no use GOTOs, que esté bien tabulado por la izquierda y que esté bien comentado.
Pero a veces, la batalla de la depuración es tan dura que los programas quedan hechos unos zorros. En esos momentos, ¿a quién le importa un GOTO?, jeje
-
Una preguntilla tornar.
Al salir de la interrupción sin pasar por el retorno de rutina ¿CCS te sigue gestionando bien los flags y la pila?