Issuu on Google+

UNIVERSIDAD CENTROCCIDENTAL “LISANDRO ALVARADO” DECANATO DE CIENCIAS Y TECNOLOGÍA

Títu

Barquisimeto Estado Lara


UNIVERSIDAD CENTROCCIDENTAL “LISANDRO ALVARADO” DECANATO DE CIENCIAS Y TECNOLOGÍA

Títu

Integrantes: *Pedro Fernández C.I. 24990477 *José Gregorio Lizarazo C.I.23846752 Sección I matemática


Contenido Unidad I: Componentes físicos y lógicos de un computador 1.- Historia y evolución de las computadoras 2.- Conceptos básicos: a. Computador b. Programa c. Instrucción d. Lenguaje de programación 3.- Componentes de un computador: a. Físicos (hardware) *Unidad central de procesamiento. *Dispositivos periféricos (entrada-salidaalmacenamiento). b. Lógicos (software) b.1 Tipos de software: *Software del sistema. *Software de desarrollo. *Software de aplicación. 4.- Unidades de almacenamiento 5.-Arquitectura del computador 6.- Funcionamiento en base a: * La unidad de control (UC) * La memoria principal (MP) * La unidad aritmética lógica (UAL) * Dispositivos de entrada y salida (I/O)

* Canales de comunicación * Datos 7.- Pasos para la ejecución de un programa: - Editar - Compilar - Ejecutar

Títu

Unidad II Algoritmo: 1.-Concepto 2.-Caracteristica 3.-Representacion: *Diagrama de flujos de datos (DFD) *Pseudocódigo 4.-Herramientas para la construcción de algoritmos: a) Datos b) Tipos de datos c) Información d) Diferencia entre datos e información e) Expresiones: *Aritméticas *Lógicas *Llevar una expresión a su forma computacional


5.- Elementos que conforman un algoritmo: a) Identificador *Variables (contadores y acumuladores) *Constante. b) Operaciones básicas: *Leer-Escribir-Procesar c) Comentarios d) Literales

Unidad III Estructuras: 1_ Estructura secuencial *Análisis: identificar entradas, proceso y salidas *Estructura de un programa en pseudolenguaje *Corrida y prueba del algoritmo 2_ Estructura selectiva *Nido de si *Preguntas independientes *Análisis *Estructura *Corrida y prueba del algoritmo 3_ Estructura repetitiva (un ciclo) *Contador y acumulador. *Dato centinela. *Iteración con el usuario. *Estructura. *Corrida y prueba en fortran.

Unidad IV Sistema numérico, sistema numérico de punto flotante y teoría de errores: 1_sistema numérico a) Binarios. *Operaciones de adición y sustracción. b) Octal. c) Hexadecimal

2_Sistema numérico de punto flotante *Definición. *Propiedades. *Aplicación. 3_Teoria de errores. a) Definición de: *Absoluto. *Relativo. *Propagado. *Significativo. *Redondeo. b) Aritmética de Punto Flotante: *Adición. *Sustracción *Multiplicación y división.

Títu


TĂ­tu

Componentes fĂ­sicos y lĂłgicos de un computador


1. HISTORIA Y EVOLUCIÓN DEL COMPUTADOR La computadora es un invento que ha venido a revolucionar la forma en la que trabajamos, nos entretenemos y se ha convertido en un aparato esencial en nuestra vida diaria. La computadora personal fue creada en 1981, sus inicios se remontan a varias décadas atrás y sus antecedentes a hace más de cuatro mil años. Esto, porque el origen de la informática no es la electrónica sino el perfeccionamiento de los cálculos matemáticos, que con el tiempo permitió el desarrollo del sistema binario, el lenguaje en que se programan las computadoras, que está basado en la combinación de números ceros y unos (0 y 1). Para estudiar este proceso con mayor detalle usaremos una clasificación de los computadores en generaciones. Cada nueva generación se caracteriza por una mayor velocidad, mayor capacidad de memoria, menor consumo y menor tamaño que la generación anterior. 2500 a.C. - El antecedente más remoto es el ábaco, desarrollado en China. Fue el primer instrumento utilizado por el hombre para facilitar sus operaciones de cálculo, puede considerarse el primer antecedente. Pero el primer paso importante en la historia de computadores lo constituyen las MAQUINA DE PASCAL primeras máquinas de calcular mecánicas, que se remontan al siglo XVII

construidas por B. Pascal (1642-43) y G. Leibnitz (1674).

Títu MAQUINA DE LEIBNITZ

Posteriormente, en el siglo XIX, C. Babbage ideó dos máquinas: diferencial (1822-32) y analítica (1834-35). La primera, que únicamente realizaba un algoritmo, tenía una estructura muy simple. Su principal novedad la constituyó la salida de resultados por medio de perforaciones sobre una placa. La máquina analítica, por su parte, constituye la primera máquina de propósito general. Era capaz de realizar cualquier operación matemática automáticamente. Tenía una unidad de almacenamiento, una unidad de procesamiento, una unidad de entrada de datos y otra de salida, y en cierto modo, su estructura se mantiene aún en los computadores modernos. No llegó a implementarse por dificultades tecnológicas, pero los computadores electromecánicos Harvard Mark I y Mark II, basados en relés, fueron diseñados por H. Aiken en 1944 y 1947 respectivamente, a partir de estas ideas de Babbage.


Generaciones: *Primera generación (1949-1959) Esta generación comprende desde el año 1949 al año 1959, en esta generación las computadoras utilizaban bulbos (tubos de vacío) para almacenar la información, los operadores ingresaban los datos por medio de tarjetas perforadas, pesaban aproximadamente 300 toneladas, contenían aproximadamente 18.000 bulbos y ocupaban un espacio aproximado de 139,354 metros cuadrados, esas computadoras eran muy grandes y generaban mucho calor.

*segunda generación (1959-1963) Entre 1959 y 1953 fueron introducidos los computadores de la segunda generación que incluían las siguientes características: -Las válvulas de tubos fueron sustituidas por componentes de estados sólidos tales como diodos y transistores. - Se utilizaban pequeños aros magnéticos como elementos de almacenamientos internos para datos e instrucciones. - Se inicia la producción de maquinas orientadas hacia usos comerciales.

- Trajo como resultado maquinas más pequeñas que exigían menos mantenimiento y por lo tanto resultaban menos costosas. Estos computadores a la vez que eran más veloces permitieron a los programadores una utilización de lenguajes de más alto nivel.

Títu

*Tercera generación (1964-1971) A partir de 1964 fueron introducidos los computadores de la tercera generación, los cuáles presentan un gran desarrollo en las técnicas de miniaturización de los circuitos, además de la integración de los mismos. De esta forma, los computadores se produjeron más pequeños, veloces y confiables, y a menor costo. Los computadores de esta generación poseen las siguientes características:  Desarrollo de los circuitos monolíticos integrados.  Desarrollo de unidades periféricas más rápidas.  Integración apropiada entre el HARWARE (máquina) y el SOFTWARE (programas especiales que se entregan con el computador).  Desarrollo de programas de utilidad de mayor potencia y elasticidad, además de paquetes de programación ampliamente documentados.


*Cuarta generación (1971-1980) En este periodo nace el primer microprocesador, fue el modelo 4004 creado por Intel como modelo comercial y contenía todos los circuitos requeridos para hacerlo programable. Gracias a este novedoso invento, el microprocesador, aparecen los primeros computadores personales (PC) y a finales de los 70 y principio de los 80, los computadores estaban siendo utilizados en casas, escuelas y lugares de trabajo. Por el gran crecimiento que tuvo las ventas de computadoras, las empresas de software se vieron obligadas a crear sistemas operativos de mayor entorno grafico para agradar más a los usuarios, de allí nace Windows que es uno de los sistemas operativos de ambiente gráfico más comerciales en el mundo.

poderosas que sean competentes al desarrollar inferencias en un problema específico. Se basa en la muy renombrada INTELIGENCIA ARTIFICIAL. Para los computadores de esta nueva generación se busca mayor velocidad en los procesos, mayor manejo de multitareas y claro está, que todo el mundo esté conectado a una red de internet. También en la actualidad los computadores han llegado a tal punto que existen modelos de bolsillo e incluso los celulares vienen con sistemas operativos instalados.

Títu

*¿Quién fue el primer hombre en inventar parte de una computadora? *¿Cómo podríamos resumir la historia y evolución del computador? Elabore un mapa conceptual *¿Quién fue pascal? *¿Quién fue Babbage? *¿Quién fue Leibniz? *¿Qué opina usted sobre la evolución del computador?

 Conclusión: El proceso en que se dio la evolución de los computadores, nunca los primeros inventores, como lo fueron los chinos del Ábaco, Pascal de la Pasculina muchos otros, se hubieran imaginado que estos serian la base para crear este novedoso y útil invento. A medida que el tiempo va avanzando, el mundo requiere nuevas cosas en el ámbito Tecnológico, es por esto que algunos creen y afirman que ya existe la quinta generación. El hombre desea introducir computadoras tan

Si quieres saber más del la historia del computador, visita los siguientes enlaces: http://www.slideshare.net/alejandrac23/his toria-y-evolucin-del-computador-4604037 http://www.monografias.com/trabajos12/his compu/hiscompu.shtml http://www.taringa.net/posts/apuntes-ymonografias/1466586/Historia-y-evoluciondel-computador.html


2. CONCEPTOS BÁSICOS c. instrucciones:

a. Computador: Es un sistema digital con tecnología microelectrónica, capaz de recibir y procesar datos a partir de un grupo de instrucciones denominadas programas y finalmente transferir información procesada o guardada en algún dispositivo de almacenamiento

b. Programa: Conjuntos de instrucciones perfectamente legibles por la computadora, ordenadas secuencialmente para realizar un determinado trabajo o para solucionar un problema.

Información que indica a una computadora una acción elemental a ejecutar

Títu

d. lenguaje de programación: Es un idioma artificial diseñado para expresar procesos que pueden se llevadas a cabo por máquinas como las computadores. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.

Partes de un programa: *entrada (datos a suministrar): los valores que se procesarán. *salida (resultados esperados): lo que calculará o producirá el programa. *lógica del problema (secuencia de instrucciones): como se procesarán los datos

*¿Qué es un computador? *¿Qué es un programa? *partes de un programa *¿Qué son instrucciones? ….responder con sus propias palabras…

Para mayor información visita: http://es.wikipedia.org/wiki/Computa dora http://definicion.de/programa/ http://es.wikipedia.org/wiki/Instrucci %C3%B3n_inform%C3%A1tica


3. COMPONENTES DE UN COMPUTADOR a. Físicos: (hardware)

¿Qué es hardware? Es la parte física o arquitectura del computador, constituidos por todos los elementos tangibles. Está integrado por:

