Está en la página 1de 7

TECNOLÓGICO NACIONAL DE MÉXICO

INSTITUTO TECNOLÓGICO DE POCHUTLA


ASIGNATURA:
ARQUITECTURA DE COMPUTADORAS
TEMA:
MODOS DE DIRECCIONAMIENTO Y FORMATOS
ACTIVIDAD:
T2-03 – PROBLEMAS PROPUESTOS
ALUMNOS:
CRUZ PACHECO FABIO TOTTI
CARRERA:
INGENIERÍA EN SISTEMAS COMPUTACIONALES
DOCENTE:
ORTEGA MENDEZ MANUEL DE JESUS

San Pedro Pochutla, Oaxaca, octubre de 2021


INTRODUCCIÓN.

Los modos de direccionamiento se definen como aquellas maneras de especificar


un operando dentro de una instrucción en lenguaje ensamblador, esto debido a que
dan más flexibilidad al programador para implementar ciertas funciones, por lo que
entender su importancia y función en un procesador o equipo requiere de
importancia.

El presente trabajo busca la manera de ejemplificar el proceso que realizan unos o


algunos de estos modos de direccionamiento a partir de cuestiones o problemas
reales o posibles dentro de un computador ordinario o especifico. Esto con el
objetivo de analizar y comprender el funcionamiento e importancia que tienen esto
elementos en el manejo de una computadora y brindar las capacidades suficientes
para resolver este tipo de problemas en cuanto lleguen a manifestarse aplicando las
habilidades y conocimientos adquiridos de estos problemas.
Problema real o posible.

Problema 1.

Se desea determinar qué instrucciones permiten leer y escribir datos en la zona de


registros de entrada/salida (ya sea un teclado o ratón). ¿Cuáles son estas
instrucciones y que modos de direccionamientos son utilizados en ellos
respectivamente?

Posible solución:

Atendiendo, exclusivamente, a las instrucciones de transferencia o movimiento de


datos, se tienen:

a) Instrucción MOV. Permite leer y copiar el contenido de un registro del banco


de registros de propósito general, hacia otro registro del banco.
b) Instrucción LDI. Escribe un dato inmediato de tamaño byte en cualquiera de
los registros r16 ... r31 del banco.
c) Instrucciones LD y ST, que utilizan modos de direccionamiento indirectos en
cualquiera de sus modalidades (indirecto, con postincremento y con
predecremento).
Las primeras, instrucciones LD, cargan un dato en cualquiera de los 32
registros, mientras que las segundas, leen cualquiera de ellos. Además,
dependiendo de la dirección referenciada por el registro X, Y o Z que se
utilice, la instrucción LD podrá leer un registro del banco, mientras que la ST,
además, podrá escribir el dato en algún registro.
d) Instrucciones LDD y STD, que utilizan el modo de direccionamiento indirecto
con desplazamiento.
e) Instrucciones IN y OUT. Intercambia bytes entre el banco de registros de
propósito general y el banco de registros de entrada salida. F
f) Instrucciones LDS y STS, que utilizan el modo de direccionamiento directo.
Uno de los operandos de ambas instrucciones es un registro del banco,
mientras que el otro, una dirección absoluta, puede hacer referencia,
también, dependiendo del valor de dirección, a otro registro del banco.
g) Instrucciones PUSH y POP. Intercambia bytes entre la PILA y algún registro
del banco.

Problema 2.

En una computadora con una arquitectura de 16 bits con una memoria de 32 KB,
16 registros y 40 instrucciones diferentes. Se desea implementar la instrucción
ADDM, la cual suma el contenido de un registro con el contenido de una dirección
de memoria principal, almacenando el resultado en esta posición de memoria.

Se requiere saber el formato de la instrucción para cada uno de los siguientes


modos de direccionamiento de la memoria: direccionamiento directo,
direccionamiento de registro, direccionamiento relativo a registro base,
direccionamiento relativo a contador de programa y direccionamiento indirecto.

Posible solución:

La instrucción es de la forma:

ADDM mem, reg

de modo que hay que especificar dos direcciones, una de memoria que hace de
fuente y destino a la vez, y otra de registro que hace de segunda fuente: 𝑚𝑒𝑚 ←
𝑚𝑒𝑚 + 𝑅𝑖 . El formato de la instrucción constará de tres o de cuatro campos, según
el modo de direccionamiento. El campo del código de operación (opcode) es fijo, de
⌈log 2 (40)⌉ = 6 𝑏𝑖𝑡𝑠. El campo del registro fuente también es fijo de log 2 (16) =
4 𝑏𝑖𝑡𝑠 (= 𝑣𝑎𝑙𝑜𝑟 𝑑𝑒 𝑖).

