1. ISO (Mhc)
TEMA 1
INTRODUCCIÓN: SISTEMAS INFORMÁTICOS
ÍNDICE
1 INTRODUCCIÓN A LOS SISTEMAS INFORMÁTICOS ............................... 4
1.1 DEFINICIÓN DE ORDENADOR .............................................................................................. 4
1.2 DEFINICIÓN DE SISTEMA INFORMÁTICO ........................................................................ 4
2 INTRODUCCIÓN AL HW DE LOS ORDENADORES.................................... 4
3 BUSES ..................................................................................................................... 6
Ancho del bus............................................................................................................................................................... 6
3.1.1 TIPOS DE BUSES ................................................................................................................ 6
3.1.1.1 Según el tipo de información que transporten ................................................................................ 6
3.1.1.1.1 Bus de datos .......................................................................................................................................... 6
3.1.1.1.2 Bus de direcciones ................................................................................................................................ 6
3.1.1.1.3 Bus de control ....................................................................................................................................... 6
3.1.1.2 Según su situación física ................................................................................................................ 6
3.1.1.2.1 Buses internos ....................................................................................................................................... 6
3.1.1.2.2 Buses externos ...................................................................................................................................... 6
4 UNIDAD CENTRAL DE PROCESO (UCP) ....................................................... 6
4.1 REGISTROS ................................................................................................................................ 7
4.1.1 ESTRUCTURA DE UN REGISTRO BÁSICO....................................................................... 7
4.1.2 CARACTERÍSTICAS DE LOS REGISTROS......................................................................... 8
4.1.3 MODOS DE FUNCIONAMIENTO DE LOS REGISTROS .................................................. 8
4.1.3.1 Escritura y lectura en paralelo ........................................................................................................ 8
4.1.3.2 Escritura y lectura en serie.............................................................................................................. 8
4.1.4 OPERACIONES BÁSICAS DE LOS REGISTROS ............................................................... 8
4.2 LA UNIDAD DE CONTROL (UC) ............................................................................................. 9
4.2.1 CICLO DE LA UC ................................................................................................................ 9
4.2.2 DISEÑO DE LA UC. JUEGO DE INSTRUCCIONES ......................................................... 9
4.2.3 COMPONENTES DE LA UNIDAD DE CONTROL ............................................................ 9
4.3 LA UNIDAD ARITMÉTICO-LÓGICA (ALU) ....................................................................... 10
4.3.1 COMPONENTES DE LA UAL ........................................................................................... 10
4.3.1.1 Los circuitos lógicos ..................................................................................................................... 10
4.3.1.2 Registros de entrada ..................................................................................................................... 11
4.3.1.3 Registro acumulador..................................................................................................................... 11
4.3.1.4 El registro de estado ..................................................................................................................... 11
5 MEMORIA ........................................................................................................... 11
5.1 OPERACIONES EN LAS MEMORIAS .................................................................................. 12
5.2 COMPONENTES DE LAS MEMORIAS ................................................................................ 12
5.3 CARACTERÍSTICAS DE LAS MEMORIAS ......................................................................... 12
5.3.1 LONGITUD DE PALABRA ................................................................................................ 12
5.3.2 TAMAÑO Ó CAPACIDAD ................................................................................................. 12
5.3.3 TIEMPO DE ACCESO ....................................................................................................... 12
5.3.4 VELOCIDAD DE TRANSFERENCIA DE DATOS ............................................................. 12
5.3.5 CICLO DE MEMORIA ....................................................................................................... 12
5.4 CLASIFICACIÓN DE LAS MEMORIAS ............................................................................... 12
5.4.1 SEGÚN LA POSIBILIDAD DE MODIFICARLAS ............................................................. 12
5.4.1.1 Memorias de solo lectura (rom) .................................................................................................... 13
Tema 1: Introducción: Sistemas Informáticos Página 1 de 39
2. ISO (Mhc)
5.4.1.2 Memorias de lectura-escritura (rwm) ........................................................................................... 13
5.4.2 SEGÚN EL TIEMPO QUE LOS DATOS PERMANECEN GRABADOS ........................... 13
5.4.2.1 De lectura destructiva ................................................................................................................... 13
5.4.2.2 Con refresco ................................................................................................................................. 13
5.4.2.3 Memorias volátiles ....................................................................................................................... 13
5.4.2.4 Memorias no volátiles (permanentes) ........................................................................................... 13
5.4.3 EN FUNCIÓN DE LOS TRASDUCTORES ........................................................................ 13
5.4.3.1 Memorias estáticas ....................................................................................................................... 13
5.4.3.2 Memorias dinámicas ..................................................................................................................... 13
5.4.4 SEGÚN SU MECANISMO DE DIRECCIONAMIENTO .................................................... 13
5.4.4.1 Direccionamiento cableado .......................................................................................................... 13
5.4.4.2 Direccionamiento no cableado ..................................................................................................... 13
5.4.4.3 Memorias asociativas ................................................................................................................... 14
5.4.5 SEGÚN SU FORMA DE ACCESO..................................................................................... 14
5.4.5.1 Memorias de acceso directo (ram) ................................................................................................ 14
5.4.5.2 Memorias de acceso secuencial .................................................................................................... 14
5.5 JERARQUÍA DE MEMORIA .................................................................................................. 14
5.6 MEMORIA INTERNA Ó PRINCIPAL ................................................................................... 15
5.6.1 OPERACIONES EN LA MEMORIA PRINCIPAL .............................................................. 15
5.6.2 CARACTERÍSTICAS DE LA MEMORIA PRINCIPAL ....................................................... 15
5.6.3 DISEÑO Y COMPONENTES DE LA MP........................................................................... 15
5.6.4 FUNCIONAMIENTO DE LA MEMORIA .......................................................................... 16
5.6.4.1 Operación de lectura ..................................................................................................................... 16
5.6.4.2 Operación de escritura .................................................................................................................. 16
5.6.5 DIRECCIONAMIENTO...................................................................................................... 16
5.6.5.1 Espacio direccionable (mapa de memoria) ................................................................................... 16
5.6.5.2 Necesidad de distintos modos de direccionamiento ..................................................................... 17
5.7 MEMORIA CACHÉ .................................................................................................................. 17
5.7.1 FUNCIONAMIENTO ......................................................................................................... 17
5.7.2 TIPOS DE CACHÉ SEGÚN SU UBICACIÓN FÍSICA ...................................................... 17
5.7.2.1 Caché interna ................................................................................................................................ 17
5.7.2.2 Caché externa ............................................................................................................................... 17
5.7.3 TIPOS DE CACHÉ SEGÚN SU UBICACIÓN LÓGICA .................................................... 17
5.7.3.1 Caché de MP ................................................................................................................................ 17
5.7.3.2 Caché de disco .............................................................................................................................. 17
5.7.4 TIPOS DE CACHÉ SEGÚN EL TIPO DE INFORMACIÓN QUE ALMACENA ............... 17
5.7.4.1 Caché de instrucciones ................................................................................................................. 17
5.7.4.2 Caché de datos .............................................................................................................................. 17
5.7.5 TIPOS DE CACHÉ SEGÚN LAS OPERACIONES QUE PERMITE REALIZAR............... 18
5.7.5.1 Caché de lectura ........................................................................................................................... 18
5.7.5.2 Caché de escritura ........................................................................................................................ 18
6 COMUNICACIÓN CON EL EXTERIOR (PERIFÉRICOS DE E/S Y
ALMACENAMIENTO)............................................................................................... 18
6.1 ESTRUCTURA FÍSICA DE LA E/S......................................................................................... 18
6.1.1 CONTROLADOR................................................................................................................ 19
6.1.2 PERIFÉRICO ..................................................................................................................... 19
6.1.3 INTERFACE ....................................................................................................................... 19
6.1.3.1 Tipos de interfaces según su forma de comunicación con el periférico ........................................ 19
6.1.3.1.1 Interfaces paralelo ............................................................................................................................... 19
6.1.3.1.2 Interfaces serie .................................................................................................................................... 19
6.1.3.2 Tipos de interfaces según su forma de efectuar la sincronización ................................................ 20
6.1.3.2.1 Interfaces síncronas............................................................................................................................. 20
6.1.3.2.2 Interfaces asíncronas ........................................................................................................................... 20
6.2 PROCEDIMIENTOS SW PARA REALIZAR LA E/S ........................................................... 20
6.2.1 E/S GOBERNADA POR PROGRAMA ............................................................................... 20
6.2.2 E/S GOBERNADA POR INTERRUPCIONES .................................................................... 20
6.2.3 E/S POR ACCESO DIRECTO A MEMORIA (DMA) ......................................................... 20
6.3 CARACTERÍSTICAS DE LOS PERIFÉRICOS DE E/S ....................................................... 21
6.4 CARACTERÍSTICAS DE LOS PERIFÉRICOS DE ALMACENAMIENTO ..................... 21
7 INTRODUCCIÓN AL SOFTWARE ................................................................. 23
8 CODIFICACIÓN DE LA INFORMACIÓN ..................................................... 24
Tema 1: Introducción: Sistemas Informáticos Página 2 de 39
3. ISO (Mhc)
8.1 SISTEMAS DE CODIFICACIÓNDE NÚMEROS ................................................................. 24
8.1.1 DEFINICIÓN DE SISTEMA DE NUMERACIÓN .............................................................. 24
8.1.2 SISTEMA DECIMAL .......................................................................................................... 24
8.1.3 SISTEMA BINARIO ............................................................................................................ 25
El sistema binario es posicional: Numerando de derecha a izquierda los dígitos de un número, empezando
por cero, el valor decimal de la posición es 2n.............................................................................................. 25
8.1.4 SISTEMA OCTAL ............................................................................................................... 25
Sistema posicional: Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el
valor decimal de la posición es 8n. ............................................................................................................... 25
8.1.5 SISTEMA HEXADECIMAL ................................................................................................ 26
8.1.6 CONVERSIÓN ENTRE SISTEMAS .................................................................................... 26
8.1.7 OPERACIONES EN BINARIO ........................................................................................... 28
8.2 SISTEMAS DE CODIFICACIÓN ALFANUMÉRICOS........................................................ 29
9 REPRESENTACIÓN INTERNA DE LA INFORMACIÓN ........................... 30
9.1 REPRESENTACIÓN INTERNA DE DATOS ENTEROS ..................................................... 31
9.1.1 MODULO SIGNO .............................................................................................................. 31
9.1.2 COMPLEMENTO A UNO .................................................................................................. 31
9.1.3 COMPLEMENTO A DOS................................................................................................... 31
9.1.4 EXCESO Z (2N-1 ) ................................................................................................................ 32
9.2 REPRESENTACIÓN INTERNA DE DATOS REALES ........................................................ 32
9.2.1 COMA FLOTANTE ............................................................................................................ 32
10 SOFTWARE ......................................................................................................... 35
10.1.1 Software de sistema, Software básico o Sistema operativo ........................................... 36
10.1.1.1 Programas de control............................................................................................................... 37
10.1.1.2 Programas de servicio o de proceso ........................................................................................ 37
10.1.2 Programas de aplicación ............................................................................................... 37
10.2 LENGUAJES DE PROGRAMACIÓN ............................................................................................ 38
Tema 1: Introducción: Sistemas Informáticos Página 3 de 39
4. ISO (Mhc)
1 INTRODUCCIÓN A LOS SISTEMAS INFORMÁTICOS
El tratamiento de la información tiene 3 pasos fundamentales: entrada, proceso y salida.
ENTRADA datos de PROCESO resultados
SALIDA
entrada
1.1 DEFINICIÓN DE ORDENADOR
Máquina compuesta de elementos físicos de tipo electrónico, capaz de realizar una gran
variedad de trabajos a gran velocidad y con gran precisión, siempre que se le den las
instrucciones adecuadas.
ELEMENTOS Datos de entrada ELEMENTOS DE resultados ELEMENTOS
DE ENTRADA PROCESO DE SALIDA
programa
1.2 DEFINICIÓN DE SISTEMA INFORMÁTICO
Conjunto de elementos que permiten el tratamiento automatizado de la información.
Todo sistema informático puede dividirse en:
- USUARIOS. Elementos (personas u otros dispositivos) que tratan de
resolver una serie de problemas mediante el procesamiento de datos.
- HARDWARE. Parte física que representa el ordenador, es decir, a los
elementos tangibles que lo componen, tales como el monitor y el teclado, así
como los cables y chips que forman la máquina.
- SOFTWARE. Se refiere al conjunto de datos, aplicaciones y programas que
permiten operar con el ordenador, así como controlar y coordinar los
distintos elementos hardware. En definitiva, es la parte intangible que
sabemos que se encuentra en el ordenador, pero que sólo podemos acceder a
ella a través de los elementos de entrada y salida (que forman parte del
hardware) del sistema. Es el elemento lógico del ordenador.
Podemos clasificarlo en:
. Datos de usuario. Es la información objeto de procesamiento
. Programas de aplicación. Definen cómo hay que utilizar los recursos
HW para resolver los problemas de los usuarios. Pueden ser programas
comerciales, o programas creados por los propios usuarios
. Sistema Operativo. Controla el uso del HW por parte de los distintos
programas de aplicación de los diversos usuarios. Es así, una "interfaz"
entre el usuario y el HW, para facilitar el uso de este HW.
2 INTRODUCCIÓN AL HW DE LOS ORDENADORES
Según la arquitectura de Von Newman, en un ordenador distinguimos varios tipos de
componentes o unidades físicas, que identificamos de la siguiente manera:
Tema 1: Introducción: Sistemas Informáticos Página 4 de 39
5. ISO (Mhc)
- Unidad central de proceso
- Sistema de memoria
- Unidades de entrada/salida y almacenamiento
- Buses
- UNIDAD CENTRAL DE PROCESO (PROCESADOR O
MICROPROCESADOR)
Es la encargada del procesamiento de la información. Podemos decir que es el elemento
fundamental del ordenador. En ella incluimos:
. el tratamiento de la información
. supervisión de todo el sistema informático
. realización de los cálculos necesarios
. organización y gestión de las distintas actividades
- SISTEMA DE MEMORIA
Es la unidad del ordenador en donde se almacenan los datos y las instrucciones de los
programas en ejecución, que recupera y graba en ella la UCP a través de las dos
operaciones básicas definidas sobre ella: lectura y escritura.
- UNIDADES DE ENTRADA/SALIDA Y ALMACENAMIENTO
(PERIFÉRICOS)
Son los componentes físicos que permiten la entrada y salida de la información. Están
controlados y dirigidos por la UCP. Entre sus funciones también se encuentra el
permitir rápido acceso a la información y almacenamiento de la misma.
- BUSES
Constituye el medio físico a través del cual se comunican entre sí los distintos
componentes que forman el ordenador.
BUS DEL SISTEMA
Periféricos de Periféricos de Memoria Periféricos
almacenamiento entrada principal Procesador (UCP) de salida
(Mem. auxiliar)
Unidad de control
+
Unidad aritmético-
lógica
Figura 1: Esquema básico del Hardware, según Von Newman
Tema 1: Introducción: Sistemas Informáticos Página 5 de 39
6. ISO (Mhc)
3 BUSES
Es una línea de interconexión portadora de información, constituida por varios hilos
conductores (en sentido físico) o varios canales o líneas (en sentido de la lógica de
transmisión), por cada una de las cuales se transporta un bit de información.
Los distintos subsistemas del ordenador intercambian inf gracias a los buses.
Ancho del bus
Es el nº de líneas que forman un bus, y que puede transmitir simultáneamente en
paralelo (un bus de 16 líneas, podrá enviar 16 bits al mismo tiempo)
3.1.1 TIPOS DE BUSES
3.1.1.1 Según el tipo de información que transporten
3.1.1.1.1 Bus de datos
Por él circulan los datos y las instrucciones. Sirve para transmitir información entre el
microprocesador, la memoria y los periféricos.
El flujo es de doble sentido
El ancho de este bus es una medida de la potencia del microprocesador.
3.1.1.1.2 Bus de direcciones
Por él circula el nº binaria de la dirección de memoria a la cual la UCP quiere acceder.
Tiene sentido de flujo unidireccional desde la UCP hacia la memoria
El ancho de este bus determina la cantidad de espacio direccionable directo: 2n, siendo
n el número de líneas del bus de direcciones.
3.1.1.1.3 Bus de control
Por él circulan las señales que dirigen el correcto funcionamiento del sistema (señales de
reloj, alimentación, interrupciones...)
Es de doble sentido de flujo.
3.1.1.2 Según su situación física
3.1.1.2.1 Buses internos
Mueve datos entre los componentes internos del microprocesador
3.1.1.2.2 Buses externos
Se utiliza para comunicar la UCP y otras partes, como periféricos y memoria.
4 UNIDAD CENTRAL DE PROCESO (UCP)
Es la encargada de controlar y sincronizar todas las tareas del sistema informático, así
como de realizar todos los cálculos que se requieran. Es también conocida como CPU,
microprocesador o procesador.
Tema 1: Introducción: Sistemas Informáticos Página 6 de 39
7. ISO (Mhc)
Consta de tres partes fundamentales, unidas internamente y con el exterior mediante
buses:
- La unidad de control (UC)
- La unidad aritmético-lógica (UAL)
- Registros
Procesador (UCP)
Unidad de Unidad
control aritmético-lógica
Registros
Bus externo de direcciones
Bus externo de datos
Bus externo de control
Figura 2: Unidad Central de Proceso
4.1 REGISTROS
Los procesadores no suelen operar casi nunca directamente sobre la MP (sería muy lento).
Resulta mucho más conveniente que la inf sea traspasada temporalmente a unas
pequeñas memorias auxiliares fijas y ultra rápidas (registros) situadas dentro del propio
procesador.
Así, un registro es una zona de almacenamiento temporal de información, formado por
un cjto de biestables colocados de tal forma que pueden almacenar la información en
formato binario.
La inf de un registro debe ser accesible desde el exterior, y podrá ser modificable con un
cjto de operaciones sencillas.
4.1.1 ESTRUCTURA DE UN REGISTRO BÁSICO
Todo registro está formado por:
- Un conjunto de N biestables. Son el espacio físico de almacenamiento. La
longitud del registro viene dada por el número de biestables que lo forman.
Tema 1: Introducción: Sistemas Informáticos Página 7 de 39
8. ISO (Mhc)
- Líneas de entrada. Permiten introducir inf en el registro
- Líneas de salida. Permiten extraer la inf del registro
- Líneas de órdenes. Su activación permitirá realizar operaciones de lectura y
escritura sobre el registro
Líneas de salida de datos
BN-1 BN-2 B1 B0 Líneas de
... órdenes
Líneas de entrada de datos
4.1.2 CARACTERÍSTICAS DE LOS REGISTROS
- Pequeña dimensión. 16 ó 32 bits (normalmente coincide con el tamaño del bus de datos)
- Acceso directo. La UC puede acceder directamente a la información que contienen.
- Uso de buses. La transferencia de inf entre registros se realiza a través de los buses
- Nº de registros es la característica fundamental de la arquitectura de un
microprocesador. Cuantos más registros existan, habrá menor necesidad de
referencias a memoria principal (ahorro de tiempo).
- Equilibrio velocidad – coste. El conjunto de registros constituye una memoria
interna de coste elevado.
- Retardo Los registros tienen un retardo en la lectura y en la escritura.
4.1.3 MODOS DE FUNCIONAMIENTO DE LOS REGISTROS
4.1.3.1 Escritura y lectura en paralelo
Todos los biestables del registro se actualizan o se transfieren de forma simultánea.
4.1.3.2 Escritura y lectura en serie
Los biestables del registro se actualizan o se transfieren consecutivamente. Para ello se
emplean los registros de desplazamiento.
4.1.4 OPERACIONES BÁSICAS DE LOS REGISTROS
Veremos las siguientes:
- Lectura
- Escritura
- Incremento y decremento
- Complementación
- Puesta a 0 y puesta a 1
- Transferencia
Tema 1: Introducción: Sistemas Informáticos Página 8 de 39
9. ISO (Mhc)
4.2 LA UNIDAD DE CONTROL (UC)
La UC dirige todas las actividades del ordenador.
Mediante el envío de impulsos eléctricos (señales de control):
- secuencia (poner en orden) la ejecución de instrucciones
- sincroniza (marcar el tiempo) el funcionamiento de los componentes (mediante el
reloj)
4.2.1 CICLO DE LA UC
La UC se encarga de que se ejecute el programa almacenado en MC. Por cada
instrucción del programa que está siendo ejecutada por el sistema, la UC recorre una
serie de etapas que se dividen en dos fases:
• Fase de búsqueda e interpretación: El objetivo de esta fase obtener el
código de la siguiente instrucción a ejecutar y que se encuentra almacenada en
la MP. Los pasos a grandes rasgos son:
1) Recobrar la instrucción de la memoria del ordenador
(almacenándolo en un registro)
2) Interpretar el código de la instrucción.
3) Se apunta a la siguiente instrucción a ejecutar.
• Fase de ejecución propiamente dicha: La instrucción interpretada es
ejecutada enviando a cada componente las señales de control generadas. Los
pasos son:
1) Se obtienen los datos implicados en la instrucción si es necesario
2) Se ejecuta la instrucción
4.2.2 DISEÑO DE LA UC. JUEGO DE INSTRUCCIONES
Cada UC se diseña para ejecutar el juego de instrucciones de esa arquitectura concreta.
Es el repertorio de instrucciones propio
Este juego depende de la circuitería interna con la cual ha sido diseñado. La
programación íntima y verdadera del procesador debe hacerse usando ese juego de
instrucciones de la máquina concreta con la que estemos trabajando
4.2.3 COMPONENTES DE LA UNIDAD DE CONTROL
Son los siguientes:
- Reloj
- Registros de uso general o programables
- Registros de uso específico
- Registro de instrucción (ri)
- Registro contador de programa (cp)
- Registro de direcciones de memoria (rdim)
Tema 1: Introducción: Sistemas Informáticos Página 9 de 39
10. ISO (Mhc)
- Registro de datos de memoria (rdam)
- Puntero de pila (sp)
- Decodificador de instrucciones
- Controlador (secuenciador)
4.3 LA UNIDAD ARITMÉTICO-LÓGICA (ALU)
Realiza las operaciones que vienen ordenadas desde la unidad de control.
Se encarga de hacer todas las operaciones aritméticas (sumas, restas,...), lógicas (AND,
OR,...), y de otro tipo (rotaciones, desplazamientos,...).
Maneja tanto datos intermedios como finales, pero nunca maneja códigos de operación.
E_RACUM
Registro acumulador
L_RACUM
SUM
RES
MUL
A la UC Registro de estado AND
CIRCUITO
COMBINACIONAL
...
INC
E_RE2_I
E_RE1 Reg Entrada 1 Reg Entrada 2
E_RE2_E
BUS DE DATOS EXTERNO
4.3.1 COMPONENTES DE LA UAL
Dentro de la UAL distinguimos diferentes partes:
- Los circuitos lógicos
- Registros de entrada
- Registro acumulador
- El registro de estado
4.3.1.1 Los circuitos lógicos
Es uno o varios circuitos combinacionales encargados de realizar las operaciones con
los datos.
Tiene las siguientes entradas:
Tema 1: Introducción: Sistemas Informáticos Página 10 de 39
11. ISO (Mhc)
- Registros de entrada. Su contenido está siempre presente en las entradas del
circuito combinacional.
- Entradas de órdenes. Le indican el tipo de operación que hay que realizar
con los datos de entrada. Sólo una de esas órdenes estará activa en cada
instante.
Las órdenes más típicas son: SUM, RES, MUL, INC, DEC, NOT, AND,
OR, ORX, ...
4.3.1.2 Registros de entrada
Se encargan de almacenar los operandos de entrada al circuito combinacional
4.3.1.3 Registro acumulador
Sirve como registro de almacenamiento de los resultados de las operaciones de la UAL
4.3.1.4 El registro de estado
Contiene diferente indicadores (flags) para informar al controlador de la UC acerca del
resultado que se obtuvo al ejecutar la última instrucción.
Está formado por un cjto de biestables (flags), accesibles por separado. Cada biestable
señala una determinada condición sobre el último valor escrito en el acumulador.
La estructura del registro de estado depende de cada arquitectura. Los indicadores más
frecuentes son:
- Z: Biestable indicador de 0. Se activa (se pone a 1) cuando el valor escrito en
el acumulador es 0
- N: Biestable indicador de negativo
- C: Biestable indicador de acarreo
- O: Biestable indicador de desbordamiento (overflow)
- P: Biestable indicador de paridad. Se activa cuando el nº de 1’s almacenados
en el acumulador es par
- CP: Biestable de acarreo parcial. Se activa cuando la operación realizada
produjo acarreo entre el 4º y el 5º bit (fundamental en operaciones en BCD)
5 MEMORIA
Un elemento o celda de memoria es cualquier dispositivo capaz de almacenar un bit de
inf.
Es decir, estará en uno de 2 estados posibles: estado 0 y estado 1.
Una memoria es un componente HW formado por un cjto organizado de celdas de
memoria, formando palabras o posiciones de memoria (será su unidad de acceso).
A cada palabra le corresponde una dirección única (posición relativa respecto del
principio), y es a través de esa dirección como se accede a cada palabra de la memoria.
Tema 1: Introducción: Sistemas Informáticos Página 11 de 39
12. ISO (Mhc)
5.1 OPERACIONES EN LAS MEMORIAS
Lectura.- Determinada información que está en una dirección de memoria se pone a
disposición de la UC.
Escritura.- Se graba información en una posición determinada de la memoria. Esta
operación es destructiva.
5.2 COMPONENTES DE LAS MEMORIAS
Una memoria se compone de los siguientes elementos básicos:
1. El medio o soporte donde se almacenan los datos (ceros o unos). Ha de cumplir
tres
1. condiciones:
- Ha de presentar dos estados estables, caracterizados por una magnitud física.
- Se ha de poder pasar de un estado a otro aplicando una señal externa.
- Se ha de poder detectar el estado existente en todo momento.
2. Un trasductor que coloque en el soporte el dato deseado o que detecte su valor
actual.
3. Un mecanismo de direccionamiento, que seleccione el punto de memoria
deseado.
5.3 CARACTERÍSTICAS DE LAS MEMORIAS
5.3.1 LONGITUD DE PALABRA
Tamaño en bits de cada palabra o posición de memoria. (ej. 8, 16, 32, 64,...)
5.3.2 TAMAÑO Ó CAPACIDAD
Es la cantidad de información que puede almacenar, medida en unidades de bits, bytes o
palabras, junto con los prefijos K, M, G, T (ej. 256 Kb)
5.3.3 TIEMPO DE ACCESO
Tiempo transcurrido desde que se solicita una lectura hasta que la inf está disponible.
5.3.4 VELOCIDAD DE TRANSFERENCIA DE DATOS
Se puede definir la velocidad como la cantidad de inf leída o escrita por unidad de
tiempo. Se mide en bps ó en HZ (MHz)
5.3.5 CICLO DE MEMORIA
Es el tiempo requerido en la ejecución de una operación de memoria y la solicitud
inmediata a la memoria de otra operación idéntica.
5.4 CLASIFICACIÓN DE LAS MEMORIAS
5.4.1 SEGÚN LA POSIBILIDAD DE MODIFICARLAS
Tema 1: Introducción: Sistemas Informáticos Página 12 de 39
13. ISO (Mhc)
5.4.1.1 Memorias de solo lectura (rom)
El contenido de la memoria no puede ser modificado
5.4.1.2 Memorias de lectura-escritura (rwm)
El contenido de la memoria puede modificarse durante su funcionamiento
5.4.2 SEGÚN EL TIEMPO QUE LOS DATOS PERMANECEN GRABADOS
5.4.2.1 De lectura destructiva
La lectura implica el borrado de la información, por lo que cada vez que se realiza una
lectura debe volverse a grabar el dato.
5.4.2.2 Con refresco
Aunque la memoria este alimentada, los datos se van degradando llegando un momento
en que no se pueden leer correctamente. Para que sean útiles, deben refrescarse
periódicamente.
5.4.2.3 Memorias volátiles
El contenido de la memoria desaparece cuando se desconecta
5.4.2.4 Memorias no volátiles (permanentes)
Su contenido se mantiene aunque se desconecte de la corriente
Para almacenar la información básica del equipo se necesita una memoria no volátil
(ROM o alguna de sus variantes): PROM, EPROM, EEPROM
5.4.3 EN FUNCIÓN DE LOS TRASDUCTORES
5.4.3.1 Memorias estáticas
El trasductor esta físicamente unido al soporte, existiendo un cableado que emite
acceder al dato deseado. Es el caso de las memorias de semiconductores.
El tiempo de acceso es independiente de la posición buscada
5.4.3.2 Memorias dinámicas
El punto de memoria debe posicionarse frente al trasductor para poder ser leído o
grabado.
5.4.4 SEGÚN SU MECANISMO DE DIRECCIONAMIENTO
5.4.4.1 Direccionamiento cableado
Se da en memorias estáticas
En una memoria estática el mecanismo de direccionamiento es inherente a su propia
construcción. El cableado permite activar el punto de memoria deseado.
Este tipo de acceso se llama acceso por palabra y el tiempo de acceso es fijo.
5.4.4.2 Direccionamiento no cableado
Se da en memorias dinámicas
Tema 1: Introducción: Sistemas Informáticos Página 13 de 39
14. ISO (Mhc)
La técnica más empleada consiste en empaquetar la información en bloques. Por lo
tanto, estas memorias se utilizan para acceder a bloques completos y no a posiciones
individualizadas.
Es el tipo de acceso por bloques.
5.4.4.3 Memorias asociativas
La escritura se hace mediante direccionamiento cableado, pero la lectura es por
contenido.
5.4.5 SEGÚN SU FORMA DE ACCESO
5.4.5.1 Memorias de acceso directo (ram)
Se puede acceder en cualquier momento a cualquier palabra de la memoria.
Es decir, el tiempo de acceso a cualquier posición de memoria es independiente de la
dirección de esa posición de memoria.
5.4.5.2 Memorias de acceso secuencial
Las diferentes posiciones de memoria están ordenadas por su dirección.
En una memoria de acceso secuencial es necesario recorrer todas las posiciones
intermedias entre la actual y la que se desea acceder.
5.5 JERARQUÍA DE MEMORIA
Se pueden catalogar las memorias en función de los siguientes factores:
- Coste (minimizar)
- Tiempo de acceso a la información. (minimizar)
- Capacidad. (maximizar)
La memoria está estructurada en diferentes niveles, siguiendo un criterio jerárquico en
función de la probabilidad de uso.
Dado que la utilización de la inf va variando según las necesidades de los usuarios debe
producirse un continuo movimiento ascendente y descendente de la información, de tal
forma que en los niveles superiores se encuentre disponibles aquellos datos que vayan a
ser usados por la CPU.
Muy rápidos
REGISTROS MÁQUINA Poca capacidad
+ - Muy caros
Rapidez
Rápidos
MEMORIA CACHÉ No mucha capacidad
Coste Coste por posición elevado
( por unidad de
almacenamiento) Capacidad
MEMORIA PRINCIPAL
MEMORIA SECUNDARIA DAAD: Soporta lo que no
entra en Memoria
- + Principal
Tema 1: Introducción: Sistemas Informáticos Página 14 de 39
15. ISO (Mhc)
5.6 MEMORIA INTERNA Ó PRINCIPAL
Es el elemento encargado de almacenar la información necesaria durante la fase de
proceso.
Así, la MP almacena:
- Las instrucciones que constituyen el programa a ejecutar (carga del programa).
- Los datos (iniciales, intermedios y resultados) que necesita el programa durante
la ejecución
La MP es un componente pasivo, es decir, se deja hacer: almacenar información y poder
recuperarla.
La CPU trae y lleva datos directamente desde y hacia la memoria, a través del bus de
datos y utilizando el bus de direcciones, para indicar a qué celda se quiere acceder.
Sólo los datos almacenados en la memoria son procesables por la CPU.
5.6.1 OPERACIONES EN LA MEMORIA PRINCIPAL
Lectura.- Determinada información que está en una dirección de memoria se pone a
disposición de la UC. La lectura es no destructiva.
Escritura.- Se graba información en una posición determinada de la memoria. Esta
operación es destructiva.
5.6.2 CARACTERÍSTICAS DE LA MEMORIA PRINCIPAL
- Es una memoria RAM: permite acceso directo (se puede acceder aleatoriamente
a cualquier posición)
- Se puede reescribir (se permiten la lectura y escritura tantas veces como sea
necesario)
- Esta memoria es volátil (los datos almacenados se pierden al apagar el
ordenador).
5.6.3 DISEÑO Y COMPONENTES DE LA MP
Está constituida por multitud de posiciones de memoria, numeradas de forma
consecutiva (dirección de memoria), capaces de retener la información necesaria.
Las direcciones de memoria sirven para podernos dirigir a una determinada posición de
memoria directamente (memoria de acceso directo).
Bus de direcciones
n
L_MP
MEMORIA PRINCIPAL E_MP
m
Bus de datos
Tema 1: Introducción: Sistemas Informáticos Página 15 de 39
16. ISO (Mhc)
Puede haber opcionalmente:
- Registro de dirección. Contiene la dirección de memoria donde se encuentra la
información (lectura) o donde va a ser almacenada (escritura).
- Registro de datos. Es donde se encuentra la información que se ha de escribir en la
memoria (escritura) o donde se coloca la información leída (lectura).
5.6.4 FUNCIONAMIENTO DE LA MEMORIA
Las operaciones de lectura y escritura no se pueden encadenar a cualquier ritmo. Hay
que dejar transcurrir un cierto tiempo entre la realización de una operación en memoria
y la realización de la operación siguiente. Ese tiempo se conoce como ciclo de memoria.
5.6.4.1 Operación de lectura
Consiste en obtener el contenido de alguna de las celdas de memoria. Los pasos son:
- Colocar la dirección de la celda que se desea leer en las líneas de direcciones
(bus de direcciones)
- Activar la línea L_MP
- Al cabo de un tiempo independiente de la dirección (tiempo de acceso a
memoria), se presentará el contenido de la celda seleccionada en las líneas de
datos y en el bus de datos (podrá ser recogido por quien lo haya solicitado)
5.6.4.2 Operación de escritura
Consiste en sustituir el contenido de una celda por otro. Los pasos serían:
- Colocar en las líneas de direcciones la dirección de la posición de MP donde se
desea escribir
- Colocar en las líneas de datos el valor binario del dato que se desea escribir
- Activar la línea E_MP
5.6.5 DIRECCIONAMIENTO
Para acceder a la inf de la MP, se necesita saber en qué posición se encuentra. Es
necesario poder direccionar todas y cada una de las posiciones que constituyen la
memoria.
Este direccionamiento se hace asignando un nº binario a cada posición de memoria. De
esta forma, con n bits se pueden direccionar hasta 2n posiciones de memoria.
5.6.5.1 Espacio direccionable (mapa de memoria)
En cualquier MP existe un espacio direccionable. Es el intervalo de direcciones que
contiene.
Sólo depende de su capacidad.
Tema 1: Introducción: Sistemas Informáticos Página 16 de 39
17. ISO (Mhc)
La cantidad de memoria máxima que se puede direccionar directamente depende del bus
de direcciones: será de 2n bytes, siendo n el número de líneas del bus de direcciones
(para un bus de direcciones de 20 líneas, tendríamos 220 bytes = 1.048.576 bytes = 1.024 Kb = 1 Mb)
5.6.5.2 Necesidad de distintos modos de direccionamiento
Conforme crece el nº de palabras de memoria, se hace cada vez más inviable direccionar
directamente todas las posiciones de memoria.
Por eso se hace imprescindible utilizar distintas técnicas o modos de direccionamiento
que permitan acceder a un gran nº de palabras de memoria, con un nº relativamente
pequeño de bits.
Este ahorro de bits de dirección se consigue a costa de alargar el tiempo de ejecución de
instrucciones.
5.7 MEMORIA CACHÉ
Es una memoria auxiliar de acceso aleatorio de baja capacidad y muy rápida, que se
añade entre dos sistemas de memoria para mejorar el rendimiento del ordenador.
5.7.1 FUNCIONAMIENTO
En la memoria caché, el sistema guarda la información que más frecuentemente prevé
que va a ser usada
Cuando la UCP intenta realizar una operación de lectura sobre un disp de memoria (MP
ó externo), antes comprueba si está inf está ya en la caché. En caso de que así fuera,
toma el dato de la caché, ahorrando accesos a la memoria más lenta (ahorro de tiempo).
5.7.2 TIPOS DE CACHÉ SEGÚN SU UBICACIÓN FÍSICA
5.7.2.1 Caché interna
Integrada en el propio procesador
5.7.2.2 Caché externa
Está fuera del procesador. Esta última es ampliable por el usuario.
5.7.3 TIPOS DE CACHÉ SEGÚN SU UBICACIÓN LÓGICA
5.7.3.1 Caché de MP
Colocada entre la UCP (registros) y la MP
5.7.3.2 Caché de disco
Colocada entre MP y unidades de almacenamiento externo (discos)
5.7.4 TIPOS DE CACHÉ SEGÚN EL TIPO DE INFORMACIÓN QUE
ALMACENA
5.7.4.1 Caché de instrucciones
5.7.4.2 Caché de datos
Tema 1: Introducción: Sistemas Informáticos Página 17 de 39
18. ISO (Mhc)
5.7.5 TIPOS DE CACHÉ SEGÚN LAS OPERACIONES QUE PERMITE
REALIZAR
5.7.5.1 Caché de lectura
Se sitúan en la caché los datos más utilizados. Cuando se necesiten, primero se buscarán
en la caché. Reduce el nº de operaciones de e/s en memorias más lentas.
5.7.5.2 Caché de escritura
Las operaciones de escritura no se hacen sobre MP, sino que se escriben en la cache.
Posteriormente esta inf se transfiere de forma asíncrona a MP.
El objetivo de esta caché es mejorar el rendimiento liberando lo antes posible las
operaciones de escritura
6 COMUNICACIÓN CON EL EXTERIOR
(PERIFÉRICOS DE E/S Y ALMACENAMIENTO)
Los periféricos de e/s comunican al ordenador con el mundo exterior.
Los periféricos de almacenamiento permiten guardar grandes cantidades de inf de forma
permanente.
La transferencia de inf desde y hacia los periféricos se hace por medio de operaciones
de e/s. Esas transferencias son controladas por la CPU.
En las operaciones de e/s se necesita:
- Saber a qué dispositivo de e/s se desea acceder. Cada periférico se identifica
con una dirección.
- Determinar el estado actual de dicho disp de e/s
- Indicar la función de e/s que se desea realizar
6.1 ESTRUCTURA FÍSICA DE LA E/S
De forma general, su estructura es la siguiente:
PROCESADOR
INTERFACE
CONTROLADOR
PERIFÉRICO
Tema 1: Introducción: Sistemas Informáticos Página 18 de 39
19. ISO (Mhc)
6.1.1 CONTROLADOR
Gestiona directamente el periférico (p.ej. genera las órdenes de movimiento de la cabeza de l/e).
Depende del tipo de disp de e/s concreto
Los controladores se añaden al sistema mediante las ranuras de expansión, y vienen en
forma de “tarjetas”.
6.1.2 PERIFÉRICO
Es el disp. de e/s propiamente dicho
6.1.3 INTERFACE
Se encarga de gestionar el intercambio de inf. entre el periférico y la UCP. No es
dependiente del dispositivo de e/s
Sus funciones son:
- Reconocer la dirección de dispositivo de e/s
- Almacenar temporalmente los datos a transferir
- Generar las señales de control del disp. de e/s
sincronización
Bus
de control
e/s
direcciones
Datos
Circuito
detector de
direcciones
INTERFACE
Registro de Registro de
Circuito controlador
estado transferencia
del interface
CONTROLADOR + PERIFÉRICO
6.1.3.1 Tipos de interfaces según su forma de comunicación con el
periférico
6.1.3.1.1 Interfaces paralelo
Los datos se reciben o se envían por bytes o grupos de bytes
6.1.3.1.2 Interfaces serie
Los datos se reciben o se envían como una sucesión de bits, uno cada vez.
Una interfaz serie debe incluir la circuitería para la conversión de datos paralelo a datos
serie, y viceversa.
Tema 1: Introducción: Sistemas Informáticos Página 19 de 39
20. ISO (Mhc)
6.1.3.2 Tipos de interfaces según su forma de efectuar la sincronización
6.1.3.2.1 Interfaces síncronas
Existe una señal de reloj para sincronizar las transferencias
6.1.3.2.2 Interfaces asíncronas
No existe reloj para regular las transferencias.
6.2 PROCEDIMIENTOS SW PARA REALIZAR LA E/S
6.2.1 E/S GOBERNADA POR PROGRAMA
Cuando un programa necesita una operación de e/s, el programa pregunta por su estado.
- Si se puede realizar la transferencia, se realiza
- Si no se puede realizar la transferencia, se espera en un bucle hasta que se
pueda
VENTAJAS
Muy sencillo
INCONVENIENTES
Poco eficiente (la UCP no hace trabajo útil)
6.2.2 E/S GOBERNADA POR INTERRUPCIONES
La UCP puede seguir trabajando mientras el periférico se prepara para recibir o aceptar
un dato.
Cuando se desea una transferencia de un bloque de datos, se transfiere el primer carácter
y la UCP se desentiende (continúa ejecutando instrucciones de otros programas).
Cuando el periférico le avisa de que ya ha acabado la transferencia, activa una
interrupción, y la UCP ejecuta una rutina de tratamiento de la interrupción, para luego
continuar con lo que estaba haciendo, y así sucesivamente.
6.2.3 E/S POR ACCESO DIRECTO A MEMORIA (DMA)
Se libera aún más a la UCP de las tareas de e/s (ni siguiera realiza la transferencia
propiamente dicha)
Se dota a la interface de la posibilidad de acceder a MP.
Cuando hay que realizar una transferencia de un dato o bloque de datos hacia un
periférico, la UCP sólo informa a la interface de su origen en memoria y de su longitud.
A partir de ahí, la UCP se desentiende de la transferencia, y la interface se ocupa de
tomar los buses de direcciones y de datos para acceder a MP (deteniendo para ello a la
UCP, en el proceso llamado robo de ciclo), y de ir realizando las transferencias.
Una interface así modificada se llama controlador de acceso directo a memoria
(DMA).
Necesita 2 registros adicionales:
- Registro de cuenta de palabras. Para saber cuántas palabras se han
transferido
Tema 1: Introducción: Sistemas Informáticos Página 20 de 39
21. ISO (Mhc)
- Registro de dirección en curso. Almacena la dirección de MP a la que hay
que acceder para leer o escribir.
VENTAJAS
Es el método más eficiente
INCONVENIENTES
Más complicado
6.3 CARACTERÍSTICAS DE LOS PERIFÉRICOS DE E/S
Son los elementos físicos externos al ordenador que permiten la comunicación entre la
UCP y el exterior (usuarios).
SOPORTE
Medio físico que permite almacenar datos de forma que el ordenador pueda manejarlos
o proporcionárselos a las personas de manera inteligible.
Por su naturaleza física, podemos encontrar distintos tipos de soportes (perforados,
magnéticos, ópticos...)
PERIFÉRICO
Es un dispositivo físico capaz de comunicar información entre el usuario y el ordenador,
y por tanto capaz de manejar un soporte de información. En general, todo periférico
controla un soporte.
Por el sentido de la comunicación, los periféricos se dividen en 3 grupos:
- De entrada (teclado, ratón, tableta digitalizadora, lápiz óptico, micrófono, escáner...)
- De salida (pantalla, impresora, plotter, altavoces...)
- De entrada/salida (módem, pantalla táctil...)
Atendiendo a su ubicación, otra clasificación sería la siguiente:
- Locales
- Remotos
6.4 CARACTERÍSTICAS DE LOS PERIFÉRICOS DE
ALMACENAMIENTO
Son los componentes físicos del ordenador destinados a contener grandes volúmenes de
información. Son reutilizables indefinidamente (¡!)
Las unidades de almacenamiento se caracterizan por:
- Durabilidad
- Portabilidad
- fiabilidad
- velocidad de transferencia (mbps)
- tiempo medio de acceso (milisegundos)
- tecnología: óptica y magnética
- tamaño
Ejemplos de unidades masivas de almacenamiento son:
Tema 1: Introducción: Sistemas Informáticos Página 21 de 39
22. ISO (Mhc)
- Disquete extraible
- Disco duro
- CD-ROM
- CD grabable o regrabable
- DVD-ROM
- DVD grabable
Tema 1: Introducción: Sistemas Informáticos Página 22 de 39
23. ISO (Mhc)
7 INTRODUCCIÓN AL SOFTWARE
Un ordenador trabaja, fundamentalmente con dos tipos de información: las
instrucciones y los datos. Consecuentemente su estructura y funcionamiento vendrán
definidos por las formas de representación de ambas informaciones.
Las instrucciones especifican las posibles operaciones que se pueden efectuar sobre
los datos. De esta forma, los datos de entrada se procesan, de acuerdo con las
instrucciones del programa, para obtener los datos de salida o resultados.
En un ordenador existen tres tipos de datos básicos:
- Datos de entrada que llegan a través de periféricos de entrada o desde unidades
de almacenamiento para ser procesados.
- Datos intermedios que se obtienen durante la etapa de procesamiento, pero no
representan resultados definitivos.
- Datos de salida que son los resultados de procesamiento. Se muestran gracias a
los periféricos de salida o se guardan en unidades de almacenamiento.
El ordenador debe ser capaz de representar los datos mediante los elementos
materiales de que dispone, que en general son registros y posiciones de memoria,
formados por un conjunto de biestables cada uno de ellos capaz de almacenar dos
estados posibles 0 y 1 a los que se denomina bit.
Por tanto, un ordenador no podrá trabajar con la información utilizando nuestro
sistema de representación (números, letras, caracteres especiales...), por lo que se hacen
necesarios 2 cambios en la información:
- Un cambio con los datos de entrada para traducirlos al código interno de la
máquina (binario).
- Un cambio con los resultados, que han de traducirse de código interno
(binario) a un lenguaje comprensible para el hombre. Los resultados que
deban almacenarse sin mostrar, se guardarán directamente sin traducir en un
formato cómodo para su manipulación, ya que no salen al exterior.
A estas operaciones se las denomina CODIFICACIÓN (decodificación es la
operación contraria).
Tema 1: Introducción: Sistemas Informáticos Página 23 de 39
24. ISO (Mhc)
8 CODIFICACIÓN DE LA INFORMACIÓN
Los diversos tipos de representación existentes quedan clasificados teniendo en
cuenta los siguientes factores:
- Elemento a representar (número, carácter alfabético, carácter
alfanumérico…)
- Forma de representación (coma flotante, binario puro…).
- Características físicas de representación (tolerante a fallos, con paridad…).
8.1 SISTEMAS DE CODIFICACIÓNDE NÚMEROS
8.1.1 DEFINICIÓN DE SISTEMA DE NUMERACIÓN
Se llama sistema de numeración al conjunto de símbolos utilizados para la
representación de cantidades, así como las reglas que rigen dicha representación.
Los sistemas de numeración que vamos a ver están basados en los mismos
principios:
- Son posicionales, es decir, el valor viene determinado por la posición que
ocupa cada dígito que forma el número. Por ejemplo: 84 la unidad es 4 y la
decena es 8
- Se caracterizan por tener una Base, que indica el número de símbolos de
cada sistema; esta base es, además el coeficiente que determina cual es el
valor de cada símbolo dependiendo de su posición.
- Separadores: son , y . Sirven para separar la parte entera de la fraccionaria.
8.1.2 SISTEMA DECIMAL
Es un sistema en base 10, y utiliza, por tanto, 10 símbolos distintos para
representar cualquier cantidad (0, 1, …, 9).
Es el sistema mas utilizado por el hombre y el más intuitivo (se puede contar con
los dedos).
El resto de sistemas de numeración no resultan tan intuitivos y es necesario
traducir los números expresados en un sistema al decimal. Para ello se emplea el
Teorema fundamental de la numeración: Numerando de la coma a la izquierda los
Tema 1: Introducción: Sistemas Informáticos Página 24 de 39
25. ISO (Mhc)
dígitos de un número, empezando por el cero, y de la coma a la derecha empezando por
el -1, se obtiene el valor de ese número, multiplicando cada dígito por la base elevada al
exponente que corresponde con el valor asignado, y sumando los resultados de todos los
dígitos.
Por ejemplo: 201,1=2*102 + 0*101 + 1*100 +1*10-1
8.1.3 SISTEMA BINARIO
Es el sistema de numeración que utiliza internamente el HW de los ordenadores
(debido a sus características técnicas).
Su base es 2 y se basa en la representación de cantidades utilizando los dígitos 1 y 0.
El sistema binario es posicional: Numerando de derecha a izquierda los dígitos de un
número, empezando por cero, el valor decimal de la posición es 2n.
Por ejemplo, 1101(2 quiere decir:
1×23 + 1×22 + 0×21 + 1×20 = 8 + 4 + 0 + 1
En los ordenadores, cada dígito representado en este sistema se denomina BIT. (Binary
Digit) Además, se utilizan los siguientes múltiplos:
BYTE 8 Bits
KILOBYTE 1024 Bytes
MEGABYTE 1024 Kb
GIGABYTE 1024 Mb
TERABYTE 1024 Gb
8.1.4 SISTEMA OCTAL
En este caso la base 8. Se utilizarán, por tanto, los dígitos del 0 al 7.
Se utiliza por su facilidad de transformar un nº binario a otra base potencia de 2 (2³=8)
Sistema posicional: Numerando de derecha a izquierda los dígitos de un
número, empezando por cero, el valor decimal de la posición es 8n.
Por ejemplo, 437(8 quiere decir:
4×82 + 3×81 + 7×80 = 256 + 24 + 7
Tema 1: Introducción: Sistemas Informáticos Página 25 de 39
26. ISO (Mhc)
8.1.5 SISTEMA HEXADECIMAL
Existen 16 símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Los símbolos
hexadecimales A al F se corresponden con los valores decimales 10 al 15.
Se utiliza por su facilidad de transformar un nº binario a otra base potencia de 2 (2³=16)
Sistema posicional: Numerando de derecha a izquierda los dígitos de un número,
empezando por cero, el valor decimal de la posición es 16n.
Por ejemplo, B7D3(16 quiere decir:
11×163 + 7×162 + 13×161 + 3×160 = 45056 + 1792 + 208 + 3
8.1.6 CONVERSIÓN ENTRE SISTEMAS
Podemos hacer conversiones entre el sistema decimal y cualquier otro sistema,
basándonos en el Teorema Fundamental de Numeración:
- Teorema Fundamental de Numeración
“El valor decimal de una cantidad expresada en otro sistema de numeración viene dado
por la fórmula: “
... + X3*B³ + X2*B² + X1*B¹ + X0*Bº + X-1*B-¹ + X-2)*B-² + ...
Así, es muy fácil pasar de un sistema a otro, utilizando como sistema intermedio
el sistema decimal (el octal se usa por su facilidad para convertirlo a binario, formando
grupos de 3 bits. Igual pasa con el hexadecimal, pero formando grupos de ó de 4 bits).
Cuando un número tenga parte entera y parte fraccionaria, y queramos cambiarlo
de base, cambiaremos por separado la parte entera y la parte fraccionaria, cada una de
ellas con el método que le corresponda.
- Pasar de una base cualquiera a base 10
- Números enteros
Realizaremos la suma de los productos de cada dígito por su valor de posición.
Los valores de posición se obtienen como potencias sucesivas de la base, de derecha a
izquierda, empezando por el exponente cero.
- Números fraccionarios
Para representar los números fraccionarios se usa el mismo esquema que para
los enteros. Lo que ocurre es que ahora el esquema se extiende para exponentes
menores que cero.
Tema 1: Introducción: Sistemas Informáticos Página 26 de 39
27. ISO (Mhc)
Por ejemplo, para base 2, tendríamos:
0,1001(2 = 1×2-1 + 0×2-2 + 0×2-3 + 1×2-4 = 1×1/2 + 0×1/4 + 0×1/8 + 1×1/16 = 0,5625(10
- Pasar de base 10 a otra base
- Números enteros
Dividimos el número a convertir entre la nueva base.
El cociente se vuelve a dividir por la base, y así sucesivamente hasta que el
cociente sea inferior a la base.
El último cociente y los restos (en orden inverso) indican los dígitos en la nueva base.
- Números fraccionarios
Multiplicaremos la fracción decimal repetidamente por la base del nuevo
sistema. Los números a la izquierda de la coma en el resultado se escriben como parte
del nuevo número binario, y se extraen de la operación dejando siempre un cero. Así
hasta que la parte decimal es cero o no queramos más dígitos significativos
Por ejemplo:
0,5835 x 2 = 1,1670 1
0,1670 x 2 = 0,3340 0
0,3340 x 2 = 0,6680 0 0,5835(10=0,100101(2
0,6680 x 2 = 1,3360 1
0,3360 x 2 = 0,6720 0
0,6720 x 2 = 1,3440 1
- Pasar en general de una base m a otra base n
Para pasar en general de una base m a otra base n, haremos lo siguiente: primero
pasaremos de base m a base 10 (método conocido) y luego de base 10 a base n (también
conocido).
En ocasiones para pasar de una base m a otra base n no es necesario hacer lo que se
acaba de indicar, sino que se puede usar un método mucho más simple.
Cualquier base de numeración que sea potencia de otra base (como las bases 2, 8 y 16)
tienen una correspondencia.
De este modo, por ejemplo, podemos:
- representar cada dígito octal en forma de una combinación de tres dígitos
binarios
- representar cada dígito hexadecimal como cuatro dígitos binarios
Tema 1: Introducción: Sistemas Informáticos Página 27 de 39
28. ISO (Mhc)
Por ejemplo:
375(8 011 111 101(2
A3F6(16 1010 0011 1111 0110(2
8.1.7 OPERACIONES EN BINARIO
Un ordenador opera internamente en binario de muy diversas formas (según su
sistema de representación).
Desarrollaremos las operaciones aritméticas binarias elementales.
- Suma binaria
Es semejante a la suma en decimal. Se van haciendo sumas
a b S Ac
parciales, y cuando el resultado excede de los símbolos utilizados,
0 0 0 0
se agrega el acarreo a la suma parcial siguiente.
0 1 1 0
1 0 1 0
1 1 0 1
- Resta binaria
Es semejante a la resta en decimal. Se van haciendo restas parciales y
a b R
al realizar las restas parciales entre 2 dígitos, uno del minuendo y
0 0 0
otro del sustraendo, si el segundo excede al primero, se sustrae una
0 1 no cabe
unidad del dígito de más a la izquierda en el minuendo (si existe y
1 0 1
vale 1), convirtiéndose este último en 0 y equivaliendo la unidad
1 1 0
extraída a 1*2 en el minuendo de resta parcial que estamos
realizando. Si es 0 el dígito siguiente a la izquierda, se busca en los sucesivos teniendo
en cuenta que su valor se multiplica por 2 a cada desplazamiento a la derecha.
Por ejemplo: Restar 11101 y 111.
2
002
11101
00111
10110
Tema 1: Introducción: Sistemas Informáticos Página 28 de 39
29. ISO (Mhc)
- Multiplicación binaria
a b M
Se realiza de forma similar a la multiplicación decimal, salvo que la suma
0 0 0
final de los productos parciales se hace en binario.
0 1 0
1 0 0
1 1 1
- División binaria
100010 110 Se realiza de forma idéntica a la
110 1 0 1 …….. cociente
división decimal, salvo que las
001010 multiplicaciones y restas internas al
110
proceso de la división se hacen en
1 0 0 ………………..resto binario.
8.2 SISTEMAS DE CODIFICACIÓN ALFANUMÉRICOS.
Se representa cada carácter por medio de un byte, con lo cual todo tipo de
informaciones pueden ser utilizadas internamente, formando cadenas de bytes sucesivos
que representarán cadenas de caracteres. En la actualidad se emplean códigos de 8 bits.
Este tipo de codificación se emplea en la entrada y salida de datos del ordenador,
estando preparados todos sus periféricos para trabajar de este modo.
En todos los sistemas de codificación se ha procurado cumplir tres reglas muy
útiles:
1. Intentar que el reconocimiento de los caracteres numéricos sea muy sencillo,
dada la repetición de operaciones de traducción desde otros métodos de
representación numéricos.
2. Que los códigos para las letras mayúsculas y minúsculas difieran sólo en un bit
para que ciertos periféricos que no tengan minúsculas interpreten los caracteres
con facilidad.
Tema 1: Introducción: Sistemas Informáticos Página 29 de 39
30. ISO (Mhc)
3. Distinguir claramente los tipos de caracteres numéricos, alfabéticos y de control
para simplificar los programas de interpretación de dichos caracteres.
Los códigos mas utilizados para la representación de caracteres alfanuméricos son el
ASCII y el EBCDIC ambos de 8 bits y el UNICODE de 16 bits.
El código ASCII incluye todas las letras del alfabeto ingles en mayúsculas y
minúsculas, símbolos de puntuación, etc. Los bits 1 a 4 de los caracteres numéricos son
BCD (decimal codificado en binario). La única diferencia entre mayúsculas y
minúsculas es el bit 6.
El código EBCDIC (BCD extendido para intercambio de información) ha sido utilizado
por IBM en sus grandes máquinas. Utiliza 8 bits, diferenciando las mayúsculas de las
minúsculas en el 7º bit.
El código UNICODE utiliza 16 bits para la representación de símbolos, caracteres
alfabéticos y caracteres ideográficos de todos los lenguajes, permitiendo su uso
simultáneo con total facilidad.
9 REPRESENTACIÓN INTERNA DE LA INFORMACIÓN
La CPU y más concretamente la ALU, procesan agrupaciones de bits a las que se
denomina palabras. Los códigos utilizados en la entrada y salida de información no
suelen ser los más idóneos para efectuar operaciones aritméticas. Por ello, en
representación interna se suelen usar códigos como el binario y similares.
Por ejemplo, el número 25, codificado en ASCII sería 10110010 00110101 y en binario,
00001101. Así pues el segundo formato es mucho más adecuado para operar
aritméticamente.
Al pasar los datos numéricos de formato de E/S a formato interno se obtiene un
mayor grado de compactación y un formato más adecuado para las operaciones
aritméticas.
En los apartados siguientes se va a estudiar la representación interna de dos
categorías de datos: los enteros y los reales. Otros tipos de números, como los
complejos o los booleanos, pueden representarse como combinaciones de los anteriores.
Por otra parte, para representar cadenas de caracteres los ordenadores suelen utilizar los
valores binarios correspondientes al código de E/S, por lo que su estudio en lo que se
refiere a manipulaciones aritméticas no tiene demasiado interés.
Tema 1: Introducción: Sistemas Informáticos Página 30 de 39
31. ISO (Mhc)
9.1 REPRESENTACIÓN INTERNA DE DATOS ENTEROS
Los ordenadores suelen emplear cuatro métodos distintos para representar números
enteros: M-S, C-1, C-2 y Exceso Z.
Estas representaciones emplean el sistema binario y tiene un número limitado de
bits para cada dato numérico N, que es una potencia de dos, y que recibe el nombre de
palabra. En nuestro caso, para los ejemplos, tomaremos este número como 8.
9.1.1 MODULO SIGNO
El bit situado más a la izquierda indica el signo del número, siendo 0 para los
números positivos y 1 para los negativos. Los bits restantes (N-1) representan el módulo
del número.
Por ejemplo: -2 10000010 y
2 00000010
El principal problema es que el cero tiene dos representaciones:
00000000 y 10000000
9.1.2 COMPLEMENTO A UNO
El bit situado más a la izquierda indica el signo del número, siendo 0 para los
números positivos y 1 para los negativos. Ahora hay que distinguir entre números
positivos y negativos:
· Positivos: los (N-1) bits restantes representan el módulo del número (igual que en
Módulo signo).
· Negativo: se escribe el número positivo correspondiente y se complementan todos sus
dígitos incluido el bit de signo, cambiando los unos por ceros y los ceros por unos.
Ejemplo: 2 00000010
-2 11111101
También el cero tiene dos representaciones: 00000000 y 11111111.
9.1.3 COMPLEMENTO A DOS
El bit situado más a la izquierda indica el signo del número, siendo 0 para los
números positivos y 1 para los negativos. También hay que distinguir entre números
positivos y negativos:
· Positivos: los (N-1) bits restantes representan el módulo del número (igual que en
Módulo signo).
Tema 1: Introducción: Sistemas Informáticos Página 31 de 39
32. ISO (Mhc)
· Los negativos se obtienen en dos pasos:
- Se complementan todos los bits del número positivo (complemento a 1)
- Al resultado obtenido en el paso anterior se le suma 1 en binario,
despreciando el último acarreo si existe.
Ejemplo: 2 00000010
-2 11111101+1= 11111110
La principal ventaja es que existe una única representación para el cero:
00000000 y 11111111+1= 00000000.
9.1.4 EXCESO Z (2N-1 )
Habitualmente Z es 2N-1 siendo N el número de bits utilizados para representar la
cantidad.
No hay ningún bit reservado para el signo. Todos los bits representan un módulo
que corresponde al número representado más el exceso a 2N-1
En nuestro caso N=8, 28-1 = 27 = 128.
A 128 se le suma el número y se representa en binario.
Ejemplo: 2 128+2= 130 = 10000010
-2 128-2= 126 = 01111110
En este caso el cero tiene una única representación:
128+0=128-0=10000000
9.2 REPRESENTACIÓN INTERNA DE DATOS REALES
9.2.1 COMA FLOTANTE
Los números reales se componen de una parte entera y una parte decimal
(fraccionaria).
Los ordenadores emplean el sistema binario para la representación interna de
datos y disponen de un número determinado de bits N, llamado palabra, para la
representación, lo que hace que los números sufran un determinado truncamiento
(redondeo) en su parte decimal.
El sistema de representación más utilizado para representar números reales es el
de coma flotante. Permite la representación de números muy pequeños y muy grandes.
Esto lleva consigo una disminución de la precisión de los números representados.
La notación empleada es:
Tema 1: Introducción: Sistemas Informáticos Página 32 de 39
33. ISO (Mhc)
Número = Mantisa * Base exponente
Según esta notación, un número tiene muchas representaciones: por ejemplo,
56,7 se puede representar como 5,67*101, 0,567*102, 567*10-1.
Para evitar esto se utiliza la notación Normalizada, mediante la cual, la mantisa no
posee parte entera y el primer dígito significativo después de la coma, es distinto de 0,
salvo en la representación del 0.
De esta forma, conocida la base (que viene determinada por el fabricante), un
número se puede representar internamente con sólo tres campos: uno para el signo, otro
para la mantisa y otro para el exponente.
Se suelen seguir las siguiente reglas:
-
El exponente se representa en exceso 2N-1 ya que el exponente es entero.
-
La mantisa normalizada con la coma implícita a la izquierda se representa en
módulo signo, complemento a 1 o complemento a 2.
-
La base de exponenciación es una potencia de dos, que viene determinada
por el fabricante.
Existen muchos formatos de coma flotante, pero se pueden distinguir dos posibilidades:
· Simple precisión: 32 bits
signo EXPONENTE MANTISA
31 30 23 22
· Doble precisión: 64 bits
signo EXPONENTE MANTISA
63 62 52 51
Ejemplo: Vemos un ejemplo de cómo representar un número en coma flotante de simple
precisión:
- El bit 32 para el signo de la mantisa (0 para el positivo y 1 para el negativo)
- Los bits del 23 al 31 para el exponente que se expresa en exceso a 128.
- Los bits del 1 al 22 para la mantisa normalizada representada en C-1.
- Base de exponenciación: 2.
Representamos el número -46,75
Representamos primero el nº positivo: 46,75=101110,11
Normalizamos: 101110,11=0,10111011*10110
Nos olvidamos del 0 de la izquierda y de la coma, y como es negativo,
complementamos a 1 y rellenamos hasta el bit 22:
01000100111111111111111
Tema 1: Introducción: Sistemas Informáticos Página 33 de 39
35. ISO (Mhc)
10 SOFTWARE
El ordenador, por sí mismo, no puede realizar ninguna función; es necesario que algo le
dirija y organice. Este "algo" son las instrucciones que el programador escribe. Estas
instrucciones, agrupadas en forma de programas que serán depositados en la memoria
del ordenador, forman lo que se denomina "software". Por tanto, es un componente de
origen humano, y es el que hace que el ordenador pueda desempeñar tareas
"inteligentes": dirigirá de forma adecuada a los elementos físicos o hardware. Es el
software quien indica al hardware en qué secuencia y bajo qué lógica hay que hacer los
cálculos y las manipulaciones de datos.
Def: Conjunto de programas elaborados por el hombre, que controlan la actuación del
ordenador, haciendo que éste siga en sus acciones una serie de esquemas lógicos
predeterminados.
Esta característica "logica" o "inteligente" del software es lo que hace que se le defina
también como la parte inmaterial de la informática, ya que aunque los programas que
constituyen el software residan en un soporte físico como la memoria principal o lo
disquetes, la función de los programas en un ordenador es semejante a la del
pensamiento en un ser humano. En otras palabras, un programa no es más que la
plasmación mediante un lenguaje de programación cualquiera de un proceso mental
humano, mediante esta trascripción se logra que el ordenador realice una tarea que,
antes era llevada a cabo por el ser humano.
El software es el nexo de unión entre el hardware y el hombre. El ordenador por sí
mismo no puede comunicarse con el hombre y viceversa, ya que nos separa la barrera
del lenguaje. El software trata de acortar esa barrera, estableciendo procedimientos de
comunicación entre el hombre y la máquina; es decir, obra como un intermediario entre
el hombre y la máquina.
Si las capacidades del hardware fuesen muy grandes, y en consecuencia el usuario
tuviese plenas facilidades en su utilización, no sería necesario recurrir al software.
Desgraciadamente, no es así. Si bien el progreso del hardware es cada vez mayor y los
dispositivos físicos se construyen cada vez con más "inteligencia" incluida, de forma
que se resuelven por hardware funciones anteriormente sólo factibles por software, será
prácticamente imposible que el avance tecnológico llegue algún día a eliminar
Tema 1: Introducción: Sistemas Informáticos Página 35 de 39
36. ISO (Mhc)
totalmente la necesidad de software, pues éste también evoluciona y las facilidades que
el usuario pide a la computadora son cada día más sofisticadas.
No debemos olvidar el concepto de Firmware (híbrido entre ambos; cobra gran
importancia en los modernos ordenadores).
Tal y como hemos definido el software, éste es un conjunto de programas. La pregunta
ahora es: ¿Qué es un programa? Un programa es una secuencia de instrucciones que
pueden ser interpretadas por un ordenador, obteniendo como fruto de esa interpretación
un determinado resultado.
Los programas están divididos en rutinas. Una rutina es un subconjunto del conjunto de
instrucciones que conforman el programa. Cada una de las rutinas de un programa
realiza una determinada función dentro del mismo.
Podemos clasificar en software en dos grandes grupos: software de sistema y software
de aplicación.
10.1.1 SOFTWARE DE SISTEMA, SOFTWARE BÁSICO O SISTEMA
OPERATIVO
Es un conjunto de programas cuyo objeto es facilitar el uso de la computadora (nos aísla
de la complejidad de cada dispositivo de e/s, y presenta al exterior un modelo común de
sistema de manejo para todos los dispositivos de e/s) y conseguir que se use
eficientemente (ej: realizar operaciones de e/s mientras se ejecuta un programa).
Administra y asigna los recursos del sistema (hardware).
Los programas que forman este software
• controlan y optimizan la operación de la máquina
• establecen una relación básica y fundamental entre el ordenador y el usuario
• hacen que el usuario pueda usar en forma cómoda y amigable complejos sistemas hardware
• realizan funciones que para el usuario serían engorrosas o incluso imposibles.
Tema 1: Introducción: Sistemas Informáticos Página 36 de 39
37. ISO (Mhc)
• actúan como intermediario entre el usuario y el hardware.
• son escritos/modificados por programadores de sistemas, que han de tener profundos
conocimientos acerca de cómo trabaja realmente la máquina.
El software de sistema se puede dividir en programas de control y programas de
servicio.
10.1.1.1 Programas de control
Son los que van orientados a facilitar, automatizar y mejorar el rendimiento de los
procesos en el ordenador (encadenamiento automático de programas, simultaneidad de
operación de periféricos, tratamiento de errores, etc.) . A su vez, podemos separarlos en
tres grupos según el tipo de recurso que optimizan:
• gestión del sistema
• gestión de trabajos
• gestión de datos
10.1.1.2 Programas de servicio o de proceso
Son los que van orientados a proporcionar facilidades de expresión y comunicación al
usuario(traductores, cargadores, enlazadores utilidades...)
10.1.2 PROGRAMAS DE APLICACIÓN
Son aquellos que hacen que el ordenador coopere con el usuario en la realización de
tareas típicamente humanas, tales como gestionar una contabilidad, escribir un texto...
La diferencia entre los programas de aplicación y los de sistema estriba en que los de
sistema suponen una ayuda al usuario para relacionarse con el ordenador y hacer un uso
más cómodo del mismo, mientras que los de aplicación son programas que cooperan
con el usuario para la realización de tareas que anteriormente habían de ser llevadas a
cabo únicamente por el hombre (sin ayuda de ordenador). Es en estos programas de
aplicación donde se aprecia de forma más clara, la ayuda que puede suponer un
ordenador en las actividades humanas, ya que la máquina se convierte en un auxiliar del
hombre, liberándole de las tareas repetitivas.
Tema 1: Introducción: Sistemas Informáticos Página 37 de 39
38. ISO (Mhc)
Los programadores de aplicaciones, a diferencia de los programadores de sistemas, no
necesitan conocer a fondo el modo de funcionamiento interno del hardware, basta con
que conozcan las necesidades de información de sus aplicaciones y cómo usar el
sistema operativo para conseguir satisfacer estas necesidades. Sus programas han de ser
independientes del hardware específico que se utilice y deben de poder ser transportados
sin grandes problemas de adaptación a otras máquinas y otros entornos operativos.
Algunos ejemplos de aplicaciones son:
• Procesadores de texto
• Editores
• Hojas de calculo
• Sistemas gestores de bases de datos
• Programas de comunicaciones
• Paquetes integrados
• Programas de diseño asistido por ordenador
10.2 LENGUAJES DE PROGRAMACIÓN
Antes de hablar de los distintos lenguajes de programación, vamos a ver algunas
definiciones:
Tema 1: Introducción: Sistemas Informáticos Página 38 de 39
39. ISO (Mhc)
· Instrucciones: Son las distintas órdenes que recibe la computadora para operar con o
sobre los datos.
· Programa: Conjunto ordenado de instrucciones que realiza una tarea.
· Lenguaje de programación: El conjunto de símbolos y reglas empleados para codificar
las instrucciones que componen cada programa.
El lenguaje que entienden los ordenadores es el lenguaje máquina, en el que las
instrucciones están formadas por dos campos:
· Código de operación: que indica la operación a realizar
· Operandos: Indican o bien los datos o bien la dirección de memoria donde
tienen que buscar esos datos.
El lenguaje máquina está totalmente ligado al hardware en donde se vaya a ejecutar, es
decir, un programa en lenguaje máquina realizado para un determinado procesador
nunca funcionará en otro distinto.
Además, el lenguaje máquina sólo nos permite realizar operaciones muy simples tales
como sumas, restas, saltos, etc, lo que implica que una programación demasiado
laboriosa para implementar cualquier algoritmo, siendo necesario, además, conocer las
peculiaridades del hardware que se pretende manejar.
Para evitar estos problemas y facilitar la tarea de programación surgen los lenguajes de
alto nivel que no dependen de la plataforma hardware en la que se vayan a ejecutar y
además presentan instrucciones más potentes y complejas.
Ejemplos: c/c++, Visual Basic, Fortram, etc.
Existen programas traductores que se encargan de transformar cada programa en
lenguaje de alto nivel a lenguaje máquina.
Tema 1: Introducción: Sistemas Informáticos Página 39 de 39