*Unidad central de procesamiento (CPU): Conocida también como procesador, es el dispositivo interior que ejecuta las instrucciones del programa, recibiendo los datos de entrada desde los UC: es la unidad de control, dispositivos la cual controla las periféricos vía instrucciones de la memoria memoria. Es el principal y determina su tipo. cerebro del MP: es la parte de la computador. computadora donde se almacenan (temporalmente) Conformado por Los programas y los datos. la unidad de UAL: realiza operaciones control (UC), la aritméticas y comparaciones memoria necesarias para ejecutar las principal (MP) y instrucciones. la unidad aritmética-lógica. La memoria principal consta de dos tipos de memoria interna: RAM y ROM

momento determinado. La RAM es una memoria de carácter volátil, puesto que su contenido se borra cuando se apaga el ordenador.

*Dispositivos Periféricos: Permiten la comunicación entre el computador y el usuario. Son estructuras sólidas, electrónicas y/o mecánicas las cuales son diseñadas para un uso específico. Ayudan a introducir en la computadora los datos para la resolución de problemas con el fin de obtener el resultado. Se clasifican en:

Dispositivos de entrada:

Son dispositivos a través de los cuales le suministramos a las computadoras los programas que queremos que se ejecuten Y los datos correspondientes, además de instrucciones. Como ejemplo tenemos: electroóptico, micrófono, ratón, teclado, cámara, etc.

-Memoria ROM (Read Only Memory): Contiene programas que son fundamentales del sistema y que no pueden ser borrados ni por el usuario ni por la propia máquina. -Memoria RAM (Random Access Memory): Contiene los programas y los datos con los que el computador está trabajando en un

Títu

Dispositivos de salida :

Son dispositivos a través de los cuales la


Computadora nos da los resultados de los programas. Estos dispositivos convierten la información binaria que llega de la computadora de acuerdo con el código de E/S en caracteres escritos legibles por el usuario. Como ejemplos tenemos: el monitor, las cornetas e impresoras.

El software se divide en tres grandes tipos:

*software del sistema: Son aquellos programas que permite la administración (gestión) de la parte física o de los recursos del computador. Pertenecen a este grupo los sistemas operativos.

Títu

Dispositivos de entrada/salida:

Son aquellos que permiten la comunicación entre la computadora y el mundo exterior. Por ejemplo: módems y tarjetas de red.

Dispositivos de almacenamiento:

Son todos los aparatos que se utilizan para grabar los datos de la computadora de forma permanente o temporal. Por ejemplo: pendriver, CD y disco duro.

b. lógicos (software): ¿Qué es el software? Es la parte no física del computador y representa la vida interna, el manejo y aprovechamiento del mismo, y esta constituido por programas que controlan o determinan su conducta; las cuales deben estar escritos en un lenguaje de programación.

*software de desarrollo: Conocidos también como “lenguaje de Programación’’. Son conjuntos de normas lingüísticas que permiten escribir un programa y que este sea entendido por el computador y pueda ser trasladado a computadores similares para su funcionamiento en otros sistemas. Se pueden clasificar en:  Lenguaje de máquina.  Lenguaje de bajo nivel-ensamblador.  Lenguaje de alto nivel.

*lenguaje de máquina: son programas escritos en lenguajes directamente inteligibles por la maquina, ya que sus instrucciones son cadenas binarias. *lenguaje de bajo nivel-ensamblador: son aquellos que facilitan la codificación respecto al lenguaje de maquina, el cual requiere una fase de traducción. *lenguaje de alto nivel: es el lenguaje de programación en el que las instrucciones son enviadas para el que computador las ejecutes y son similares al lenguaje humano. En los lenguajes de alto nivel el traductor se conoce como: “programa compilador/interprete’’.


*traductores de lenguajes: Produce la codificación de código fuente escrito en un lenguaje de alto nivel a un lenguaje maquina el cual es comprensible por el hardware. *tipos de programas de traductores: -Compilador: traduce un programa fuente en alto nivel y genera un programa objeto. -Interprete: traduce y ejecuta una a una cada instrucción del código fuente. -Ensamblador: programa que traduce un programa escrito en lenguaje ensamblador, en un programa objeto escrito en lenguaje de máquina.

*software de aplicación: Son aquellos programas que nos ayudan en tareas específicas como edición de textos, imágenes, cálculo, etc.

Títu

Elabore dibujos que represente los componentes lógicos y físicos de un computador. ¿Que diferencia existe entre los componentes físicos y lógicos de un computador?

Importancia del los componentes del computador ¿a que se refiere la palabra hardware?

¿a que se refiere la palabra software? Tipos de hardware Tipos de software

Si te gustaría conocer más sobre los componentes físicos y lógicos del computador puedes acceder a los siguientes enlaces… http://es.scribd.com/doc/37148/componentes-delcomputador http://www.slideshare.net/elenguerrero/componente s-de-un-computador-191597 También puede acceder al siguiente video sobre los componentes del computador http://www.youtube.com/watch?v=_TAE7LepB3E &feature=player_embedded


4. DISPOSITIVOS DE ALMACENAMIENTO En los dispositivos de almacenamiento del computador, se almacenan en forma temporal o permanentemente los programas y datos que son manejados por las aplicaciones que se ejecutan en estos sistemas. Debido a la cantidad de información que es manejada actualmente por los usuarios, los dispositivos de almacenamiento se han vuelto casi tan importantes como el computador. Aunque actualmente existen dispositivos para almacenar que superan los 650 MB de memoria; no es suficiente por la falta de capacidad para transportar los documentos y hacer reserva de la información más importante. Es por tal razón que hoy en día existen diferentes dispositivos de almacenamiento, que tienen su propia tecnología. En la presente investigación se estudiaran todos y cada uno de los dispositivos de almacenamien to de un computador, las distintas marcas, clasificación, entre otros puntos que se irán desarrollando a medida que se avanza en la investigación.

*Dispositivos de Almacenamiento de un Computador. Los sistemas informáticos pueden almacenar los datos tanto interna (en la memoria) como externamente (en los dispositivos de almacenamiento). Internamente, las instrucciones o datos pueden almacenarse por un tiempo en los chips de silicio de la RAM (memoria de acceso aleatorio) montados directamente en la placa de circuitos principal de la computadora, o bien en chips montados en tarjetas periféricas conectadas a la placa de circuitos principal del ordenador. Estos chips de RAM constan de conmutadores sensibles a los cambios de la corriente eléctrica, esto quiere decir que los datos son almacenados por tiempo limitado (hasta que dejamos de suministrar energía eléctrica) por esta razón aparecen los dispositivos de almacenamiento secundarios o auxiliares, los cuales son capaces de conservar la información de manera permanente, mientras su estado físico sea óptimo. Los dispositivos de almacenamiento externo pueden residir dentro del CPU y están fuera de la placa de circuito principal.

Títu


Clasificación de los Dispositivos de Almacenamiento. Los Dispositivos de Almacenamiento se pueden clasificar de acuerdo al modo de acceso a los datos que contienen: •Acceso secuencial: En el acceso secuencial, el elemento de lectura del dispositivo debe pasar por el espacio ocupado por la totalidad de los datos almacenados previamente al espacio ocupado físicamente por los datos almacenados que componen el conjunto de información a la que se desea acceder. •Acceso aleatorio: En el modo de acceso aleatorio, el elemento de lectura accede directamente a la dirección donde se encuentra almacenada físicamente la información que se desea localizar sin tener que pasar previamente por la almacenada entre el principio de la superficie de grabación y el punto donde se almacena la información buscada. Tipos de Dispositivos de Almacenamiento •Memoria ROM: Esta memoria es sólo de lectura, y sirve para almacenar el programa básico de iniciación, instalado desde fábrica. Este programa entra en función en cuanto es encendida la computadora y

su primer función es la de reconocer los dispositivos, (incluyendo memoria de trabajo). •Memoria RAM: Esta es la denominada memoria de acceso aleatorio o sea, como puede leerse también puede escribirse en ella, tiene la característica de ser volátil, esto es, que sólo opera mientras esté encendida la computadora. En ella son almacenadas tanto las instrucciones que necesita ejecutar el microprocesador como los datos que introducimos y deseamos procesar, así como los resultados obtenidos de esto.

Títu

•Memorias Auxiliares: Por las características propias del uso de la memoria ROM y el manejo de la RAM, existen varios medios de almacenamiento de información, entre los más comunes se encuentran: El disco duro, El Disquete o Disco Flexible, etc. Medidas de Almacenamiento de la Información Byte: unidad de información que consta de 8 bits; en procesamiento informático y almacenamiento, el equivalente a un único carácter, como puede ser una letra, un


número o un signo de puntuación. Kilobyte (Kb): Equivale a 1.024 bytes.

Megabyte (Mb): Un millón de bytes o 1.048.576 bytes. Gigabyte (Gb): Equivale a mil millones de bytes. Dispositivos Magnéticos •Cinta Magnética: Esta formada por una cinta de material plástico recubierta de material ferro magnético, sobre dicha cinta se registran los caracteres en formas de combinaciones de puntos, sobre pistas paralelas al eje longitudinal de la cinta. Estas cintas son soporte de tipo secuencial, esto supone un inconveniente puesto que para acceder a una información determinada se hace necesario leer todas las que le preceden, con la consiguiente perdida de tiempo. •Tambores Magnéticos: Están formados por cilindros con material magnético capaz de retener información, Esta se graba y lee mediante un cabezal cuyo brazo se mueve en la dirección del eje de giro del tambor. El acceso a la información es directo y no secuencial.

•Disco Duro: Son en la actualidad el principal subsistema de almacenamiento de información en los sistemas informáticos. Es un dispositivo encargado de almacenar información de forma persistente en un ordenador, es considerado el sistema de almacenamiento más importante del computador y en él se guardan los archivos de los programas.

Títu

•Disquete o Disco flexible: Un disco flexible o también disquete (en inglés floppy disk), es un tipo de dispositivo de almacenamiento de datos formado por una pieza circular de un material magnético que permite la grabación y lectura de datos, fino y flexible (de ahí su denominación) encerrado en una carcasa fina cuadrada o rectangular de plástico. Los discos, usados usualmente son los de 3 ½ o 5 ¼ pulgadas, utilizados en ordenadores o computadoras personales, aunque actualmente los discos de 5 ¼ pulgadas están en desuso. Dispositivos Ópticos •El CD-R: es un disco compacto de 650 MB de capacidad que puede ser leído cuantas veces se desee, pero cuyo contenido no puede ser modificado una vez que ya ha sido grabado. Dado que


no pueden ser borrados ni re grabados, son adecuados para almacenar archivos u otros conjuntos de información invariable. •CD-RW: posee la capacidad del CD-R con la diferencia que estos discos son regrabables lo que les da una gran ventaja. Las unidades CDRW pueden grabar información sobre discos CD-R y CD-RW y además pueden leer discos CD-ROM y CDS de audio. Las interfaces soportadas son EIDE, SCSI y USB. •DVD-ROM: es un disco compacto con capacidad de almacenar 4.7 GB de datos en una cara del disco, un aumento de más de 7 veces con respecto a los CD-R y CD-RW. Y esto es en una sola cara.

