0.a. introducciona a la computacion

32
Introducción a la Introducción a la Computación Computación Prof. Ing. Oscar Tinoco Gómez

Upload: ricardo-echevarria

Post on 08-Nov-2015

219 views

Category:

Documents


3 download

DESCRIPTION

Muestra una breve teoría de la introducción a la computación.

TRANSCRIPT

  • Introduccin a la ComputacinProf. Ing. Oscar Tinoco Gmez

  • Arquitectura de un computador

    HARDWARE

    SOFTWARE

    Parte fsica de unOrdenador(Computadora)Parte lgica de unOrdenador

  • HARDWARE Unidad Central de Proceso Dispositivos de entrada/salida Memoria

  • Estructutra bsica Hardware

  • Hardware El CPUEs el cerebro del ordenadorComponentes del CPU:Unidad Aritmtico-Lgica (ALU) lleva a cabo el procesamiento de los datos ejecutando las instruccionesUnidad de Control coordina la operacin del ALU y de los dems recursos de la computadoraRegistros memoria interna al CPU que contiene la instruccin que se ejecuta y los datos que requiere esa instruccin

  • Dual-Core, de Intel, permite compartir el doble de los recursos del procesador, con trabajo coordinado de ambas partes. Reduce la mitad del tiempo de trabajo en los procesos de una computadora.

  • Hardware Memoria PrincipalContiene las instrucciones que componen los programas y los datos que stos necesitan procesarConectada directamente al CPUDos tipos principales:RAM (memoria de acceso aleatorio) temporal, voltil; ROM (memoria slo para lectura) permanente, contiene los programas que permiten que la computadora arranque.Cach: Acceso rpido. Puente entre el CPU y la RAM

  • Representacin en MemoriaElementos que pueden estar en dos estados (prendidos o apagados).

    El sistema de numeracin binario: representacin de este tipo de datos. Utiliza slo dos smbolos: el 1 y el 0.

  • Hardware Memoria SecundariaPermite almacenar datos e instrucciones por largos periodos de tiempoEstos datos e instrucciones deben ser llevados a memoria principal para poder ser procesadosEs mucho ms lenta que la RAMAlgunos ejemplos:Disco duroCD, DVDDisketteDispositivos USB

  • Cdigo BinarioCada 1 en un nmero binario representa una potencia de 2 segn su posicinEjemplo: El nmero binario 100110 representa el valor 38

    1

    0

    0

    1

    1

    0

    25

    24

    23

    22

    21

    20

    1*32

    0*16

    0*8

    1*4

    1*2

    0*1

    38

  • Medida de la MemoriaBIT: Unidad bsica de informacin que corresponde a un nico dgito binario (puede tomar los valores 1 0).

    BYTE: conjunto de 8 bits. 256 valores diferentes: desde el 00000000 (0 en decimal) al 11111111 (255 en decimal).

  • Cantidades de Memoria1 Kilo Byte = 210 Bytes = 1024 Bytes1 Mega Byte = 210 KBytes = 220 Bytes = 1048576 Bytes1 Giga Byte = 210 MBytes = 230 Bytes1 Tera Byte = 210 GBytes = 240 Bytes

  • Almacenamiento de InformacinNmeros Enteros: Son representados utilizando 2, 4 u 8 bytes.

    2 bytes: rango(0 - 65536) enteros sin signo. rango(-32767 - 32768) enteros con signo.

  • Nmeros Reales:Se representan utilizando dos esquemas:Punto Flotante: Real representado como un entero y un byte adicional que indica la posicin del punto.Punto Fijo: Real representado como una mantisa y un exponente; que son representados como enteros.Almacenamiento de Informacin12345.6789 es representado como:Mantisa = 1.23456789 Exponente =104pues 1.23456789*104= 12345.6789

  • Alfanumricos: representados en codificacin ASCII, se asigna a cada carcter un valor numrico representado por un byte.

    Ejemplo: el carcter A mayscula es representado por el byte 1000001 (65 en decimal), la letra B mayscula por el byte 66 en decimal y as sucesivamente.

    Almacenamiento de Informacin

  • Existe un cdigo ASCII para cada carcter representable (lista utilizada en los Laboratorios), algunos ejemplos:Almacenamiento de InformacinEspacio32 ;59 *42 162 048 149 a97 957

  • Software: conjunto de instrucciones que le indican al hardware que hacer.

    Lenguaje de programacin: lenguaje que permite escribir un software.

    Programa: conjunto de rdenes en un lenguaje de programacin especfico con un propsito definido.Software

  • Arquitectura de Software

  • Lenguaje de Mquinanico lenguaje que entiende el hardware (mquina).Especfico para cada hardware (procesador, dispositivos, etc.).Usa exclusivamente el sistema binario.Estructura de una instruccin:CDIGO ARGUMENTO(S)Programa: almacenado en memoria, contiene instrucciones y datos.

  • Lenguaje de MquinaEs propio de cada ordenador (se relaciona con el diseo del hardware y depende de l)En general son combinaciones de ceros y unos (Sistema binario)Operaciones bsicas:CargarAlmacenarSumarRestar

  • Lenguaje EnsambladorUsa mnemnicos (palabras cortas escritas con caracteres alfanumricos), para codificar las operaciones. Los datos y/o direcciones son codificados generalmente como nmeros en sistema hexadecimal.

    Es especfico (aunque no nico) para cada lenguaje de mquina.

    Estructura de una instruccin: MNEMONICO ARGUMENTO(S)

  • ENSAMBLADOR: software, generalmente escrito en lenguaje de mquina, capaz de traducir de lenguaje ensamblador a lenguaje de mquina.

    CARGADOR: software que almacena en memoria el programa en lenguaje de mquina generado por el ensamblador.Lenguaje Ensamblador

  • Lenguaje de Alto NivelPermite a los programadores escribir instrucciones en un lenguaje ms familiar para ellos (los programadores) y que contiene notaciones matemticas comnmente utilizadas (independiente de la mquina)Basado en una estructura gramatical que permite el anidamiento de instruccionesCuenta con un conjunto de palabras reservadas, para codificar estructuras de control y/o instrucciones.

  • Lenguaje de Alto NivelPermite el uso de smbolos aritmticos y/o relacionales.Permite al programador olvidarse del direccionamiento de memoria.En general: permite la realizacin de programas independiente del Hardware.Los lenguajes de alto nivel permiten portabilidad, menor posibilidad de cometer errores y una visin ms amplia para resolver problemas.

  • COMPILADORES e INTERPRETES: software capaz de traducir de un lenguaje de alto nivel al lenguaje ensamblador especfico de una mquina.

    Lenguaje de Alto NivelTal como ocurre con los lenguajes ensambladores, el ordenador no entiende directamente lenguaje de alto nivel, por lo que requiere de un compilador

  • Lenguajes de Alto NivelJava C C++ - Cobol Prolog LISP ADA Basic Visual Basic Pascal - etcLenguaje de Alto NivelLenguaje EnsambladorLenguaje de MquinaOrdenadorUsuario final

  • Sistema OperativoConjunto de programas de computadora destinado a permitir una administracin eficaz de sus recursos.Ofrece un conjunto de primitivas a otro software, que le permiten a este ultimo ser tan independiente de la arquitectura de hardware como le es posible. Puede ser escrito en lenguaje de alto nivel, en lenguaje ensamblador y/o en lenguaje mquina.Funciones Bsicas:Suministro de interfaz al usuario, Administracin:de recursos, de archivos, de tareas.Servicio de soporte y utilidades.

  • AplicacionesAPLICACIN: software que le permite al computador realizar una tarea especfica y con el cual no se puede construir otro software. Ejemplos: procesadores de texto como WORD, las hojas electrnicas como EXCEL, AutoCad, SPSS, Ms Project, etc.

  • HerramientasHERRAMIENTA: software construido especialmente para el desarrollo de nuevo software, (tanto de aplicaciones como de herramientas). Ejemplos: compiladores como TURBO C, ambientes integrados de desarrollo, etc.

  • Arquitectura de Software

  • Del Lenguaje de Alto Nivel al Programa EjecutableCdigo OrigenPreprocesadorCdigo Origen ModififcadoCompiladorCdigo ObjetoEnlazadorCdigo Ejecutable

  • Ejemplo de un Programa C++#include int main(){ const double PI = 3.1416; double radio, areacirculo; cout