ICCeISW_02 - FISI

10
Introducción a la computación e ingeniería de software Unidad 2 - Principios de la computación Sesión 2 – Almacenamiento de datos Fany Sobero Objetivos Conocer y explicar los conceptos que son base para la computación: Almacenamiento de datos Manipulación de los datos Sistemas Operativos Redes de computadoras Desarrollar programas que muestren como: Se almacenan los datos Se manipula los datos Bits y su almacenamiento Toda la información que guarda una computadora esta codificada en 0’s y 1’s. Estos valores son conocidos como bits. Estos bits nos van a ayudar a representar los diferentes valores que se manejan en una computadora: letras del alfabeto, símbolos de puntuación, valores numéricos, imágenes y sonidos. Operaciones booleanas Para un mejor entendimiento de cómo los bits son almacenados y manipulados. Nos podemos imaginar que el 0 representa el valor falso y 1 el valor verdad. Existen 3 operaciones básicas resumidas en la siguiente tabla: Operaciones booleanas … Los operadores booleanos pueden ser representados por puertas. Mediante las puertas se representan los circuitos lógicos AND 0 AND 0 0 0 AND 1 0 1 AND 0 0 1 AND 1 1 OR 0 OR 0 0 0 OR 1 1 1 OR 0 1 1 OR 1 1 XOR 0 XOR 0 0 0 XOR 1 1 1 XOR 0 1 XOR 0 1 1 Puerta AND

description

Introduccion a la Ingeniería de Software - UNMSM

Transcript of ICCeISW_02 - FISI

  • Introduccin a la computacin e ingeniera de software

    Unidad 2 - Principios de la computacinSesin 2 Almacenamiento de datos

    Fany Sobero

    Objetivos

    Conocer y explicar los conceptos que son base para la computacin: Almacenamiento de datos Manipulacin de los datos Sistemas Operativos Redes de computadoras

    Desarrollar programas que muestren como: Se almacenan los datos Se manipula los datos

    Bits y su almacenamiento

    Toda la informacin que guarda una computadora esta codificada en 0s y 1s. Estos valores son conocidos como bits.

    Estos bits nos van a ayudar a representar los diferentes valores que se manejan en una computadora: letras del alfabeto, smbolos de puntuacin, valores numricos, imgenes y sonidos.

    Operaciones booleanas

    Para un mejor entendimiento de cmo los bits son almacenados y manipulados.

    Nos podemos imaginar que el 0 representa el valor falso y 1 el valor verdad. Existen 3 operaciones bsicas resumidas en la siguiente tabla:

    Operaciones booleanas

    Los operadores booleanos pueden ser representados por puertas.

    Mediante las puertas se representan los circuitos lgicos

    AND 0AND00

    0AND10

    1AND00

    1AND11

    OR 0OR00

    0OR11

    1OR01

    1OR11

    XOR 0XOR00

    0XOR11

    1XOR01

    0XOR00

    1

    1

    Puerta AND

  • Puerta OR Puerta XOR

    Puerta NOT Flip-flops

    Es un circuito construido a partir de la puertas que pueden almacenar un bit de informacin.

    Es un tipo de circuito que produce una salida de 0 1 que permanece constante hasta que un estmulo proveniente de un circuito o fuente externa permite el cambio de estado.

    Flip-flops Ejemplo:

    Flip-flops El valor de 1 es puesto en el 1er input:

  • Flip-flops El valor de 1 en el 1er input ocasiona que la

    puerta OR tenga valor de salida 1. Luego, la salida de la puerta AND tambin cambia a 1.

    Flip-flops

    El valor se mantiene, incluso luego de que el valor del 1er input regresa a 0.

    Flip-flops

    Otro ejemplo de circuito FLIP-FLOP:

    Flip-flops

    El circuito inicialmente tiene como salida y entradas en 0. Se ingresa el valor de 1 en el 1er input para ser almacenado en el Flip-Flop.

    Flips-flops

    El valor de salida 1 se mantiene, an si el valor del 1er input regresa a 0.

    Flip-flops

    Los flip-flops, demuestran como los circuitos son construidos a partir puertas lgicas, en un proceso conocido como diseo de circuitos digitales.

    Los flip-flop, son un buen ejemplo para mostrar cmo se almacenan los bits de informacin en la computadora.

  • Notacin hexadecimal

    La computadora para realizar operaciones debe trabajar con cadenas de bits.

    Las cadenas largas de bits se denominan flujos de bits (streams).

    La notacin hexadecimal es una forma abreviada de representar los flujos y cadenas de bits. Permite leer, copiar y escribir flujos de bits de una

    manera abreviada y con menor riesgo de cometer errores.

    Las longitudes de los flujos de bits usados en la computadora son mltiplos de 4.

    Para convertir una cadena o flujo se debe dividir la cadena en grupos de 4 bits y aplicar el siguiente sistema de codificacin:

    Notacin hexadecimal

    Ejemplos:

    Patrn de bits Representacin en hexadecimal

    Memoria principal

    Es un conjunto de circuitos (tales como los flip-flops) que permiten almacenar un conjunto de bits.

    Esta organizada en unidades llamadas celdas.

    Organizacin de la memoria

    Celdas: Son unidades manejables de 8 bits, que en su conjunto conforman la memoria del computador.

    Byte: una cadena de 8 bits Bits de orden superior: los bits del lado izquierdo de una

    celda. Bits de orden inferior: los bits del lado derecho de una

    celda. Bit menos significante: el ltimo bit del bloque

    correspondiente al orden inferior. Bit ms significante: el primer bit de la cadena (lado

    izquierdo).

    Organizacin de la memoria - celdas Direccionamiento en memoria principal

    Para identificar a cada celda se le asigna un nombre nico llamado direccin.

    Direccin: Es un cdigo consecutivo, comenzando en cero. Como tienen un orden pueden accederse mediante direcciones conocidas : celda previa, siguiente celda.

    Varias celdas pueden ser usada para guardar un patrn de bits que es mayor a la capacidad de una celda.

  • Direccionamiento en memoria principal

    RAM (Random Access Memory Memoria de Acceso Aleatorio): Memoria cuyas celdas pueden ser accedidas de manera independiente.

    Direccionamiento memoria principal

    Capacidad de la memoria

    Kilobyte = 210 = 1024 bytes (mil bytes aprox.)

    Megabyte = 220 = 1,048,576 bytes (un milln de bytes aprox.)

    Gigabyte = 230 = 1,073,741,824 bytes (un billn de bytes aprox.)

    Terabyte = 240 = 1,099,511,627,776 bytes (un trilln de bytes aprox.)

    Memoria Rom ( Read Only Memory )

    Es una memoria solamente de lectura es totalmente inalterable, sin esta memoria la maquina no arrancara.

    Viene incorporada a la motherboard y es utilizada por la PC para dar inicio a la BIOS, lo cual es bsicamente un programa que posee las instrucciones adecuadas para guiar a la computadora durante el arranque

    RAM VS. ROM

    La diferencia fundamental que existe entre la memoria RAM y la ROM radica en la velocidad, ya que la ROM al tratarse de un tipo de memorial secuencial necesita recorrer todos los datos hasta hallar la informacin que est buscando, mientras que la RAM trabaja de manera aleatoria, lo que hace que acceda a la informacin especfica de manera directa.

    Memoria Cache -SRAM

    El proceso que realiza la memoria cach es guardar las ubicaciones en el disco que ocupan los programas que han sido ejecutados, para que cuando vuelvan a ser iniciados el acceso a la aplicacin logre ser ms rpido.

  • Dispositivos de almacenamiento masivo No es voltil. Es decir, los datos permanecen aun despus

    de que la computadora es apagada. Usualmente es mucho ms grande que la memoria

    principal, siendo su costo menor. Usualmente los dispositivos son discos rotativos: Discos

    duros, discos flexibles, CDs. El acceso es ms lento que a una memoria principal:

    Tiempo de espera mientras se acomoda el cabezal (tiempo de bsqueda)

    Tiempo de espera mientras el disco se acomoda (latencia rotacional)

    Almacenamiento en disco

    Almacenamiento en CD Almacenamiento en cinta magntica

    Memoras FLASH (USB y SD)

    El acceso es mas rpido con respecto a los discos y cintas. Los bits son almacenados en pequeas cmaras de

    dixido de silicio. El acceso es parecido al usado en la memoria principal. Las cmaras de dixido de silicio se desgastan al borrarse

    la informacin. Ideal para cmaras fotogrficas, celulares y PDAs.

    Archivos Es la unidad de almacenamiento en un dispositivo

    de almacenamiento masivo. La informacin se agrupa normalmente en

    registros lgicos y campos. Registro fsico: es un bloque de datos organizado

    de acuerdo a las caractersticas de un dispositivo de almacenamiento.

    Buffer: reas de la memoria principal que sirve para ensamblar los registros lgicos o los campos de un archivo. Algunos dispositivos tienen incorporados sus propios buffers.

  • Registros fsicos y lgicos Representacin de la informacin

    Representacin de la palabra Hello en ASCII.

    Representacin de la palabra: Hola en ASCII.

    Representacin de texto

    A cada caracter tales como: letras, smbolos de puntuacin, etc.; se le asigna un patrn de bits nico. ASCII (American Standard Code for Information

    Interchange): Utiliza 7 bits para representar los caracteres y smbolos usados en ingls, tambin los del espaol.

    UNICODE : Utiliza 16 bits, con lo que se representar 65,536 smbolos en idiomas como Chino, Japons y Hebreo.

    ISO : Propone el uso de 32 bits para la representacin de smbolos.

    Representacin de valores numricos No se utilizan caracteres para representarlos. Se utilizan bits, es decir se representan en base 2. Con 16 bits podemos representar de 0 a 65535 Los lmites dependen de la computadora: Desbordamiento: ocurre cuando un nmero es muy

    grande para ser representado Truncamiento: ocurre cuando el patrn correcto para

    representar un nmero es muy grande.

    Representacin de imgenes

    Mapeo de bits (bit map) : Cada pixel en la pantalla es representado por tres componentes RGB (Red, Green y Blue). Es decir se necesitan 3 bytes para representar un pixel en color.

    Esta tcnica es similar a la usada por las cmaras digitales. La principal desventaja es que la imagen no puede ser ampliada o reducida de manera arbitraria. Una manera es agrandar los pixeles, tal como lo hace el zoom digital.

    Representacin del sonido

    Se representan por valores numricos. Para comunicaciones telefnicas de larga distancia se toman 8000 muestras por segundo de la amplitud de la onda.

    Para los CDs de msica se toman 44,100 muestras por segundo, cuyos valores se guardan en 32 bits (estreo).

    El formato MIDI guarda direcciones para reproducir msica en vez de valores, es mas eficiente pero depende del sintetizador.

  • El sistema binario

    Representacin en sistema decimal

    Representacin en sistema binario

    3 7 5 Representacinenbase10

    Centena Decena Unidad CantidadporPosicin

    1 0 1 1 Representacinenbase2

    Ocho Cuatro Dos Uno CantidadporPosicin

    Sistema binario

    Ejemplo: A cuanto equivale el nmero 100101 en base 10?

    1 0 0 1 0 1

    Totalx32 x16 x8 x4 x2 x1

    32 0 0 4 0 1 37

    Sistema binario

    Como encontrar la representacin binaria de un nmero decimal? Ejemplo: 13.

    13/2=6Residuo=1

    6/2=3Residuo=0

    3/2=1Residuo=1

    1/2=0Residuo=1

    1 1 0 1

    Fracciones en binario

    Se representan utilizando el punto base. Es decir, los nmeros a la derecha del punto representan la parte entera y los de la izquierda la parte decimal.

    1 0 1 . 1 0 1Totalx4 x2 x1 x1/2 x1/4 x1/8

    4 0 1 0 5

    Fracciones en binario

    Comprobar si se puede aplicar las tcnicas de suma conocidas.

    1 0 . 0 1 1Total1 0 0 1 1 0

    ?

    Representacin de enteros La tcnica usada mayormente es conocida como

    complemento a dos. El 1er bit de la izquierda representa el signo: 0 para los positivos y 1 para los negativos. Los positivos se cuentan de manera creciente y los negativos de manera decreciente.

    Cadena de 3 bits Cadena

    de 4 bitsUna

    computadora utiliza 32 bits

    Una computadora utiliza 32 bits

  • Problema de desbordamiento

    Que ocurre si sumamos 5 + 4, aplicando la tcnica de complemento a 2 usando 4 bits?101 + 100 = ?

    Este problema se presenta cuando el resultado se encuentra fuera del rango de los valores que pueden ser representados.

    Se le conoce como overflow. Las computadoras modernas utilizan 32 bits para almacenar valores utilizando la tcnica de complemento a 2.

    Representacin de enteros Otra de las tcnicas es la denominada:

    notacin por exceso:

    Almacenamiento de fracciones

    Notacin de punto flotante

    Almacenamiento de fracciones

    Punto flotante precisin simple 32 bits

    Almacenamiento de fracciones

    Ejemplo: 0 1 1 0 1 0 1 1

    0 Bit designo.0positivoy1negativo.1 Exponente.Seinterpretacomounentero

    usandoelmtododeexcesode3bits.Sedebemoverelpunto2bitsaladerecha

    1

    0

    1 Mantisa.Eselvaloralcualseleaplicaelsignoyexponente.Paraelejemplo,elvalores:10.11(23/4)

    0

    1

    1

    Almacenamiento de fracciones

    Ejemplos:

    Representa : -23/4

    Representa: 3/8

    1 1 1 0 1 0 1 1

    0 0 1 1 1 1 0 0

  • Almacenamiento de fracciones

    Convertir de fracciones (decimales) a notacin punto flotante. Ejemplo 3/8 (se representa por 0.011)

    1. Copiar en las posiciones de la mantisa a partir del 1er bitque aparece en 1. En el ejemplo .011 :

    2. Completar el exponente dependiendo si el punto se debe mover a la izquierda o derecha:

    3. Completar con el signo:

    1 1 0 0

    0 1 1 1 1 0 0

    0 0 1 1 1 1 0 0

    Compresin de datos

    Sin perdida. Codificacin por largo de apariciones. Codificacin dependiente de la frecuencia. Se

    establecen diccionarios donde los smbolos frecuentes son representados por cadenas de bits cortas.

    Codificacin por diccionario. Se almacenan referencias a un diccionario comn en vez de palabras completas.

    Compresin de datos

    Codificacin por diccionario adaptativo. El diccionario se forma dinmicamente. El ms conocido es: LZW (Lempel-Ziv-Welsh). Ejemplo: codificar el mensaje :

    xyx xyx xyx xyx Diccionario:

    1 x2 y34 xyx

    Codificacin: 121343434Inicial

    Dinmico

    Compresin de datos

    Con prdida: GIF (Graphic Interchange Format). Reduce el

    nmero de colores a 256. Los pxeles representados por tres bytes (RGB) son reducidos a un 1 byte.

    MPEG (Motion picture Experts Group) y MP3. Comprimen el audio y video por codificacin diferencial, es decir guardan un frame base y las diferencias.

    Preguntas de comprobacin

    Enumere los tipos de memoria. Qu es un buffer?. Qu es un archivo?. Qu es una celda?. A que se llama desbordamiento?.