Los futuros medios de DVD-ROM serán capaces de almacenar datos en ambas caras del disco, y usar medios de doble capa para permitir a las unidades leer hasta cuatro niveles de datos almacenados en las dos caras del disco dando como resultado una capacidad de almacenamiento de 17 GB. Las unidades DVDROM son capaces de leer los formatos de discos CD-R y CD-RW. Entre las aplicaciones que aprovechan la gran capacidad de almacenamiento de los DVD-ROM tenemos las películas de larga duración y los juegos basados en DVD que ofrecen videos MPEG-2 de alta resolución, sonido inmersivo Dolby AC-3, y poderosas graficas 3D.

•DVD-RAM: este medio tiene una capacidad de 2.6 GB en una cara del disco y 5.2 GB en un disco de doble cara, Los DVD-RAM son capaces de leer cualquier disco CD-R o CD-RW pero no es capaz de escribir sobre estos. Los DVD-RAM son regrabables pero los discos no pueden ser leídos por unidades DVD-ROM.

Títu

•Pen Drive o Memory Flash: Es un pequeño dispositivo de almacenamiento que utiliza la memoria flash para guardar la información sin necesidad de pilas. Los Pen Drive son resistentes a los rasguños y al polvo que han afectado a las formas previas de almacenamiento portable, como los CD y los disquetes. Los sistemas operativos más modernos pueden leer y escribir en ello sin necesidad de controladores especiales. En los equipos antiguos (como por ejemplo los equipados con Windows 98) se necesita instalar un controlador de dispositivo.

Marcas de los Dispositivos de Almacenamiento de un Computador Hoy en día en el mercado, se encuentran infinidades de marcas de dispositivos de almacenamiento;


debido a la gran demanda que surge y por la búsqueda de la mejor calidad y garantía del producto. Entre las marcas de mayor uso se tienen: • SAMSUNG • SEAGATE • WESTERN DIGITAL • MARKVISION • TOSHIBA • SONY • IBM • DYSAN • LG • HP • MAXTOR • KINGSTON • IMATION • TDK

¿Cómo se miden los dispositivos de almacenamiento? ¿Cómo se clasifican los dispositivos de almacenamiento? ¿Qué tipos de dispositivos de almacenamiento de un computador conoces? ¿Cuales haz usado? ¿Cuáles y cuantas marcas de dispositivos conoces?

Para mayor información visita: http://www.monografias.com/trabajos12/dis palm/dispalm.shtml http://html.rincondelvago.com/dispositivosde-almacenamiento_2.html

Títu

http://es.wikipedia.org/wiki/Dispositivo_de_ almacenamiento_de_datos


5. ARQUITECTURA DEL COMPUTADOR A pesar de que las tecnologías empleadas en las computadoras digitales han cambiado mucho desde que aparecieron los primeros modelos en los años 40, la mayoría todavía utiliza la arquitectura de Von Neumann, publicada a principio de los 1940. La arquitectura de Von Neumann describe la computadora con cuatros secciones principales, las cuales son: La unidad aritmético lógico (ALU, por sus siglas del ingles: Arithmetic Logic Unid), la unidad de control, la memoria principal y los dispositivos de entrada y salida (E/S). Estas partes están interconectadas por canales de conductores denominados buses, de los cuales se ha hablado anteriormente. __________________________________________________

“Ahora presentaremos de una forma grafica toda la arquitectura del computador y el funcionamiento que en ellas se efectúan”.

Títu


6. FUNCIONAMIENTO EN BASE A: *La Unidad de Control: Coordina todas las acciones que se producen en el computador, encargadadeactivarodesactivarlosdiversosco mponentesdelmicroprocesadorenfuncióndelai nstrucciónqueelmicroproce sadorestéejecutando.Inte rpretayejecutalasinstrucci onesalmacenadasenlamemo riaprincipalygeneralasseña lesdecontrolparaejecutarlas. *La Memoria Principal: Cumple con las siguientes funciones: Coloca los datos en el área de almacenamiento, permaneciendo allí hasta el momento de ser procesados. Adiciona un espacio de almacenamiento que es utilizado para mantener los datos que están siendo procesados, así como los resultados intermedios de tal procesamiento. Retiene el producto final (resultado) del procesamiento, hasta que es liberado en forma de información de salida ó hasta que es colocado en un medio de almacenamiento secundario (cinta magnética, tarjetas perforadas, etc.) Además de los datos, se almacenan las instrucciones que constituyen el programa que va a operar sobre los datos, hasta que es necesitado por la unidad de control. La Unidad Aritmética Lógica:

En esta unidad se realizan todos los cálculos requeridos, así como comparaciones para la toma de decisiones lógicas y aritméticas. Los datos fluyen entre esta unidad y la memoria durante las operaciones de procesamiento en la forma siguiente: Los datos son alimentados a la memoria desde los dispositivos de entrada; allí son mantenidos hasta que ocurre una transferencia a la “UAL” para la realización de operaciones requeridas. Una vez realizadas estas operaciones los resultados son devueltos a la memoria para su uso posterior. _________________________________

Títu

Para más detalles se presenta en resumen el funcionamiento del computador: Paso 1: Usando cualquier dispositivo de ENTRADA y mediante los CANALES DE ENTRADA, pasando por la UNIDAD DE CONTROL, se carga en la MEMORIA el programa que se desea ejecutar.


Paso 2: Se comienza a ejecutar el programa, empezando por la primera instrucción, se continúa con la segunda, tercera, etc.; siempre en orden secuencial. Paso 3: Básicamente, las instrucciones de cualquier programa son las siguientes: LEER datos por las unidades de ENTRADA; ESCRIBIR resultados por las unidades de SALIDA; efectuar cálculos ARITMÉTICOS con los datos; almacenar resultados intermedios en la MEMORIA. Paso 4: Cuando en la ejecución del programa se encuentra una instrucción de LEER ocurre lo siguiente: LA UNIDAD DE CONTROL da una orden a la UNIDAD DE ENTRADA para que suministre el dato que se le está solicitando, y que lo envíe por el CANAL DE ENTRADA, es enviado por la UNIDAD DE CONTROL hacia la MEMORIA donde se guardará hasta que se le solicite más adelante en otra parte del programa.

Paso 6: Cuando se requiere ejecutar una operación ARITMÉTICA o LÓGICA Sobre unos datos la UNIDAD DE CONTROL lo saca de la MEMORIA y los envía hacia la UNIDAD ARITMÉTICO-LÓGICA; ahí se efectúa la operación requerida y el resultado es recibido por la UNIDAD DE CONTROL lo cual lo envía hacia la MEMORIA donde reposará, hasta tanto se necesite más adelante en el programa.

Títu

Así de sencillo es el funcionamiento del computador.

Si quieres saber más sobre el funcionamiento del computador, visita los siguientes enlaces:

http://es.wikipedia.org/wiki/Computador http://ileanavv.tripod.com/id13.html

Paso 5: Cuando en la ejecución del programa se encuentra una instrucción de ESCRIBIR ocurre lo siguiente: LA UNIDAD DE CONTROL da una orden a la UNIDAD DE SALIDA para que se aliste; reclama de la MEMORIA el dato o resultado que se está solicitando escribir y la UNIDAD DE CONTROL lo envía a través del CANAL DE SALIDA hacia LA UNIDAD DE SALIDA.

http://www.taringa.net/posts/cienciaeducacion/13019000/El-computador_-Estructura-yFuncionamiento.html


7. PASOS PARA LA EJECUCION DE UN PROGRAMA a.-Editar: Acción de crear o modificar un archivo informático, visualizando su resultado en pantalla. La edición de un archivo puede hacerse a nivel texto con un procesad or de textos. Si el archivo tiene un formato específico, lo usual es editarlo con alguna aplicación que pueda manejar ese tipo de formato. Esas aplicaciones se pueden categorizar dependiendo del tipo de formato que manejan, por ejemplo, editor de audio, editor de video, editor de gráfico, etc. En general estos editores tienen herramientas apropiadas para crear y modificar archivos de su tipo y algunos son más poderosos que otros. La edición de un archivo, dependiendo del formato puede incluir acciones como copiar, cortar, seleccionar, pegar, insertar, borrar, mover, aplicar filtros, etc. Estas acciones se realizan sobre el área de trabajo de la aplicación editora. b.- Compilar: Se refiere a la acción por medio del cual, una serie de instrucciones

escritas o codificadas en lenguaje de programación son convertidas al lenguaje máquina (binario) de tal forma que puedan ser ejecutadas por medio de un programa informático.

Títu

c.- Ejecutar: Es la acción de iniciar la carga de un programa o de cualquier archivo ejecutable. En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones en un programa informático. Se puede n ejecut ar progr amas compil ados (por ejemplo en Windows, los .EXE) o programas interpretados (por ejemplo, los scripts). Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.


MAPA RESUMEN DE LA HISTORIA DEL COMPUTADOR HISTORIA Y EVOLUCIÓN DEL COMPUTADOR. tecnología

Sociedad agraria

Títu

Sociedad de la tecnología

Sociedad Industrial manual

Derivan otras

Mecánico Calculadora

hay

Ábaco

5 Generaciones 1959

1951

1965

1970

actualidad y

Tubos al vacio

Transitares

Circuitos integrados

Chips

Inteligencia artificial , robótica y redes neurales.

Sociedad comunicacional

son

Sociedad del conocimiento

Computadora gigante

Computadoras gigantes

_________________________________ _________________________________ REFERENCIAS  Gerakibot . (2013) Arquitectura general del computador. Disponibleen:http://es.wikipedia.org/wiki/Com putador

 Pereira, M (2010). Unidad didáctica. Barquisimeto (Lara): Autor.


TĂ­tu

Algoritmo


1.-CONCEPTO DE ALGORITMO

Algoritmo

Algunos ejemplos en matemática son el es un conjunto pre-escrito de

instrucciones

o

reglas

bien

definidas,

ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no

algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común

Títu

divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.

generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos

ejemplos

son

los

manuales

de

usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón.

La palabra ALGORITMO proviene del griego y latín dixit algorithmus; se debe al matemático, astrónomo y geógrafo Muhammad ibn Musa al-Jwarizmi, vivió aproximadamente entre 780 y 850. Fue un gran matemático considerado como “el padre del algebra”


2.-CARACTERISTICAS DE UN ALGORITMO Las características fundamentales que

 Único punto de entrada, único punto de salida: A los algoritmos y a los

debe cumplir todo algoritmo son:

módulos que lo integran se entra por

 Un algoritmo debe ser preciso e

un sólo punto, inicio, y se sale por un

indicar el orden de realización de cada

sólo punto también, fin.

paso.  Un algoritmo debe estar definido. Si

Títu

se sigue un algoritmo dos veces, se

Para la realización de un algoritmo

debe obtener el mismo resultado cada

deben

vez.

elementos

definirse

los

