TODOPIC
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
. ¿Perdiste tu
email de activación
?
1 Hora
1 Día
1 Semana
1 Mes
Siempre
Ingresar con nombre de usuario, contraseña y duración de la sesión
Este tema
Este sub-foro
Todo el foro
Google
Inicio
Ayuda
Buscar
Ingresar
Registrarse
TODOPIC
»
Microcontroladores PIC
»
Almacén del Assembler
(Moderadores:
MGLSOFT
,
PAOLA09
,
Suky
) »
saltarse los returns a la torera
« anterior
próximo »
Imprimir
Páginas: [
1
]
Ir Abajo
Autor
Tema: saltarse los returns a la torera (Leído 1590 veces)
0 Usuarios y 2 Visitantes están viendo este tema.
groundman
Colaborador
PIC24H
Mensajes: 1870
saltarse los returns a la torera
«
en:
29 de Enero de 2012, 19:09:02 »
hola.estaba haciendo un programa para el 18f2550 en el cual he necesitado realizar la llamada a otros programas.pero queria que al llegar a los returns,el programa no
retroceda por sus mismos pasos.
es decir retornar hacia atras pero saltandome uno de los programas por los que he pasado.
esto es lo que represento en el ejemplo.salto dos veces y vuelvo al principio sin que tenga repercusiones para poder realizar llamadas desde el programa
principal.solo hay que tener en cuenta cuantas llamadas se han realizado desde el programa original.y poner tantos POP como sean necesarios.
ejemplo:
0x2340 call 0x2364
0x2341 nop
.
.
0x2350 nop
.end
0x2364 nop
0x2365 call 0x2378
0x2368 nop
.
.
.
0x2377 return
0x2378 nop
0x2379 call 0x2400
.
.
0x2400 nop
POP
POP
MOVLW 0X23
MOVWF PCLATH
movlw 0x41
movwf PCL
al poner los dos POP es para que el Stack Pointer desapile dos de las direcciones de retorno al encontrar un un return.
pero es factible hacer esto?para esto se utiliza la instruccion POP?o es para otra cosa.
«
Última modificación: 29 de Enero de 2012, 19:54:58 por groundman
»
En línea
Montando mi primera impresora 3D (Raprep Prusa i3)
sander
Colaborador
PIC24F
Mensajes: 624
Re: saltarse los returns a la torera
«
Respuesta #1 en:
29 de Enero de 2012, 20:40:37 »
Hola groundman, Estas usando un PIC18?, en esos si es posible acceder a la pila, asi que veo factible eso que haces
Saludos
En línea
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse
Visita mi blog
Visita mi canal de youtube
groundman
Colaborador
PIC24H
Mensajes: 1870
Re: saltarse los returns a la torera
«
Respuesta #2 en:
29 de Enero de 2012, 21:05:57 »
es la primera vez que uso esa instruccion.creo haberlas usado en los Z80.pero tampoco estoy muy seguro.hace ya muchos años de eso.
no se si lo mas normal es que se usen antes y despues de una interrupcion.push y pop
En línea
Montando mi primera impresora 3D (Raprep Prusa i3)
tropero
PIC10
Mensajes: 25
Re: saltarse los returns a la torera
«
Respuesta #3 en:
29 de Enero de 2012, 22:21:08 »
Hola!
En el Z80 (y en otros micros como el 8088, ¡ugh! ¡qué viejo que soy!) se usaban las instrucciones PUSH y POP para pasar variables a las funciones (por valor, el contenido de los registros; por referencia, cargas DS:Offset de la dirección de memoria en que se encuentra la variable).
Que mal me hace recordar la programación en assembler para esos micros
Salú2
En línea
Un golpe a tiempo ahorran muchas palabras...
Imprimir
Páginas: [
1
]
Ir Arriba
« anterior
próximo »
TODOPIC
»
Microcontroladores PIC
»
Almacén del Assembler
(Moderadores:
MGLSOFT
,
PAOLA09
,
Suky
) »
saltarse los returns a la torera