Ir al contenido principal

Entradas

Mostrando las entradas con la etiqueta jmp

Salto Incondicional JMP en Gnu Assembler (GAS)

Los saltos son la forma básica de control de flujo en lenguaje ensamblador, un salto acompañado de una etiqueta de destino, nos permite llevar al procesador a ejecutar en cualquier región de nuestro código. en este ejemplo, veremos la forma mas básica de salto, el salto incondicional, el cual modifica el flujo del programa, y lo dirige hacia una etiqueta definida. como primer paso para entender la forma en la que actúa una instrucción "jmp", vamos a usar un pequeño ejemplo, que imprime dos mensajes en pantalla, uno después de otro en una secuencia simple . text . global _start _start: # write msg movl $len , % edx movl $msg , % ecx movl $1 , % ebx movl $4 , % eax int $ 0x80 # write msg1 movl $len1 , % edx movl $msg1 , % ecx movl $1 , % ebx movl $4 , % eax int $ 0x80 # exit movl $0 , % ebx movl $1 , % ...