Tema IV. Manejo Interno de Datos

Documentos relacionados
Organización de Computadoras. Clase 2

Área Académica: Ingeniería en Computación. Profesor: M. en C. Evangelina Lezama León

Capítulo 2 REPRESENTACIÓN DE LOS DATOS. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Representación de Datos. Una Introducción a los Sistemas Numéricos

TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN

UT01 03 Sistemas de codificación

Representación de datos y aritmética básica en sistemas digitales


Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Sistema Binario. Pedro Chávez Lugo webpage: pedro. 23 de junio de 2013

Fundamentos de Programación. Sabino Miranda-Jiménez

5.2. Sistemas de codificación en binario

Sistemas Operativos. IES Pedro Espinosa. Relación de ejercicios Tema 1: Conceptos básicos de informática

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Aritmética de Enteros

Informática. Temas 27/03/2014. Carrera: Bioingeniería Profesora: Lic. S. Vanesa Torres JTP: Ing. Thelma Zanon

Representación de la Información.... en los Computadores

TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN

CONVERSIONES ENTRE NUMEROS DE BASE DIFERENTE

Numeración Maya. Numeración indo-arábiga. Sistemas de Numeración Posicional. Conversión de una base cualquiera a base 10 = 4! !

Introducción a Códigos

CAPÍTULO II SISTEMAS NUMÉRICOS. Este método de representar los números se llama sistema de numeración decimal, donde 10 es la base del sistema.

1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5.

UD 1. Representación de la información

13/10/2013. Clase 02: Sistemas de Numeración. Sistemas Digitales y Arquitectura de Computadoras. Ing. Christian Lezama Cuellar.

Hardware I - Datos e información en el ordenador

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8

Tema 1. Representación de la información MME

En la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales

SISTEMAS DE NUMERACION

Guía práctica de estudio 06: Lenguaje binario

Representación de la Información

Representación de Datos

Representación de la información

MatemáticaDiscreta&Lógica 1

Representación de la Información en los Sistemas Digitales

SISTEMAS DE NUMERACIÓN CON REPRESENTACIÓN POSICIONAL DE LOS NÚMEROS

Guía práctica de estudio 06: Lenguaje binario

TEMA 3 Representación de la información

SISTEMAS Y CÓDIGOS DE NUMERACIÓN

Representación de la Información en una Computadora

Materia Introducción a la Informática

TEMA II: SISTEMAS DE NUMERACIÓN

Capítulo 2 Representación Interna de Datos 2.1 Introducción

Informática Básica. 2º Diplomatura en Ciencias Empresariales Universidad Pública de Navarra. Informática Básica, DCE-UPNA 1

Bits, Bytes y Datos y tipos de datos.

1 LA INFORMACION Y SU REPRESENTACION

Represent. Información. Caracteres Alfanuméricos

TEMA 2 REPRESENTACIÓN BINARIA

Estructura de Computadores

Técnicas y Dispositivos Digitales 1. UNIDAD 3 Códigos Binarios

Tema 2. Representación de Datos

5 centenas + 2 decenas + 8 unidades, es decir: = 528

CONCEPTOS BÁSICOS DE INFORMÁTICA. REPRESENTACIÓN DE LA INFORMACIÓN.

Representación de números enteros: el convenio exceso Z

Definición(2) La base (r) de un sistema de numeración especifica el número de dígitos o cardinal* de dicho conjunto ordenado. Las bases más utilizadas

ESTRUCTURA DE COMPUTADORES I (Capítulo 1: Estructura elemental de la memoria) 1/6 1-ESTRUCTURA ELEMENTAL DE LA MEMORIA

Computación Tercer Año

SISTEMAS NUMÉRICOS (SISTEMAS DE NUMERACIÓN)

Sistemas Numéricos y Códigos Binarios

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES

Tema 2 Representación de la información. Fundamentos de Computadores

Definición de Memoria

TÉCNICAS DIGITALES SISTEMAS NUMÉRICOS

SISTEMAS DE NUMERACION

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

