P. 1
FIFO

FIFO

|Views: 1.168|Likes:
Publicado porHugo Navarro

More info:

Published by: Hugo Navarro on Mar 17, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

01/07/2013

pdf

text

original

FIFO

FIFO FIFO, acrónimo inglés de First In, First Out (primero en entrar, primero en salir), es un concepto utilizado en estructuras de datos,contabilidad de costes y teoría de colas. Tiene un sinónimo, FCFS, acrónimo inglés de First Come First Served (primero en llegar, primero en ser servido). Guarda analogía con las personas que espera n en una cola y van siendo atendidas en el orden en que llegaron, es decir, que la primera persona que entra es la primera persona que sale . FIFO se utiliza en estructuras de datos para implementar colas. La implementación puede efectuarse con ayuda de arrays o vectores, o bien mediante el uso de punteros y asignación dinámica de memoria. Si se implementa mediante vectores el número máximo de elementos que puede almacenar está limitado al que se haya establecido en el código del programa antes de la compilación (cola estática) o durante su ejecución (cola pseudoestática ó dinámica). Sea cual sea la opción elegida, el número de elementos que podrá almacenar la cola quedará determinado durante toda la ejecución del programa. Así, el sistema debe reservar el tamaño de memoria necesario para acoger todos los datos, sea cual sea el número de elementos usados. En algunas aplicaciones, esto supone un problema ya que puede desconocerse el número de elementos a contener en la cola. La sencilla solución de reservar más memoria de la que se supone que se necesitará, puede conducir a un despilfarro de la memoria (la cola puede esté llena, aprovechando toda la memoria reservada; o bien, nunca terminar de llenarse, ocupando recursos innecesarios en memoria). Sin embargo, si se usa asignación dinámica de memoria, el número máximo no está declarado en tiempo de compilación sino en tiempo de ejecución, es decir, se reserva memoria a medida que se necesite expandir el tamaño de la cola (adaptándose al tamaño necesario en cada momento en función de los elementos que hay en la cola), haciendo un mej or uso de la memoria disponible. Uno de los usos de las colas es la exploración "en anchura" de un árbol binario de búsqueda. Otro uso típico de las colas, es la gestión de descargas de una aplicación P2P. FIFO full/empty (lleno/vacío) En hardware, un FIFO se usa para propósitos de sincronización. Comportándose como una cola circular y, por lo tanto, contiene dos punteros:
HUGO IVAN LOPEZ NAVARRO Página 1

Esta estructura se aplica en multitud de ocasiones en el área de informática debido a su simplicidad y ordenación implícita de la propia estructura. LIFO El término LIFO es el acrónimo inglés de Last In First Out (último en entrar. ocho (8) decimal es un sistema de graduación posicional en el que de conjunto de símbolos se las cantidades se representan utilizando como base el número diez. la cola FIFO dispara la señal o bandera Vacío. dos (2). siete (7). se saca primero el último que se puso.FIFO 1. y si se quiere sacar uno. Este diez cifras diferentes: cero (0). por lo que compone y nueve(9). FIFO Vacía Cuando el registro de dirección de lectura alcanza al registro de dirección de escritura. uno (1). FIFO Llena Cuando el registro de dirección de escritura alcanza al registro de dirección de lectura. Puntero de Lectura / Registro de Dirección de Lectura 2. EJEMPLOS: PILA: Una pila (stack en inglés) es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO (del inglés Last In First Out. en la que los platos van poniéndose uno sobre el otro. denomina números árabes. primero en salir) que permite almacenar y recuperar datos. SISTEMA DECIMAL. HUGO IVAN LOPEZ NAVARRO Página 2 . la cola FIFO dispara la señal o bandera Lleno. cinco (5). tres (3). Guarda analogía con una pila de platos. LIFO es el algoritmo utilizado para implementar pilas. último en entrar. y es de origen hindú. Puede tener distintos significados según el contexto: El término LIFO se utiliza en estructuras de datos y teoría de colas. El sistema se seis (6). primero en salir). cuatro (4). Puntero de Escritura / Registro de Dirección de Escritura Las direcciones de lectura y escritura están ambas inicialmente en la primera ubicación de la memoria y la cola FIFO está Vacía.

