Upload
yurek-defret
View
327
Download
2
Tags:
Embed Size (px)
Citation preview
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 1 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 2 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 3 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 4 de 39
1 INTRODUCCIÓN A LOS SISTEMAS INFORMÁTICOS El tratamiento de la información tiene 3 pasos fundamentales: entrada, proceso y salida.
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.
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:
resultados datos de entrada
ENTRADA PROCESO SALIDA
resultados Datos de entrada
programa
ELEMENTOS DE ENTRADA
ELEMENTOS DE PROCESO
ELEMENTOS DE SALIDA
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 5 de 39
- 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.
Figura 1: Esquema básico del Hardware, según Von Newman
Periféricos de entrada
Periféricos de salida
Periféricos de almacenamiento (Mem. auxiliar)
Memoria principal
Unidad de control +
Unidad aritmético-lógica
Procesador (UCP)
BUS DEL SISTEMA
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 6 de 39
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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 7 de 39
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
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.
Bus externo de direcciones
Bus externo de datos
Bus externo de control
Procesador (UCP)
Unidad de control
Unidad aritmético-lógica
Registros
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 8 de 39
- 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 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
BN-1 BN-2 ... B1 B0 Líneas de órdenes
Líneas de entrada de datos
Líneas de salida de datos
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 9 de 39
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)
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 10 de 39
- 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. 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:
CIRCUITO COMBINACIONAL
SUM RES
AND
MUL
INC
...
Registro acumulador
Reg Entrada 2 E_RE2_I
E_RE2_E Reg Entrada 1 E_RE1
Registro de estado
L_RACUM
E_RACUM
BUS DE DATOS EXTERNO
A la UC
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 11 de 39
- 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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 12 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 13 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 14 de 39
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.
+ REGISTROS MÁQUINA
MEMORIA CACHÉ
MEMORIA PRINCIPAL
MEMORIA SECUNDARIA
Rapidez Coste ( por unidad de almacenamiento)
-
Capacidad
+ -
Muy rápidos Poca capacidad Muy caros
Rápidos No mucha capacidad Coste por posición elevado
DAAD: Soporta lo que no entra en Memoria Principal
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 15 de 39
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).
MEMORIA PRINCIPAL
n
m
L_MP
E_MP
Bus de direcciones
Bus de datos
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 16 de 39
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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 17 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 18 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 19 de 39
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
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.
Circuito detector de direcciones
Circuito controlador del interface
sincronización
control
direcciones Datos
Bus de e/s
Registro de estado
Registro de transferencia
CONTROLADOR + PERIFÉRICO
INTERFACE
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 20 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 21 de 39
- 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:
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 22 de 39
- Disquete extraible - Disco duro - CD-ROM - CD grabable o regrabable - DVD-ROM - DVD grabable
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 23 de 39
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).
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 24 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 25 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 26 de 39
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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 27 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 28 de 39
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
parciales, y cuando el resultado excede de los símbolos utilizados,
se agrega el acarreo a la suma parcial siguiente.
- Resta binaria
Es semejante a la resta en decimal. Se van haciendo restas parciales y
al realizar las restas parciales entre 2 dígitos, uno del minuendo y
otro del sustraendo, si el segundo excede al primero, se sustrae una
unidad del dígito de más a la izquierda en el minuendo (si existe y
vale 1), convirtiéndose este último en 0 y equivaliendo la unidad
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
0 0 2
1 1 1 0 1
0 0 1 1 1
1 0 1 1 0
a b S Ac
0 0
0 1
1 0
1 1
0
1
1
0
0
0
0
1
a b R
0 0
0 1
1 0
1 1
0
no cabe
1
0
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 29 de 39
1 0 0 0 1 0 1 1 0 1 1 0 1 0 1 …….. cociente 0 0 1 0 1 0 1 1 0 1 0 0 ………………..resto
- Multiplicación binaria
Se realiza de forma similar a la multiplicación decimal, salvo que la suma
final de los productos parciales se hace en binario.
- División binaria
Se realiza de forma idéntica a la
división decimal, salvo que las
multiplicaciones y restas internas al
proceso de la división se hacen en
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.
a b M
0 0
0 1
1 0
1 1
0
0
0
1
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 30 de 39
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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 31 de 39
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).
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 32 de 39
· 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:
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 33 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 34 de 39
Exponente: 128+6=10000000+110=10000110
Signo 1 por ser negativo.
El número queda:
1 100000110 01000100111111111111111 31 30 23 22 0
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 35 de 39
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
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 36 de 39
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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 37 de 39
• 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.
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 38 de 39
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:
ISO (Mhc)
Tema 1: Introducción: Sistemas Informáticos Página 39 de 39
· 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.