SISTEMAS DE NUMERACION

Sistemas de numeración, operaciones y códigos.

1. Introducción a la Arquitectura de Computadoras

Tema 1. SISTEMAS DE NUMERACION

Unidad 3: Control y programación de sistemas automáticos Tema 1: Sistemas de control: introducción

Guía número 1. Métodos numéricos. Universidad de san buenaventura de Cali

Computación I Representación Interna Curso 2011

Tema 3. Electrónica Digital

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería Química Curso 2010/2011

INFORMÁTICA. Matemáticas aplicadas a la Informática

TEMA 1: EL ORDENADOR Y SUS COMPONENTES

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

TEMA 1. FUNCIONAMIENTO DE UN

Se entiende por sistema numérico a los símbolos y al conjunto de reglas que se aplican sobre ellos para realizar la representación de una cantidad.

Representación de Datos. Representación de datos numéricos. Representación de datos caracteres. Representación de otros tipos de datos

Introducción a la Programación 11 O. Humberto Cervantes Maceda

5. Codificación n de información en binario

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: = =8245,97

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS DIGITALES.

Tema 2. Sistemas de representación de la información

1. SISTEMAS DIGITALES

El sistema binario es una secuencia de números que contiene unos y ceros, así;

Instituto Tecnológico de Celaya

Clase 1 Sistemas de numeración

Sistemas Numéricos Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas

Computación y Programación Representación de Datos

Sistema binario. Representación

Transcripción:

Tema IV. Manejo Interno de Datos Objetivo: El alumno describirá cómo se almacenan los datos en los diferentes medios de un sistema de cómputo, asimismo manipulará los datos para minimizar los diferentes errores que pueden suscitarse en su almacenamiento.

4.1 Unidades de medida de almacenamiento: bit, byte y palabra Tipos de Datos En la actualidad los datos se presentan de diferentes maneras, por ejemplo números, texto, imágenes, audio y video. Datos Texto Numero Imagen Audio Video

4.1 Unidades de medida de almacenamiento: bit, byte y palabra Los datos dentro de una computadora Cómo se manejan todos estos tipos de datos? No es necesario tener varias computadoras para poder procesar estos tipos de datos, ya que, por lo general son una mezcla de tipos. La solución más eficaz es usar una representación uniforme de los datos. Todo tipo de datos que entran del exterior a una computadora se transforman en esta representación uniforme cuando se almacenan en una computadora y se vuelven a transformar en su representación original cuando salen de la computadora. Este formato universal se llama patrón de bits.

4.1 Unidades de medida de almacenamiento: bit, byte y palabra Unidades de Medida Bit Unidad mínima de información de la memoria, equivalente a un "sí" (0) o un "no" (1) binarios. 0 1 Byte Compuesta de 8 bits consecutivos. Cada byte puede representar, por ejemplo, una letra. a = 01100001 Palabra Es la agrupación de 1, 2 o 4 bytes.

4.1 Unidades de medida de almacenamiento: bit, byte y palabra John Wilder Tukey (1915 2000) Estadístico nacido en New Bedford, Massachusetts. Mientras trabajaba con John von Neumann en los primeros diseños de computadoras, Tukey introdujo la palabra "bit" como contracción de "Dígito binario" (por sus siglas en inglés Binary Digit). Tukey usó el termino "Software de Computación" (Computer Software) en un contexto computacional en un artículo de 1958 en el American Mathematical Monthly, aparentemente el primer uso del término.

4.1 Unidades de medida de almacenamiento: Patrón de Bits bit, byte y palabra Cómo sabe la computadora qué tipo de datos representa el patrón de bits? No lo sabe. La memoria de la computadora sólo almacena los datos como patrones de bits. Es responsabilidad de los dispositivos de entrada/salida o de los programas interpretar un patrón de bits como un número, texto o algún otro tipo de datos. En otras palabras, los datos se codifican cuando entran a la computadora y se decodifican cuando se presentan al usuario.

