jmp [ebx+0x64]
indirecte dd offset destination<table border=0 cellspacing=0 cellpadding=4 bgcolor=#E0E0E0><tr><td class=code> <table border=0 cellspacing=0 cellpadding=4 bgcolor=#E0E0E0><tr><td class=code>... mov ebx, offset indirecte jmp [ebx] ... destination: ; le jmp saute ici ... <table border=0 cellspacing=0 cellpadding=4 bgcolor=#E0E0E0><tr><td class=code> Ca permet d'implémenter un switch (langage C) si tu connais C, C++ ou Java ou un SELECT CASE (langage BASIC), c'est à dire de faire un jump en finction d'un index dans un tableau: Segment de données: <table border=0 cellspacing=0 cellpadding=4 bgcolor=#E0E0E0><tr><td class=code>table dd jump_pour_valeur_ebx_egal_a_0 dd jump_pour_valeur_ebx_egal_a_1 dd jump_pour_valeur_ebx_egal_a_2 dd jump_pour_valeur_ebx_egal_a_3 dd jump_pour_valeur_ebx_egal_a_4 dd jump_pour_valeur_ebx_egal_a_5 dd jump_pour_valeur_ebx_egal_a_6 dd jump_pour_valeur_ebx_egal_a_7
and ebx, 7 jmp [ebx+table] jump_pour_valeur_ebx_egal_a_0: ... jump_pour_valeur_ebx_egal_a_1: ... jump_pour_valeur_ebx_egal_a_2: ... jump_pour_valeur_ebx_egal_a_3: ... jump_pour_valeur_ebx_egal_a_4: ... jump_pour_valeur_ebx_egal_a_5: ... jump_pour_valeur_ebx_egal_a_6: ... jump_pour_valeur_ebx_egal_a_7: ...
jmp [ebx+0x64]
indirecte dd offset destination
... mov ebx, offset indirecte jmp [ebx] ... destination: ; le jmp saute ici ...
table dd jump_pour_valeur_ebx_egal_a_0 dd jump_pour_valeur_ebx_egal_a_1 dd jump_pour_valeur_ebx_egal_a_2 dd jump_pour_valeur_ebx_egal_a_3 dd jump_pour_valeur_ebx_egal_a_4 dd jump_pour_valeur_ebx_egal_a_5 dd jump_pour_valeur_ebx_egal_a_6 dd jump_pour_valeur_ebx_egal_a_7
and ebx, 7 jmp [ebx+table] jump_pour_valeur_ebx_egal_a_0: ... jump_pour_valeur_ebx_egal_a_1: ... jump_pour_valeur_ebx_egal_a_2: ... jump_pour_valeur_ebx_egal_a_3: ... jump_pour_valeur_ebx_egal_a_4: ... jump_pour_valeur_ebx_egal_a_5: ... jump_pour_valeur_ebx_egal_a_6: ... jump_pour_valeur_ebx_egal_a_7: ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionjmp 0x08
jmp destination ... destination:
jmp destination ... destination:
Adresse | source assembleur | Code machine 0000h__ | jmp destination__ | EA 08 00 .... 0008h__ | destination:______ |
jmp destinationou écrire l'instruction
jmp 0x08fait exactement la même chose.
jmp [ebx+0x64]
jmp [ebx+table]
jmp 0x08
jmp destination ... destination:
jmp destination
jmp 0x08
jmp destination ... destination:
Adresse | source assembleur | Code machine 0000h__ | jmp destination__ | EA 08 00 .... 0008h__ | destination:______ |
jmp destinationou écrire l'instruction
jmp 0x08fait exactement la même chose.