1. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 1
UT1. EXPLOTACIÓN DE SISTEMAS
INFORMÁTICOS
ÍNDICE
1 LA ARQUITECTURA DE LOS ORDENADORES ................................................................................................... 4
1.1 CLASIFICACION ........................................................................................................................................ 6
1.2 ALMACENAMIENTO DE OPERANDOS EN LA CPU ................................................................................... 6
1.2.1 CARACTERÍSTICAS ........................................................................................................................... 7
1.3 LA MÁQUINA DE TURING........................................................................................................................ 7
1.3.1 FUNCIONAMIENTO ......................................................................................................................... 7
1.3.2 EJEMPLO ......................................................................................................................................... 8
1.4 LA ARQUITECTURA HARVARD ............................................................................................................... 10
1.5 LA ARQUITECTURA DE VON NEUMANN ............................................................................................... 11
1.5.1 CUELLO DE BOTELLA DE VON NEUMANN..................................................................................... 12
1.6 EL SISTEMA INFORMÁTICO ................................................................................................................... 12
1.6.1 DATOS ........................................................................................................................................... 13
1.6.2 CLASIFICACIÓN DE LOS SISTEMAS INFORMÁTICOS ...................................................................... 14
2 SISTEMAS DE NUMERACIÓN ......................................................................................................................... 16
2.1 INTRODUCCIÓN .................................................................................................................................... 16
2.1.1 CÓDIGOS DE ENTRADA/SALIDA. ................................................................................................... 17
2.2 NUMEROS BINARIOS, OCTALES Y HEXADECIMALES. ............................................................................ 18
2.2.1 SISTEMA DECIMAL ........................................................................................................................ 18
2.2.2 SISTEMA BINARIO ......................................................................................................................... 18
2.2.3 SISTEMA OCTAL ............................................................................................................................ 19
2.2.4 SISTEMA HEXADECIMAL ............................................................................................................... 19
2.2.5 AGRUPACIÓN DE CIFRAS............................................................................................................... 19
2.3 CAMBIO DE BASE .................................................................................................................................. 21
2.3.1 DE BINARIO A DECIMAL / DE DECIMAL A BINARIO....................................................................... 21
2.3.2 DE OCTAL A DECIMAL / DE DECIMAL A OCTAL ............................................................................. 22
2.3.3 DE HEXADECIMAL A DECIMAL / DE DECIMAL A HEXADECIMAL ................................................... 23
2.4 ESTRUCTURA ELEMENTAL DE LA MEMORIA ........................................................................................ 24
2.4.1 BIT ................................................................................................................................................. 24
2.4.2 BYTE .............................................................................................................................................. 24
2.4.3 NIBBLE ........................................................................................................................................... 25
2.5 COMPLEMENTO A DOS ......................................................................................................................... 26
Sistemas Informáticos
2. 2 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
2.6 COMPLEMENTO A UNO ........................................................................................................................ 26
2.7 AGRUPACIONES DE BYTES. ................................................................................................................... 27
2.8 REPRESENTACIÓN DE LOS DATOS EN MEMORIA .................................................................................. 27
2.8.1 NUMEROS BINARIOS: máximo número representable................................................................. 27
2.8.2 NUMEROS BINARIOS CODIFICADOS EN DECIMAL (BCD) .............................................................. 28
2.8.3 NUMEROS EN PUNTO FLOTANTE.................................................................................................. 28
2.8.4 CÓDIGO ASCII ................................................................................................................................ 28
2.9 OPERACIONES LÓGICAS EN BINARIO .................................................................................................... 29
2.10 OPERACIONES ARITMÉTICAS SENCILLAS EN BINARIO .......................................................................... 29
2.10.1 RESTAR EN BINARIO USANDO EL COMPLEMENTO A DOS ............................................................ 30
2.11 REPRESENTACIÓN INTERNA DE LA INFORMACIÓN............................................................................... 32
2.11.1 TIPOS DE INFORMACION............................................................................................................... 33
2.12 DETECCIÓN DE ERRORES EN LA INFORMACIÓN CODIFICADA .............................................................. 37
3 UNIDADES FUNCIONALES ............................................................................................................................. 40
3.1 UNIDAD CENTRAL DE PROCESO (CPU) .................................................................................................. 40
3.2 MEMORIA PRINCIPAL ............................................................................................................................ 52
3.2.1 TIPOS DE MEMORIA ...................................................................................................................... 54
3.2.2 TECNOLOGÍAS DE MEMORIA ........................................................................................................ 55
3.2.3 DETECCIÓN Y CORRECCIÓN DE ERRORES...................................................................................... 56
3.3 BUSES DEL SISTEMA .............................................................................................................................. 57
3.3.1 TIPOS DE BUSES............................................................................................................................. 57
4 PERIFÉRICOS .................................................................................................................................................. 59
4.1 CONTROLADOR DE ENTRADA/SALIDA (I/O) .......................................................................................... 59
4.1.1 DEFINICIÓN PERIFÉRICO................................................................................................................ 60
4.1.2 CLASIFICACIÓN .............................................................................................................................. 60
4.2 PERIFÉRICOS DE ALMACENAMIENTO ................................................................................................... 60
4.2.1 MEDIOS MAGNÉTICOS .................................................................................................................. 61
4.2.2 MEDIOS ÓPTICOS .......................................................................................................................... 64
4.2.3 CD-ROM......................................................................................................................................... 65
4.2.4 DVD-ROM ...................................................................................................................................... 66
4.3 CINTAS PARA "BACKUP"........................................................................................................................ 66
4.4 PERIFERICOS DE ENTRADA .................................................................................................................... 68
4.4.1 EL TECLADO ................................................................................................................................... 68
4.4.2 MOUSE .......................................................................................................................................... 70
4.4.3 TABLETA DIGITALIZADORA ............................................................................................................ 71
4.4.4 ESCANERS ...................................................................................................................................... 72
Sistemas Informáticos
3. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 3
4.4.5 JOYSTICK ....................................................................................................................................... 72
4.4.6 ALMOHADILLA .............................................................................................................................. 73
4.4.7 LECTORES DE TARJETAS MAGNÉTICAS ......................................................................................... 73
4.4.8 MÓDEMS....................................................................................................................................... 73
4.4.9 CÓDIGOS DE BARRA ...................................................................................................................... 73
4.5 PERIFÉRICOS DE SALIDA ........................................................................................................................ 73
4.5.1 MONITORES .................................................................................................................................. 74
4.5.2 IMPRESORAS ................................................................................................................................. 77
5 REDES ............................................................................................................................................................ 83
5.1 CONCEPTO Y CARACTERÍSTICAS DE LAS REDES. VENTAJAS E INCONVENIENTES. ................................ 83
5.2 TIPOS DE REDES. ................................................................................................................................... 83
5.2.1 REDES DE ÁREA LOCAL (LAN) ........................................................................................................ 83
5.2.2 RED DE ÁREA AMPLIA (WAN) ....................................................................................................... 84
5.3 COMPONENTES DE UNA RED INFORMÁTICA. ...................................................................................... 85
5.4 TOPOLOGÍAS DE RED ............................................................................................................................ 86
5.4.1 TOPOLOGÍAS FÍSICAS .................................................................................................................... 87
5.4.2 TOPOLOGÍAS LÓGICAS .................................................................................................................. 90
5.5 MAPA FÍSICO Y LÓGICO DE UNA RED LOCAL ........................................................................................ 91
5.6 MEDIOS DE TRANSMISIÓN. TRANSMISIÓN ALÁMBRICA E INALÁMBRICA. .......................................... 92
Tipos de cable ................................................................................................................................................... 95
5.7 Cable cruzado ....................................................................................................................................... 96
5.8 Conectores RJ45.................................................................................................................................... 97
5.8.1 Norma A ........................................................................................................................................ 97
5.8.2 Norma B ........................................................................................................................................ 97
5.9 Conexión entre conmutadores y concentradores ................................................................................ 97
5.10 Conexión directa PC a PC a 100 Mbps .................................................................................................. 97
Sistemas Informáticos
4. 4 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
1 LA ARQUITECTURA DE LOS ORDENADORES
Una computadora o computador (1 Wikipedia) (del inglés computer y este del latín computare -
calcular), también denominada ordenador (del francés ordinateur, y este del latín ordinator), es
una máquina electrónica que recibe y procesa datos2 para convertirlos en información útil. Una
computadora es una colección de circuitos integrados (circuitería) y otros componentes relacionados
que puede ejecutar con exactitud, rapidez y de acuerdo a lo indicado por un usuario o
automáticamente por otro programa, una gran variedad de secuencias o rutinas de instrucciones que
son ordenadas, organizadas y sistematizadas en función a una amplia gama de aplicaciones prácticas
y precisamente determinadas, proceso al cual se le ha denominado con el nombre de programación y
al que lo realiza se le llama programador. La computadora, además de la rutina o programa
informático, necesita de datos específicos (a estos datos, en conjunto, se les conoce como "Input" en
inglés o de entrada) que deben ser suministrados, y que son requeridos al momento de la ejecución,
para proporcionar el producto final del procesamiento de datos, que recibe el nombre de "output" o
de salida. La información puede ser entonces utilizada, reinterpretada, copiada, transferida, o
retransmitida a otra(s) persona(s), computadora(s) o componente(s) electrónico(s) local o
remotamente usando diferentes sistemas de telecomunicación, pudiendo ser grabada, salvada o
almacenada en algún tipo de dispositivo o unidad de almacenamiento.
La característica principal que la distingue de otros dispositivos similares, como la calculadora no
programable, es que es una máquina de propósito general, es decir, puede realizar tareas muy
diversas, de acuerdo a las posibilidades que brinde los lenguajes de programación y el hardware.
Un GPS se puede interpretar como un ordenador. Una impresora podría ser un ordenador pues tiene
datos de entrada y de salida. E incluso algunas son programables.
Ahora se dice que un ordenador es aquel que tiene un dispositivo de almacenamiento (disco duro).
Antiguamente tenía que tener más dispositivos (dispositivo de entrada, disco duro, dispositivo de
salida, etc).
2
Datos: No es lo mismo datos que información. El dato puede significar un número, una letra, o
cualquier símbolo que representa una palabra, una cantidad, una medida o una descripción. El dato
no tiene valor semántico (sentido) en sí mismo, pero si recibe un tratamiento (procesamiento)
apropiado, se puede utilizar en la realización de cálculos o toma de decisiones. Por ejemplo, un dato
es “32” (no tiene sentido), y una información es “años de Javier”.
El ordenador trabaja con datos y no con información. Las instrucciones de un ordenador son datos.
Una visión típica de una arquitectura de ordenadores (1 Wikipedia) como una serie de capas de
abstracción (es una forma de ocultar los detalles de implementación de ciertas funcionalidades):
hardware, firmware, ensamblador, kernel, sistema operativo y aplicaciones.
Sistemas Informáticos
5. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 5
Hardware: corresponde a todas las partes tangibles de un ordenador.
Firmware: el firmware es el intermediario (interfaz) entre las órdenes
externas que recibe el dispositivo y el hardware (su electrónica), ya que es
el encargado de controlar a éste último para ejecutar correctamente
dichas órdenes externas. (Son los controladores).
Ensamblador: Es la capa que permite una comunicación entre los
Controladores (firmware) y el Kernel. Un lenguaje ensamblador es
específico a cierta arquitectura de ordenador física (o virtual). Es el nivel
más bajo del programador.
Kernel: Es el núcleo. Un núcleo o kernel es un software que constituye la
parte más importante del sistema operativo. Es el principal responsable de facilitar a los distintos
programas acceso seguro al hardware del ordenador. Acceder al hardware directamente puede ser
realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del
hardware. Se puede modificar el Kernel de un ordenador y hacer que funcione en otro ordenador.
Sistema Operativo y aplicaciones: Un sistema operativo (SO) es el programa o conjunto de programas
que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal
ejecución del resto de las operaciones. Una aplicación es un programa en ejecución. Las aplicaciones
son gestionadas por el sistema operativo. Esta capa es la interfaz con nosotros. Los S.O. incluyen el
Kernel.
La arquitectura de ordenadores (1 Wikipedia) es el diseño conceptual y la estructura operacional
fundamental de un sistema de ordenadores. Es decir, es un modelo y una descripción funcional de
los requerimientos y las implementaciones de diseño para varias partes de una computadora, con
especial interés en la forma en que la unidad central de proceso (UCP o CPU) trabaja internamente y
accede a las direcciones de memoria.
La unidad central de proceso está en contacto con la memoria principal, ya que consulta los datos
que hay en ella.
También suele definirse como la forma de seleccionar e interconectar componentes de hardware
para crear computadoras según los requerimientos de funcionalidad, rendimiento y costo. La
arquitectura es un diseño que tiene que estar muy bien marcado.
El ordenador recibe y envía la información a través de los periféricos por medio de los canales. La
CPU es la encargada de procesar la información que le llega al ordenador. El intercambio de
información se tiene que hacer con los periféricos y la UCP. Todas aquellas unidades de un sistema
Sistemas Informáticos
6. 6 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
exceptuando la CPU se denomina periférico, por lo que el ordenador tiene dos partes bien
diferenciadas, que son: la CPU (encargada de ejecutar programas y que está compuesta por la
memoria principal, la ALU y la UC) y los periféricos (que pueden ser de entrada, salida, entrada-salida
y comunicaciones).
La ALU (Unidad Aritmético Lógica) es un circuito digital que calcula operaciones aritméticas y
operaciones lógicas, entre dos números. Es decir, se encarga de realizar las operaciones
matemáticas.
La UC (Unidad de Control) que busca las instrucciones en la memoria principal, las decodifica
(interpretación) y las ejecuta.
1.1 CLASIFICACION
Las arquitecturas y los conjuntos de instrucciones se pueden clasificar considerando los siguientes
aspectos:
Almacenamiento de operativos en la CPU: dónde y cómo se ubican los operadores.
Número de operandos explícitos por instrucción: cuántos operandos se expresan en forma
explícita en una instrucción típica. Normalmente son 0, 1, 2 y 3. A veces es mejor que tener
varias operaciones, que sólo una.
Posición del operando: ¿Puede cualquier operando estar en memoria, o deben estar algunos
o todos en los registros internos de la CPU? (Los registros se encuentran en la Memoria Local
que tiene la CPU). Cómo se especifica la dirección de memoria (modos de direccionamiento
disponibles).
Operaciones: Qué operaciones están disponibles en el conjunto de instrucciones.
Tipo y tamaño de operandos y cómo se especifican. Es decir, cuántos bits ocupa.
1.2 ALMACENAMIENTO DE OPERANDOS EN LA CPU
La diferencia básica está en el almacenamiento interno de la CPU. Las principales alternativas son:
Acumulador: Es un registro en el que son almacenados temporalmente los resultados
aritméticos y lógicos intermedios que serán tratados por la Unidad aritmético-lógica (ALU).
Conjunto de registros: Un registro es una memoria de alta velocidad y poca capacidad que
permite guardar transitoriamente y acceder a valores muy usados, generalmente en
Sistemas Informáticos
7. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 7
operaciones matemáticas. El número de registros del procesador, define las características de
la CPU. Los datos, antes de ir al acumulador, van a los registros.
Memoria o de pila: Son dispositivos que retienen datos informáticos durante algún intervalo
de tiempo.
1.2.1 CARACTERÍSTICAS
En una arquitectura de acumulador un operando está implícitamente en el acumulador siempre
leyendo e ingresando datos. (Ej.: calculadora Standard -estándar-). Por ejemplo, una computadora
puede tener una instrucción como:
Add DireccionDeMemoria
Esta instrucción agregaría el valor leído en la posición de memoria indicada en DireccionDeMemoria
al valor del acumulador, poniendo el resultado en el acumulador. El acumulador no es identificado en
la instrucción por un número del registro; es implícito en la instrucción y ningún otro registro puede
ser especificado en la instrucción.
En la arquitectura de pila no es necesario nombrar a los operandos ya que estos se encuentran en el
tope de la pila. (Ej.: calculadora de pila HP). En cada momento sólo se tiene acceso a la parte superior
de la pila, es decir, al último objeto apilado.
Una pila típica es un área de la memoria de los computadores con
un origen fijo y un tamaño variable. Al principio, el tamaño de la
pila es cero. Un puntero de pila, por lo general en forma de un
registro de hardware, apunta a la más reciente localización en la
pila; cuando la pila tiene un tamaño de cero, el puntero de pila de
puntos en el origen de la pila.
La pila se irá llenando. El primer elemento que sale de la pila, es
el último elemento que llega.
La arquitectura de registros tiene sólo operandos explícitos (es aquel que se nombra) en registros o
memoria. Los registros se nombran como R0, R1, R2,… y todos los operadores deben ser nombrados.
1.3 LA MÁQUINA DE TURING
Turing pudo demostrar que existen problemas irresolubles, tales que ninguna máquina de Turing (y,
por ende, ningún ordenador) será capaz de obtener su solución.
1.3.1 FUNCIONAMIENTO
La máquina de Turing consta de un cabezal lector/escritor y una cinta infinita en la que el cabezal lee
el contenido, borra el contenido anterior y escribe un nuevo valor.
Sistemas Informáticos
8. 8 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Las operaciones que se pueden realizar en esta máquina se limitan a:
Avanzar el cabezal lector/escritor hacia la derecha.
Avanzar el cabezal lector/escritor hacia la izquierda.
El cómputo es determinado a partir de una tabla de estados de la forma:
(estado, valor) (nuevo valor, dirección, nuevo estado)
Esta tabla toma como parámetros el estado actual de la máquina y el carácter leído de la cinta,
dando la dirección para mover el cabezal, el nuevo estado de la máquina y el valor a escribir en la
cinta.
La memoria es la cinta de la máquina que se divide en espacios de trabajo denominados celdas,
donde se pueden escribir y leer símbolos. Inicialmente todas las celdas contienen un símbolo especial
denominado "blanco". Las instrucciones que determinan el funcionamiento de la máquina tienen la
forma, "si estamos en el estado x leyendo la posición y, donde hay escrito el símbolo z, entonces este
símbolo debe ser reemplazado por este otro símbolo, y pasar a leer la celda siguiente, bien a la
izquierda o bien a la derecha".
La máquina de Turing puede considerarse como un autómata capaz de reconocer lenguajes formales.
En ese sentido, es capaz de reconocer los lenguajes recursivamente enumerables, de acuerdo a la
jerarquía de Chomsky. Su potencia es, por tanto, superior a otros tipos de autómatas, como el
autómata finito, o el autómata con pila, o igual a otros modelos con la misma potencia
computacional.
En la siguiente dirección, tenemos un video explicativo:
http://www.youtube.com/watch?v=uU9kG_Wn1H8
1.3.2 EJEMPLO
Supongamos una máquina de Turing con un alfabeto unario, en la que el nulo (ausencia de dato) lo
señalamos con 0. La máquina puede tener cinco estados que denominamos {e0, e1, e2, e3, e4}. El
estado inicial es e0; su tabla de acción es:
S R W M N S: Estado anterior
e0 1 0 R e1 R: Símbolo leído
W: Símbolo a escribir
e1 1 1 R e1 M: Movimiento (R, L).
e1 0 0 R e2 N: Nuevo estado
e2 0 1 L e3
e2 1 1 R e2
e3 1 1 L e3
e3 0 0 L e4
e4 1 1 L e4
e4 0 1 R e0
Observe que la tabla debe contener al menos tantas filas como estados distintos. La primera
columna representa lo que podíamos denominar "estado mental" de la máquina. La segunda
Sistemas Informáticos
9. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 9
columna indica el carácter leído; representa la entrada (input) al autómata. Las siguientes (en otro
color) representan el comportamiento o respuesta de la máquina para la combinación
estado/carácter-leído. Esta respuesta tiene tres componentes:
Una salida (escribir en la cinta). Indicado en la columna W.
Un movimiento de avance o retroceso del cabezal sobre la cinta (indicado en la columna M).
Un cambio del estado interno actual del autómata a otro nuevo (columna N).
Observe que las filas pueden repetir el primer elemento; significan las acciones a tomar en cada
estado según el carácter leído. Cada vez que se alcanza un estado para el que no exista una entrada
para el carácter leído, la máquina se detiene. En nuestro autómata la tabla señala acciones concretas
para cualquier carácter leído (0 o 1) en cualquiera de los estados e1, e2, e3 y e4, pero si en el estado
e0 se lee un 0, la máquina se detiene.
Definimos una máquina de Turing sobre el alfabeto {0,1}, donde 0 representa el símbolo blanco. La
máquina comenzará su proceso situada sobre un símbolo "1" de una serie. La máquina de Turing
copiará el número de símbolos "1" que encuentre hasta el primer blanco detrás de dicho símbolo
blanco. Es decir, posicionad el cabezal sobre el 1 situado en el extremo izquierdo, doblará el número
de símbolos 1, con un 0 en medio. Así, si tenemos la entrada "111" devolverá "1110111", con "1111"
devolverá "111101111", y sucesivamente.
Un ejemplo del proceso de esta máquina puede ser el que se muestra a continuación. Como el
número de pasos de cómputo hasta que la máquina se detiene, depende de la cantidad inicial
representada en la cinta, para hacer el ciclo más breve supondremos que hay un 2 (110000...). Los
pasos ejecutados por el autómata para realizar el proceso se muestran en la tabla inferior. La
información contenida en la cinta para cada paso es la existente "antes" de la ejecución del ciclo
correspondiente. El carácter en negrita indica la posición de la cabeza en el momento de la lectura.
Paso Estado Cinta P1: La máquina ejecuta el primer paso. Arranca en el estado e0, donde
1 e0 11000 lee un 1; entonces, de acuerdo con su tabla de acción escribe un 0 en esa
2 e1 01000 posición, se mueve a la derecha y entra en estado e1.
3 e1 01000 P2: En e1 lee un 1, escribe un 1 y se mueve a la derecha. Sigue en e1.
4 e2 01000 P3: En e1 lee 0, escribe 0, se mueve a la derecha y cambia a e2.
5 e3 01010
P4: En e2 lee 0, escribe 1, se mueve a la izquierda y cambia a e3.
6 e4 01010
P5: En e3 lee 0, escribe 0, se mueve a la izquierda y cambia a e4.
7 e4 01010
8 e0 11010 P6: En e4 lee 1, escribe 1, se mueve a la izquierda y sigue en e4.
9 e1 10010
El proceso sigue la misma lógica a través de los sucesivos pasos hasta
10 e2 10010
llegar al último.
11 e2 10010
12 e3 10011 P15: En e0 lee 0; no existe ninguna entrada en la tabla para esta
13 e3 10011 combinación, por lo que el autómata se detiene. Comprobamos como al
14 e4 10011 final ha escrito en la cinta la cantidad esperada: 11011.
15 e0 11011
Parada
Sistemas Informáticos
10. 10 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Un sistema Turing completo es aquel que puede simular el comportamiento de una máquina de
Turing. Es evidente que salvando los problemas de memoria, los ordenadores modernos y los
lenguajes de programación de uso general, son sistemas de Turing completos. También es evidente,
que con independencia de su forma concreta, cualquier dispositivo que se comporte como un
sistema de Turing completo, puede en principio ejecutar cualquier cálculo que realice cualquier
computador.
Nota: Observe que la anterior afirmación no menciona para nada la posible dificultad de escribir el
programa o del tiempo que pueda emplear en realizar el cálculo (cualquier cálculo que pueda hacer
un ordenador puede teóricamente efectuarse con papel y lápiz).
EJERCICIO 1
Si en la cinta tenemos {0001110000}, escribir los pasos necesarios para obtener
{1110111}, siguiendo la tabla de acción indicada en el ejemplo anterior.
1.4 LA ARQUITECTURA HARVARD
Hacía referencia a las arquitecturas de computadoras que utilizaban dispositivos de almacenamiento
físicamente separados para las instrucciones y para los datos.
Todos los ordenadores constan principalmente de dos partes, la CPU que procesa los datos, y la
memoria que guarda los datos. Cuando hablamos de memoria manejamos dos parámetros, los datos
en sí, y el lugar donde se encuentran almacenados (o dirección). Los dos son importantes para la
CPU, pues muchas instrucciones frecuentes se traducen a algo así como "coge los datos de ésta
dirección y añádelos a los datos de ésta otra dirección", sin saber en realidad qué es lo que contienen
los datos.
Sistemas Informáticos
11. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 11
1.5 LA ARQUITECTURA DE VON NEUMANN
La arquitectura de Von Neumann describe un ordenador con 4 secciones principales: la unidad
aritmético lógica (ALU por sus siglas del inglés: Arithmetic Logic Unit), la unidad de control, la
memoria central, y los dispositivos de entrada y salida (E/S). Estas partes están interconectadas por
canales de conductores denominados buses:
La memoria es una secuencia de celdas de almacenamiento numeradas, donde cada una es
un bit o unidad de información. La instrucción es la información necesaria para realizar lo que
se desea con el computador. Las «celdas» contienen datos que se necesitan para llevar a cabo
las instrucciones, con el computador. El número de celdas varían mucho de computador a
computador, y las tecnologías empleadas para la memoria han cambiado bastante; van desde
los relés electromecánicos, tubos llenos de mercurio en los que se formaban los pulsos
acústicos, matrices de imanes permanentes, transistores individuales a circuitos integrados
con millones de celdas en un solo chip. En general, la memoria puede ser reescrita varios
millones de veces (memoria RAM); se parece más a una pizarra que a una lápida (memoria
ROM) que sólo puede ser escrita una vez.
El procesador (también llamado Unidad central de procesamiento o CPU) consta de manera
básica de los siguientes elementos:
o La unidad aritmético lógica o ALU es el dispositivo diseñado y construido para
llevar a cabo las operaciones elementales como las operaciones aritméticas (suma,
resta, ...), operaciones lógicas (Y, O, NO), y operaciones de comparación o relacionales.
En esta unidad es en donde se hace todo el trabajo computacional.
o La unidad de control sigue la dirección de las posiciones en memoria que
contienen la instrucción que el computador va a realizar en ese momento; recupera la
información poniéndola en la ALU para la operación que debe desarrollar. Transfiere
luego el resultado a ubicaciones apropiadas en la memoria. Una vez que ocurre lo
anterior, la unidad de control va a la siguiente instrucción (normalmente situada en la
siguiente posición, a menos que la instrucción sea una instrucción de salto,
informando al ordenador de que la próxima instrucción estará ubicada en otra
posición de la memoria).
Los procesadores pueden constar de además de las anteriormente citadas, de otras unidades
adicionales como la unidad de Coma Flotante.
Los dispositivos de Entrada/Salida sirven a la computadora para obtener información
del mundo exterior y/o comunicar los resultados generados por el computador al exterior.
Hay una gama muy extensa de dispositivos E/S como teclados, monitores, unidades de disco
flexible o cámaras web.
Sistemas Informáticos
12. 12 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
1.5.1 CUELLO DE BOTELLA DE VON NEUMANN
El canal de transmisión de los datos entre CPU y memoria genera un cuello de botella para el
rendimiento del procesador. En la mayoría de computadoras modernas, la velocidad de
comunicación entre la memoria y la CPU es más baja que la velocidad a la que puede trabajar esta
última, reduciendo el rendimiento del procesador y limitando seriamente la velocidad de proceso
eficaz, sobre todo cuando se necesitan procesar grandes cantidades de datos. La CPU se ve forzada a
esperar continuamente a que lleguen los datos necesarios desde o hacia la memoria.
La velocidad de procesamiento y la cantidad de memoria han aumentado mucho más rápidamente
que el rendimiento de transferencia entre ellos, lo que ha agravado el problema del cuello de botella.
El problema de funcionamiento se redujo introduciendo una memoria caché entre la CPU y la
memoria principal, y mejorando los algoritmos del predictor de ramas (es un circuito digital que trata
de adivinar de qué manera una rama (por ejemplo, una estructura si-entonces-sino) se presentará
ante lo que se conoce a ciencia cierta. El propósito de la rama de predicción es mejorar el flujo en la
tubería de instrucciones).
1.6 EL SISTEMA INFORMÁTICO
- N o v i s t o -
Un sistema es un conjunto de partes o elementos organizados y relacionados que interactúan entre
sí para lograr un objetivo. Los sistemas reciben (entrada) datos, energía o materia del ambiente y
proveen (salida) información, energía o materia.
Un sistema puede ser físico o concreto (un ordenador, un televisor, un humano) o puede ser
abstracto o conceptual (un software)
Cada sistema existe dentro de otro más grande, por lo tanto un sistema puede estar formado por
subsistemas y partes, y a la vez puede ser parte de un supersistema.
Los sistemas tienen límites o fronteras, que los diferencian del ambiente. Ese límite puede ser físico
(el gabinete de un ordenador) o conceptual. Si hay algún intercambio entre el sistema y el ambiente
a través de ese límite, el sistema es abierto, de lo contrario, el sistema es cerrado.
El ambiente es el medio en externo que envuelve física o conceptualmente a un sistema. El sistema
tiene interacción con el ambiente, del cual recibe entradas y al cual se le devuelven salidas. El
ambiente también puede ser una amenaza para el sistema.
Un grupo de elementos no constituye un sistema si no hay una relación e interacción, que de la idea
de un "todo" con un propósito (ver holismo y sinergía).
Un sistema informático como todo sistema, es el conjunto de partes interrelacionadas, hardware,
software y de recurso humano (humanware) que permite almacenar y procesar información. El
hardware incluye computadoras, que consisten en procesadores, memoria, sistemas de
almacenamiento externo, etc. El software incluye al sistema operativo, firmware y aplicaciones,
siendo especialmente importante los sistemas de gestión de bases de datos. Por último el soporte
humano incluye al personal técnico que crean y mantienen el sistema (analistas, programadores,
operarios, etc.) y a los usuarios que lo utilizan.
Sistemas Informáticos
13. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 13
Los sistemas informáticos suelen estructurarse en Subsistemas.
Subsistema físico: asociado al hardware. Incluye entre otros elementos la CPU, memoria
principal, la placa base, etc.
Subsistema lógico: asociado al software y la arquitectura. Incluye al sistema operativo, el
firmware, las aplicaciones y las bases de datos.
La lógica se define como aquélla representación del conocimiento y/o del formalismo racional
originalmente desarrollada por matemáticos para formalizar el razonamiento matemático.
Se considera componente lógico de un sistema informático lo que no se puede considerar tangible,
es decir, todo aquello que tiene que ver con la información que se maneja en el sistema y con las
herramientas intangibles necesarias para ello. No debe confundirse con el concepto de lógica que
impera en el mundo de la inteligencia artificial (lógica de predicados o la lógica proposicional).
Se pueden distinguir cuatro grandes grupos considerados lógicos en un sistema:
Datos: son los valores numéricos, o bien caracteres, medidas multidimensionales, tales como
vectores, matrices,...
La información: como tal, es un conjunto de datos relacionados por alguna estructura o
alguna relación de tipo sintáctico. En general, se la considera un subconjunto dentro de los
datos.
El conocimiento: constituido por elementos de información con ciertos significados
semánticos y se le suele considerar un subconjunto de la información
La inteligencia: conjunto específico de la información capaz de interpretar y gestionar otra.
Es el subconjunto más interior del espacio total de datos.
1.6.1 DATOS
El ordenador permite la recepción de datos entrantes, que se procesan según indican las
instrucciones que posee el sistema. Por último, proporciona unos datos de salida que son los
resultados.
1.6.1.1 TIPOS DE DATOS
Se pueden considerar tres tipos de datos, según el punto del proceso en el que se encuentren:
Datos de entrada: son los que llegan al ordenador a través de alguno de los periféricos de
entrada, tales como el teclado, lectores, etc.; o bien llegan desde unidades de
almacenamiento, como son los discos. A veces este concepto se confunde con captura de
datos -actividad de introducción de datos, casi siempre automatizada, en el que la recepción
de los datos tiene una importancia secundaria-, y con la preparación de los datos -labor que
supone preparar los datos para su entrada en el sistema, formateándolos o codificándolos-.
Datos intermedios: son los resultados que se van produciendo y que no forman parte de la
salida porque no se especificó de esa manera en el diseño del programa.
Datos de salida: Son los datos resultados del procesamiento de los datos de entrada y de los
intermedios. La forma de obtenerlos para su análisis es por medio de un periférico de salida,
como son las pantallas o las impresoras; o bien almacenarlos.
Sistemas Informáticos
14. 14 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
1.6.2 CLASIFICACIÓN DE LOS SISTEMAS INFORMÁTICOS
Los S.I. pueden clasificarse en base a numerosos criterios. Por supuesto las clasificaciones no son
estancas y es común encontrar sistemas híbridos que no encajen en una única categoría.
Por su uso pueden ser:
De uso general: varios tipos de aplicaciones.
De uso específico: han sido desarrollados para ser utilizados con un fin concreto, o una
aplicación específica.
Por el paralelismo de los procesadores, que puede ser:
SISD: Single Instruction Single Data - es un término que se refiere a una arquitectura en la
que un sólo procesador, ejecuta un sólo flujo de instrucciones, para operar sobre datos
almacenados en una única memoria. Se corresponde con la arquitectura de von Neumann.
Ejemplo: PC’s.
SIMD: Single Instruction Multiple Data - Las computadoras SIMD tienen una sola unidad de
control y múltiples unidades funcionales. La unidad de control se encarga de enviar la misma
instrucción a todas las unidades funcionales. Cada unidad funcional trabaja sobre datos
diferentes. Estos equipos son de propósito específico, es decir, son apropiados para ciertas
aplicaciones particulares, como por ejemplo el procesamiento de imágenes.
MIMD: Multiple Instruction Multiple Data - Múltiples computadoras y multiprocesadores. Las
piezas de código distribuidas entre los procesadores. Los procesadores pueden ejecutar la
misma o instrucción o diferentes instrucciones. Se puede decir que MIMD es un super
conjunto de SIMD.
Por el tipo de ordenador utilizado en el sistema
Estaciones de trabajo (Workstations): Tipo de ordenador utilizado en aplicaciones de
ingenieráia CAD/CAM, diseño gráfico, desarrollo de software y otros tipos de aplicaciones que
requieren una moderada capacidad de computación y altas cualidades gráficas.
Terminales ligeros (Thin clients): es una computadora cliente o un software de cliente en una
arquitectura de red cliente-servidor que depende primariamente del servidor central para las
tareas de procesamiento, y principalmente se enfoca en transportar la entrada y la salida
entre el usuario y el servidor remoto.
Microordenadores (por ejemplo ordenadores personales): ordenador relativamente barato
diseñado para un usuario individual aunque se utiliza conjuntamente con otros formando
redes de ordenadores.
Miniordenadores (servidores pequeños): es un sistema multiprocesador de tamaño medio
capaz de soportar unos cientos de usuarios simultáneamente a un coste inferior al de un
sistema grande.
Macroordenadores o Mainframes (servidores de gran capacidad): Un Mainframe es un
ordenador de grandes dimensiones pensado principalmente para el tratamiento de
grandísimos volúmenes de datos. Se utiliza para aplicaciones de Banca, Hacienda y mercado
de valores, aerolíneas y tráfico aéreo. En definitiva, es un ordenador grande, en todos los
sentidos (tanto por su capacidad, como por el volumen que ocupa).
Superordenadores: es el tipo más rápido, también son los más caros y se emplean para
aplicaciones especializadas que requieren gran proceso de cálculo.
Sistemas Informáticos
15. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 15
Por la arquitectura
Sistema aislado: es un ordenador incapaz de comunicarse con el exterior por vía telemática.
Arquitectura cliente-servidor: es un modelo de aplicación distribuida en el que las tareas se
reparten entre los proveedores de recursos o servicios, llamados servidores, y los
demandantes, llamados clientes.
Arquitectura de 3 capas:
Arquitectura de n capas:
Servidor de aplicaciones: se denomina servidor de aplicaciones a un servidor en una red de
computadores que ejecuta ciertas aplicaciones.
Monitor de teleproceso o servidor de transacciones:
Sistemas Informáticos
16. 16 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
2 SISTEMAS DE NUMERACIÓN
http://www.um.es/docencia/barzana/II/Ii05.html
2.1 INTRODUCCIÓN
Un ordenador es una máquina que procesa información. La ejecución de una tarea implica la
realización de unos tratamientos, según especifica un conjunto ordenado de instrucciones (es decir,
un programa) sobre unos datos. Para que el ordenador ejecute un programa es necesario darle
información de dos tipos:
Instrucciones que forman el programa
Los datos con los que debe operar ese programa
Uno de los aspectos más importantes relacionado con la información, es cómo representarla.
Normalmente se le da al ordenador en la forma usual escrita que utilizan los humanos, es decir, con
ayuda de un alfabeto o conjunto de símbolos, los caracteres.
Los caracteres que se utilizan para la representación externa son:
Numéricos: Constituidos por las diez dígitos en el sistema decimal
Alfabéticos: Letras mayúsculas y minúsculas
Especiales: Son símbolos no incluidos en los grupos anteriores, como: ), (, *, /, +, -, [, ]...
Al conjunto de los dos primeros grupos se le denominan caracteres alfanuméricos.
Veremos cómo estos caracteres usados en la representación externa son representables en los
ordenadores. Este paso de una representación a otra se denomina codificación y el proceso inverso
decodificación.
Por lo tanto hay dos niveles en la representación de la información
Nivel de representación externa: usada por las personas e inadecuada para el ordenador.
Nivel de representación interna: adecuada al ordenador y no inteligible directamente por el
ser humano.
Las informaciones más complejas se reducirán a un conjunto de informaciones elementales por
técnicas de codificación.
Los elementos básicos que constituyen un ordenador son de naturaleza binaria, ya que sólo pueden
adoptar dos valores, 0 y 1 (corresponden a dos niveles de tensión, dos valores de corriente, dos
situaciones de una lámpara... ). Al tener que traducir toda la información suministrada a ceros y unos
es necesario establecer una correspondencia entre el conjunto de todos los caracteres:
{A, B, C, D,...Z, a, b, c,...z, 0, 1,...9, /, +,...}
y el conjunto binario:
{0, 1}n
Sistemas Informáticos
17. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 17
de forma que a cada elemento del primero le corresponda un elemento distinto del segundo.
Estos códigos de transformación se denominan códigos entrada/salida (E/S) o externos y se pueden
definir de forma arbitraria. Las operaciones aritméticas con datos numéricos se suelen realizar en
una representación más adecuada para este objetivo que la del código de E/S. Por ello en el propio
ordenador se efectúa una transformación entre códigos binarios, obteniéndose una representación
fundamentada en el sistema de numeración en base dos, que al ser una representación numérica
posicional es muy apta para realizar operaciones aritméticas.
2.1.1 CÓDIGOS DE ENTRADA/SALIDA.
Los códigos de E/S o externos son códigos que asocian a cada carácter una combinación de bit. En
otras palabras, un código de E/S es una correspondencia entre los conjuntos:
A = {0, 1,...9, A, B,...Z, a, b,...z, *, +, /...} y B = {0, 1}n
Si se usa un número fijo, n, de bit para codificar los símbolos de A, el valor mínimo de n dependerá
del número m de elementos de A. Así:
Con 2 bit (n=2) podemos hacer 4 combinaciones distintas y se pueden codificar hasta 4
símbolos (m=4) distintos
Con 3 bit (n=3) podemos hacer 8 combinaciones distintas y se pueden codificar hasta 8
símbolos (m=8) distintos
Con 4 bit (n=4) podemos realizar 16 combinaciones dise pueden codificar hasta 16 símbolos
(m=16) distintos
....
Con n bit pueden codificarse m = 2n símbolos distintos.
Se define un sistema de numeración como el conjunto de símbolos y reglas que se utilizan para la
representación de cantidades. En ellos existe un elemento característico que define el sistema y se
denomina base, siendo ésta el número de símbolos que se utilizan para la representación.
Un sistema de numeración en base "b" utiliza para representar los números un alfabeto compuesto
por b símbolos o cifras. Así todo número se expresa por un conjunto de cifras, teniendo cada una de
ellas dentro del número un valor que depende:
De la cifra en sí
De la posición que ocupe dentro del número
En el sistema de numeración decimal (base 10), que habitualmente se utiliza, b = 10 y el alfabeto por
tanto, está constituido por 10 símbolos: {0, 1, 2..., 9}
Generalizando se tiene que la representación de un número en una base b :
N = ...n4 n3 n2 n1 n0 n-1 n-2 ...
es una forma abreviada de expresar su valor, que es:
N = n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2
Sistemas Informáticos
18. 18 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Ejemplo en base 8:
b = 8. Los símbolos que se usan son: {0, 1, 2, 3, 4, 5, 6, 7}
El valor decimal del número octal 175.37 será:
175.37)8 = 1*82 + 7*81 + 5*80 + 3*8-1 + 7*8-2 = 125.31)10
2.2 NUMEROS BINARIOS, OCTALES Y HEXADECIMALES.
Cuando ya no tenemos más dígitos para representar en un sistema, siempre se pasa al “10”, por eso:
En Decimal, pasamos del 9 al 10
En Binario, pasamos del 1 al 10
En Octal, pasamos del 7 al 10
DEC 0 1 2 3 4 5 6 7 8 9 10
BIN 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010
OCT 0 1 2 3 4 5 6 7 10 11 12
2.2.1 SISTEMA DECIMAL
El sistema de numeración utilizado habitualmente es la base 10; es decir, consta de 10 dígitos {0-9}
que podemos colocar en grupos, ordenados de izquierda a derecha y de mayor a menor.
Cada posición tiene un valor o peso de 10n donde n representa el lugar contado por la derecha:
1357 = 1 x 103 + 3 x 102 + 5 x 101 + 7 x 100
Explícitamente, se indica la base de numeración como 135710.
En un ordenador el sistema de numeración es binario -en base 2, utilizando el 0 y el 1- hecho
propiciado por ser precisamente dos los estados estables en los dispositivos digitales que componen
una computadora. Es decir, un ordenador trabaja con impulsos y por eso trabaja con el sistema
binario. Si trabajara con un sistema decimal se ganaría en facilidad, pero se perdería efectividad y
eficiencia, pues tendría que hacer más comparaciones.
2.2.2 SISTEMA BINARIO
Análogamente a la base 10, cada posición tiene un valor de 2 n donde n es la posición contando desde
la derecha y empezando por 0:
Sistemas Informáticos
19. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 19
2 1 0
101(2 = 1 x 2 + 0 x 2 + 1 x 2
En el sistema de numeración binario b=2, el conjunto de símbolos usados es: {0, 1}.
2.2.3 SISTEMA OCTAL
Además, por su importancia y utilidad, es necesario conocer otros sistemas de numeración como
pueden ser el octal (base 8) y el hexadecimal (base 16).
En la base octal, b = 8, el conjunto de símbolos utilizados es: {0, 1,..., 7}.
La unidad básica, en el ordenador, es el byte (8 dígitos), por eso se usa mucho el sistema octal, ya que
se hacen muchas operaciones en este sistema.
2.2.4 SISTEMA HEXADECIMAL
Para representar un número en base hexadecimal (b = 16) es necesario disponer de un conjunto o
alfabeto de 16 símbolos. Se suele usar el conjunto:
{0, 1, 2,..., 9, A, B, C, D, E, F}
Dec 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Hex 0 1 2 3 4 5 6 7 8 9 A B C D E F
48F(16 = 4 x 162 + 8 x 161 + 15 x 160
2.2.5 AGRUPACIÓN DE CIFRAS
2.2.5.1 OCTAL-BINARIO / BINARIO-OCTAL
Llegar a un número en este sistema desde base 2 es realmente sencillo si agrupamos las cifras
binarias de 3 en 3 (octal).
Para convertir un número octal a binario sólo debemos sustituir cada dígito octal por su equivalente
binario.
Equivalencias:
OCTAL 0 1 2 3 4 5 6 7
BINARIO 000 001 010 011 100 101 110 111
Ejemplo:
537.24)8 = 101 011 111 . 010 100)2
que equivale según la tabla, a: 5 3 7 . 2 4
La conversión de binario a octal se realiza juntando en grupos de tres dígitos binarios, comenzando
por la izquierda desde el punto decimal y sustituyendo cada grupo por el correspondiente dígito
Sistemas Informáticos
20. 20 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
octal.
Ejemplo:
El número binario 10001101100.11010)2 es en octal 10 001 101 100 . 110 10 = 2154.64)8
2.2.5.2 HEXADECIMAL-BINARIO / BINARIO-HEXADECIMAL
Llegar a un número en este sistema desde base 2 es realmente sencillo si agrupamos las cifras
binarias de 4 en 4 (hexadecimal).
Equivalencias:
HEX BINARIO DECIMAL HEX BINARIO DECIMAL
0 0000 0 8 1000 8
1 0001 1 9 1001 9
2 0010 2 A 1010 10
3 0110 3 B 1011 11
4 0100 4 C 1100 12
5 0101 5 D 1101 13
6 0110 6 E 1110 14
7 0111 7 F 1111 15
Ejemplo:
Pasar el número binario 010010111011111.1011101)2 a hexadecimal.
010 0101 1101 1111 . 1011 101)2 = 25DF.BA)16
Ejemplo:
Pasar el número 1ABC701.C4)16 a binario:
0001 1010 1011 1100 0111 0000 0001 . 1100 0100 )2
1 A B C 7 0 1 C 4
El número binario resultante es:
0001101010111100011100000001.11000100)2
De ahora en adelante, se utilizarán una serie de sufijos para determinar el sistema de numeración
empleado:
Sufijo Base Ejemplos
b 2 01101010b
o,q 8 175o
d 10 789d
h 16 6A5h
En caso de que no aparezca el sufijo, el número se considera decimal; es decir, en base 10.
Sistemas Informáticos
21. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 21
Si nos piden transformar un número de hexadecimal a octal, es más fácil pasar de
hexadecimal a binario y de binario a octal. Lo mismo ocurre de octal a hexadecimal.
2.3 CAMBIO DE BASE
Pese a que las conversiones entre base 2 y base 8 y 16 son prácticamente directas, existe un sistema
general para realizar el cambio de una base a otra.
2.3.1 DE BINARIO A DECIMAL / DE DECIMAL A BINARIO
Se puede transformar un número binario a decimal sin más que usar la expresión vista
anteriormente:
n4 n3 n2 n1 n0 n-1 n-2...(2 = ...n4 24 + n3 23 + n2 22 + n1 21 + n0 20+ n-1 2-1 +… = N(10
Ejemplos:
Transformar a decimal los siguientes números binarios:
110100)2 = 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 0*20 = 25 + 24 + 22 = 52)10
0.10100)2 = 0*20 + 1*2-1 + 0*2-2 + 1*2-3 + 0*2-4 + 0*2-5 = 2-1 + 2-3 = 0.625)10
10100.001)2 = 1*24 + 1*22 + 1*2-3 = 20.125)10
Para transformar un número decimal a binario:
a) La parte entera del nuevo número (binario) se obtiene efectuando divisiones enteras (sin obtener
decimales) por dos, de la parte entera del número decimal de partida y de los cocientes que
sucesivamente se vayan obteniendo. Los restos de estas divisiones y el último cociente (que
serán siempre ceros y unos) son las cifras binarias. El último cociente será el bit más significativo
y el primer resto el bit menos significativo (más a la derecha).
Ejemplo:
26)10 es en binario:
26 | 2_
0 13 | 2_
1 6 | 2_
0 3 |2_
1 1
26)10 = 11010)2
Al dividir un número entre 2 el resto no puede ser más que 0 o 1.
b) La parte fraccionaria del número binario se obtiene multiplicando por 2 sucesivamente la parte
fraccionaria del número decimal de partida y las partes fraccionarias que se van obteniendo en
los productos sucesivos. El número binario se forma con las partes enteras (que serán ceros y
unos) de los productos obtenidos.
Sistemas Informáticos
22. 22 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Ejemplo:
Transformar a binario natural el número decimal 0.1875
0.1875 0.3750 0.7500 0.5000
*2 *2 *2 * 2
--------- ---------- ---------- ----------
0.3750 0.7500 1.5000 1.0000
0.1875)10 = 0.0011)2
Ejemplo: Transformar a binario el número decimal 74.423
a) Parte entera:
74 | 2_
0 37 | 2__
1 18 | 2__
0 9 | 2_
1 4 | 2__
0 2 | 2__
0 1
b) Parte fraccionaria:
0.423 0.846 0.692 0.384 0.768
*2 *2 *2 *2 *2
-------- --------- --------- --------- ---------
0.846 1.692 1.384 0.768 1.536
74.423)10 = 1001010.01101...)2
Podríamos tener una operación infinita, ya que es un sistema de codificación distinto.
Por lo tanto, si tenemos un número con parte entera y parte decimal, hay que hacer las operaciones
por separado. Por ejemplo
745,01423
Dividir entre 2 Multiplicar por 2
2.3.2 DE OCTAL A DECIMAL / DE DECIMAL A OCTAL
Se transforma un número octal a decimal utilizando la expresión vista anteriormente:
n4 n3 n2 n1 n0 n-1 n-2...(2 = ...n4 84 + n3 83 + n2 82 + n1 81 + n0 80+ n-1 8-1 +… = N(10
Por ejemplo, el número octal 2738 tiene un valor que se calcula así:
2*83 + 7*82 + 3*81 = 2*512 + 7*64 + 3*8 = 149610
2738 = 149610
Para transformar un número decimal a octal: Para pasar un número entero decimal a octal se
hacen sucesivas divisiones enteras del número y los subsiguientes cocientes por 8 (al igual que en
Sistemas Informáticos
23. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 23
binario). Para transformar la parte fraccionaria de un número decimal a octal se hacen sucesivas
multiplicaciones por 8 (de la misma forma que en binario).
Ejemplo:
Para pasar el número decimal 760.33)10 a octal:
760 | 8__
40
0 95 | 8__
15
7 11 | 8__
3 1
0.33 0.64 0.12 0.96
*8 *8 *8 *8
------ ------- ------- -------
2.64 5.12 0.96 7.68
El número en octal es 1370.2507
Cuando dividimos la parte entera entre 8, el resto tiene que ser un dígito entre 0 y 7.
2.3.3 DE HEXADECIMAL A DECIMAL / DE DECIMAL A
HEXADECIMAL
Se transforma un número hexadecimal a decimal utilizando la expresión vista anteriormente:
n4 n3 n2 n1 n0 n-1 n-2...(2 = ...n4 164 + n3 163 + n2 162 + n1 161 + n0 160+ n-1 16-1 +… = N(10
Calculemos, a modo de ejemplo, el valor del número hexadecimal 1A3F16:
1A3F16 = 1*163 + A*162 + 3*161 + F*160
1*4096 + 10*256 + 3*16 + 15*1 = 6719
1A3F16 = 671910
Para transformar un número decimal a hexadecimal: Para pasar un número de decimal a
hexadecimal se hace de forma análoga a los casos binario y octal: la parte entera se divide por 16, así
como los cocientes enteros sucesivos, y la parte fraccionaria se multiplica por 16, así como las partes
fraccionarias de los productos sucesivos.
Ejemplo:
El número 4573.79)10 se corresponde en hexadecimal:
4573 |16
137
093 285 |16
13 125
13 17 |16
1 1
Sistemas Informáticos
24. 24 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
0.79 0.64 0.24
* 16 * 16 * 16
------ ----- - -----
474 384 144
+79 +64 +24
----- ---- -----
12.64 10.24 3.84
C A 3
El número en hexadecimal es 11DD.CA3)16
2.4 ESTRUCTURA ELEMENTAL DE LA MEMORIA
2.4.1 BIT
Toda la memoria del ordenador se compone de dispositivos electrónicos que pueden adoptar
únicamente dos estados, que representamos matemáticamente por 0 y 1. Cualquiera de estas
unidades de información se denomina BIT, contracción de «binary digit» en inglés.
2.4.1.1 El tamaño de las cifras binarias
La cantidad de dígitos necesarios para representar un número en el sistema binario es mayor que en
el sistema decimal.
Para representar números grandes harán falta muchos más dígitos. Por ejemplo, para representar
números mayores de 255 se necesitarán más de ocho dígitos, porque 28 = 256 y podemos afirmar,
por tanto, que 255 es el número más grande que puede representarse con ocho dígitos.
Como regla general, con n dígitos binarios pueden representarse un máximo de 2 n, números. El
número más grande que puede escribirse con n dígitos es una unidad menos, es decir, 2 n – 1. Con
cuatro bits, por ejemplo, pueden representarse un total de 16 números, porque 2 4 = 16 y el mayor de
dichos números es el 15, porque 24-1 = 15.
2.4.2 BYTE
Cada grupo de 8 bits se conoce como byte u octeto.
Los bits en un byte se numeran de derecha a izquierda y de 0 a 7, correspondiendo con los
exponentes de las potencias de 2 que reflejan el valor de cada posición. Un byte nos permite, por
tanto, representar 256 estados (de 0 a 255) según la combinación de bits que tomemos.
Al principio, en lugar de trabajar con 8 bits, se cogían 7, por lo que se podían codificar 27 = 128
estados. Es lo que se denomina el código ASCII. Pero con los nuevos microprocesadores se vio que
se necesitaba más caracteres añadiéndose un bit. Por esta razón, se dijo que
el byte iba a ser la unidad de medida.
El byte es la unidad de almacenamiento en memoria, la cual está constituida por un elevado número
de posiciones que almacenan bytes. La cantidad de memoria de que dispone un sistema se mide en
Sistemas Informáticos
25. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 25
Kilobytes (1 Kb = 1024 bytes), en Megabytes (1 Mb = 1024 Kb), Gigabytes (1 Gb = 1024 Mb),
Terabytes (1 Tb = 1024 Gb) o Petabytes (1 Pb = 1024 Tb).
2.4.3 NIBBLE
Cada grupo de cuatro bits de un byte constituye un nibble, de forma que los dos nibbles de un byte
se llaman nibble superior (el compuesto por los bits 4 a 7) e inferior (el compuesto por los bits 0 a 3).
El nibble tiene gran utilidad debido a que cada uno almacena un dígito hexadecimal:
Binario Hex. Decimal Binario Hex. Decimal
0000 0 0 1000 8 8
0001 1 1 1001 9 9
0010 2 2 1010 A 10
0011 3 3 1011 B 11
0100 4 4 1100 C 12
0101 5 5 1101 D 13
0110 6 6 1110 E 14
0111 7 7 1111 F 15
Parte alta Parte baja
Unidades de medida:
Los fabricantes multiplican por 1000 (Sistema Internacional: SI), en lugar de 1024.
Sistemas Informáticos
26. 26 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Nomenclatura:
Byte Kilobyte Megabyte Gigabyte Terabyte Petabyte Exabyte Zettabyte Yottabyte Brontobyte
B KB MB GB TB PB EB ZB YB BB
2.5 COMPLEMENTO A DOS
El complemento a dos de un número N, compuesto por n bits, se define como:
C2N = 2n – N
Veamos un ejemplo: tomemos el número N = 101101 (2, que tiene 6 bits, y calculemos su
complemento a dos:
N = 4510 n = 6 26 = 64 y, por tanto: C2N = 64 – 45 = 19 = 010011(2
En general, se define como valor negativo de un número el que necesitamos sumarlo para obtener
00h, por ejemplo:
Por esta razón, el número 80h, cuyo complemento a dos es él mismo, se considera negativo (-128) y
el número 00h, positivo. En general, para hallar el complemento a dos de un número cualquiera
basta con calcular primero su complemento a uno, que consiste en cambiar los unos por ceros y los
ceros por unos en su notación binaria; a continuación se le suma una unidad para calcular el
complemento a dos.
Otro factor a considerar es cuando se pasa de operar con un número de cierto tamaño (ej., 8 bits) a
otro mayor (pongamos de 16 bits). Si el número es positivo, la parte que se añade por la izquierda
son bits a 0. Sin embargo, si era negativo (bit más significativo activo) la parte que se añade por la
izquierda son bits a 1. Este fenómeno, en cuya demostración matemática no entraremos, se puede
resumir en que el bit más significativo se copia en todos los añadidos: es lo que se denomina la
extensión del signo: los dos siguientes números son realmente el mismo número (el -310): 11012 (4
bits) y 111111012 (8 bits).
2.6 COMPLEMENTO A UNO
El complemento a uno de un número N, compuesto por n bits es, por definición, una unidad
menor que el complemento a dos, es decir:
C1N = C2N - 1
y, por la misma razón:
C2N = C1N + 1
Sistemas Informáticos
27. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 27
Calculemos el complemento a uno del mismo número del ejemplo anterior:
N = 101101, y su complemento a dos C2N = 010011
C1N = C2N – 1 = 010011 – 000001 = 010010
C1N = 010010
Da la sensación de que calcular el complemento a uno no es más que una forma elegante de
complicarse la vida, y que no va a ser más sencillo restar utilizando el complemento a dos, porque el
procedimiento para calcular el complemento a dos es más difícil y laborioso que la propia resta. Pero
es mucho más sencillo de lo que parece.
En realidad, el complemento a uno de un número binario es el número resultante de invertir los
UNOS y CEROS de dicho número. Por ejemplo si:
N = 110100101
obtenemos su complemento a uno invirtiendo ceros y unos, con lo que resulta:
C1N = 001011010
y su complemento a dos es:
C2N = C1N + 1 = 001011011
Veamos otro ejemplo: N = 0110110101
El complemento a uno es:
C1N = 1001001010
y el complemento a dos es:
C2N = 1001001011
2.7 AGRUPACIONES DE BYTES.
Tipo Definición
Palabra 2 bytes contiguos
Doble palabra 2 palabras contiguas (4 bytes)
Cuádruple palabra 4 palabras contiguas (8 bytes)
Párrafo 16 bytes
Página 256 bytes, 16 Kb, etc.
Segmento 64 Kbytes
Por ejemplo, en los colores RGB, donde R es la cantidad de Rojo, G la cantidad de Verde y B la
cantidad de Azul. Para indicar la cantidad de Rojo, de Verde o de Azul, se usa dos palabras, en cada
uno de los casos, por ejemplo: 00 00 FF, donde 00 son dos palabras.
2.8 REPRESENTACIÓN DE LOS DATOS EN MEMORIA
2.8.1 NUMEROS BINARIOS: máximo número representable
Sistemas Informáticos
28. 28 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Tipo Sin signo
1 byte 255 ¡Cuidado! 2 bytes no es el
2 bytes 65.535 doble del byte
4 bytes 4.294.967.295
8 bytes 18.446.744.073.709.551.615
Tipo Positivo Negativo
1 byte 127 -128
2 bytes 32.767 -32.768
4 bytes 2.147.483.647 -2.147.483.648
8 bytes 9.223.372.036.854.775.807 -9.223.372.036.854.775.808
Los números binarios de más de un byte se almacenan en la memoria en los procesadores de Intel en
orden inverso: 01234567h se almacenaría: 67h, 45h, 23h, 01h.
2.8.2 NUMEROS BINARIOS CODIFICADOS EN DECIMAL (BCD)
Consiste en emplear cuatro bits para codificar los dígitos del 0 al 9 (desperdiciando las seis
combinaciones que van de la 1010 a la 1111). La ventaja es la simplicidad de conversión a/de base
10, que resulta inmediata. Los números BCD pueden almacenarse desempaquetados, en cuyo caso
cada byte contiene un dígito BCD (Binary-Coded Decimal); o empaquetados, almacenando dos dígitos
por byte (para construir los números que van del 00 al 99). La notación BCD ocupa cuatro bits -un
nibble- por cifra, de forma que en el formato desempaquetado el nibble superior siempre es 0.
2.8.3 NUMEROS EN PUNTO FLOTANTE
Son grupos de bytes en los que una parte se emplea para guardar las cifras del número (mantisa) y
otra para indicar la posición del punto flotante (exponente), de modo equivalente a la notación
científica. Esto permite trabajar con números de muy elevado tamaño -según el exponente- y con
una mayor o menor precisión en función de los bits empleados para codificar la mantisa.
Por ejemplo, si tenemos el número 0.9 102, solo se almacena el 9 y el 2. De esta forma se puede
almacenar números muy grandes.
2.8.4 CÓDIGO ASCII
El código A.S.C.I.I. (American Standard Code for Information Interchange) es un convenio adoptado
para asignar a cada carácter un valor numérico; su origen está en los comienzos de la Informática
tomando como muestra algunos códigos de la transmisión de información de radioteletipo. Se trata
de un código de 7 bits con capacidad para 128 símbolos que incluyen todos los caracteres
alfanuméricos del inglés, con símbolos de puntuación y algunos caracteres de control de la
transmisión. Se dieron cuenta que con 128 no eran suficientes y surgió el ASCII extendido. Hasta el
128, en todos los países era el mismo, pero el resto puede ser distintos, según el país.
Con posterioridad, con la aparición de los microordenadores y la gran expansión entre ellos de los
IBM-PC y compatibles, la ampliación del código ASCII realizada por esta marca a 8 bits, con capacidad
para 128 símbolos adicionales, experimenta un considerable auge, siendo en la actualidad muy
Sistemas Informáticos
29. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 29
utilizada y recibiendo la denominación oficial de página de códigos 437 (EEUU). Se puede consultar al
final de este libro. Es habitualmente la única página soportada por las BIOS de los PC. Para ciertas
nacionalidades se han diseñado otras páginas específicas que requieren de un software externo. En
las lenguas del estado español y en las de la mayoría de los demás países de la UE, esta tabla cubre
todas las necesidades del idioma.
2.9 OPERACIONES LÓGICAS EN BINARIO
Se realizan a nivel de bit y pueden ser de uno o dos operandos:
x y x AND y x OR y x XOR y x NOT (x)
0 0 0 0 0 0 1
0 1 0 1 1 1 0
1 0 0 1 1
1 1 1 1 0
2.10 OPERACIONES ARITMÉTICAS SENCILLAS EN
BINARIO
Una variable binaria puede representar, una cifra de un número en el sistema de numeración en base
dos. Las operaciones aritméticas básicas con variables binarias naturales son la suma, resta,
multiplicación y división. Estas operaciones son análogas a las realizadas en decimal pero usando
ceros y unos.
SUMA PRODUCTO
A B A+ B A B A* B
0 0 0 0 0 0
0 1 1 0 1 0
1 0 1 1 0 0
1 1 0 y llevo 1 1 1 1
RESTA DIVISIÓN
A B A- B A B A/ B
0 0 0 0 0 -
0 1 1 y llevo 1 0 1 0
1 0 1 1 0 -
1 1 0 1 1 1
Las operaciones lógicas o booleanas con variables binarias son la suma lógica (+), llamada también
función OR, el producto lógico (llamado también AND y la complementación (-) o negación o NOT.
Sistemas Informáticos
30. 30 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Ejemplos:
1110101 1101010 1101010
1110110 - 1010111 * 11
------------- ------------- ------------
11101011 0010011 1101010
+ 1101010
---------------
100111110
2.10.1 RESTAR EN BINARIO USANDO EL COMPLEMENTO A DOS
Para representar un número negativo se puede utilizar el complemento de ese número a la base. De
esta forma las sumas y restas quedan reducidas a sumas. Este sistema de representación es de sumo
interés en el caso de los ordenadores ya que al usarlo se reduce la complejidad de los circuitos.
El complemento a la base de un número, es el número que resulta de restar a cada una de las cifras
del número N a la base menos uno del sistema que se esté utilizando y posteriormente sumar uno a
la diferencia obtenida.
Sistemas Informáticos
31. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 31
Ejemplo:
En base 10:
Base menos uno del sistema: 9
Representar el número 63 en complemento a la base.
N = 63 99 36
-63 +1
------ ------
36 37
Es decir, el complemento a 10 (base) del número 63 es 37.
En base 2:
Base menos uno: 1
Complemento a 2 del número 10010 es 01110
11111 01101
- 10010 + 1
------------- -------------
01101 01110
Complemento a 2 del número 101010 es 010110
111111 010101
101010 + 1
----------- ------------
010101 010110
Observamos que para transformar un número binario N a complemento a 2 basta con cambiar los 0
por 1 y los 1 por 0 de N y sumar 1 al resultado.
Veremos ahora que la utilidad de esta representación es para convertir la realización de las restas a
sumas, lo cual simplifica el diseño del procesador.
Ejemplo: Base 10
Supongamos que se ha de realizar la siguiente operación: 77 - 63
Se puede hacer de dos formas diferentes:
a) Directamente: 77 - 63 = 14
b) Utilizando el complemento a 10 del substraendo: del 63 es 37
99 36
-63 +1
---- -----
36 37
77
+37
-----
114
- (No se considera)
Sistemas Informáticos
32. 32 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
El resultado es 14
Es decir, para restar basta con sumar el minuendo con el complemento a la base del substraendo y
sin considerar el acarreo.
Ejemplo: Base 2
Supongamos se ha de efectuar la siguiente resta:
11001 – 10010
Se puede hacer de dos formas:
a) Directamente:
11001
-10010
--------
00111
b) Usando el complemento a 2 del substraendo:
El substraendo es 10010. Su complemento a 2 se obtiene cambiando
0 por 1 y 1 por 0.
01101
y sumándole 1
01101
+ 1
--------
01110
Ahora sumamos al minuendo el complemento a 2 del
substraendo :
11001
+01110
---------
100111
- (No se considera)
2.11 REPRESENTACIÓN INTERNA DE LA INFORMACIÓN.
- N o v i s t o -
En la memoria y el procesador central la información se transmite y procesa en unidades
denominadas palabras. La organización de las palabras depende del ordenador, siendo usuales las
longitudes: 8, 16, 32, 36, 60 y 64 bit, aunque hay hasta de 512 bit.
La memoria principal se encuentra organizada en palabras, cada una de las cuales tiene asignada una
Sistemas Informáticos
33. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 33
dirección. Los intercambios de información entre el procesador y la memoria se hacen en unidades
denominadas palabras y no en caracteres (octetos) o en bit.
Normalmente para aprovechar la memoria, la longitud de la palabra debe ser un múltiplo entero del
número de bit usados para representar un carácter.
Los datos se introducen inicialmente en el ordenador según un código de entrada/salida (que ya
hemos visto), tanto si estos son de tipo alfabético como de tipo numérico.
Los datos de tipo numérico se utilizan normalmente para operar aritméticamente con ellos, y la
representación simbólica obtenida con el código de E/S no resulta adecuada para realizar este tipo
de operaciones. Resulta más adecuado operar en un sistema de numeración que en un código de
E/S.
Por los motivos anteriores, y teniendo en cuenta que la ALU opera con palabras, se realiza una
conversión de notaciones pasando de la representación simbólica de E/S a otra notación que
denominamos representación interna.
2.11.1 TIPOS DE INFORMACION
En un sistema de procesamiento de la información es necesaria la codificación de tres clases de
información:
1) Información numérica:
a) Enteros
b) Reales
c) Complejos
d) Lógicos
2) Información no numérica (o alfanumérica):
a) Caracteres
3) Instrucciones del programa
A) Datos de tipo complejo
Los datos de tipo complejo se representan por parejas de números reales almacenados en
posiciones consecutivas de memoria. Es decir, pueden considerarse como un caso particular de
números reales.
B) Datos de tipo lógico
Representan un valor del Algebra de Boole binaria, es decir, 0 (falso) ó 1 (verdad).
C) Representación en punto fijo
El nombre de esta representación surge al considerar el punto fraccional, situado en una posición
fija. El punto fijo es utilizado para la representación de números enteros, suponiéndose el punto
fraccional ubicado a la derecha de los bits. Cualquiera de los sistemas de representación de
enteros es una representación de punto fijo. También, se puede utilizar la representación en
punto fijo para representar fracciones binarias escalando los números, de modo que el punto
fraccional quede ubicado implícitamente en otra posición entre los bit, y en el caso límite a la
izquierda de todos ellos describiendo un número fraccional binario puro (menor a 1).
Sistemas Informáticos
34. 34 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
1 El signo se representa en el bit situado más a la izquierda de la palabra. Este bit es 0 si el
número es positivo ó 1 si el número es negativo.
2 El valor absoluto:
2.1 Números positivos: Se almacenan directamente el número en binario natural.
2.2 Números negativos: Dependiendo del ordenador se almacena el complemento a 2 del
número binario natural o la magnitud del número en binario natural.
Ejemplo de representación interna de datos de tipo entero en un ordenador de palabras de 4 bit:
DECIMAL SIGNO Y MAGNITUD COMPLEMENTO A 2
7 0111 0111
6 0110 0110
5 0101 0101
4 0100 0100
3 0011 0011
2 0010 0010
1 0001 0001
+0 0000 0000
-0 1000 ----
-1 1001 1111
-2 1010 1110
-3 1011 1101
-4 1100 1100
-5 1101 1011
-6 1110 1010
-7 1111 1001
-8 ----- 1000
D) Representación en punto flotante
El punto flotante surge de la necesidad de representar números reales y enteros con un rango de
representación mayor que el que ofrece la representación en punto fijo y posibilitar al ordenador el
tratamiento de números muy grandes y muy pequeños. Estas ventajas que ofrece el punto flotante
traen como contraprestación una disminución en la precisión de los números representados.
En su representación se utiliza la notación científica o exponencial matemática en la que una
cantidad se representa de la siguiente forma:
n° = mantisa * base de exponenciación exponente
Un número en esta notación tiene infinitas representaciones, de las que se toma como estándar la
denominada normalizada, que consiste en que la mantisa no tiene parte entera y el primer dígito o
cifra a la derecha del punto decimal es significativo (distinto de 0), salvo en la representación del
número 0.
Ejemplo (^ significa elevado a):
835.4 = 8354*10^-1 = 835.4 * 10^0 = 83.54 * 10^1 = 8.354 * 10^2 = .8354 * 10^3
Representación del número decimal 835.4 con base de exponenciación 10. Siendo está última
expresión la que corresponde al número normalizado.
Sistemas Informáticos
35. UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS 35
En este sistema de codificación, se dividen los bit disponibles en la palabra o doble palabra del
ordenador entre la mantisa y el exponente, teniendo una base de exponenciación determinada (2 o
potencia de 2). Normalmente la definición de la coma flotante sigue las siguientes reglas:
El exponente se representa en uno de los siguientes sistemas de codificación: módulo y
signo o exceso a 2n-1, siendo siempre un número entero. En este sistema de codificación el
exponente también recibe el nombre de característica.
La mantisa es un número real con el punto decimal implícito a la izquierda de sus bits,
representada normalmente en uno de los siguientes sistemas de codificación: módulo y
signo, complemento a 1 o complemento a 2.
La base de exponenciación es una potencia de 2 determinada por el fabricante del equipo
(2, 8 o 16).
Existen muchas formas de representación en punto flotante, variando la longitud de la palabra
del ordenador, la base de la exponenciación, el número de bit reservados para la mantisa y para
el exponente, el sistema utilizado para representar la mantisa y el exponente, etc. El punto
flotante se define particularmente en cada caso. Las definiciones más comunes son las siguientes:
a) para simple precisión (32 bit)
signo exponente mantisa
31 30 23 22 0
b) para doble precisión (64 bit)
signo exponente mantisa
63 62 52 51 0
El rango de representación en la coma flotante debe ser analizado teniendo en cuenta los
máximos y mínimos valores representables tanto con signo positivo como negativo:
mínimo número negativo = -(mantisa máxima) * basemáximo exponente
máximo número negativo = -(mantisa mínima) * base-máximo exponente
mínimo número positivo = mantisa mínima * base-máximo exponente
máximo número positivo = mantisa máxima * basemáximo exponente
Conviene observar que existen cuatro zonas de números que no pueden ser
representados mediante un determinado formato de coma flotante. Estas zonas están
ubicadas cercanas al 0, tanto para valores positivos como negativos (subdesbordamiento
positivo o negativo), como para valores grandes (positivos) o pequeños (negativos) que
exceden el rango de representación.
Ejemplo
Un ordenador utiliza el siguiente formato para registrar números en punto flotante:
los bit del 23 al 30 se utilizan para representar el exponente en exceso a 128 (2 7)
los bit del 0 al 22 se utilizan para representar la mantisa normalizada para el
sistema Módulo y signo
el bit 31 se utiliza para representar el signo de la mantisa (0 para el +)
la base de exponenciación es 2
el 0 se representa con todos los bit en 0.
Sistemas Informáticos
36. 36 UT1. EXPLOTACIÓN DE SISTEMAS INFORMÁTICOS
Representar en este formato el número 12:
12 en notación normalizada de base 2 es 0.75 * 24
el exponente de valor 4 en exceso a 128 es: 10000100
la mantisa 0.75 en binario es 0.11
de donde la representación del número 12 quedará como:
0 10000100 11000000000000000000000
signo (+) exponente 4 mantisa 0.75
Representar en el formato definido el 12. En este caso la notación normalizada solo sufre cambio
en el signo de la mantisa (-0.75 * 24), la expresión quedará entonces:
1 10000100 11000000000000000000000
signo (-) exponente 4 mantisa 0.75
El rango de representación de este formato en coma flotante será:
mínimo negativo = -(1 - 223)*2127 = -2127 = 1.701411834605 * 1038
máximo negativo = -0.5 * 2-128 = -2-129 = -1.469367938528 * 10-39
mínimo positivo = 0.5 * 2-128 = 2-129 = 1.469367938528 * 10-39
máximo positivo = (1 - 223)*2127 = 2127 = 1.701411834605 * 1038
E) Datos de tipo carácter
Los datos de tipo carácter, representan sencillamente cadenas de caracteres representados
según el código de E/S.
A las representaciones de los caracteres se les imponen las siguientes condiciones:
Deben englobar las 26 letras del alfabeto latino, los 10 dígitos y un cierto número de
caracteres gráficos (operadores) y signos de puntuación.
Deben permitir añadir nuevos caracteres específicos.
Deben incluir un sistema de redundancia que permita la detección de errores en el curso
de la transmisión.
Los subconjuntos de letras y números deben estar ordenados y ser coherentes. Estarán
en dos grupos diferentes y ordenados.
F) Codificación de instrucciones
Las instrucciones llevan cierto número de informaciones:
Código de operación.
Dirección de operandos/resultados.
Condiciones de direccionamiento, etc.
A cada una de estas informaciones se le asocia una zona formada por un número de bits
suficientes para codificar los diferentes estados posibles de la instrucción.
Sistemas Informáticos