siguientes

 Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algún momento; o sea, debe tener un numero finito de pasos.  Eficientes: Deben ocupar la mínima memoria y minimizar el tiempo de ejecución.

Entrada: El algoritmo tendrá cero o más entradas, es decir, cantidades dadas antes de empezar.

 Legibles: El texto que lo describe

Estas cantidades pertenecen además, a

debe ser claro, tal

conjuntos especificados de objetos. Por

que

permita

ejemplo, pueden ser cadenas de caracteres,

entenderlo y leerlo

enteros, naturales, fraccionarios, etc. Se

fácilmente.

trata

 Modificables: Estarán diseñados de modo que sus posteriores fáciles

de

modificaciones realizar,

programadores

sean

incluso

diferentes

a

por sus

propios autores.  Modulares: La filosofía utilizada para su diseño debe favorecer la división del problema en módulos pequeños.

siempre

de

cantidades representat ivas mundo

del real

expresadas de tal forma que sean aptas para su interpretación por la computadora.


Proceso: Descripción

de

las

operaciones

que

se

llevarán a cabo con las

entradas

Títu

como

datos para obtener la salida de acuerdo con la

tarea

para

la

cual

fue

diseñado.

Salida: El algoritmo tiene una o más salidas, en relación con las entradas.

En resumen podemos considerar las siguientes características para realizar un buen algoritmo:  Debe tener un punto de inicio.  Un punto de finalización.  Tener en cuenta todas las posibles situaciones que puedan plantearse.  Ser efectivo, esto es, resolver el problema para el que fue diseñado.  Estar escrito en menos instrucciones de las que se ejecutan (gracias a las estructuras repetitivas).  Estar diseñado de forma que sea independiente del lenguaje de programación en que vaya a ser expresado.


3. REPRESENTACION DE UN ALGORITMO Los algoritmos pueden representar de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.

*pseudocódigo: El pseudocódigo (falso lenguaje, el prefijo pseudo significa falso) es una descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y condicionales, aunque no está regido por ningún Clase Alumno estándar.

Títu

Atributos ..

*Diagrama de flujos de datos (DFD): Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos conectados con flechas para indicar la secuencia de instrucciones y están regidos por ISO. Los diagramas de flujo son usados para representar algoritmos pequeños, ya que abarcan mucho espacio y su construcción es laboriosa. Por su facilidad de lectura son usados como introducción a los algoritmos, descripción de un lenguaje y descripción de procesos a personas ajenas a la computación.

PROGRAMA DE APLICACIÓN

.. Metodos1 MENSAJE Metodos2

Es utilizado para describir algoritmos en libros y publicaciones científicas, y como producto intermedio durante el desarrollo de un algoritmo, como los diagramas de flujo, aunque presentan una ventaja importante sobre estos, y es que los algoritmos descritos en pseudocódigo requieren menos espacio para representar instrucciones complejas. El pseudocódigo está pensado para facilitar a las personas el entendimiento de un algoritmo, y por lo tanto puede omitir detalles irrelevantes que son necesarios en una implementación. Programadores diferentes suelen utilizar convenciones distintas, que pueden estar basadas en la sintaxis de lenguajes de programación concretos. Sin embargo, el pseudocódigo, en general, es comprensible sin necesidad de conocer o utilizar un entorno de programación específico, y es a la vez


suficientemente estructurado para que su implementación se pueda hacer directamente a partir de él. Así el pseudocódigo cumple con las funciones antes mencionadas para representar algo abstracto los protocolos son los lenguajes para la programación. Busque fuentes más precisas para tener mayor comprensión del tema.

Observemos detalladamente los pasos dados anteriormente:

1) Declaración de variables y constantes: en esta secciónse

Títu

indican las variables y constante que va a existir durante el desarrollo del algoritmo.

2) Petición de datos:

La estructura básica de un algoritmo

Instrucciones que indican pedir

en pseudocódigo es:

los valores que quedarán guardados en las variables.

ALGORITMO nombre _del algoritmo.

3) Proceso: instrucciones que indican que operaciones se

CONSTANTES

1

VARIABLES

deben realizar con los datos y que nombres debe asociar a los resultados.

Tipo::nombre de variable

4) Escritura del resultado:

ENTERO

instrucciones donde se

REAL

obtenidos de las operaciones

muestran los resultados y/o asignaciones.

ALFANUMERICO COMIENZO/*cuerpo principal*/ /*PEDIR DATOS DE ENTRADA*/ /*ACCIONES*/

3

/*MOSTRAR SALIDA*/

4

FIN/*cuerpo principal*/ FIN/*ALGORITMOnombre_del_algor itmo*/

2


4. HERRAMIENTAS PARA LA CONSTRUCCION DE ALGORITMO A. Datos: Son los parámetros de entrada con los que trabajará el algoritmo, o sea, los valores a partir de los cuales hará las operaciones necesarias para devolver el resultado o salida. El dato no tiene sentido por sí mismo, pero convenientemente tratado (procesado) se puede utilizar en la realización de cálculos o toma de decisiones.

B. Tipos de datos: Es el tipo de información con el que puede trabajar el algoritmo, es decir, el conjunto de valores que pueden tomarse durante el programa, el tipo indica la clase de datos que se manejarán, cada variable utilizada debe tener un tipo específico, por ejemplo si se trata de números el tipo sería entero o decimal según sea el caso.

qué debe hacer el algoritmo así como el cómo se hará y que resultado esperamos obtener, mientras que los Datos son los valores que procesará el algoritmo para determinar el resultado.

Títu

E. Expresiones:  Aritméticas: Son expresiones o formulas que se plantean para lograr encontrar la solución de un problema matemático. A=2+3

Operandos

Operador Resultado

OPERADORES Y SIGNIFICADOS:

C. Información: Esta debe referirse al diseño del algoritmo, la información vendría siendo como el análisis del problema en donde se especifica qué es lo que hará el algoritmo y cuál debe ser el resultado final.

D. Diferencia entre dato e información: Considerando lo anterior la diferencia sería que la Información nos sirve para determinar

Las expresiones aritméticas son evaluadas según el orden siguiente:


 Lógicas: Estas expresiones a diferencia de las expresiones aritméticas devuelven un valor verdadero (1) o falso (0). Entre ellos se encuentran los operadores no, y, o El operador lógico no produce falso si su operando es verdadero y viceversa. El operador lógico y produce verdadero sólo si ambos operandos son verdadero, si alguno de los operandos es falso produce falso. El operador lógico o produce falso sólo si ambos operandos son falsos, si alguno de los operando es verdadero produce verdadero.

PARA MAYOR APRENDIZAJE, VISITA LOS SIGUIENTES ENLACES: http://www.slideshare.net/guestaacec6b/tip os-de-datos-2349149

Títu

http://www.buenastareas.com/ensayos/Conc epto-De-Dato-eInformaci%C3%B3n/961662.html

EN EL SIGUIENE CRUCIGRAMA UBIQUE LAS PALABRAS DADAS:

PALABRAS A BUSCAR:

   

DATOS INFORMACION ARITMETICA EXPRESIONES RESULTADO  LOGICAS  OPERADORES


5.-REPRESENTACIÓN DE UN ALGORITMO A. Identificadores: Los identificadores son elementos textuales (también llamados símbolos) que nombran entidades del lenguaje. Algunas de las de entidades que un identificador puede denotar son las variables, las constantes, los tipos de dato, las etiquetas, las subrutinas (procedimientos y funciones) y los paquetes.

pertenece. Así tendremos variables enteras, reales, booleanas, etc. Por otro lado, distinguimos tres partes fundamentales en la vida de una variable:  Declaración  Iniciación  Utilización

REGLAS PARA IDENTIFICADORES

Títu

Los  Todo identificador debe comenzar con una letra. identificadores están  No debe llevar espacios en restringidos para que blanco. sean una secuencia de  Usar un nombre legible. una o más letras ASCII,  Se pueden utilizar los dígitos del 0 al 9. dígitos numéricos (que en ningún caso deben aparecer como primer carácter) y barras bajas. Las versiones posteriores de estos -Contador: lenguajes, así como otros Es una variable que acumula las veces muchos más lenguajes que se pasa por ella. Se suele denominar modernos soportan casi todos los caracteres contador cuando el incremento de la variable Unicode en un identificador. es de 1 en 1, pero no tiene por qué ser así *Variables: obligatoriamente. La sintaxis genérica sería: Una variable es un nombre variable = variable + 1. asociado a un elemento de datos que está situado en posiciones contiguas de -Acumulador: la memoria principal, y su valor puede Es una variable cuyo valor se cambiar durante la ejecución de un incrementa o decremento en un valor que no programa. tiene por qué ser fijo (en cada iteración de un bucle). Un acumulador suele utilizarse Toda variable pertenece a un tipo de para acumular resultados producidos en las dato concreto. En la declaración de una iteraciones de un bucle.(a ← a + b) variable se debe indicar el tipo al que


*Constantes: Una constante es un dato cuyo valor no puede cambiar durante la ejecución del programa. Recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa. Las constantes se declaran en una sección que comienza con la palabra reservada const. Después de declarar una constante ya puedes usarla en el cuerpo principal del programa. Tienen varios usos: ser miembro en una expresión, en una comparación, asignar su valor a una variable, etc. Se puede hacer una división de las constantes en tres clases:  constantes literales (sin nombre)  constantes declaradas (con nombre)  constantes expresión

Constantes literales.

Son valores de cualquier tipo que se utilizan directamente, no se declaran ya que no tienen nombre Constantes declaradas. También llamadas constantes con nombre, son las que se declaran en la sección const asignándoles un valor directamente.

Constantes expresión.

También se declaran en la sección const, pero a estas no se les asigna un valor directamente, sino que se les asigna una expresión. Esta expresión se evalúa en tiempo de compilación y el resultado se le asigna a la constante.

CONTADOR VARIABLES IDENTIFICADORES

Títu

ACUMULADOR CONSTANTES

B. Operaciones básicas:

*Leer:

Es una operación especial que conlleva dos acciones: en primer lugar la obtención de un dato del exterior y en segundo lugar la asignación de dicho dato a la variable indicada. Así pues la expresión leer “x” equivale a obtener un dato (normalmente del teclado) y asignar el dato a la variable x. La palabra LEER indica al computador que el usuario va a introducir un dato el cual debe ser leído para ser utilizado en el resto del programa. Ejemplo: LEER nombre LEER sueldo_base

*Escribir:

Es una operación especial que consiste en enviar un valor a un dispositivo externo, normalmente la pantalla. La palabra ESCRIBIR le indicará al computador que muestre por pantalla mensajes o el valor almacenado en alguna variable. Ejemplo: ESCRIBIR variable1.


*Asignación:

Esta operación sirve para llevar el resultado de una expresión a una variable. La asignación se indica en muchos lenguajes mediante el signo =, lo cual puede dar lugar a confusiones. Para evitarlas se usará exclusivamente la flecha para indicar asignaciones. Así una expresión como X 3+2 indica que se ha de asignar el resultado de la operación 3+2 a la variable x.

