Ensamblador - limitaciones

 
Vista:

limitaciones

Publicado por miguel (1 intervención) el 14/12/2006 22:10:48
Alguien sabe la limitación que tienen los saltos condicionales??? y la solucion para que esta no se de alguien la sabe???

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:limitaciones

Publicado por GE-ERGON (46 intervenciones) el 18/12/2006 19:58:02
Hola!
Miguel

Creo que te refieres a que en 80x86 los saltos condicionales no pueden ser mayor a 128 bytes desde donde esta la instruccion JX apuntando.

Te dejo el siguiente enlace:
http://www.emu8086.com/assembly_language_tutorial_assembler_reference/asm_tutorial_07.html
Lee la parte con titulo: "Short Conditional Jumps"

En realidad no hay que precuparse demasiado por esto..., a menos que uses el debugger para programar... :-), es decir, estos detalles son los que hacen que el uso de un assembler sea vital, es decir TASM reconece esto, y cuando crea el código objeto arregla el problema... la solucion es algo asi:

' Esto es incorrecto (es decir no existe tal opcode):
JZ farlabel;

'El TASM lo traduce a:
JNZ beyond;
JMP farlabel;
beyond:

Otra limitante es la que tiene cualquier JUMP... que corta un poco el proceso de pipeling

Acá te dejo otros enlaces que me parecieron interesantes:
http://pdos.csail.mit.edu/6.828/2005/readings/i386/Jcc.htm
http://thestarman.dan123.com/asm/2bytejumps.htm

Att: GE-ERGON
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar