Programación Específica > Microcontroladores
Sentencia Res
crbrs:
Buenas.
Me vienen todas las dudas juntas ;) Bueno... la pregunta creo que es sencilla, pero no se resolverlo, se que se puede reservar en RAM, con la sentencia RES, por ejemplo:
--- Código: Text --- variable RES 1 Y con eso coneseguiría una variable que apunta a una celda de memoria de 1 byte. Pero lo que necesito son nueve bytes, es decir seria asi:
--- Código: Text --- variable RES 9
Hasta ahí bien, pero como accedería al segundo (tercero,.....,noveno) byte de esa variable? Se puede?
Muchas gracias. Saludos.
© Jonathan ©:
Buena pregunta, nunca se me habia ocurrido ni me toco utilizar de esta posibilidad.. segun tengo entendido la posición inicial es donde inicia la cadena en la ram, asi que tomas la posicion 0 que es el inicio de la cadena y el compilador cuenta desde ahi tantos byte como digas .. algo como
goto variable + 6
ahi accederias a la posicion 6 de tu variable de 9 bytes .. prueba con eso, si funciona me pasas el dato.. Saludos :)
crbrs:
--- Citar ---goto variable + 6
--- Fin de la cita ---
Bueno, eso es lo q habia hecho, por la razon de hacer:
--- Código: Text --- GOTO $+1 Y parace q si, q funciona, tambien funciona con registros contadores. Por ejemplo:
--- Código: Text --- GOTO variable+contador Siendo el contador un registro para recorrer la variable.
Aunque también cabe decir que me da un warning, y no se porq, la verda.. ai lo dejo:
"Register in operand not in bank 0. Ensure that bank bits are correct."
Muchas gracias, de nuevo, Jonathan.
© Jonathan ©:
Bien :) un placer :comp: .. el warning es solo un aviso de precaucion que te da el compilador, nada serio, hay una manera de entrar en los bancos y evitar estos warning.. es con una macro que anula los warning, pero no sirven mas que para ignorar los mensajes.. Me alegro que hayas resuelto el problema... disculpa la demora de mi respuesta y si puedo ser util en algo solo avisa :) :smartass: . Un Abrazo! :hola:
Huguen_aus_Tirol:
Hola muchachos! El warning que dices es normal con MPlab; yo siempre lo tenía, y lo eliminé con la siguiente linea al principio del programa
--- Código: Text ---errorlevel -215, -302
Ahora no recuerdo si el warning tiene el código 302 ó 215... Sí recuerdo que me los daba siempre, y con esta línea lo eliminé.
De cualquier manera, el programa te funciona igual. Al final del manual del MPASM (creo <_< ) hay una tabla o lista con los distintos códigos de error y warnings. Voy a ver de subirlas al foro...
Saludos
Navegación
[#] Página Siguiente
Ir a la versión completa