Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Introducción 2
3. Instrucciones lógicas 4
4. Instrucciones aritméticas 4
5. Instrucciones de corrimiento 5
7. Conclusión 14
8. Referencias 15
1
Introducción
2
instrucciones de muchos ordenadores pueden dar lugar a confusión porque no se
trata de mover o cargar sino de copiar (generalmente, en Informática, la palabra
mover tiene el significado de copiar borrando el original). Las instrucciones de
transferencia de datos necesitan que se especifiquen el original (fuente u origen) y
el lugar donde se desea la copia (destino). Esta especificación variará según sean
estos lugares que pueden estar en tres sitios: registros del procesador, memoria o
cima de pila. Si el acceso es a una dirección de memoria habrá que especificarla
de forma explícita, si se trata de la cima de pila normalmente la especificación será
implícita, lo mismo ocurrirá si se trata del acumulador.
registro a registro.
registro a memoria.
memoria a registro.
memoria a memoria.
INSTRUCCIONES LOGICAS
3
En este grupo se incluyen las instrucciones de conjunción, disyunción, disyunción
exclusiva y negación. La aplicación práctica de estas instrucciones no es a primera
vista del todo aparente, sin embargo, suelen estar presentes en la mayoría de
programas.
Estas instrucciones tienen en común que realizan sus operaciones “bit a bit”. Es
decir, el procesador realiza tantas operaciones lógicas como bits tienen los
operandos tomando los bits que ocupan la misma posición y, por tanto,
produciendo otros tantos resultados.
INSTRUCCIONES ARITMETICAS
pueden implicar transferencia de datos antes y/o después. Realizan operaciones
aritméticas de las que se encarga la ALU. Se pueden clasificar en de 1 operando
(valor absoluto, negación) y 2 operandos (suma, resta).
add: suma.
add with carry: suma con acarreo.
subtract: resta.
subtract with borrow: resta teniendo en cuenta el adeudo anterior.
increment: incrementa en 1 un valor.
decrement: decrementa en 1 un valor.
multiply: multiplica.
divide: divide.
extend: aumenta el operando de tamaño.
negate: cambia de signo.
absolute: valor absoluto.
4
INSTRUCCIONES DE CORRIMIENTO
5
Si se desplaza un número a la derecha, el nuevo bit más significativo debe
tener valor idéntico al antiguo.
Alternativa doble:
Se evalúa la condición, ejecutándose un grupo de sentencias si el resultado es
“verdadero”, y ejecutándose otro grupo alternativo de sentencias si el resultado es
“falso”.
6
Alternativa múltiple (o selector):
En lugar de una condición, se evalúa una expresión con múltiples pero finitos
resultados, ejecutándose en función del resultado de la expresión, un grupo de
sentencias entre múltiples posibles.
7
Instrucciones alternativas anidadas:
También es posible utilizar la instrucción Si-Sino para diseñar estructuras de
selecciones entre más de dos alternativas. Esto se consigue mediante las
estructuras anidadas, donde tanto la rama Si como la Sino pueden contener a su
vez otra instrucción Si-Sino, y así sucesivamente un número determinado de
veces. Veamos un ejemplo:
INSTRUCCIONES DE SALTO:
8
Se utilizan para realizar un salto, es decir, para transferir el control a un punto del
programa donde seguirá la ejecución del mismo, pero perdiendo toda posibilidad
de retornar de forma controlada la ejecución del programa al punto de llamada.
No se aconseja su utilización porque crean un código difícil de leer y mantener,
estando su uso muy restringido en programación estructurada.
Podemos hablar de dos tipos de sentencias de salto:
INSTRUCCIONES REPETITIVAS:
Este tipo de instrucciones también son conocidas como bucles, ciclos o lazos. Lo
que hacen es que mientras se verifique una condición, un segmento del algoritmo
o programa se repita consecutivamente.
En cada repetición del bucle (o iteración) se evalúa la expresión de control del
bucle (o condición), que determinará si continuamos realizando otra iteración o
bien salimos definitivamente del bucle.
9
Podemos distinguir tres tipos de bucles, dependiendo de que la condición de
control del bucle se evalúe antes o después de cada iteración, y de que se pueda
fijar de antemano o no el número de iteraciones a realizar.
El bucle “mientras”:
Se utiliza cuando se desea que un bucle de instrucciones se ejecute mientras una
condición sea cierta.
10
Características del bucle “repetir mientras”:
El bucle “desde”:
Se utiliza cuando se desea que un bucle se ejecute repetidamente un número
determinado de veces que se conoce por anticipado.
11
Características del bucle “desde”:
12
lenguajes que no permiten establecer valores para el incremento distintos a
la unidad).
Si el nuevo valor de la variable índice no excede del valor final, se
ejecutarán de nuevo las instrucciones y se procederá a un nuevo
incremento de la variable índice, repitiéndose todo esto hasta que el valor
de la variable índice supere al valor final establecido.
En algunos lenguajes existe la posibilidad de utilizar bucles desde con
decremento en cada iteración. En este caso se debe establecer un valor
inicial para la variable índice mayor que el valor final.
Particularidad:
El bucle “desde” no es más que una forma compacta de escribir un bucle
“mientras”.
13
Conclusión
14
REFERENCIAS
https://es.wikipedia.org/wiki/Conjunto_de_instrucciones#Transferencia_de_datos
http://ocw.uc3m.es/ingenieria-telematica/arquitectura-de-
ordenadores/lecturas/html/isa.html#isa:sec:move
curso-cm.speccy.org/fr_cap6.html
INSTRUCCIONES ARITMETICO-LOGICAS
www.atc.uniovi.es/telematica/2ac/Apuntes-y-Ejercicios/Instrucciones-Aritmetico-Logicas-
IA-32.pdf
15