en inglés " kitchen") que utilizaba la suma bina ria para realizar los cálculos. por lo que el valor del dígito depende de su posición dentro del número. en la cual implementaba el Álgebra de Boole y aritmética binaria utilizandorelés y conmutadores por primera vez en la historia. Así: Los números decimales se pueden representar en la recta real. También pueden existir en algunos idiomas vestigios del uso de otros sistemas de numeración. APLICACIÓN. debido a que trabajan internamente con dos niveles de voltaje. el número 80 se expresa «quatre -vingt».FIFO Es el sistema de posición usado habitualmente en todo el mundo (excepto ciertas culturas) y en todas las áreas que requieren de un sistema de numeración. la tesis de Shannon básicamente fundó el diseño práctico de circuitos digitales. el duodecimal y el vigesimal. Claude Shannon realizó su tesis doctoral en el MIT. por ejemplo. que los números se representan es un sistema de numeración en utilizando solamente las cifras cero y uno (0 y 1). cuando se cuentan artículos por docenas. o cuando se emplean palabras especiales para designar ciertos números (en francés. como por ejemplo en la informática. Según los antropólogos. trabajando por aquel entonces en los Laboratorios Bell. "cuatro veintenas" en español). Por ejemplo. SISTEMA BINARIO El sistema binario. como el quinario. Sin embargo hay ciertas técnicas. George Stibitz. por lo que su sistema de numeración natural es el sistema binario (encendido 1. HUGO IVAN LOPEZ NAVARRO Página 3 . los cuales siempre nos han servido de base para contar. En 1937. Los Laboratorios Bell autorizaron un completo programa de investigación a finales de 1938. el origen del sistema decimal está en los diez dedos que tenemos los humanos en las manos. Titulada Un Análisis Simbólico de Circuitos Conmutadores y Relés . construyó una computadora basada en relés a la cual apodó "Modelo K" (porque la construyó en una cocina. el en matemáticas e informática. El sistema decimal es un sistema de numeración posicional. apagado 0). Es el que se utiliza en las computadoras. donde se utilizan sistemas de numeración adaptados al método de trabajo como el binario o el hexadecimal. En noviembre de 1937.

FIFO con Stibitz al mando. REPRESENTACION. la cual era capaz de realizar cálculos con números complejos. Los números binarios se escriben a menudo con subíndices. prefijos o sufijos para indicar su base. Stibitz logró enviar comandos de manera remota a la Calculadora de Números Complejos a través de la línea telefónica mediante un teletipo. también pueden indicar polaridades magné ticas sobre un disco magnético. los números binarios comúnmente son escritos usando los símbolos 0 y 1. Un número binario puede ser representado por cualquier secuencia de bits (dígitos binarios). Algunos participantes de la conferencia que presenciaron la demostración fueron John Von Neumann. esto depende de la nomenclatura usada. Las notaciones siguientes son equivalentes:     100101 binario (declaración explícita de formato) 100101b (un sufijo que indica formato binario) 100101B (un sufijo que indica formato binario) bin 100101 (un prefijo que indica formato binario) Página 4 HUGO IVAN LOPEZ NAVARRO . En una computadora. Un "positivo". "sí". John Mauchly y Norbert Wiener. los valores numéricos pueden representar dos voltajes diferentes. En una demostración en la conferenci a de la Sociedad Americana de Matemáticas. que suelen representar cualquier mecanismo capaz de estar en dos estados mutuamente excluyentes. que es usando números árabes. el 11 de septiembre de 1940. El 8 de enero de1940 terminaron el diseño de una "Calculadora de Números Complejos". Las siguientes secuencias de símbolos podrían ser interpretadas como el mismo valor numérico binario: 1010011010 |-|--||-|xoxooxxoxo ynynnyynyn El valor numérico representado en cada caso depende del valor asignado a cada símbolo. Fue la primera máquina computadora utilizada de manera remota a través de la línea de teléfono. De acuerdo con la representación más habitual. o "sobre el estado" no es necesariamente el equivalente al valor numérico de uno. quien escribió acerca de dicho suceso en sus diferentes tipos de memorias en la cual alcanzó diferentes logros.

pues loscomputadores suelen utilizar el byte u octeto como unidad básica de memoria. según Página 5 . por ejemplo. 001=1 y 010=2. debido a que un byte como HUGO IVAN LOPEZ NAVARRO representa 28 valores posibles. es el sistema de numeración de base 16 tanto 16 símbolos . para trabajar con bytes o conjuntos de ellos. y esto puede . para contar los espacios interdigital es o los dedos distintos de los pulgares. Tiene la ventaja de que no requiere utilizar otros símbolos diferentes de los dígitos. Para llegar al resultado de 74 en octal se sigue esta serie: decimal -> binario -> octal. a veces abreviado comoHex. después obtenemos el número en decimal de cada uno de los números en binario obtenidos: 1=1. de tal forma que obtengamos una serie de números en binario de 3 dígitos cada uno (para fragmentar el número se comienza desde el primero por la derecha y se parte de 3 en 3). por cuanto todo byte así definido es completamente representable por dos dígitos hexadecimales. De modo que el número deci mal 74 en octal es 112. Su uso actual está muy empleando por vinculado a la informática y ciencias de la computación . Hay que hacer notar que antes de poder pasar un número a octal es necesario pasar por el binario. y.FIFO    100101 2 (un subíndice que indica base 2 (binaria) notación) %100101 (un prefijo que indica formato bi nario) 0b100101 (un prefijo que indica formato binario. asumiendo que un byte es una palabra de 8 bits. Es posible que la numeración octal se usara en el pasado en lugar del decimal. suele ser más cómodo el sistema hexadecimal. lo agruparíamos como 1 / 001 / 010. común en lenguajes de programación) SISTEMA OCTAL El sistema numérico en base 8 se llama octal y utiliza los dígitos 0 a 7. el número 74 (en decimal) es 1001010 (en binario). a veces se utiliza la numera ción octal en vez de la hexadecimal. SISTEMA HEXADECIMAL El sistema Hexadecimal (no confundir con sistema sexagesimal). En informática. Sin embargo. representarse que. Por ejemplo.

E. Hay que hacer notar que antes de poder pasar un número a octal es necesario pasar por el binario.F} Se debe notar que A = 10. el número 74 (en decimal) es 1001010 (en binario). Para llegar al resultado de 74 en octal se sigue esta serie: decimal -> binario -> octal.3. se adoptó la convención de usar las seis primeras letras del alfabeto latino para suplir los dígitos que nos faltan.A. lo agruparíamos como 1 / 001 / 010. para trabajar con bytes o conjuntos de ellos. suele ser más cómodo el sistema HUGO IVAN LOPEZ NAVARRO Página 6 . equivale al número en base 16 10016 . que en este caso es 16.9. por tanto. C = 12. D = 13. SISTEMA OCTAL. permiten En principio dado que el sistema usual de numeración es de base decimal y.7. Una representación anterior. de tal forma que obtengamos una serie de números en binario de 3 dígitos cada uno (para fragmentar el número se comienza desde el primero por la derecha y se parte de 3 en 3). El conjunto de símbolos sería. De modo que el número decimal 74 en octal es 112.C. Sin embargo. el valor numérico de cada dígito es alterado dependiendo de su posición en la cadena de d ígitos. sólo se dispone de diez dígitos. a veces se utiliza la numeración octal en vez de la hexadecimal. por ello. Como en cualquier sistema de numeración posicional. el siguiente: S = {0. Por ejemplo: 3E0A 16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256 + 0×16 + 10×1 = 15882. B = 11. después obtenemos el número en decimal de cada uno de los números en binario obtenidos: 1=1. El sistema hexadecimal actual fue introducido en el ámbito de la computación por primera vez por IBM en 1963.FIFO elteorema general de la numeración posicional . con 0 9 y u z. En informática.6. quedando multiplicado por una cierta potencia de la base del sistema. E = 14 y F = 15. dos dígitos hexadecimales corresponden exactamente representar la misma línea de enteros a un byte. Por ejemplo.8. asumiendo que un byte es una palabra de 8 bits.2.4. 001=1 y 010=2. Tiene la ventaja de que no requiere utilizar otros símbolos diferentes de los dígitos.1. fue usada en 1956 por la computadora Bendix G15. En ocasiones se emplean letras minúsculas en lugar de mayúsculas.5. El sistema numérico en base 8 se llama octal y utiliza los dígitos 0 a 7.D.B.

HUGO IVAN LOPEZ NAVARRO Página 7 . por cuanto todo byte así definido es completamente representable por dos dígitos hexadecimales. por ejemplo. Es posible que la numeración octal se usara en el pasado en lugar del decimal. para contar los espacios interdigitales o los dedos distintos de los pulgares.FIFO hexadecimal.

LIFO. OCTAL.FIF UNIVERSIDAD MESOAMERICANA MATERIA: TALLER DE INFORAMTICA 6 IMPARTICA: ING FRANCISCO JAVIER GUZMAN PRESENTA: HUGO IVAN LOPEZ NAVARRO DEL 6 SEMETRE DE LA LIC. TRABAJO: SISTEMAS FIFO. SAN CRSITOBAL DE LAS CASAS CHIAPAS A 3 DE FEBRERO DEL 2011 I L PEZ RR P i 8 . DECIMAL. EN INFORMATICA. HEXADECIMAL.

FIFO HUGO IVAN LOPEZ NAVARRO Página 9 .

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->