Вы находитесь на странице: 1из 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:
PUSH: reg16
PUSH: mem16

Ejemplo: POP: DX
POP: [BX]

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

SINTAXIS:
JMP direccin o JMP SHORT direccin
Ejemplos: JMP 100H
; Salta a CX:100h
JMP 55AAH:100H
; Salto lejano a otro segmento
JMPWORD PTR [BX] ; Salto a la direccin contenida en

; la direccin de memoria especificada


; por BX (salto indirecto)
JMP REPITE
; 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

Вам также может понравиться