elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  ¿Funciones anidadas?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Funciones anidadas?  (Leído 950 veces)
GGZ

Desconectado Desconectado

Mensajes: 144


PUUUUUUUUUUMMM


Ver Perfil
¿Funciones anidadas?
« en: 21 Noviembre 2016, 18:05 »

Hola!, estuve buscando por internet pero todavía no me queda del todo claro, alguien sabe algo sobre funciones anidadas?


Algo como esto estoy buscando

Código
  1. void f( int a){
  2.  
  3.       int gg(char v){
  4.             return 1;
  5.      }
  6.       gg('b');
  7.  
  8. }
  9.  

Sí se que se lo puede pasar a ASM con gcc -S, de todos modos no entiendo los procedimientos que hace.


Saludos!


« Última modificación: 21 Noviembre 2016, 18:15 por GGZ » En línea

ALL I DO IS WORK.
cpu2


Desconectado Desconectado

Mensajes: 923


Ver Perfil
Re: ¿Funciones anidadas?
« Respuesta #1 en: 21 Noviembre 2016, 20:11 »

Quieres una traduccion en ASM?


En línea

GGZ

Desconectado Desconectado

Mensajes: 144


PUUUUUUUUUUMMM


Ver Perfil
Re: ¿Funciones anidadas?
« Respuesta #2 en: 25 Noviembre 2016, 00:07 »

No, las diferentes formas de implementar funciones anidadas en ASM y la lógica de cada una de las implementaciones.
Si quisiera el código simplemente haría gcc -S ff.c, pero no es la única forma que hay de escribir funciones anidadas.
En línea

ALL I DO IS WORK.
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.023


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: ¿Funciones anidadas?
« Respuesta #3 en: 25 Noviembre 2016, 00:45 »

Quizás ésto te pueda servir.

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

GGZ

Desconectado Desconectado

Mensajes: 144


PUUUUUUUUUUMMM


Ver Perfil
Re: ¿Funciones anidadas?
« Respuesta #4 en: 25 Noviembre 2016, 03:45 »

No, ya lo había leído por arriba.
En línea

ALL I DO IS WORK.
cpu2


Desconectado Desconectado

Mensajes: 923


Ver Perfil
Re: ¿Funciones anidadas?
« Respuesta #5 en: 25 Noviembre 2016, 16:39 »

Código
  1. .section .text
  2. .globl ___f
  3.  
  4. ___f:
  5.  
  6. movb $0x62, %dil
  7. callq _gg
  8.  
  9. ;/////continuacion del code.... si no un ret
  10.  
  11. ret
  12.  
  13. _gg
  14.  
  15. movb $0x1, %al
  16. ret

o

Código
  1. .section .text
  2. .globl ___f
  3.  
  4. ___f:
  5.  
  6. jmp slt
  7.  
  8. __f2:
  9.  
  10. ; continuacion de code si no un ret
  11.  
  12. ret
  13.  
  14. _gg
  15.  
  16. movb $0x1, %al
  17. ret
  18.  
  19. slt:
  20.  
  21. movb $0x62, %dil
  22. callq _gg
  23.  
  24. jmp __f2

No se si quieres algo asi, se podria hacer de muchas maneras.

La funcion f puede estar donde quieras, la ejecucion empezara donde dice .globl, da igual que f este arriba o abajo del todo.

Un saludo.
« Última modificación: 25 Noviembre 2016, 18:18 por Eternal Idol » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
simplificar condiciones anidadas ??? « 1 2 »
Programación General
skan 10 6,046 Último mensaje 11 Noviembre 2007, 18:28
por skan
problemas struct anidadas..
Programación C/C++
cazadorite 3 1,244 Último mensaje 19 Agosto 2008, 14:25
por EvilGoblin
listas desplegables anidadas
PHP
m0m0 4 4,227 Último mensaje 19 Mayo 2009, 15:18
por cassiani
Estructuras anidadas, funciones y punteros
Programación C/C++
NathanD 9 3,834 Último mensaje 18 Marzo 2013, 08:56
por 85
Estructuras anidadas en lenguaje C. -
Programación C/C++
NOB2014 3 527 Último mensaje 5 Febrero 2017, 18:42
por ivancea96
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines