Modulo 1
Modulo 1
Modulo 1
Módulo I
Docente: Bachilleres:
Antonio Chávez
Sección P01
1
INDICE:
1. Introducción Pág.3.
2. Sistemas y sus clasificaciones Pág.4.
2.1 Sistemas físicos o concretos Pág.4.
2.2 Sistemas abstractos Pág.4.
3. Elementos de un sistema Pág.4.
3.1 Entrada Pág.4.
3.2 Proceso Pág.5.
3.3 Salida Pág.5.
4. Enfoque de un sistema Pág.5.
4.1 Origen Pág.5.
5. Características del Enfoque de sistemas Pág.6.
6. Teoría General de Sistemas Pág.6.
7. Conclusión Pág.7.
2
Introducción:
3
Reseña Histórica:
4
La Z3 fue la primera computadora electrónica alemana.
5
son específicas de implementaciones particulares y tecnología específica.
Maquina Multinivel:
6
Nivel 0: Nivel de lógica digital
Es el hardware de la máquina.
El nivel inferior sería el nivel de dispositivo.
En este nivel:
Puertas lógicas
Circuitos integrados
Circuitos combinacionales
Circuitos aritméticos
Relojes
Memorias
Microprocesadores
Buses
Nivel 1: Nivel de microprogramación
Existe un programa llamado microprograma.
La función del microprograma es interpretar las instrucciones del nivel
2.
En algunas máquinas no existe el nivel de microprogramación.
Nivel 2: Nivel de máquina convencional
7
Cada fabricante publica el “Manual de referencia del lenguaje máquina”
para cada uno de los computadores.
Las instrucciones del nivel de máquina las interpreta el microprograma.
En las máquinas en las que no existe el nivel de microprogramación, las
instrucciones del nivel de máquina son realizadas directamente por los
circuitos electrónicos.
Nivel 3: Nivel del sistema operativo
La mayoría de las instrucciones de este nivel están también en el nivel 2
pero además tiene un nuevo conjunto de instrucciones, una
organización diferente de la memoria, posibilidad de ejecutar 2 o más
programas …
Las nuevas instrucciones las interpreta el sistema operativo.
Las que son idénticas a las del nivel 2 las lleva a cabo el
microprograma.
Nivel 4: Nivel del lenguaje ensamblador
Los niveles 4 y superiores son utilizados por los programadores de
aplicaciones.
Los niveles inferiores están diseñados para ejecutar los intérpretes y
traductores de los niveles superiores y son escritos por los
programadores de sistemas.
El ensamblador es el programa que lleva a cabo la traducción de un
programa del nivel 4.
Nivel 5: Nivel de lenguajes de alto nivel
Los lenguajes de alto nivel son más fáciles de utilizar que los lenguajes
de niveles inferiores.
Son utilizados por los programadores de aplicaciones.
Los traductores de programas en lenguaje de alto nivel pueden ser
compiladores o intérpretes.
El sistema operativo parece como una envolvente de software de nivel 3 que
oculta lo que está debajo.
8
Representación interna de los datos:
Un sistema de numeración es el conjunto de reglas, convenios y símbolos
que permiten expresar números.
• Decimal.
b=10. D {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Sistema de representación
numérico del ser humano.
• Binario.
b=2. D {0, 1}. Sistema de representación interna del ordenador.
• Octal.
b =8. D {O,..7}. Las conversiones octal-binario y binario-octal pueden
hacerse fácilmente. Agrupando dígitos de 3 en 3.
• Hexadecimal
b=16. D {O, .., 9, A, B, C, D, E, F}. Las conversiones hexadecimal-
binario y binario-hexadecimal se realizan agrupando dígitos de 4 en 4.
9
Código ASCII (American Standard Code for Information Interchange).
El más difundido hoy en día para su uso en los ordenadores. Se publicó en
1963
Por ASA (que posteriormente pasó a ser ANSI) Dispone de 8 bits aunque
sólo utiliza los 7 primeros para el uso de letras, números y caracteres
especiales.
Con 7 bits se pueden representar 128 caracteres diferentes. Se
pueden representar todos los números, letras mayúsculas, minúsculas,
caracteres especiales y de control. El resto de las combinaciones de la 128 a
la 255 se usan para representar caracteres de tipo gráfico.
Los 32 primeros caracteres son de control.
– UNICODE.
10
Es un estándar internacional establecido por el Consorcio Unicote (formado
por empresas como Apple Computer, Microsoft, IBM, HP,…). Su objetivo es
representar cualquier carácter jamás escrito. Windows NT y sus sucesores lo
usan. También sistemas operativos como Linux, Mac OS X y lenguajes de
programación como Java, Perl y C#.
Tipos de Instrucciones y formatos:
Un conjunto de instrucciones, repertorio de instrucciones, juego de
instrucciones o ISA (del inglés instruction set architecture, «arquitectura del
conjunto de instrucciones») es una especificación que detalla las instrucciones
que una unidad central de procesamiento puede entender y ejecutar, o el
conjunto de todos los comandos implementados por un diseño particular de
una CPU. El término describe los aspectos del procesador generalmente
visible para un programador, incluido los tipos de datos nativos, las
instrucciones, los registros, la arquitectura de memoria y las interrupciones,
entre otros aspectos.
Existen principalmente tres tipos: CISC (Complex Instruction Set
Computer), RISC (Reduced Instruction Set Computer) y SISC (Simple
Instruction Set Computing).
La arquitectura del conjunto de instrucciones (ISA) se emplea a veces para
distinguir este conjunto de características de la micro arquitectura, que son los
elementos y técnicas que se emplean para implementar el conjunto
de instrucciones. Entre estos elementos se encuentran las microinstrucciones y
los sistemas de caché.
Procesadores con diferentes diseños internos pueden compartir un conjunto de
instrucciones; por ejemplo, el Intel Pentium y AMD Athlon implementan
versiones casi idénticas del conjunto de instrucciones x86, aunque tienen
diseños diferentes.
Modos de Direccionamiento:
Forma de especificar la ubicación de los datos y modos de acceder a ellos y
tienen como objetivos: Reducir el espacio ocupado en memoria por las
instrucciones, remitir la reubicación del código, facilitar el manejo de las
estructuras de datos.
Los datos que maneja una instrucción máquina pueden estar ubicados en:
11
La propia instrucción, donde el operando está contenido en un campo
de la propia instrucción máquina.
En un registro de la CPU, los registros de la CPU se pueden utilizar
para almacenar temporalmente los datos.
En la memoria del computador, en este caso será necesario especificar
de algún modo la dirección de memoria donde se halla el operando:
dirección efectiva (EA, “Efectiva address”) del operando.
Los operandos pueden ubicarse en los siguientes lugares:
Dentro de la propia instrucción (operandos “inmediatos”):
En el registro de instrucción.
En palabras de extensión o ampliación.
En registros visibles para el programador.
En variables ubicadas en posiciones de memoria.
Los operandos no están contenidos en la instrucción de forma directa
por:
Ahorro de espacio.
Empleo de código reubicable y reentrante.
Hay datos formando estructuras más o menos complejas.
Los operandos pueden ser referenciados desde la instrucción de múltiples
formas, dando lugar a los modos de direccionamiento.
Tipos y tamaños de registros:
Los registros están en la cumbre de la jerarquía de memoria, y son la
manera más rápida que tiene el sistema de almacenar datos. Los
registros se miden generalmente por el número de bits que almacenan;
por ejemplo, un "registro de 8 bits" o un "registro de 32 bits". Los
registros generalmente se implementan en un banco de registros, pero
antiguamente se usaban biestables individuales, memoria SRAM o
formas aún más primitivas.
12
Los registros de datos se usan para guardar números enteros. En
algunas computadoras antiguas, existía un único registro donde se
guardaba toda la información, llamado acumulador.
Los registros de memoria se usan para guardar exclusivamente
direcciones de memoria. Eran muy usados en la arquitectura Harvard,
ya que muchas veces las direcciones tenían un tamaño de palabra
distinto que los datos.
Los registros de propósito general (en inglés GPRs o General
Purpose Registers) pueden guardar tanto datos como direcciones. Son
fundamentales en la arquitectura de von Neumann. La mayor parte de
las computadoras modernas usa GPR.
Los registros de coma flotante se usan para guardar datos en formato
de coma flotante.
Los registros constantes tienen valores creados por hardware de sólo
lectura. Por ejemplo, en MIPS el registro cero siempre vale 0.
Los registros de propósito específico guardan información específica
del estado del sistema, como el puntero de pila o el registro de estado.
También existen los registros bandera y de base.
Estados de Control:
13
Las salidas del sistema pueden estar conformado por un conjunto de
respuestas a las entradas.
Así, internamente, podríamos decir que el sistema o el modelo están
conformado por unas variables de estado.
Dicho esto, el sistema anterior, puede ser desglosado como:
14
o al BIOS). Una vez finalizada dicha subrutina, se reanuda la ejecución del
programa.
Las interrupciones surgen de la necesidad que tienen los dispositivos
periféricos de enviar información al procesador principal de un sistema
informático.
La primera técnica que se empleó para esto fue el polling, que consistía en que
el propio procesador se encargara de sondear los dispositivos periféricos cada
cierto tiempo para averiguar si tenía pendiente alguna comunicación para él.
Este método presentaba el inconveniente de ser muy ineficiente, ya que el
procesador consumía constantemente tiempo y recursos en realizar estas
instrucciones de sondeo.
El mecanismo de interrupciones fue la solución que permitió al procesador
desentenderse de esta problemática, y delegar en el dispositivo periférico la
responsabilidad de comunicarse con él cuando lo necesitara. El procesador, en
este caso, no sondea a ningún dispositivo, sino que queda a la espera de que
estos le avisen (le «interrumpan») cuando tengan algo que comunicarle (ya sea
un evento, una transferencia de información, una condición de error, etc.).
Entrada/Salida:
Los dispositivos de entrada y salida son aparatos electrónicos que son
conectadas a la computadora a través de sus ranuras de entrada o salida.
En computación, los dispositivos de entrada y salida son los medios con el
cual el usuario se comunica con el sistema de procesamiento de información
como, por ejemplo, las tabletas, computadoras o celulares inteligentes.
En informática, los dispositivos de entrada y salida son también llamados
periféricos, ya que, no son una parte integral del sistema informático en sí,
sino elementos periféricos que se conectan al sistema mediante sus ranuras de
entrada (inputs) o ranuras de salida (outputs).
Procesamiento Distribuido:
El procesamiento distribuido es una configuración en la que varias unidades
de procesamiento central (CPU) individuales trabajan en los mismos
15
programas, funciones o sistemas para proporcionar más capacidad para una
computadora u otro dispositivo.
Originalmente, los microprocesadores convencionales involucraban solo una
CPU en un chip. A medida que la ingeniería de microprocesadores
evolucionó, los fabricantes descubrieron que para acelerar los procesos, se
podía combinar más de un procesador en una sola unidad. Muchos
procesadores modernos implican un diseño de múltiples núcleos, como un
diseño de cuatro núcleos promovido por compañías como Intel, donde cuatro
procesadores separados ofrecen velocidades extremadamente altas para la
ejecución y la lógica del programa.
El procesamiento distribuido también se puede usar como sinónimo
aproximado de procesamiento paralelo, en el que los programas se ejecutan
más rápidamente con múltiples procesadores. Con la estrategia de incluir más
de un procesador en un chip de microprocesador, los usuarios de hardware
también pueden conectar varias computadoras para implementar el
procesamiento paralelo con aplicaciones conocidas como software de
procesamiento distribuido.
Lenguaje Maquina:
El lenguaje máquina es el único lenguaje que entiende directamente el
ordenador.
Su estructura está completamente adaptada a los circuitos de la máquina y
muy alejada de la forma de expresión y análisis de los problemas propios de
los humanos. La programación en este lenguaje es complicada, de manera
que se requiere un profundo conocimiento de la arquitectura física del
ordenador.
Sin embargo, el código máquina hace posible que el programador utilice la
totalidad de los recursos que ofrece el ordenador, con lo que se
obtienen programas muy eficientes en tiempo de ejecución y en ocupación
de memoria, dado que aprovechan al máximo los recursos existentes.
El lenguaje ensamblador y casi todos los lenguajes simbólicos de alto nivel
resuelven estas limitaciones.
Lenguaje Ensamblador:
El lenguaje ensamblador constituye el primer intento de sustitución del
16
lenguaje por uno más cercano al utilizado por los humanos.
No obstante, el lenguaje ensamblador presenta la mayoría de
los inconvenientes que tiene el lenguaje máquina: un repertorio muy reducido
de instrucciones, el rígido formato de las instrucciones, la baja portabilidad y
la fuerte dependencia del hardware.
Este tipo de lenguajes hacen corresponder a cada instrucción en ensamblador
una instrucción en código máquina. Esta traducción la lleva a cabo un
programa traductor denominado ensamblador.
Dado que el lenguaje ensamblador está fuertemente condicionado por la
arquitectura del ordenador que soporta, los programadores no suelen escribir
programas de tamaño considerable en ensamblador, sino que utilizan este
lenguaje para afinar partes importantes de programas escritos en lenguajes de
más alto nivel.
El lenguaje ensamblador sigue siendo importante, ya que ofrece al
programador el control total de la máquina y como resultado genera
un código compacto, rápido y eficiente.
17