Zusammenfassung der Ressource
Assembler
- Instrucciones
- Test
- Compara lógicamente los operandos
- Sintaxis
- TEST + Destino + Fuente
- Tiene efecto sobre el estado las banderas
- Bucles
- Loop
- Decrementa automaticamente CX
- Decrementa automáticamente CX. Cuando
CX=0, termina el bucle. LOOP genera un salto
corto hacia atrás con las limitaciones que
implica.
- LOOPE/LOOPZ, LOOPNE/LOOPNZ
- LOOPZ termina en cuanto CX=0 o la bandera de
cero esté nula. LOOPNZ termina cuando CX=0 o
la bandera de cero esté activa.
- JCXZ
- Produce un salto corto
cuando CX = 0.
- REPE/REPZ, REPNE/REPNZ
- REPZ termina el bucle cuando CX=0 o
cuando ZF=0 REPNZ termina el bucle
cuando CX=0 o cuando ZF=1.
- REP
- Realmente es un prefijo que repite la
instrucción que va a continuación tantas veces
como indique el registro CX, si éste es cero no
se ejecuta nunca.
- Decisiones
- Indica que hacer en
caso de que una
condición se cumpla
- Expresiones
- == igual
- > mayor que
- >= Mayor o igual
- < menor que
- <= menor o igual
- & Testeo de un bit
- ! No lógico
- && Y lógico
- ¡¡ O lógico
- Saltos
- Tipo
- Incondicional
- JNE
- Salto por no igual
- JG
- Salto por Mayor
- JGE
- Salto por mayor igual
- JNGE
- Salto por no mayor igual
- JNG
- Salto por no mayor
- JE
- Salto por igual
- JL
- Salto por menor
- JNL
- Salto por no menor
- JMP
- Salto Incondicional directo
- JLE
- Salto por menor igual
- Salta sin comprobar
ninguna condición
- JNLE
- Salto por no menor igual
- JS
- Salto negativo
- Nemotécnicos
- jump
- brantch
- Condicional
- JNO
- Salta si no hay desbordamiento.
- JNC, JAE, JNB
- Salta si no hay acarreo
- JNZ O JNE
- Salta si no es igual o salta si no es cero
- JC, JNAE, JB
- Salta si hay acarreo
- JS
- Salta si el signo está prendido
- JBE O JNA
- Salta si está abajo o si es igual o salta si no está arriba.
- JNS
- Salta si el signo no está prendido
- JL, JNGE
- Salta si es menor que o salta si no es mayor o igual.
- JA O JNBE
- Después de una comparación este comando salta si está arriba
o salta si no está abajo o si no es igual.
- JO
- Salta si hay desbordamiento
- JNP, JPO
- Salta si el signo esta desactivado
- JP, JPE
- Salta si hay paridad o salta si la paridad es par.
- Salta si la
condición se
cumple
- Nemotécnicos
- jcond
- bcond
- JGE, JNL
- Salta si es más grande o igual o salta si no es menor que.
- JLE, JNG
- Salta si es menor o igual o salta si no es más grande.
- JG, JNLE
- Salta si es más grande o salta si no es menor o igual.
- Producen cambios en la
ejecución del programa
pasando a una nueva posición
- Orden
- JMP (jump = salto)
- Sintaxis
- Etiqueta + JMP + dirección
- Es una instrucción de lenguaje
ensamblador que envía el control del
programa a un conjunto de
instrucciones que se identifican por
medio de una etiqueta
- Permiten el retorno al lugar
donde ocurrieron
- Producen una ruptura de la ejecución
lineal del código para retomarla por
delante o detrás de la orden de salto
- Etiquetas
- Clasificación
- Situación
- De código
- si se utiliza para localizar una
posición de la memoria dentro
del código del programa.
- De datos
- cuando se utiliza de cabecera
para una sucesión de datos
- Tipo
- Cercana
- cuando se define así para ser
accedida por saltos cercanos
- Lejana
- cuando saltaremos a ella
de forma lejana
- Acceso
- Global
- Acceso fuera de la rutina
- Local
- Acceso dentro de la rutina
- Nombres que se les asignan a las direcciones
de cualquier instrucción o localización de
memoria. Una etiqueta toma el lugar de una
dirección. Tan pronto como el ensamblador
encuentra una etiqueta, esta es remplazada
por la dirección correcta.
- Direcciones
- Longitud de la instrucción
- Corta = Short
- Está limitado a una
distancia de un byte, de
-128 a 127 bytes.
- Cercana = Near
- Restringido a una longitud de
una palabra, de -32.768 a
32.767 bytes.
- Lejana = Far
- Una dirección lejana puede estar en otro
segmento y es alcanzada por medio de una
dirección de segmento y un desplazamiento