Vous êtes sur la page 1sur 10

Se pueden clasificar en los siguientes grupos: De Transferencia. Aritmticos. Lgicos. De salto.

INSTRUCCIONES DE TRANSFERENCIA
Este grupo de instrucciones se utiliza para efectuar la transferencia de datos, copian datos de un origen a un destino sin modificar dicho origen. Pueden transferir palabras, fracciones de palabras, o bloques completos.

Algunos ejemplos son:


1. PUSH: Guarda en la cima de la pila 16 bits, decrementando el puntero de la pila en dos bytes, hay que tener en cuenta que no se puede guardar en la pila el contenido del registro CS o el contenido del registro IP ya que estos deben ser modificados por las instrucciones de salto. SINTAXIS: PUSH: reg16 PUSH: mem16 Ejemplo: PUSH: CX PUSH: TABLA (SI)

2. POP: Extrae de la cima de la pila el valor de 16 bits almacenado, depositndolo en la direccin de memoria indicada y a diferencia del PUSH incrementa el puntero de la pila en dos bytes, igualmente se debe tener en cuenta que no se debe rescatar valores para los registros CS e IP ya que estos deben ser modificados por las instrucciones de salto. SINTAXIS:

Ejemplo: POP: DX POP: [BX]

PUSH: reg16 PUSH: mem16

3. XCHG (Intercambio): Consta de dos operandos e intercambia sus valores por lo que modifica los operandos a no ser que tengan idntico valor, cabe recalcar que no se permite que los operandos estn los dos en la misma memoria. SINTAXIS: XCHG destino, origen Indicadores: Ejemplo: XCHGN: bl, ch XCHGN: mem pal, bx

INSTRUCCIONES ARITMETICAS
Son efectuada por la Unidad Aritmeto logica (ALU) y suelen cambian los flags o indicadores de condicin. Algunos ejemplos son: 1. INC: Incrementa. Suma 1 al contenido de un registro o de una posicin de memoria, dicho contenido puede ser byte o palabra.

SINTAXIS: INC destino


Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x x x x -

Ejemplo:

INC AX ; AX = AX+1 INC DL ; DL = DL +1 INC WORD PTR ES: [DI+4]; Increm. Palabra contenida
; es ES: DI+4

2. DEC: Decrementa. resta 1 al contenido de un registro o de una posicin de memoria, dicho contenido puede ser byte o palabra. SINTAXIS: DEC destino Indicadores: OF DF IF TF SF ZF AF PF CF x - - - x x x x Ejemplo: DEC AX ; DEC DL ; DEC WORD PTR ES: [DI+4]; ; AX = AX+1 DL = DL-1 Decrem. Byte contenido en ES: DI+4

3. SUB: Resta el operando destino al operando origen, colocando dicho resultado en el operando destino, los operandos pueden tener signo siempre y cuando sean del mismo tipo byte o palabra.

SINTAXIS: SUB op_destino, op_fuente ; sintaxis bsica.


Ejemplo: SUB SUB al, bl dx,dx

INSTRUCCIONES LOGICAS
En este grupo se incluyen las instrucciones de conjuncin, disyuncin, esxclusiva y negacin, la aplicacin practica no es de siempre sin embargo suelen estar presentes en la mayoria de los programas. Algunos ejemplos son: 1. AND: Realiza una operacin de Y lgico entre el operando origen y el operando destino quedando el resultado en el operando destino. SINTAXIS: AND destino, origen Ejemplo: AND AX,BX AND SI,ES:[DI] AND BX,0A34H AND ES:[BX], CX AND BYTE PTR [SI+4],5 ; AX = AX AND BX ; SI=SI AND ES:[DI] ; BX=BX AND 0A34H ; ES: [BX] = ES: [BX] AND CX ; [SI+4] = [SI+4] AND 5

2. OR: Realiza una operacin de O lgico a nivel de bits entre los dos operandos , almacenndose despus dicho resultado en el operando destino.

SINTAXIS: OR destino, origen


Ejemplo: OR AL,BL OR DI:[BX] OR CL,34 OR [DI], BX OR BYTE PTR [DI],8 ; AL = AL OR BL ; DI=DI OR [BX] ; CL=CL OR 34 ; [DI] = [DI] OR BX ; [DI] = [DI] OR 8

3. XOR: Realiza una operacin de O exclusivo lgico a nivel de bits entre los dos operandos , almacenndose despus dicho resultado en el operando destino. SINTAXIS: XOR destino, origen Ejemplo: XOR CX,BX XOR DI,ES:[SI] XOR AX,4500H XOR [BX], AX XOR BYTE PTR [SI+BX],50 ; CX = CX XOR BX ; DI= DI XOR ES:[SI] ; AX=AX XOR 4500H ; [BX] = [BX] XOR AX ; [SI+BX] = [SI+BX] XOR 50

INSTRUCCIONES DE SALTO
Sirven para que el procesador, en lugar de ejecutar la siguiente instruccin , pase a ejecutar otra en lugar que se denomina destino de salto. Algunos ejemplos son: 1. JMP: Realiza un salto de ejecucin incondicional etiqueta especifica. hacia la direccin o

SINTAXIS: JMP direccin o JMP SHORT direccin Ejemplos: JMP 100H JMP 55AAH:100H JMP WORD PTR [BX] JMP REPITE ; Salta a CX:100h ; Salto lejano a otro segmento ; Salto a la direccin contenida en ; la direccin de memoria especificada ; por BX (salto indirecto) ; Salto a la etiqueta REPITE

2. CALL: El efecto de esta instruccin es similiar a la de salto incondicional con la diferencia de que el procesador guarda ciertos datos en lugares para facilitar el retorno una vez terminada la ejecucin de la subrutina. SINTAXIS: CALL destino El salto puede ser cercano o lejano. Ejemplo: ' (1) Call a Sub procedure. Call printToDebugWindow("Hello World") ... ' The above statement passes control to the following Sub procedure. Sub printToDebugWindow(ByVal anyString As String) Debug.WriteLine(anyString) End Sub TOMADO DE http://msdn.microsoft.com/es-es/library/sxz296wz(VS.80).aspx

Vous aimerez peut-être aussi