Guía 2 del laboratorio de ARSS Curso

Documentos relacionados
Colegio Diocesano San José de Carolinas

Sistemas de Numeración. I semestre 2011

Comunicación y representación de la información

Sistemas de numeración

SISTEMAS NUMÉRICOS. Conocer los diferentes sistemas numéricos y su importancia en la informática y la computación

I. INTRODUCCIÓN. A cada valor de una señal digital se le llama bit y es la unidad mínima de información.

Representación Información

INFORMÁTICA APLICADA A LA ECONOMÍA Tema 3: Representación de la Información. Verónica A. Bollati

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

CURSO 2016/2017 INFORMÁTICA 1ºBCH. La codificación es. Por qué se. Fíjate en. la imagen de decirle que si. cero. decimal: 1* *2 3.

TEMA 1: FUNDAMENTOS DE LA INFORMÁTICA

1.1 Sistemas de numeración. Ejemplos de sistemas de numeración posicionales. Base numérica. Circuitos Digitales

APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES

PLAN DE REFUERZO NOMBRE ESTUDIANTE: Nº

Página 1 de 12 CONCEPTOS INFORMÁTICOS BÁSICOS

Tema 2: Conceptos básicos. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Nb = an b n +a n-1b n-1 +a n-2 b n-2 +.+a 2b 2 +a1b 1 +a0b 0 + a -1b -1 +a-2b a-kb -k

CONALEP TEHUACÁN ING. JONATHAN QUIROGA TINOCO SPORTE Y MANTENIMIENTO A EQUIPOS DE CÓMPUTO OPERACIÓN DE CIRCUÍTOS ELECTRÓNICOS DIGITALES TEMA 1.1.

Titulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores

SISTEMAS DE NUMERACION

Ingeniería en Computación

TEMA V SISTEMAS DE NUMERACIÓN

Potencias y raíces con números enteros

ESCUELA POLITÉCNICA NACIONAL

Introducción al sistema binario. El bit (dígito binario)

Unidad 2. La Información en los Ordenadores

Universidad Nacional de Ingeniería. Trabajo de Introducción a la programación

NÚMEROS UTILIZADOS EN ELECTRÓNICA DIGITAL

Lógica Secuencial y Combinatoria. Dr. Arturo Redondo Galván 1

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

Tema 1. Informática Básica


Universidad de San Buenaventura - Facultad de Ingeniería

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

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

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.

Implantación de Sistemas Operativos 1º ASIR

Realiza un ensayo sobre el origen y desarrollo de la computadora personales y llena el cuadro siguiente: CARACTERÍSTICA S

Unidades de medida en Informática. Un repaso de las unidades de medida en la informática que utilizamos a diario

Lectura Obligatoria (LO-II-003) Guía de Conversiones entre sistemas de numeración

LÓGICA SECUENCIAL Y COMBINATORIA

Un sistema de numeración está compuesto por el conjunto de símbolos y reglas que se utilizan para representar cantidades.

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

ESCUELA POLITÉCNICA NACIONAL

Área Académica: Ingeniería en Computación. Materia: Introducción a la Electrónica Digital

Práctica 1. Sistemas de Numeración y Representación de la Información

TEMA II: SISTEMAS DE NUMERACIÓN

Aritmética de Enteros

Capítulo 1: Conceptos básicos de informática

GENERALIDADES SOBRE SISTEMAS NUMÉRICOS. Transversal Programación Básica

TRATAMIENTO DE LA INFORMACION

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

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

SISTEMAS DE NUMERACION

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

I.E.S Santo Domingo. Departamento Informática. Tema 1 Los Sistemas de Numeración. José Luis Mollinedo Jiménez

Sistemas de Numeración

Tipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC.

Estándares de Contenido y Desempeño, Estándares de Ejecución y Niveles de Logro Marcado* MATEMÁTICA

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

LÓGICA SECUENCIAL Y COMBINATORIA

5.2. Sistemas de codificación en binario

MatemáticaDiscreta&Lógica 1

Sistemas de numeración

Sistema Métrico Decimal

{, }, #, $, %, &,,, +,,/,(, ), },!,?, [, ]

Análisis de Fourier: efectos de un medio físico ideal en la transmisión de una señal digital

Colegio Decroly Americano Matemática 7th Core, Contenidos I Período