• En el caso de direccionamiento directo hay que guardar una dirección


absoluta de memoria de log 2 (32 KB) = 15 bits. En total, pues, 6+ 15+ 4 = 25
bits, lo que implica a dos palabras.
• En el caso de direccionamiento de registro (mem = [Rk]) sólo se necesita
especificar el número del registro que contiene la dirección de la memoria, es
decir 4 bits. En total, 6 + 4 + 4 = 14 bits, por lo que basta una palabra.
• En el caso de direccionamiento relativo a registro base la dirección de
memoria se construye sumando al contenido del registro base un
desplazamiento (mem = [Rk] + desplazamiento). Hay que especificar el
registro base (número k) y el desplazamiento, de 15 bits. Es un caso de
instrucción con cuatro campos. En total, 6 + 4 + 15 + 4 = 29 bits, luego hacen
falta dos palabras para la instrucción.
• El caso del direccionamiento relativo al contador de programa es semejante
al anterior, con la salvedad que el registro no hay que especificarlo, es
implícito su uso, por lo que tan sólo hay que especificar el desplazamiento de
15 bits. En total, pues, 25 bits como en el primer caso.
• En el direccionamiento indirecto hay que especificar una dirección de
memoria, con lo que el formato es como en el primer caso, de 25 bits.

Problema 3, ejemplificación.

Se entiende que al ejecutar un tipo de archivo que va ligado a un formato en


específico como por ejemplo .exe, .rar, .zip, .rog, .data, entre otras; el sistema
operativo tiene que llamar a ejecutar el programa correspondiente que alude o en
términos simples, esta diseñado por defecto a abrir archivos con esa o esas
terminaciones. Un problema que a veces puede presentarse en algunos casos,
consiste en que el SO no encuentre o no disponga de la aplicación o programa que
sea compatible con este tipo de archivos, esto se presenta mas cuando el
dispositivo es nuevo o sea realizado un formateo mediante la opción de “devolver a
valores de fabrica”, ya que en este tipo de casos el computador solo dispone de
herramientas y aplicaciones que solamente dispone el SO.
En casos como los formatos de imágenes, videos o audios, el sistema operativo
puede ofrecer aplicaciones para abrir este tipo de archivos, pero en el caso de
formatos mas especifico o especiales que usan ciertas aplicaciones y programas el
problema no puede ser resuelto, a excepción de algunos formatos como los son
.zip, .pdf, .webp, etc.; el SO puede ofrecer opciones, redireccionar nuestras
opciones, las cuales harán el intento de abrir o visualizar dichas archivos ya sea
mediante la exposición del código ensamblador que corresponde al archivo, aunque
esto no es de mucha utilidad en el algunos formatos.

Se toma como ejemplo el archivo de formato .rar, el acceso a estos archivos es


imposible en una computadora si en esta no está incorporada la aplicación de
WinRAR, ya que este archivo solo puede ser leído e interpretado por este programa
y no por aplicaciones preinstaladas del SO.

Obviamente la solución mas optima en este tipo de casos es la instalación de las


aplicaciones que sean capaces de leer e interpretar estos archivos, direccionar los
formatos a sus instrucciones correspondientes, de esta forma el SO será capaz de
llamar al programa que corresponda a cada tipo de archivo.
Conclusión.

Los modos de direccionamiento tienen un fuerte impacto en el momento que se


desee hacer una acción en la computadora, más específicamente en la estructura
de las instrucciones que representan dichas acciones. Ya sea para la introducción
de datos provenientes de los puertos de entrada y salida o la aplicación de
instrucciones especificas en el software, tales y como se manifestaron en los
presentes problemas, a los cuales aplicamos los diferentes modos de
direccionamiento para la resolución de estos problemas, así como sus respectivas
instrucciones que las contienen. La resolución de estos problemas da a entender
que estos procesos que ejecuta la computadora en cuestión de segundos son
esenciales para el funcionamiento completo y estructurado que se puede esperar
en un equipo, dependiendo obviamente de los recursos que disponga.

Referencias
Bastida Ibáñez, J. (7 de Enero de 2010). Departamento de informatica Universidad
de Valladolid. Obtenido de
https://www.infor.uva.es/~bastida/OC/conjunto.pdf
Etsii. (11 de Enero de 2011). Obtenido de
http://cc.etsii.ull.es/ftp/antiguo/EC/EjerciciosResueltos/Tema_1_solu.pdf
M. Argüello, D., C. Pérez, S., & A., H. (2018). ARQUITECTURA DE
COMPUTADORAS. Mendoza, Argentina: Universidad Tecnológica Nacional,
Facultad Regional Mendoza.

También podría gustarte