Instrucciones de tipo salto

Description

Instrucciones de tipo salto
Alexander Fernández
Mind Map by Alexander Fernández, updated more than 1 year ago
Alexander Fernández
Created by Alexander Fernández almost 8 years ago
13
0

Resource summary

Instrucciones de tipo salto
  1. Direcciones
    1. El salto cercano: se realiza contando como distancia el contenido de dos bytes, o sea, que el rango sería desde 32767 a -32768 bytes de distancia.
      1. El salto lejano: se realiza contando como distancia el contenido de cuatro Bytes.
        1. El salto corto: se realiza entre el punto en el que se está y +127 o -128, o sea, la cantidad que se puede contener en un byte con signo.
        2. Etiquetas
          1. Son nombres que sirven para referirse a otras lineas de instrucciones del programa, y la verdad es que son muy utilizadas por que muchas veces nececitamos realizar saltos (ya sean condicionales o incondicionales) a otras parte del programa.
          2. Instrucciones de testeo
            1. TEST, Comparar. Compara mediante un AND lógico los operandos origen y destino; no almacena los resultados, pero sí modifica los flags.
            2. Saltos Condicionales
              1. Se basan completamente en los flags, pero están simplificados. Los saltos podrían resumirse en un modo "Basic" de la manera IF-THEN-GOTO de forma que cuando se cumple una condición se salta a un sitio determinado. He aquí los tipos de saltos condicionales (las letras en mayúsculas son las instrucciones): TEST TEST, Comparar. Compara mediante un AND lógico los operandos origen y destino; no almacena los resultados, pero sí modifica los flags.
              2. Saltos Incondionales
                1. Empecemos por el salto sin condiciones, con el que podremos cambiarel control a cualquier punto del programa. Sería como el "Goto" del Basic,simplemente transferir el control a otro punto del programa. La orden es JMP (de Jump, salto). Si se recuerdan los registros CS:IP, se podrá ver qué es lo que hace realmente la instrucción, y no es más que incrementar o decrementar IP para llegar a la zona del programa a la que queremos transferir el control (IP es el Offset que indica la zona de memoria que contiene la siguiente instrucción a ejecutar, y CS el segmento). El formato más sencillo para el salto sería JMP 03424h, lo que saltaría a esa zona. Pero es algo complejo calcular en qué dirección va a estar esa instrucción, con lo que utilizaremos etiquetas. He aquí un ejemplo: MOV AX,0CC34h, MOV CL,22h, JMP PALANTE, VUELVE: CMP BX,AX, JMP FIN, PALANTE: MOV BX,AX, JMP VUELVE, FIN: XOR CX,CX
                2. Decisiones
                  1. Estructuras condicionales y ciclos: Estas estructuras son las que dirigen el flujo de ejecución de un programa
                  2. Bucles
                    1. Se trata de la orden LOOP. Lo que hace esta orden es comparar CX con cero; si es igual, sigue adelante, si no lo es, vuelve al lugar que se indica en su operando decrementando CX en uno. Por lo tanto, CX será un contador de las veces que ha de repetirse el bucle. Veamos un ejemplo: MOV CX,0005h, bucle: INC , DX CMP DX,0000h JE Acaba LOOP bucle Acaba.
                    Show full summary Hide full summary

                    Similar

                    INVESTIGACIÓN
                    Adriana Romero
                    1_INVESTIGACIÓN
                    Adriana Romero
                    El computador
                    alfredo freites
                    ambiebte
                    YANETH TABARES
                    Atoms, Protons, Neutrons & Electrons quiz
                    leonie.examtime
                    Romeo and Juliet essay
                    Tambo234
                    AS-Level Chemistry: Unit 1:The Atom
                    Daena Targaryen
                    Resumo para o exame nacional - Fernando Pessoa Ortónimo, Alberto Caeiro , Ricardo Reis e Álvaro Campos
                    miminoma
                    Edexcel Additional Science Chemistry Topics 1+2
                    El Smith
                    Health and Social Care Flashcards
                    Kelsey Phillips