4.1 Unidades de medida de almacenamiento: bit, byte y palabra Unidades de Medida Nibble Conjunto de 4 bits 1001 Byte Conjunto de 8 bits 10101010 Kilobyte (Kb) Conjunto de 1024 bytes 1024 * 8 bits Megabyte (Mb) Conjunto de 1024 Kb 1024 2 * 8 bits Gigabyte (Gb) Conjunto de 1024 Mb 1024 3 * 8 bits Terabyte (Tb) Conjunto de 1024 Gb 1024 4 * 8 bits

4.1 Unidades de medida de almacenamiento: bit, byte y palabra 1024? Para medir la cantidad de información representada en binario se utilizan múltiplos que a diferencia de otras magnitudes físicas utilizan el factor multiplicador 1024 en lugar de 1000, debido a que es el múltiplo de 2 más cercano a este último ( 2 10 =1024)

4.2 Representación de datos tipo texto Representación de Datos Una pieza de texto en cualquier idioma es una secuencia de símbolos usados para representar una idea en ese idioma. Se puede representar cada símbolo con un patrón de bits. Dicho de otra forma, texto como la palabra BYTE, formada por cuatro símbolos, pueden representarse como 4 patrones de bits, en los que se define un solo símbolo.

4.2 Representación de datos tipo texto Código ASCII ASCII El Instituto Nacional Norteamericano de Estándares (ANSI: American National Standards Institute) desarrolló un código llamado Código norteamericano de estándares para intercambio de información (ASCII: American Standard Code for Information Interchange). Este código utiliza siete bits para cada símbolo. Esto significa que 128 (2 7 ) símbolos distintos pueden definirse mediante este código.

4.2 Representación de datos tipo texto ASCII utiliza un patrón de siete bits que varía de 0000000 a 1111111 El primer patrón (0000000) representa el carácter nulo (la ausencia de carácter) El último patrón (1111111) representa el carácter de eliminación. Hay 31 caracteres de control (no imprimibles). Los caracteres numéricos (0 a 9) se codifican antes que las letras. Hay varios caracteres de impresión especiales. Las letras mayúsculas (A Z) están antes que las letras minúsculas (a z). Los caracteres en mayúsculas y minúsculas se distinguen sólo por un bit. Por ejemplo, el patrón para A es 1000001; el patrón para a es 1100001. La única diferencia es el sexto bit a partir de la derecha. Hay seis caracteres especiales entre las letras mayúsculas y minúsculas.

4.2 Representación de datos tipo texto A principios de la era de las computadoras, IBM desarrolló un código llamado Código extendido de intercambio decimal codificado en binario (EBCDIC: Extended Binary Coded Decimal Interchange Code). Este código utiliza patrones de ocho bits, de manera que puede representar hasta 256 símbolos. Sin embargo, este código no se utiliza más que en computadoras mainframe de IBM.

4.2 Representación de datos tipo texto UNICODE Ninguno de los códigos anteriores representa símbolos que pertenecen a idiomas distintos al inglés. Por eso, se requiere un código con mucha más capacidad. Una coalición de fabricantes de hardware y software ha diseñado un código llamado UNICODE que utiliza 16 bits y puede representar hasta 65536 (2 16 ) símbolos. Diferentes secciones del código se usan para símbolos gráficos y especiales.

Los sistemas de numeración son las distintas formas de representar la información numérica. Se nombran haciendo referencia a la base, que representa el número de dígitos diferentes para representar todos los números. Sistema de numeración Egipcio

Actualmente empleamos el sistema decimal que cuenta con los dígitos del 0 al 9 para nuestros cálculos cotidianos. Este es un ejemplo de sistema de numeración posicional cuya base es 10. Dada una cantidad, cada dígito tiene un valor específico de acuerdo con la posición que ocupa., centenas, decenas, unidades