*Procesar:

Es la operación básica donde se llevan a cabo todos los cálculos dentro de un algoritmo. Dicha operación comprende diversas etapas que se llevan a cabo en distintas partes de la ejecución de un programa. C. Comentarios: Los comentarios no tienen ningún efecto en la ejecución del algoritmo. Se utilizan para aclarar instrucciones que puedan prestarse a confusión o como ayuda a otras personas que deben leerlo y entenderlo. La mayoría de los lenguajes de programación ofrecen la posibilidad de comentar el código de los programas. De esto se desprende, que los comentarios no son acciones ejecutables, sin embargo es recomendable su uso dado que permite la documentación del algoritmo. Se presentan encerrados entre slash (/) con un asterisco. Ejemplo: /*calculo del área*/.

D. Literales: Constantes de cadena (Informática). También llamadas cadenas literales o alfanuméricas ("Stringliterals"), son utilizadas para albergar secuencias de caracteres alfanuméricos, y forman una categoría especial dentro de las constantes, aunque también pueden ser consideradas un caso especial de matrices de caracteres. Se representan en el Código fuente como una secuencia de caracteres entre comillas dobles (").

Títu


Cuadro resumen de algoritmo:

Títu

________________________________________

REFERENCIAS: *Diseño de algoritmos José Jesús García Rueda. Adaptado de “El algoritmo, una iniciación a la programación” (http://www.desarrolloweb.com/manuales/6 7/).y de “Diseño estructurado de algoritmos” http://search.fastaddressbar.com/web.php? s=%28http%3A%2F%2Fwww.itver.edu.mx%2 Fcomunidad%2Fmaterial%2Falgoritmos%2F %29&fid=65017&subid=64381 *Algoritmos y estructuras de programación Versión: 2 de marzo de 2009 http://departamento.us.es/edan/php/asig/L ICFIS/LFIPC/Tema5FISPC0809.pdf

_________________________________ *http://www.ecured.cu/index.php/ Constantes_de_cadena_%28Inform%C3%A1 tica%29 http://es.wikipedia.org/wiki/Algoritmo http://www.monografias.com/trabajos11/alc om/alcom.shtml http://informaticadostaxco.blogspot.com/20 11/02/caracteristicas-de-losalgoritmos.html http://es.answers.yahoo.com/question/index ?qid=20110826095911AAmQso8 Enlaces: *http://www.esi2.us.es/~jaar/Datos/FIA/T 6.pdf www.esi2.us.es/~jaar/Datos/FIA/T6.pdf *http://www.slideshare.net/luistorresrossi/estructu ras-de-repeticin-1-1


Títu

Estructuras Básicas


1.- ESTRUCTURA SECUENCIAL Es aquella en la que una acción (instrucción) sigue a la otra en orden que están escritas. Las operaciones se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso. La asignación de esto consiste, en el paso de valores o resultados a una zona de la memoria. Dicha zona será reconocida con el nombre de la variable que recibe el valor. La asignación se puede clasificar de la siguiente forma: *Simples: Consiste en pasar un valor constante a una variable (a ← 15) *Contador: Consiste en usarla como un verificador del número de veces que se realiza un proceso (a ← a + 1) *Acumulador: Consiste en usarla como un sumador en un proceso (a ← a + b) *De trabajo: Donde puede recibir el resultado de una operación matemática que involucre muchas variables (a ← c + b*2/4). Además podemos decir que esta estructura consta de un número finito de instrucciones que han de ejecutarse una tras la otra en secuencia. Dentro de este tipo podemos encontrar operaciones de inicio/fin, inicialización de variables, operaciones de asignación, cálculo, solarización, etc. Este tipo de estructura se basa en las 5 fases de que consta todo algoritmo o programa: Definición de variables (Declaración) Inicialización de variables. Lectura de datos Cálculo Salida

El esquema general que se sigue en una estructura secuencial es la siguiente: INICIO Acción 1 Acción 2 Acción N

Títu

FIN a. ANÁLISIS: Esta etapa corresponde a la observación e identificación detallada de los datos que proporciona el enunciado del problema, es decir, los datos de entrada, también es la etapa donde se conciben y se elaboran los cálculos que se utilizaran dentro del algoritmo y además donde se identifican los datos o resultados requeridos por la persona que realiza el algoritmo, lo cual recibe el nombre de proceso de identificación de las salidas. Por otra parte, la identificación de las entradas lleva consigo verificar el tipo de dato que se suministra ya que como se ha visto en etapas anteriores los datos pueden ser: numéricos y alfanuméricos. b. ESTRUCTURA: La estructura de un algoritmo en secuencial tiene el siguiente orden : 1. Identificación o nombre del algoritmo 2. Identificación de variables y constantes. 3. Petición de los datos de entrada 4. Acciones consecutivas que están introducidas en el programa. 5. Mostrar las salidas requeridas.


C.-CORRIDA: La corrida, llamada también “prueba” o “corrida en frio” es la etapa donde se comprueba si realmente el algoritmo es factible y confiable; dicho objetivo se logra mediante la introducción de los datos de entrada y la realización de los cálculos establecidos dentro de la estructura del algoritmo.

ANALISIS: ENTRADA: pre_de, cant_de, pre_al, cant_al, pre_ce, cant_ce. SALIDA: ingre_de, ingre_al, ingre_ce, total_ingre, promedio.

Para ilustrar lo que se ha expuesto antes, presentamos el siguiente algoritmo realizado sobre una estructura secuencial. EJEMPLO:

PROCESO: /*calcular ingreso por comida*/ /*Ingreso por desayuno*/ Ingre_depre_de * cant_de

1. Un kiosco de comida rápida desea procesar las ventas del día. Para ello dispone de los siguientes datos: precio el desayuno, almuerzo y cena respectivamente y cantidad de desayunos, almuerzos y cenas vendidos durante el día. Elabore un algoritmo que permita imprimir: ingreso del kiosco por cada tipo de comida (desayuno, almuerzo y cena), total ingreso del día y promedio de los precios de las comidas.

/*Ingreso por almuerzo*/ Ingre_alpre_al * cant_al /*Ingreso por cena*/ Ingre_cepre_ce * cant_ce /*Total de ingreso*/ total_ingre

ingre_de + ingre_al+ingre_ce

/*Promedio de los precios de las comidas*/ Promedio

NOTA:

Lo primero que se debe hacer es identificar lo que se pide, y además tener en cuenta lo que se nos da para encontrarlo.

pre_de+pre_al+pre_ce/3

Títu


CORRIDA EN FRIO: MP pre_decant_depre_al

ESTRUCTURA: ALGORITMO: contabilidad CONSTANTES: C1 3 VARIABLES: REAL::ingre_de, pre_de, ingre_al, pre_al, ingre_ce, pre_ce, total_ingre, promedio. ENTERO::cant_de, cant_al, cant_ce. COMIENZO/*cp*/ /*Pedir datos de entrada*/ ESCRIBIR: ”ingrese precio de desayuno: “LEER pre_de ESCRIBIR: ”ingrese precio del almuerzo: ”LEER pre_al ESCRIBIR: ”ingrese precio de la cena: ”LEER pre_ce ESCRIBIR: ”ingrese la cantidad de desayunos: ”LEER cant_de ESCRIBIR: ”ingrese la cantidad de almuerzos: ”LEER cant_al ESCRIBIR: ”ingrese la cantidad de cenas: ”LEER cant_ce /*Calcular*/ Ingre_de. Ingre_al. Ingre_ce. Total_ingre. Promedio. /*Mostrar salida*/ ESCRIBIR: “el ingreso por desayuno es: “ingre_de ESCRIBIR: “el ingreso por almuerzo es: “ingre_al ESCRIBIR: “el ingreso por cena es: “ingre_ce ESCRIBIR: “el ingreso total diario es:“total_ingre ESCRIBIR: “el promedio de los precios es: “promedio FIN /*cp*/ FIN /*ALGORITMO*/

C1

? 15

3

? 50

? 25

cant_alpre_cecant_ceingre_de

? 20

? 20

? 15

ingre_alingre_ce

total_ingre

?

?

25*20=500

20*15=300

? 15*50=75 0

? 750+500+300=1550

promedio ? (15+25+20)/3=20 PANTALLA Ingrese precio de desayuno: 15 Ingrese precio del almuerzo: 25 Ingrese precio de la cena: 20 Ingrese cantidad de desayunos: 50 Ingrese cantidad de almuerzos: 20 Ingrese cantidad de cenas: 15.

El El El El El

Títu

ingreso por desayuno es: 750 ingreso por almuerzo es: 500 ingreso por cena es: 300 ingreso total diario es: 1550 promedio de los precios es: 20

DATOS DE USUARIOS: Precio del desayuno: 15Bsf Precio del almuerzo: 25Bsf Precio de la cena: 20Bsf Cantidad de desayunos: 50 Cantidad de almuerzos: 20 Cantidad de cena: 15


Ejercicios propuestos: Como se puede observar todos los cálculos dentro del proceso se realizaron en forma de secuencia, es decir, uno detrás del otro.

1. En una zapatería se muestra a los clientes los diferentes modelos de zapatos con sus respectivos precios, los cuales incluyen IVA. La tienda tiene la siguiente promoción: a cada cliente que compre un par de zapatos

Títu

le descuenta el valor del IVA. Se pide calcular el valor que el cliente va a cancelar por su par de zapatos. 2. Una farmacia aplica al precio de los remedios el 10% de descuento. Hacer Las estructuras secuenciales se codifican de forma directa en cualquier lenguaje de programación, pues como sabemos el orden de ejecución de todo programa, es precisamente, salvo orden es sentido contrario, de arriba abajo. A pesar de una simplicidad, ya sabemos, que algunos problemas se pueden resolver con la sola utilización de esta estructura.

un algoritmo que ingresando el precio del remedio, calcule e imprima el descuento y el precio total. 3. La empresa pasta única, vende dos tipos de pasta (regulada y Premium) y desea obtener cierta información, de acuerdo a los siguientes datos: *Monto total de pasta regulada *Monto total de pasta Premium. *Costo de producción de un kilogramo de pasta regulada y Premium. Sabiendo que el precio de un kilogramo de pasta viene dado por: regulada=1120 bs/kg y Premium=1740 bs/kg. Se desea saber: *monto ingresado por venta de los dos tipos de pasta, cantidad de kilogramos vendidos de pasta Premium, ganancia obtenida por la venta de pasta Premium.


2.- ESTRUCTURA SELECTIVA Como su nombre lo indica esta

El esquema general de esta es:

estructura se lleva a cabo en un conjunto de condiciones, bajo las cuales se ejecutará el programa. Por ello, la especificación formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una descripción más

SI (condición) ENTONCES COMIENZO Accion1 Accion2 Acciones Acción N múltiples. FIN SINO SI (condición) ENTONCES accion2 SINO acción N

Títu

complicada que una lista sencilla de tareas. Este es el caso de cuando existe un

Como se ha observado en la estructura

número de posibles alternativas resultantes

anidada se puede, bajo una misma condición,

de las evaluaciones de una determinada

ejecutar más de una acción, en las cuales se

condición. Las estructuras selectivas se

tiene que tener presente un COMIENZO y

utilizan para tomar decisiones lógicas; de ahí

un FIN.

que se suelen denominar también estructuras de decisión. En las estructuras selectivas se evalúa una condición y en función del resultado de la misma se realiza una u otra opción. Las sentencias SI-ENTONCES son usadas para ejecutar una instrucción o bloque de instrucciones, sólo si una condición es cumplida. Si la condición es verdadera se ejecuta la acción y si es falsa la acción es ignorada. a.- NIDO DE SI: También llamada estructura selectiva anidada; es aquella que evalúa una condición y si es verdadera realiza una acción o grupo de acciones y si es falsa realiza las demás instrucciones. Además, en dichas condiciones se utilizan operadores lógicos (SI-ENTONCES, SINO).

b.- PREGUNTAS INDEPENDIENTES: Al igual que el “nido de si” esta estructura nos permite llevar a cabo un conjunto de condiciones que serán ejecutadas por el programa. Las preguntas independientes en una estructura selectiva siguen el siguiente esquema: SI (condición) ENTONCES COMIENZO Accion1 Accion2 Acciones AcciónN múltiples. FIN SI (condición) ENTONCES acción2 SI (condición) ENTONCES acción N


3.- Múltiple: Esta es la forma más general

C._ ANALISIS: Al igual que en la estructura secuencial, en esta estructura se identifican las entradas, salidas y el proceso que se realizara dentro del algoritmo, además este análisis lleva consigo identificar el bloque selectivo, es decir las partes del algoritmo donde se evaluará una condición.

del bloque selectivo, que permite encadenar varias condiciones lógicas. SI (condición1) ENTONCES acción1 SINO SI (condición2) ENTONCES acción2 SINO SI (condición3) ENTONCES acción3 SINO acción N FIN

d.- ESTRUCTURA: Las estructuras selectivas pueden ser: 1.- Simples: cuando constan de solo una condición y una o varias acciones. La estructura simple es como sigue: SI (condición) ENTONCES acción

e.- CORRIDA: En esta parte del algoritmo se comprueba si el mismo satisface los requerimientos o las exigencias expuestas.

En caso de que la acción esté compuesta de varias acciones a su vez, la estructura se puede escribir así. SI (condición) ENTONCES COMIENZO Accion1 Accion2 . Acción N FIN

2.-Doble: la estructura anterior es muy limitada y normalmente se necesita una estructura que permita elegir entre dos alternativas posibles, en función del cumplimiento o no de una determinada condición. SI (condición) ENTONCES acción1. SINO acción2

El siguiente ejemplo nos muestra de forma general un algoritmo basado en una estructura selectiva. EJEMPLO:

Una fabrica produce dos tipos de franela cuyos precios son: TIPO PRECIO A 150 B 270 La fábrica tiene la siguiente política de descuento:  Si compra más de dos docenas el descuento será del 15%.  Si el número de unidades adquiridas está entre 7 y 24 unidades recibe un 10% de descuento del precio total.  Si compra media 1/2 docena tendrá un descuento del 5%. Se tiene los siguientes datos del cliente: nombre, numero de unidades solicitadas y tipo de franela. Se debe calcular e imprimir: nombre del cliente, número de unidades solicitadas, monto de la compra, descuento y monto a pagar.

Títu


ANÁLISIS: ENTRADA: nomb, nro_unid, tipo_f SALIDA: nomb, nro_unid, monto, desc, monto_pagar. PROCESO: /*Asignar el precio*/ SI (tipo = “A”) ENTONCES precio 150 SINO precio 270 /*Calcular el monto de la compra*/ montonro_unid*precio /*Asignar el porcentaje de descuento*/ SI (nro_unid>24) ENTONCES porc 0,15 SI (nro_unid>=7) y (nro_unid<=24) ENTONCES porc 0,10 SI (nro_unid=6) ENTONCES porc 0.05 SI (nro_unid<6) ENTONCES porc 0 /*Calcular el descuento*/ desc monto*porc /*Calcular el monto a pagar*/ monto_pagar monto – desc

ESTRUCTURA: ALGORITMO fabrica CONSTANTES: C1 150 C2 270 C3 24 C4 7 C5 6 P1 0,15 P2 0,10 P3 0,05 VARIABLES: ALFANUMÉRICO::nomb, tipo_f ENTERO::nro_unid REAL:: monto, desc, monto_pagar, precio, porc. COMIENZO/*cp*/ /*Pedir datos de entrada*/ ESCRIBIR:” ingrese nombre: “ LEERnomb ESCRIBIR:” ingrese tipo de franela: “LEER tipo_f ESCRIBIR:” ingrese número de unidades: “LEER nro_unid /*Calcular y asignar*/ /*Asignar el precio*/ SI (tipo = “A”) ENTONCES precio 150 SINO precio 270 /*Calcular el monto de la compra*/ montonro_unid*precio /*Asignar el porcentaje de descuento*/ SI (nro_unid>24) ENTONCES porc 0,15 SI (nro_unid>=7) y (nro_unid<=24) ENTONCES porc 0,10 SI (nro_unid=6) ENTONCES porc 0.05 SI (nro_unid<6) ENTONCES porc 0 /*Calcular el descuento*/ desc monto*porc /*Calcular el monto a pagar*/ monto_pagar monto – desc /* Mostrar salidas*/ ESCRIBIR: “El nombre del cliente es:”nomb ESCRIBIR: “El numero de unidades solicitadas: “nro_unid ESCRIBIR: “El monto es:”monto ESCRIBIR: “El descuento es:”desc. ESCRIBIR: “El monto a pagar es:”monto_pagar. FIN/*CP*/ FIN/*Algoritmo*/

Títu


Ejercicios propuestos:

C1 150

P2 0,10

1. Un equipo de futbol ha tenido una

CORRIDA EN FRIO MP: C2 C3 C4 C5 270

24

7

buena campaña y desea premiar a sus P1

6

0,15

? Juan

? B

? 18

montodescporcmonto_pagar ? 4860

? 486

? 0,10

para la siguiente campaña. Los sueldos

Títu

deben ajustarse de la siguiente forma:

P3nombtipo_fnro_unid 0,05

jugadores con un aumento de salario

Sueldo actual

aumento

0-100.000

20%

100.000-1.300000

10%

1.300000-2.000000 5% ? 4374

PANTALLA: Ingrese nombre: Juan Ingrese tipo de franela A o B: B Ingrese número de unidades: 18 El nombre del cliente es: Juan. El número de unidades solicitadas es:18 El monto es: 4860 El descuento es: 486 El monto a pagar es: 4374 DATOS DE ENTRADA Nombre; Juan Tipo de franela: B Número de unidades: 18

Mas de 2.000000

0%

Diseñar un algoritmo que lea el salario de un jugador y que a continuación imprima el sueldo aumentado 2. Los estudiantes de la universidad Lara deben cancelar al inscribirse: 25 bsf por cada materia que tomen durante un semestre; pero si el estudiante toma mas de 5 materias, solo cancelara 20 bsf por cada materia. La universidad desea un algoritmo que calcule e imprima el monto a cancelar por un estudiante al

En el ejemplo anterior se hizo uso tanto de la estructura anidada como de las preguntas independientes para construir los bloques selectivos que permitieron la selección de una opción.

inscribirse. Como dato de entrada se tiene el número de materias tomadas por el estudiante. ¡ La forma de resolver estos ejercicios es similar a como se a hecho en el ejercicio resuelto, es decir tomando en cuenta cual es el bloque selectivo que el programa ejecutara !


3.- ESTRUCTURA REPETITIVA: La estructura iterativa o de repetición permite ejecutar una o varias instrucciones, un número determinado de veces o, indefinidamente, mientras se cumpla una condición. Esta estructura ayuda a simplificar los algoritmos, ahorrando tiempo valioso a quien resuelve problemas con ayuda del computador. En programación existen al menos dos tipos de estructuras repetitivas, las cuales a su vez tienen variantes en los diferentes lenguajes de programación. La característica común es que ambos tipos permiten ejecutar una o varias instrucciones: • Un número determinado de veces. • Mientras se cumpla una condición. Esta estructura permite al programador especificar que una acción o un grupo de acción se van a repetir un numero determinado de veces, es decir se tiene un paso (o secuencia de paso) que debe repetirse cierto numero de veces. Todo ciclo debe ser finito, por lo que se debe definir la forma en que el ciclo termina. Esto se hace a través de una variable que controla el ciclo repetitivo. Existen muchas formas de controlar el ciclo, entre estas tenemos: 1. Estructura REPITA MIENTRAS: El bloque de acción se repetirá mientras que la condición sea cierta. La condición se evalúa al comienzo de la estructura, esto implica que el bloque de instrucciones puede no ejecutarse ninguna vez si la condición de salida es inicialmente falsa.

2. Estructura REPITA HASTA: El bloque de acciones se repetirá hasta que la condición sea cierta, dicha condición se evalúa al final de la estructura, esto implica que el bloque de instrucciones se ejecutara al menos una vez aunque la condición de salida ya no sea cierta al entrar en dicha estructura.

Títu

3. Estructura REPITA PARA: Esta estructura ejecuta las acciones del bucle un número especificado de veces y controla automáticamente el número de repeticiones. Para dicho control, hay que definir dentro de la estructura el nombre de una variable numérica, su valor inicial, su valor final y un incremento fijo.

NOTA: Para la realización de la estructura repetitiva solo tomaremos en cuenta la estructura REPITA MIENTRAS: Esta estructura, considera tres nuevos tipos de variable: contadores, acumuladores y centinela. Contadores: Esta variable recibe este nombre porque precisamente se encarga de contar, y puede expresarse de la siguiente manera:

<nombre del contador> ¬ nombre del contador> + <valor constante>

Si en vez de incremento es decremento se coloca un menos en lugar del más.


Ejemplo: Cont<- cont+1. En la expresión dada se puede observar que la variable cont es igual al valor que ella tiene mas 1 y siempre que se use esta variable es necesario inicializarlo ante de ser usado (en cero, uno o dependiendo el modo en que se quiere contar). El contador siempre debe ser declarado como entero, dado que es una operación basada en números naturales (y estos son a su vez enteros). Ejemplo: Hacer un algoritmo que escriba el mensaje “hola usuario” diez veces

Para facilitarnos la escritura de nuestro algoritmo, escribiremos en el mismo: REPITA MIENTRAS (condición) /*COMIENZO DEL REPITA MIENTRAS*/ ESCRIBIR= “hola programador” /*FIN DEL REPITA MIENTRAS*/

Ahora establecemos la condición bajo la cual se repetirá la instrucción. Como la acción ESCRIBIR debe ejecutarse diez veces, necesitamos una variable dentro del ciclo que se incrementen en cada iteración, de modo que al alcanzar el valor de diez se establezca una condición que se debe repetir mientras la mencionada variable sea menor o igual a diez. Esta variable es el contador.

A continuación se presenta el algoritmo completo y con el la corrida en frio

ALGORITMO saludo VARIABLES ENTERO:: cont COMIENZO /*CP*/ /*Inicializamos*/ Cont 1 REPITA MIENTRAS (cont < = 10) /*COMIENZO DEL REPITA MIENTRAS*/ ESCRIBIR=”hola programador” Cont cont + 1 /*FIN DEL REPITA*/ FIN/*CP*/ FIN/*ALGORITMO*/

Títu

Inicialmente, la variable cont se le asigna el valor de 1, y como se verifica que 1 <= 10, se entra (por primera vez) en el bloque REPITA MIENTRAS, por lo que se harán dos cosas:

Escribir el mensaje ”hola programador” A la variable cont se le asigna su valor anterior mas 1 (se esta incrementando), esto es cont=cont+1=1+1=2

Como cont=2 <=10, vuelve a entrase (por segunda vez) en el bloque REPITA MIENTRAS, por lo que se vuelve a hacer:

Escribir el mensaje ”hola programador” La variable cont vuelve a incrementarse en 1 esto significa que cont=cont+1=2+1=3.

Después de una iteración mas, precisamente cuando se ha escrito diez veces el mensaje que queríamos, el contador tendrá el valor de 11, y como no se cumple que 11 <=10, no se volverá a entrar en el bloque de repetición.


Así finaliza el algoritmo, satisfaciendo nuestro requerimiento. Acumuladores: Un acumulador se encarga de almacenar en una variable el resultado de una o varias operaciones matemáticas que se encuentran dentro de una sentencia repetitiva, para obtener un total acumulado y puede expresarse de la siguiente manera:

<nombre del acumulador> ¬ nombre del acumulador> + <variable>.

Un acumulador se debe inicializar a cero (0) en caso de suma y en uno (1) en caso de producto Ejemplo:acum<- acum + nota A diferencia del contador, el acumulador se declara dependiendo de lo que se desea acumular, si es de operación basada en números enteros será declarada como ENTERO y si es de operación basada en real será declarada como REAL. Ejemplo: Hacer un algoritmo que calcule el promedio de doce notas.

Nota: No vamos a declarar doce notas, pedirlas, sumarlas y finalmente calcular el promedio dividiendo dicha suma entre doce. En vez de ello interpretaremos esa suma como un ciclo, de la manera siguiente: Para la corrida tomamos los valores de prueba 10, 15.5, 20, 17.8, 0, 6.3, 15, 3, 10, 14, 20, 6.6

ALGORITMO promedio VARIABLES REAL::nota, acum, prom ENTERO:: cont COMIENZO /*CP*/ /*Inicializamos*/ Cont 1 Acum 0 REPITA MIENTRAS (cont < = 12) /*COMIENZO DEL REPITA MIENTRAS*/ ESCRIBIR: “ingrese nota: ”LEER nota Acum acum + nota Cont cont + 1 /*FIN DEL REPITA*/ Prom acum/12 ESCRIBIR:”EL PROMEDIO ES:_”prom FIN/*CP*/ FIN/*ALGORITMO*/

Títu

Al inicio cont vale 1 y se entra en el ciclo. Se pide la primera nota, y luego acum y contvalen respectivamente.

Acum=acum + nota= 0 + 10 Cont= cont + 1= 1+1=2

Comocont=2 <= 12, vuelve a entrase (por segunda vez) en el ciclo. Se ingresa la segunda nota y

Acum=acum + nota=10 + 15.5= 25.5 Cont= cont + 1= 2+1= 3

Luego de varias iteraciones mas, precisamente cuando se ha pedido doce notas, el contador tendrá el valor de 13, y como no se cumple que 13<=12, no se volverá a entrar en el bloque de repetición. En este momento, acum=138.2 Se calcula el promedio(prom=11.516)y se imprime. Así finaliza el algoritmo, satisfaciendo nuestro requerimiento.


Dato centinela: Las estructuras repetitivas (o estructuras con bucles), son controladas de diversas maneras; entre estas formas, tenemos el control a través de un dato centinela, el cual es un dato ficticio que se utiliza para controlar la estructura repetitiva cuando no se conocen la cantidad de datos a procesar. Este dato ficticio es tomado de una delas variables de entrada y antes de usarse en la estructura debe ser

La forma general de leer este dato es la siguiente: ESCRIBIR: “desea ingresar al sistema SI o NO: “LEER resp. REPITA MIENTRAS resp= “SI” * * * ESCRIBIR: “Desea continuar SI o NO: “LEER resp.

Títu

Al igual que en el dato centinela, esta forma de controlar el siclo repetitivo se lleva a cabo cuando no se conocen la cantidad de datos que se van a procesar.

leído previamente. Como se dijo anteriormente, este dato sirve para controlar la estructura repetitiva y cuando el usuario no desea continuar solo basta ingresar el dato centinela para salirse

Nota: En el siguiente cuadro se presenta en forma resumida las estructuras estudiada en esta unidad

del programa. estructuras

Iteración con el usuario: Esta es otra forma de controlar el siclo repetitivo y se lleva a cabo como lo indica su nombre, es decir, mediante una comunicación entre el usuario y el programa. Dentro del programa debe existir un lugar donde el usuario tenga las opciones para ingresar o salirse del programa. En este caso se debe declarar una variable alfanumérica. Además se debe leer esa variable que preguntará al usuario si desea o no ingresar al programa.


Títu

Sistema numérico, sistema numérico de punto flotante y teoría de errores


1.- SISTEMA NUMÉRICO Los sistemas numéricos son conjuntos de dígitos usados para representar cantidades.

Normalmente al dígito cero se le asocia con cero voltios, apagado, des energizado, inhibido (de la computadora) y el dígito 1 se asocia con +5, +12 volts, encendido, energizado (de la computadora) con el cual se forma la lógica positiva. Si la asociación es inversa, o sea el número cero se asocia con +5 volts o encendido y al número 1 se asocia con cero volts o apagado, entonces se genera la lógica negativa. A la representación de un dígito binario se le llama bit (de la contracción binarydigit) y al conjunto de 8 bits se le llama byte, así por ejemplo: 110 contiene 3 bits, 1001 contiene 4 y 1 contiene 1 bit. Como el sistema binario usa la notación posicional entonces el valor de cada dígito depende de la posición que tiene en el número, así por ejemplo el número 110101b es: 1*(20) + 0*(21) + 1*(22) + 0*(23) + 1*(24) + 1*(25) = 1 + 4 + 16 + 32 = 53d La computadora está diseñada sobre la base de numeración binaria (base 2). Por eso este caso particular merece mención aparte. Siguiendo las reglas generales para cualquier base expuestas antes, tendremos que: Existen dos dígitos (0 o 1) en cada posición del número. Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el valor decimal de la posición es 2n.

Títu

Un sistema de numeración puede representarse como Donde: es el sistema de numeración considerado (p.ej. decimal, binario, etc.). es el conjunto de símbolos permitidos en el sistema. En el caso del sistema decimal son {0,1,...9}; en el binario son {0,1}; en el octal son {0,1,...7}; en el hexadecimal son {0,1,...9, A, B, C, D, E, F}.  Son las reglas que nos indican qué números son válidos en el sistema, y cuáles no. A) Binarios: Este sistema, como su nombre lo indica, usa solamente dos dígitos (0,1). Por su simplicidad y por poseer únicamente dos dígitos diferentes, el sistema de numeración binario se usa en computación para el manejo de datos e información.


Operaciones de adición y sustracción: Dos números binarios se pueden sumar y restar siguiendo este esquema: 0±0=0, 0±1=1. Ejemplos: Suma: 10110 + 01101 -----100011 Resta: 1011010 - 110101 ________ 100101 B) Octal: El sistema de numeración octal es también muy usado en la computación por tener una base que es potencia exacta de 2 o de la numeración binaria. Esta característica hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos (0, 1, 2, 3, 4, 5, 6,7) y tienen el mismo valor que en el sistema de numeración decimal. Como el sistema de numeración octal usa la notación posicional entonces para el número 3452.32q tenemos: 2*(80) + 5*(81) + 4*(82) + 3*(83) + 3*(8-1) + 2*(8-2) = 2 + 40 + 4*64 + 64 + 3*512 + 3*0.125 + 2*0.015625 = 2 + 40 + 256 + 1536 + 0.375 + 0.03125 = 1834 + 40625dentonces, 3452.32q = 1834.40625d

El subíndice q indica número octal, se usa la letra q para evitar confusión entre la letra o y el número 0 C). Hexadecimal: El sistema de numeración hexadecimal, o sea de base 16, resuelve un problema que presenta el sistema binario, la cual es la verbosidad, dado que el sistema hexadecimal es compacto y nos proporciona un mecanismo sencillo de conversión hacia el formato binario, debido a esto, la mayoría del equipo de cómputo actual utiliza el sistema numérico hexadecimal. Como la base del sistema hexadecimal es 16, cada dígito a la izquierda del punto hexadecimal representa tantas veces un valor sucesivo potencia de 16, por ejemplo, el número 123416 es igual a: 1*163 + 2*162 + 3*161 + 4*160 lo que da como resultado: 4096 + 512 + 48 + 4 = 466010 Cada dígito hexadecimal puede representar uno de dieciséis valores entre 0 y 1510. Como sólo tenemos diez dígitos decimales, necesitamos inventar seis dígitos adicionales para representar los valores entre 1010 y 1510. En lugar de crear nuevos simbolos para estos dígitos, utilizamos las letras A a la F.

Títu

Conversión entre hexadecimal y binario: Binario Hexadecimal 0000 0001 0010 0011 0100 0101 0110

0 1 2 3 4 5 6


0111 1000 1001 1010 1011 1100 1101 1110 1111

7 8 9 A B C D E F

Esta tabla contiene toda la información necesaria para convertir de binario a hexadecimal y viceversa. Para convertir un número hexadecimal en binario, simplemente sustituya los correspondientes cuatro bits para cada dígito hexadecimal, por ejemplo, para convertir 0ABCDh en un valor binario: 0 A B C D (Hexadecimal) 0000 1010 1011 1100 1101 (Binario).

Por comodidad, todos los valores numéricos los empezaremos con un dígito decimal; los valores hexadecimales terminan con la letra h y los valores binarios terminan con la letra b. La conversión de formato binario a hexadecimal es casi igual de fácil, en primer lugar necesitamos asegurar que la cantidad de dígitos en el valor binario es múltiplo de 4, en caso contrario agregaremos ceros a la izquierda del valor, por ejemplo el número binario 1011001010, la primera etapa es agregarle dos ceros a la izquierda para que contenga doce ceros: 001011001010. La siguiente etapa es separar el valor binario en grupos de cuatro bits, así: 0010 1100 1010. Finalmente buscamos en la tabla de arriba los correspondientes valores hexadecimales dando como resultado, 2CA, y siguiendo la convención establecida: 02CAh. .

Títu


2.- SISTEMA NUMERICO DE PUNTO FLOTANTE: Un sistema de números en punto flotante es un subconjunto F⊂ℜ de números reales, cuyos Elementos x, x ∈ R-{0} se pueden escribir como: x = ?} m ×10E, con 1≤ m El método usual que emplean los ordenadores para representar números reales es la notación de punto flotante. Hay muchas variedades de notaciones de punto flotante y cada una tiene características particulares. El concepto fundamental es que un número real se representa mediante un número, llamado mantisa, por una base elevada a una potencia entera, denominada exponente. Por lo general, la base es fija y la mantisa y el exponente varían para representar números reales distintos. A) Propiedades: Es interesante notar una propiedad de estos números de especial importancia en los cálculos numéricos y que hace referencia a su densidad en la línea real. Supongamos que p, el número de bits de la mantisa, sea 24. En el intervalo (exponente f = 0) es posible representar 224 números igualmente espaciados y separados por una distancia 1/224. De modo análogo, en cualquier intervalo hay 224 números aquí espaciados, pero su densidad en este caso es 2f/224. Por ejemplo, entre 220 = 1048576 y 221 = 2097152 hay 224 = 16777216 números, pero el espaciado entre dos números sucesivos es de sólo

