[ASM] Prologue Epilogue ou comment récupérer sa stack
|
26-08-2014, 19h40
(Modification du message : 26-08-2014, 19h41 par gruik.)
Message : #2
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [ASM] Prologue Epilogue ou comment récupérer sa stack
effectivement c'est mieux/plus propre de travailler dans une nouvelle stack frame, le prologue sert précisément à ça, créer une nouvelle stack frame ("cadre de pile" en bon françois, c'est néanmoins assez parlant je trouve), en sauvegardant le pointeur de base précédent (le début de la frame précédente donc) et en mettant le pointeur de base au sommet de la pile (esp)
c'est un peu comme pour construire une tour, on pose un échafaudage, on remplit/construit dans l’échafaudage, on déplace l'échafaudage vers le haut et ainsi de suite... on a l'habitude dans la foulée de soustraire la taille de la nouvelle pile ensuite du pointeur de pile (sub esp, xyz) de manière à allouer une pile en bonne et due forme on manipule alors les données à travers des mov [ebp+toto] (...), tandis que lorsqu'on push une valeur, on empile la valeur à l'adresse d'esp qu'on incrémente, faisant donc grandir la pile, et inversément avec le pop l'épilogue comme tu l'as dit c'est juste l'opération inverse, l'instruction leave se substituant finalement au combo mov esp, ebp; pop ebp;
Avant donc que d'écrire, apprenez à penser.
Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure. Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau, L'Art poétique) |
|
« Sujet précédent | Sujet suivant »
|
Messages dans ce sujet |
[ASM] Prologue Epilogue ou comment récupérer sa stack - par Junky - 26-08-2014, 17h59
RE: [ASM] Prologue Epilogue ou comment récupérer sa stack - par gruik - 26-08-2014, 19h40
RE: [ASM] Prologue Epilogue ou comment récupérer sa stack - par octarin - 31-08-2014, 20h42
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
Comment connaitre le language d'un logiciel ou... | ThomasYato | 1 | 112 |
03-08-2019, 08h08 Dernier message: supersnail |
|
[C] Comment protéger la mémoire ??? | Sh4dows | 10 | 550 |
01-05-2013, 11h13 Dernier message: Sh4dows |
|
[C / ASM inline] stack nostdlib | ark | 2 | 209 |
11-12-2012, 18h22 Dernier message: Ark |
Utilisateur(s) parcourant ce sujet : 1 visiteur(s)