Las modernas computadoras digitales no pueden utilizar la base 10 para realizar sus operaciones, ellas ocupan la base 2 que únicamente emplea los dígitos 0 y 1 en la representación de cantidades. Sistema Octal 0, 1, 2, 3, 4, 5, 6, 7 Sistema Hexadecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Tabla de valores posicionales para definición de cantidades en el sistema decimal. Que al desarrollar da: 10 3 10 2 10 1 10 0. 10-1 10-2 10-3 1,000 100 10 1. 1 / 10 1 / 100 1 / 1000

Cantidad en sistema decimal 1000 + 900 + 80 + 8 = 1988

Tabla de valores posicionales para definición de cantidades en el sistema binario. Que al desarrollar da: 2 4 2 3 2 2 2 1 2 0. 2-1 2-2 2-3 16 8 4 2 1. ½ ¼ 1 / 8

Tabla de valores posicionales para definición de cantidades en el sistema octal. Que al desarrollar da: 8 4 8 3 8 2 8 1 8 0. 8-1 8-2 8-3 4096 512 64 8 1. 1 / 8 1 / 64 1 / 512

Tabla de valores posicionales para definición de cantidades en el sistema hexadecimal. Que al desarrollar da: 16 3 16 2 16 1 16 0. 16-1 16-2 16-3 4,096 256 16 1. 1 / 16 1 / 256 1 / 4096

Conversión de cantidades en una base dada a base decimal Dada la cantidad binaria siguiente: 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 1 0 0 0 1 0 0 2 10 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 1024 512 256 128 64 32 16 8 4 2 1 Decimal = 1988

Conversión de cantidades en una base dada a base decimal Dada la cantidad octal siguiente: 3 7 0 4 3 7 0 4 8 3 8 2 8 1 8 0 512 64 8 1 Decimal = 1988

Conversión de cantidades en una base dada a base decimal Dada la cantidad hexadecimal siguiente: 7 8 A 7 8 A

Ejercicios: Convierta las siguientes cantidades a decimal: a) (1 1 0 0 0 1) b = () d b) ( 4 7 ) o = () d c) ( 2 7 ) h = () d d) ( 5 B ) h = () d

Dada la cantidad decimal siguiente: 1988 2 Conversión de cantidades en una base decimal a otra base 2 3 1 6 2 0 9 9 4 1 9 8 8 1 8 8 8 0 1 5 2 3 1 1 2 2 7 1 5 1 4 9 7 9 9 4 0 2 3 7 1 2 2 4 8 4 9 7 1 2 1 3 1 2 1 2 4 2 4 8 0 2 6 2 1 2 4 0 Binario: 1 1 1 1 1 0 0 0 1 0 0

Convierta las siguientes cantidades a la base correspondiente: a) ( 45 ) 10 = () 2 b) ( 39 ) 10 = () 8 c) ( 17 ) 10 = () 16 d) ( 85 ) 10 = () 2

Considerando las tablas para el sistema binario, octal y hexadecimal que permiten obtener el equivalente decimal de cantidades dadas en esas bases: (512) (256) 2 9 2 8 (512) 8 3 (256) 16 2 (128) 2 7 (64) 2 6 (64) 8 2 (32) 2 5 (16) 2 4 (16) 16 1 (8) 2 3 (8) 8 1 (4) 2 2 (2) 2 1 (1) 2 0 (1) 8 0 (1) 16 0 La agrupación de cada tres dígitos binarios permite determinar un dígito octal. La agrupación de cada cuatro dígitos binarios permite determinar un dígito hexadecimal.

Tabla de relación de binario - octal DECIMAL BINARIO OCTAL 0 000 0 1 001 1 2 010 2 3 011 3 4 100 4 5 101 5 6 110 6 7 111 7

Tabla de relación de binario - hexadecimal DECIMAL BINARIO HEXADECIMAL DECIMAL BINARIO HEXADECIMAL 0 0000 0 8 1000 8 1 0001 1 9 1001 9 2 0010 2 10 1010 A 3 0011 3 11 1011 B 4 0100 4 12 1100 C 5 0101 5 13 1101 D 6 0110 6 14 1110 E 7 0111 7 15 1111 F

Obtenga los equivalentes octal y hexadecimal de la cantidad binaria siguiente: a) ( 10101000100.11011 ) 2 = () 8 b) ( 11011000100.11011 ) 2 = () 16

Obtención de la parte fraccionaria Obtención de la parte fraccionaria de una cantidad en otra base distinta a la base decimal Solamente vamos multiplicando la parte fraccionaria por la base a la que queremos convertirla y los residuos son los que vamos a seguir multiplicando sucesivamente.

Ejemplo: Obtenga el equivalente a) ( 5721.14 ) 10 = () 2 b) ( 531.35 ) 10 = () 8

Representación de enteros Los enteros son números íntegros (es decir, números sin una fracción). Por ejemplo, 134 es un entero, pero 134.23 no lo es. Como otro ejemplo -134 es un entero, pero -134.567 no lo es. Un entero puede ser positivo o negativo. Un entero negativo varía del infinito negativo a 0; un entero positivo varía de 0 al infinito positivo. - 0 +

Representación de enteros Representación de enteros Sin signo Con signo Signo y magnitud Complemento a uno Complemento a dos

Formato de enteros sin signo Un entero sin signo es un entero que no tiene intervalo, su rango está entre 0 y el infinito positivo. No obstante, como no hay manera de que una computadora represente a todos los enteros en este intervalo, la mayoría de las computadoras define una constante llamada el entero máximo sin signo. Un entero sin signo varía entre 0 y esta constante. El entero máximo sin signo depende del número de bits que la computadora asigna para almacenar un entero sin signo. Número de bits Intervalo: 0 (2 N -1) Intervalo 8 0 255 16 0 65535

Formato de enteros sin signo Decimal Localidad de 8 bits Localidad de 16 bits 7 00000111 0000000000000111 234 11101010 0000000011101010 258 Desbordamiento 0000000100000010 24760 Desbordamiento 0110000010111000 1245678 Desbordamiento Desbordamiento

Formato de signo y magnitud El almacenamiento de un entero en el formato de signo y magnitud requiere 1 bit para representar el signo (0 para positivo, 1 para negativo). Esto significa que en una asignación de ocho bits, sólo se pueden usar siete bits para representar el valor absoluto del número (número sin signo). Por consiguiente, el máximo valor positivo es la mitad del valor sin signo. Intervalo: - (2 N-1 1 ) + (2 N-1 1 )

Intervalo de enteros de signo y magnitud Número de bits Rango 8-127 - 0 + 0 + 127 16-32 767-0 + 0 + 32 767 32-2 147 483 647-0 + 0 + 2 147 483 647

Almacenamiento de enteros de signo y magnitud Decimal Localidad de 8 bits Localidad de 16 bits +7 00000111 0000000000000111-124 11111100 1000000001111100 +258 Desbordamiento 0000000100000010-24 760 Desbordamiento 1110000010111000

Formato de complemento a uno Para representar un número positivo, se usa la convención adoptada para un entero sin signo. Y para representar un número negativo, complementan el número positivo. En otras palabras, +7 se representa justo como un número sin signo, mientras que -7 se representa como el complemento de +7. En el complemento a uno, el complemento de un número se obtiene al cambiar todos los 0 a 1 y todos los 1 a 0. Existen dos 0 en la representación del complemento de uno: positivo y negativo. En una asignación de 8 bits: +0 00000000-0 11111111

Representación Para almacenar los enteros complemento de uno se siguen estos pasos: 1. Cambie el número a binario; el signo es ignorado. 2. Añada uno o varios 0 a la izquierda del número para hacer un total de N bits. 3. Si el rango es positivo, no se necesita ninguna otra acción. Si el signo es negativo, complemente cada bit (cambie 0 por 1 y 1 por 0)

Formato de El es la representación de enteros más común, más importante y de más amplio uso en la actualidad. Para almacenar el se deben seguir estos pasos: 1. El número se cambia a binario; el signo se ignora. 2. Si el número de bits es menor que N se añaden 0 a la izquierda del número de manera que haya un total de N bits. 3. Si el signo es positivo, no se necesita una acción posterior, si el signo es negativo, todos los 0 en el extremo derecho y el primer 1 permanecen sin cambios. El resto de los bits se complementa.