02) Mediciones. 0203) Cifras Significativas

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

TEMA II SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA.

Representación de Números

Práctica de laboratorio: Uso de la calculadora de Windows con direcciones de red

Enteros (Z):..., -3, -2, -1, 0, 1, 2, 3,... Números enteros (positivos o negativos), sin decimales. Incluye a los naturales.

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica.

Tema 01: Algoritmia y diagramas de flujo. Estructuras de datos (Prof. Edgardo A. Franco)

Representación de la Información

Tema IV. Manejo Interno de Datos

Ejercicios resueltos de Organización de Computadoras

ELO320 Estructuras de Datos y Algoritmos. Codificación Binaria. Tomás Arredondo Vidal

FICHAS DE TRABAJO REFUERZO

ACTIVIDAD N 05 SISTEMAS Y CÓDIGOS NUMÉRICOS

Introducción al Diseño Lógico 2017 Guía de Trabajos Prácticos Nº 00: Repaso

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

Computación I Sistemas de Numeración. Curso 2010 Facultad de Ingeniería Universidad de la República

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Tecnólogo en Informática Paysandú - Uruguay

CONTENIDOS Y CRITERIOS DE EVALUACIÓN MATEMÁTICAS 5º ED. PRIMARIA

S i s t e m a s A n a l ó g i c o s y D i g i t a l e s

OBJETIVOS MATEMÁTICAS QUINTO DE PRIMARIA

Sistemas de Numeración

TÉCNICAS DIGITALES SISTEMAS NUMÉRICOS

Organización de Computadoras

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

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

Colección de problemas de la Asignatura

PROGRAMACIÓN DE AULA MATEMÁTICAS 4º EP CENTRO EDUCATIVO LA AMISTAD. PLAN DE TRABAJO TRIMESTRAL MATEMÁTICAS 4º EP TRIMESTRE 1º REG0801 Pág.

TEMA 11.1: LOS SISTEMAS INFORMÁTICOS: CONCEPTOS FUNDAMENTALES.

Sistemas Numéricos y Códigos Binarios

Transcripción:

Guía 2 del laboratorio de ARSS Curso 2008 2009 1. Introducción En esta sesión se repasarán conceptos que serán empleados en sesiones posteriores del laboratorio, como los sistemas de numeración, las unidades empleadas para las distintas magnitudes relacionadas con la transmisión de datos y los diagramas de flujo. 2. Sistemas de numeración En esta sección se realiza un breve repaso de los distintos sistemas de numeración que se van a emplear en la asignatura. La información de esta sección está extraída de [2]. 2.1. Nociones teóricas 2.1.1. El sistema decimal El sistema de numeración utilizado fundamentalmente por las personas es el sistema decimal o sistema en base diez, denominado así porque emplea dígitos que pueden tomar 10 valores posibles (0, 1, 2, 3, 4, 5, 6, 7, 8 y 9) para representar cualquier cantidad. Si tomamos como ejemplo el número 83 en base 10, podemos descomponerlo de la siguiente forma: 83 = (8 10) + 3 lo que significa que 83 es ocho decenas más diez. De la misma manera 4728 significa cuatro millares más siete centenas más dos decenas más ocho: 4728 = (4 1000) + (7 100) + (2 10) + 8 El sistema decimal tiene como base 10 lo que significa que cada dígito de una cantidad tiene un valor igual al dígito multiplicado por 10 elevado a la potencia correspondiente a la posición que ocupa dicho dígito: X = i d i 10 i (1) siendo d i el dígito que ocupa la posición i, con i = 0, 1,... N Partiendo de esta expresión general, las cantidades usadas anteriormente como ejemplos pueden expresarse como: 83 = 8 10 1 + 3 10 0 4728 = 4 10 3 + 7 10 2 + 2 10 1 + 8 10 0 1

2.1.2. El sistema binario En el sistema binario, o de base 2, sólo tenemos dos dígitos para representar todas las cantidades: 0 y 1. Para evitar confusiones en el valor de un número se suele especificar, mediante un subíndice, el sistema de numeración utilizado. Por ejemplo, 83 10 y 4728 10 son números en base 10, mientras que 10 2 y 110 2 son números en base 2 o binarios. Los dígitos 0 y 1 en el sistema binario tienen el mismo valor que en el sistema decimal 0 2 = 0 10 1 2 = 1 10 Al igual que en el sistema decimal, cada dígito binario de un número tiene un valor que depende de su posición: 11 2 = 1 2 2 1 10 + 1 2 2 0 10 = 1 10 2 1 10 + 1 10 2 0 10 = 3 10 1000 2 = 1 2 2 3 10 + 0 2 2 2 10 + 0 2 2 1 10 + 1 2 2 0 10 = 1 10 2 3 10 + 0 10 2 2 10 + 0 10 2 1 10 + 1 10 2 0 10 = 8 10 La expresión general, similar a la expresión 1 ya vista para números decimales, sería: Y = i d i 2 i (2) 2.1.3. Conversión entre el sistema binario y el decimal Conversión de binario a decimal Para convertir un número binario en su equivalente decimal simplemente se multiplica cada dígito binario por la potencia de 2 correspondiente a la posición que ocupa, tal y como hemos hecho en los ejemplos de la sección 2.1.2. Por ejemplo: 1010 2 = 1 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 10 10 Nota: observa que en la suma de la expresión anterior no hemos especificado la base de los números usados. Esto sólo es válido si no existe ambigüedad en la interpretación de la base, como sucede en este caso (los dígitos 0 y 1 tienen el mismo valor en base 2 y en base 10, y el número 2 no es válido en base 2, por lo tanto es un número en base 10). Conversión de decimal a binario binario se pueden usar dos métodos: Para convertir de un número decimal a su equivalente en 1. dividir (mediante división entera) el número decimal entre 2 sucesivas veces hasta que el cociente de la división sea 0 en cada división el resto nos da el valor del dígito binario (de menor a mayor peso) Un ejemplo de este procedimiento de conversión puede verse en la figura 1 2. Para el segundo método se deben seguir los siguientes pasos: Se busca el número que sea la mayor potencia de dos y, al mismo tiempo, sea menor o igual que el número que se desea convertir (N), y se expresa dicha cantidad como potencia de dos (b i = 2 i ). Se halla la diferencia entre N y b i (d i = N b i ) y se repite el proceso descrito en el punto anterior para esta nueva cantidad d i El proceso finalizará cuando d i sea 0 ó 1. El número binario resultante tendrá 1 en las posiciones cuyo número coincida con el exponente de las potencias de dos que se han obtenido durante el procedimiento Un ejemplo de este método sería el siguiente: 2

11 2 = 5 1 5 = 2 1 2 2 = 1 0 2 1 = 0 1 2 1011 2 = 11 10 Figura 1: Ejemplo de conversión de decimal a binario Consideremos el número 135 (evidentemente, en base 10, no puede ser un número binario) La mayor potencia de dos menor o igual que 135 es 128 = 2 7 135 128 = 7 La mayor potencia de dos menor o igual que 7 es 4 = 2 2 7 4 = 3 La mayor potencia de dos menor o igual que 3 es 2 = 2 1 3 2 = 1 10 = 2 0 El último número obtenido ya es 1 ó 0 por lo que termina el proceso. Las potencias de dos obtenidas son: 2 7, 2 2, 2 1 y 2 0, por lo que se cumple que 135 = 2 7 + 2 2 + 2 1 + 2 0 = 1 2 7 + 0 2 6 + 0 2 5 + 0 2 4 + 0 2 3 + 1 2 2 + 1 2 1 + 1 2 0 10000111 2 2.1.4. El sistema hexadecimal A pesar de que el sistema de numeración binario es el utilizado para el almacenamiento de datos en los ordenadores, no es apropiado para su manejo por personas, especialmente debido al mayor número de dígitos necesarios para representar una cantidad respecto al sistema decimal. Para simplificar el manejo por personas de los datos almacenados por los ordenadores y al mismo tiempo evitar la complejidad de la conversión entre el formato decimal y el binario se diseñó el sistema hexadecimal. En este sistema la base de numeración utilizada es 16, de forma que un dígito del sistema hexadecimal puede representar el mismo rango de números que 4 dígitos binarios. Los valores posibles para cada dígito hexadecimal, así como su valor equivalente en el sistema decimal y binario, se representan en la tabla 1. Al igual que en el sistema decimal, cada dígito hexadecimal de un número tiene un valor que depende de su posición (y de la base empleada en el sistema de numeración): 2C 16 = 2 16 16 1 + C 16 16 0 = 2 10 16 1 + 12 10 16 0 = 44 10 11 16 = 1 16 16 1 + 1 16 16 0 = 1 10 16 1 + 1 10 16 0 = 17 10 1F E 16 = 1 16 16 2 + F 16 16 1 + E 16 16 0 = 1 16 16 2 + 15 10 16 1 + 14 10 16 0 = 510 10 La expresión general sería la dada por la ecuación 3. 3

dígito hexadecimal valor decimal 0 16 0 10 1 16 1 10 2 16 2 10 3 16 3 10 4 16 4 10 5 16 5 10 6 16 6 10 7 16 7 10 8 16 8 10 9 16 9 10 A 16 10 10 B 16 11 10 C 16 12 10 D 16 13 10 E 16 14 10 F 16 15 10 Cuadro 1: Correspondencias de los valores de los dígitos hexadecimales en los sistemas decimal y binario Z = i d i 16 i (3) 2.1.5. Conversión entre el sistema hexadecimal y el decimal Conversión de hexadecimal a decimal Para realizar esta conversión se realiza un procedimiento similar al descrito en la sección 2.1.3, conversión de binario a decimal pero utilizando la expresión 3 (es decir, la base utilizada es 16 en lugar de 2). Conversión de decimal a hexadecimal En este caso se utilizan los procedimientos ya descritos en la sección 2.1.3, conversión de decimal a binario, pero tomando como base (potencias, divisores, etc.) el número 16 en lugar del 2. 2.1.6. Conversión entre el sistema hexadecimal y el binario La conversión entre estos dos sistemas de numeración es muy sencilla puesto que el sistema hexadecimal usa como base una potencia de la base empleada en el sistema binario (16 = 2 4 ). Conversión de hexadecimal a binario Simplemente se traduce cada dígito hexadecimal a un grupo de cuatro dígitos binarios, según las equivalencias descritas en la tabla 1 y se concatenan (respetando la posición de los dígitos hexadecimales) los dígitos binarios resultantes. Ejemplo: BDA 16 B D A 1011 1101 1010 101111011010 Conversión de binario a hexadecimal Simplemente se traduce cada grupo de cuatro dígitos binarios a un dígito hexadecimal, según las equivalencias descritas en la tabla 1 y se concatenan (respetando la posición de los dígitos binarios) los dígitos hexadecimales resultantes. Ejemplo: 110111100001 1101 1110 0001 D E 1 DE1 16 4

2.2. Problemas 2.2.1. Problema 1 A forma de recordatorio de conocimientos anteriores, se proponen aquí unos sencillos ejercicios de representación numérica, que serán útiles en muchos momentos de la asignatura. Contesta a las siguientes preguntas: (a) Cuál es la representación binaria (o base-2) de 2? Cuál es la de 4? Cuál es la de 6? Cuál es la de 0? (b) Cuántos números pueden representarse con n bits? Cuál es el más pequeño, y cuál es el mayor? (c) Escribe en orden las representaciones binarias de todos los números que pueden representarse con n = 3 bits. Haz lo mismo con n = 4 bits. (d) Escribe la representación decimal del valor correspondiente a l as potencias de 2 (2 n ), con n = 1... 10. (e) Aproximadamente, qué potencia de 2 corresponde a 10 3 (es decir, cuál es el n tal que 2 n 10 3 )? Se cumple que 2 nk 10 3k, para k = 2, 3,...? (f) Cuál es la notación hexadecimal (o base-16) de 16? Y la de 64? Y la de 80? Y la de 0? (g) Cuántos números pueden representarse con n símbolos hexadecimales? Cuál es el más pequeño, y cuál es el mayor? (h) Escribe en orden las representaciones hexadecimales de todos los números que pueden representarse con n = 2 símbolos hexadecimales. Haz lo mismo con n = 4 símbolos. 3. Unidades En esta sección se pretende hacer un repaso de las distintas unidades y múltiplos utilizados en las principales magnitudes utilizadas en la asignatura de arquitectura de redes, sistemas y servicios. 3.1. Nociones teóricas 3.1.1. Unidades para las cantidades de datos La unidad más pequeña de información utilizada en un ordenador es el bit o binary digit (dígito binario). Como su nombre indica, cada bit es un dígito del sistema binario (o base 2) que sólo puede tomar dos valores 0 y 1 (para más detalles sobre este sistema de numeración, consulta la sección 2.1.2). Puesto que el bit es una cantidad muy pequeña, se suelen manejar grupos de bits, en concreto bytes, que son grupos de 8 bits (1 byte 8 bits). Tanto los bits como los bytes son cantidades extremadamente pequeñas para los datos utilizados actualmente, por lo que se suelen utilizar múltiplos de ambos. Sin embargo, los múltiplos utilizados para los bits y para los bytes son distintos: mientras que para los bits se utilizan múltiplos que son potencias de 10 (10 x ), para los bytes se utilizan múltiplos potencias de 2 (2 x ). Los múltiplos más utilizados son los mostrados en la tabla 2. Múltiplo bits bytes Kilo 1 Kilobit 1000 bits 1 Kilobyte 1024 bytes Mega 1 Megabit 10 6 bits 1000 Kbits 1 Megabyte 2 20 bytes 1024 Kbytes Giga 1 Gigabit 10 9 bits 1000 Mbits 1 Gigabyte 2 30 bytes 1024 Mbytes Cuadro 2: Múltiplos más empleados en las unidades de información 5

3.1.2. Unidades para las velocidades de transmisión Para medir las velocidades de transmisión se utilizan por convenio unidades que son el cociente del tamaño de los datos transmitidos, expresados en bits o un múltiplo de éstos, dividido por el tiempo que ha durado su transmisión expresado en segundos o algún múltiplo o submúltiplo. Los múltiplos usados para las unidades de tiempo son siempre potencias de 10 (por ejemplo un microsegundo es equivalente a 10 6 segundos), salvo para el caso de los minutos (equivalente a 60 segundos) y horas (equivalentes a 60 minutos). Ejemplos de velocidades más utilizadas: Kbps (kilobits por segundo), Mbps (megabits por segundo), Gbps (gigabits por segundo). 3.1.3. Unidades para el ancho de banda El ancho de banda de un canal (o de una señal) se mide en Hertzios (Hz), o en cualquiera de sus múltiplos, que son siempre potencias de 10 (por ejemplo, 1 KHz = 10 3 Hz). Un Hertzio es el inverso de un segundo: 1 Hz = 1 s 1. Intuitivamente, un Hertzio mide veces por segundo. Existe la tendencia, en textos informales, de expresar el ancho de banda en las mismas unidades en que se mide la velocidad de transmisión (por ejemplo un ancho de banda de 6 Mbps ). Esto ocurre debido a que la capacidad de un canal y su ancho de banda son proporcionales, pero esta tendencia es un abuso del lenguaje y no deben confundirse ambas magnitudes. 3.2. Problemas 3.2.1. Problema 1 Las siguientes preguntas, muy simples, se realizan en el problema 3.1 de [1]. Pese a su sencillez, sirven para familiarizarse con los rangos de valores que pueden tomar diversas magnitudes en problemas de comunicaciones. Supón que el tamaño de un fichero de texto sin comprimir es 1 MB. (a) Cuánto tarda en transmitirse el fichero por un módem a 32Kbps? Observa que B significa byte y b significa bit. (b) Cuánto tarda en transmitirse por un enlace a 1Mbps? (c) Si el fichero se comprime, en cuál de los casos anteriores es más notable la reducción en el tiempo de transmisión? 3.2.2. Problema 2 El siguiente problema es el 2.8 en [3]. En él se trata el concepto de tasa de transmisión. Se desea enviar una secuencia de imágenes de pantalla de ordenador por una fibra óptica. La pantalla es de 640x480 píxeles y cada píxel ocupa 24 bits. Hay 60 imágenes de pantalla por segundo. Cuál es la tasa binaria necesaria para realizar esta transmisión? 4. Diagramas de flujo 4.1. Nociones teóricas Un algoritmo es una secuencia de instrucciones que describen los pasos necesarios para realizar una determinada tarea o cálculo más o menos complejo, como convertir un número a otro sistema de numeración, calcular un factorial, etc. Una de las posibles formas de describir un algoritmo es mediante un diagrama de flujo. Los diagramas de flujo son gráficos que representan, mediante una serie de símbolos estandarizados, las distintos pasos que constituyen un algoritmo. Los principales símbolos que se emplean en los diagramas de flujo están recogidos en la figura 2. Dichos símbolos tienen los siguientes significados: terminador: indica el comienzo (si tiene la palabra start en su interior) o el final (si tiene la palabra stop en su interior) de un diagrama de flujo 6

Terminador (start / stop) Tarea decisión Figura 2: Símbolos básicos de los diagramas de flujo tarea: se utiliza para describir cualquier operación simple que forma parte del algoritmo (sumar dos números, multiplicarlos, etc.) decisión: indica que se evalúa una determinada condición y que en función de su resultado el flujo de tareas será uno u otro. Los distintos símbolos están conectados entre sí por líneas que contienen flechas que indican el sentido en el que se realizan las distintas tareas y comprobaciones (normalmente desde la parte superior del diagrama hacia la inferior). Un ejemplo del diagrama de flujo para describir el funcionamiento de un algoritmo que lee dos números, calcula su división (si es posible) y muestra el resultado se encuentra en la figura 3. 4.2. Problemas 4.2.1. Problema 1 Igualmente que en el problema anterior, éste tiene una función preparatoria. En este caso incide sobre los diagramas de flujo, una notación muy utilizada para la descripción gráfica de algoritmos, que servirá también para comprender el funcionamiento de los distintos protocolos del laboratorio. El factorial de un número n, denotado por n!, es n! = n (n 1) (n 2)... 2 1 Si tienes que escribir un programa de ordenador que tome el número n de la entrada estándar, calcule su factorial y lo muestre por salida estándar, podrías seguir el siguiente algoritmo: toma el número n de la entrada estándar; inicializa f = 1, i = 1; mientras i n, actualiza f de la forma f = f i, e incrementa i en uno; después muestra por la salida estándar f. Dibuja un diagrama de flujo que presente este algoritmo. 4.2.2. Problema 2 Este problema pretende reforzar la comprensión de los diagramas de flujo. 7

start leer números X e Y Y = 0 Sí Z = X / Y imprimir Z No imprimir Y es 0, no puedo realizar la división stop Figura 3: Diagrama de flujo del ejemplo de división de dos números 8

Unos operarios tienen que componer un gran cartel publicitario, que está formado por muchos trozos en tamaño relativamente pequeño, como un folio. Un operario se sube a la escalera, y pega trozos en la valla, mientras el otro se queda junto al camión y le va pasando los trozos que le pide el de la escalera. En el camión hay múltiples copias de cada trozo. El operario subido a la escalera sigue el siguiente algoritmo: sube a la escalera; inicializa la cuenta de trozos, por ejemplo recordando n = 1; pide el trozo n y espera hasta que lo recibe; si el trozo está bien, lo pega, incrementa n en uno, y vuelve a pedir un trozo más; sin embargo, si el trozo está roto lo tira, y le dice al operario del camión que el trozo estaba roto, que le pase una nueva copia; esto se repite hasta que pega todos los trozos, sean N; en ese momento el operario de la escalera baja y termina su trabajo. Por otra parte, el operario junto al camión sigue el siguiente algoritmo: baja del camión; inicializa la cuenta de trozos, por ejemplo recordando n = 1; cuando le piden un trozo nuevo, lo pasa e incrementa n en uno; cuando le piden una copia del trozo que había pasado anteriormente, lo pasa pero no incrementa n en uno; mientras no le piden nada, espera; esto se repite hasta que pasa todos los trozos, sean N; en ese momento el operario se sube al camión y termina su trabajo. (a) Dibuja un diagrama de flujo para los algoritmos de cada uno de los operarios. (b) Considera variantes en las que si los operarios no oyen muy bien, porque hay mucho ruido, en algunas ocasiones en las que el operario de la escalera pide un trozo, el del camión no le oye. En este caso el de la escalera, tras un tiempo de espera, vuelve a realizar su petición. Afecta esto a los dos diagramas de flujo? Referencias [1] A. León-García and I. Widjaja. Communication networks: fundamental concepts and key architectures. McGraw-Hill Higher Education, New York, NJ, USA, 2 a edition, 2004. [2] William Stallings. Number Systems, 2000. http://www.williamstallings.com/studentsupport.html. [3] A.S. Tanenbaum. Computer networks. Prentice Hall, Upper Saddle River, NJ, USA, 4 a edition, 2003. 9