.

De este hecho se deriva inmediatamente una regla práctica: cuando es necesario comparar dos números en punto flotante relativamente grandes, es siempre preferible comparar la diferencia relativa a la magnitud de los números.

Títu

B) Aplicaciones: El sistema numérico de punto flotante ofrece una mejor solución y es por mucho el sistema mayormente implementado en computadoras modernas. En las representaciones numéricas de punto flotante y científica convencional el escalado requiere la manipulación de los exponentes para realizar las operaciones aritméticas individuales. También formula representaciones y algoritmos computacionales en los cuales los procedimientos de escalado sean construidos internamente, esto es, sistemas que vean la posición del punto decimal como una variable yque este implícitamente sea determinado por la maquina para cada operando en una operación dada.


3.- TEORIA DE ERRORES: Un error es una incertidumbre en el resultado de una medida. Se define como la diferencia entre el valor real Vr y una aproximación a este valor Va: e = Vr – Va A) TIPOS DE ERRORES *Absoluto: Es la diferencia entre el valor exacto (un número determinado, por ejemplo) y su valor calculado o redondeado: Error absoluto = [exacto - calculado] Debido a que la definición se dio en términos del valor absoluto, el error absoluto no es negativo. Así pues, una colección (suma) de errores siempre se incrementan juntos, sin reducirse. Este es un hecho muy pesimista, dado que el redondeo y otros errores rara vez están en la misma dirección, es posible que una suma ("algebraica") de errores sea cero, con aproximadamente la mitad de los errores positiva y la otra mitad negativa. Pero también es demasiado optimista esperar que errores con signo sumen cero a menudo. Un enfoque realista es suponer que los errores, en especial el redondeo, están estadísticamente distribuidos. *Relativo: Es el error absoluto dividido entre un número positivo adecuado. Generalmente, el divisor es una de tres elecciones: la magnitud del valor exacto, la magnitud del valor calculado (o redondeado) o el promedio de estas dos cantidades. La mayor parte de las veces utilizaremosError relativo= [exacto-calculado]/[Exacto]

El error relativo es una mejor medida del error que el error absoluto, en especial cuando se utilizan sistemas numéricos de punto flotante. Puesto que los elementos de un sistema de punto flotante no están distribuidos de manera uniforme, la cantidad de redondeos posibles depende de la magnitud de los números que se redondean. El denominador de la ecuación de arriba compensa este efecto.

Títu

Una característica relacionada de error relativo es que los efectos de escalar la variable (es decir, de multiplicarla por una constante distinta de cero, incluyendo cambios en la unidad de medición) se cancelan. Una buena medida del error debería ser "invariante de las escalas", de modo que al cambiar de yardas a pulgadas, digamos, no debería amplificar el error aparente por 36, como sucedería en la ecuación de arriba. Si bien las matemáticas puras se inclinarían a utilizar el error absoluto, en general el error relativo se emplea en las ciencias aplicadas. Algunas veces conviene multiplicar el error relativo por 100 (por ciento) para ponerlo en una base porcentual. *Propagado:

Puede definirse como el error de salida provocado por un error en la entrada, suponiendo que todos los cálculos intermedios se efectúan exactamente (en particular, sin error de redondeo). Incluye la evaluación de funciones cuando el valor del dominio es aproximado, raíces de polinomios


cuyos coeficientes se han redondeado o aproximado, etc. Por supuesto, en una situación realista todos los tipos de error pueden intervenir, de modo que la salida de un proceso contendrá el error propagado más los errores generados en el proceso.

*Significativo: Tener presente este tipo de error significa que el número de cifras significativas (es decir, que tengan sentido y sean válidas) es algunas veces menor de lo esperado. Ocurre con mayor frecuencia cuando se restan números casi iguales, pero también puede ocurrir cuando varios números de magnitud y signo diferentes se suman o cuando se emplea un divisor relativamente pequeño. *Redondeo: Se originan al realizar los cálculos que todo método numérico o analítico requieren y son debidos a la imposibilidad de tomar todas las cifras que resultan de operaciones aritméticas como los productos y los cocientes, teniendo que retener en cada operación el número de cifras que permita el instrumento de cálculo que se este utilizando. Existen dos tipos de errores de redondeo: * Error de redondeo inferior: se desprecian los dígitos que no se pueden conservar dentro de la memoria correspondiente.

* Error de redondeo superior: este caso tiene dos alternativas según el signo del número en particular:

Títu

Para números positivos, el último dígito que se puede conservar en la localización de memoria incrementa en una unidad si el primer dígito despreciado es mayor o igual a 5. Para números negativos, el último dígito que se puede conservar en la localización de la memoria se reduce en una unidad si el primer dígito despreciado es mayor o igual a 5. *otros tipos de errores:

ERROR DE TRUNCAMIENTO: Este tipo de error ocurre cuando un proceso que requiere un número infinito de pasos. Note que el error de truncamiento, a diferencia del error de redondeo, no depende directamente del sistema numérico que se emplee. ERROR NUMERICO TOTAL: Se entiende como la suma de los errores de redondeo y truncamiento introducidos en el cálculo. Mientras más cálculos se tengan que realiza para obtener un resultado, el error de redondeo se irá incrementando. Pero por otro lado, el error de truncamiento se puede minimizar al incluir más términos en la ecuación, disminuir el paso o proseguir la iteración (o sea mayor número de cálculos y seguramente mayor error de redondeo).


ERROR HUMANO: Son los errores por negligencia o equivocación. Las computadoras pueden dar números erróneos por su funcionamiento. Actualmente las computadoras son muy exactas y el error es atribuido a los hombres. Se pueden evitar con un buen conocimiento de los principios fundamentales y con la posesión de métodos y el diseño de la solución del problema. Los errores humanos por negligencia son prácticamente inevitables pero se pueden minimizar. ERROR INHERENTE: En muchas ocasiones, los datos con que se inician los cálculos contienen un cierto error debido a que se han obtenido mediante la medida experimental de una determinada magnitud física. Así por ejemplo, el diámetro de la sección de una varilla de acero presentará un error según se haya medido con una cinta métrica o con un pie de rey. A este tipo de error se le denomina error inherente. B). ARITMETICA DE PUNTO FLOTANTE;  ADICION Y SUSTRACION: Paso de la adición y sustracción: – Extraer signos, exponentes y magnitudes. – Tratar operandos especiales (por ejemplo, alguno de ellos a cero) – Desplazar la mantisa del número con exponente más pequeño a la derecha |e1-e2| bits – Fijar el exponente del resultado al máximo de los exponentes

Si la operación es suma y los signos son iguales, o si la operación es resta y los signos son diferentes, sumar las mantisas. En otro caso restarlas – Detectar overflow de la mantisa – Normalizar la mantisa, desplazándola a la derecha o a la izquierda hasta que el dígito más significativo esté delante del punto. – Redondear el resultado y re normalizar la mantisa si es necesario. – Corregir el exponente en función de los desplazamientos realizados sobre la mantisa. – Detectar overflow o underflow del exponente

Títu

 MULTIPLICACION: El proceso de multiplicación tiene varios pasos: 1.- El signo del resultado es igual a la oexclusiva de los signos de los operandos. 2.- La mantisa del resultado es igual al producto de las mantisas. Este producto es sin signo. Dado que los dos operandos están comprendidos entre 1 y 2 el resultado r será: 1≤ r < 4 Este paso puede requerir una normalización, mediante desplazamiento a la derecha y ajuste del exponente resultado. 3.- Si la mantisa resultado es del mismo tamaño que la de los operandos habrá que redondear.


El redondeo puede implicar la necesidad de normalización posterior. 4.- El exponente del resultado es igual a la suma de los exponentes de los operandos. Considerando que usamos una representación sesgada del exponente, al hacer esta suma estamos sumando dos veces el sesgo, y por tanto habrá que restar este sesgo una vez para obtener el resultado correcto.  DIVICION: El proceso de división es similar al de multiplicación. Al hacer la resta de los exponentes hay que considerar que los sesgos se anularán y por tanto al resultado hay que sumarle el sesgo. Al operar con números normalizados, la mantisa del resultado será: 0,5< r < 2 Lo que implicará que la única normalización posible será mediante un desplazamiento a la izquierda.

REFERENCIAS: http://www.dacya.ucm.es/dani/aritm_pf.PDF http://profesores.elo.utfsm.cl/~tarredondo/info/c omp-architecture/apuntes-lsb/cap9a.pdf http://mmc2.geofisica.unam.mx/cursos/mcst2007-II/arch/SisNum.pdf

Títu


RESUMEN Y CONCLUSION DEL TRABAJO: Todo lo que se ha presentado en esta GUÍA DIDÁCTICA fueron los objetivos que se estudiaron en el curso de INTRODUCCIÓN A LA COMPUTACIÓN, bajo la asesoría de la profesora ZITA PEREIRA. Ahora bien, si nos centramos en el contenido de dicha guía, se puede notar que esta está estructurada en cuatro unidades, las cuales poseen distintos puntos a tratar. En la primera parte se habla sobre la historia y evolución de las computadoras, además de cómo está compuesta la computadora tanto físicamente como lógicamente. Cuando se pasa ala segunda unidad o bloque, se observa de manera clara el contenido relacionado con la estructura algorítmica y ya en la tercera unidad se especifican tres estructuras para la representación de algoritmos que son la estructura secuencial, selectiva y la repetitiva. y, en la ultima unidad se expuso sobre el sistema numérico de punto flotante.

Títu


trabajo