Ejemplo de complemento a 1 Representación del número -5 en complemento a 1 con 4 bits 0101 1010 Ejemplo de complemento a 2 Representación del número -5 en complemento a 2 con 4 bits 0101 1011

Ejercicios Represente los siguientes números en complemento a 2 con 4 bits a) - 3 b) - 4 c) - 6 En binario 0011 Complemento a 2 1101 En binario 0100 Complemento a 2 1100 En binario 0110 Complemento a 2 1010 Represente los siguientes números en complemento a 2 con 8 bits d) 10 e) 15 En binario 00001010 Complemento a 2 11110110 En binario 00001111 Complemento a 2 11110001

4.4 Tipos de errores en la manipulación de cantidades Tipos de Errores La memoria de la computadora tiene limitaciones físicas (por ejemplo en su capacidad), por lo tanto es importante tener en cuenta los tipos de errores más comunes en el manejo de datos numéricos, a saber: Error inherente Error de redondeo Error de truncamiento

4.4 Tipos de errores en la manipulación de cantidades Error inherente El error inherente ocurre por la imposibilidad de realizar mediciones exactas y, como resultado de ello, la imposibilidad de representar exactamente cantidades. Son aquellos que tienen los datos de entrada de un problema, y son debidos principalmente a que se obtienen experimentalmente, debiéndose tanto al instrumento de medición, como a las condiciones de realización del experimento

4.4 Tipos de errores en la manipulación de cantidades Error de redondeo El error de redondeo ocurre por la necesidad de utilizar menos dígitos en alguna fracción. Por ejemplo para representar con unos cuantos dígitos =0.6666666666666666666667. Se originan debido a que la computadora emplea un número determinado de cifras significativas durante un cálculo. Los números tales como, e o 7 no pueden expresarse como un número fijo de cifras significativas. Por lo tanto, no pueden ser representados exactamente por la computadora. Además, debido a que las computadoras usan una representación en base 2, no pueden representar exactamente algunos números en base 10. Esta discrepancia por la omisión de cifras significativas se llama error de redondeo. E 2,7182818284590452353602874713527 7 = 2,6457513110645905905016157536393.

4.4 Tipos de errores en la manipulación de cantidades Error de truncamiento El error de truncamiento se presenta cuando se detiene algún proceso matemático recursivo sin alcanzar el resultado exacto. Los errores de truncamiento son aquellos que resultan al usar una aproximación en lugar de un procedimiento matemático exacto. Para obtener un conocimiento sobre las características de estos errores, debe considerar una formulación matemática que se utiliza ampliamente en los métodos numéricos para expresar funciones de manera aproximada: la serie de Taylor.

4.5 Formato de manejo de imágenes, video, voz, etc. Imágenes Hoy en día las imágenes se representan en una computadora mediante uno de dos métodos: gráficos de mapa de bits o gráficos de vectores. Imagen Bitmap Vector

4.5 Formato de manejo de imágenes, video, voz, etc.

4.5 Formato de manejo de imágenes, video, voz, etc.

4.5 Formato de manejo de imágenes, video, voz, etc. Método de gráficos de mapa de bits de una imagen blanco y negro

4.5 Formato de manejo de imágenes, video, voz, etc. RGB Combinación de colores para imágenes digitales

4.5 Formato de manejo de imágenes, video, voz, etc.

4.5 Formato de manejo de imágenes, video, voz, etc. Representación de audio

4.5 Formato de manejo de imágenes, video, voz, etc. Representación de video Normalmente, un vídeo es una colección de imágenes acompañada de sonido; la información de uno y otro tipo se suele grabar en pistas separadas que luego se coordinan para su ejecución simultánea. Algunos formatos usados para almacenar video en las computadoras son: - avi - asf - 3gp - wmv - mp4 - mov