La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sistema de Computdoras Áreas en Ciencias de Computación Algorithms and Data Structures Architecture Artificial Intelligence and Robotics Database and.

Presentaciones similares


Presentación del tema: "Sistema de Computdoras Áreas en Ciencias de Computación Algorithms and Data Structures Architecture Artificial Intelligence and Robotics Database and."— Transcripción de la presentación:

1

2 Sistema de Computdoras

3 Áreas en Ciencias de Computación Algorithms and Data Structures Architecture Artificial Intelligence and Robotics Database and Information Retrieval Human-Computer Communication Numerical and Symbolic Computation Operating Systems Programming Languages Software Methodology and Engineering Social and Professional Context

4 Qué tipo de enunciados entiende la computadora? zEn una computadora, toda la data es almacenada y procesada en forma de código binario, o sea, en forma de cadenas de 0's y 1's. Las instrucciones y data son almacenados en la memoria de la computadora usando código binario. zLlamamos al 0 y 1 binary digit (bit)

5 Bits and Bytes zThe bi-valued bit is the fundamental unit of memory. Bits may be switched on or off, states corresponding to values of 1 and 0. The byte is the next level of organization above the bit. Bytes represent a group of bits. Although byte size is not fixed by physical or human law, there is a widely accepted standard: 8 bits comprise 1 byte. Given a binary numbering scheme, one byte can take on 256 values, ranging from 00000000 to 11111111. zBytes may be used to represent integers, floating – point numbers, and even characters (either letters or symbols). zFixed character values are established by two major standards, ASCII and Unicode.

6 zEl único lenguaje de programación que una computadora puede directamente ejecutar es el conjunto primitivo de instrucciones propio de la máquina, lenguaje de máquina o código de máquina. zLenguaje de máquina es el lenguaje de programación que la computadora entiende. zNombre de InstrucciónLenguaje de Máquina Add0110 Subtract0100

7 zLos programadores de las primeras computadoras, al final de la década de los años 1940 tenían que programar en lenguaje de máquina.

8 Características de Lenguaje de Máquina (bajo nivel, low level) z"Machine dependent" un programa escrito para un tipo de máquina tiene que ser re-escrito para otro tipo de máquina.(no es portátil) zFácil de cometer errores zDifícil encontrar errores

9 Nivel Medio zAssembly language : abreviaciones mnemónica, add, para sumar versus 0110 en código binario. También es dependiente de máquina.

10 A Bright Idea zDevise a set of abbreviations (mnemonics) corresponding to the ML statements zCreate a program (the assembler) to translate them into ML. ADD 34, R1 MOVE R1,1200 CMPRR1, R2 100111001 1 100101101 0 011011011 1 Assemble r Assembly language statements (mnemonics) Machine language statements

11 Lenguaje de Alto Nivel zLenguajes de alto nivel : Pueden expresar algoritmos a un nivel más alto de abstracción. Están diseñados para facilitarle a los humanos el escribir programas y el leerlos. Algunos lenguajes de alto nivel son C, Pascal, FORTRAN, BASIC, COBOL, C++.

12 Lenguaje de Alto Nivel zPortable code : Un programa(código) es portátil puede correr sin ser modificado en máquinas diferentes sólo compilandolos con el compilador apropiado. zEs importante reconocer que para que la computadora pueda ejecutar las instrucciones escritas en un programa de alto nivel éstas primero tienen que ser traducidas a lenguaje de máquina.

13 Compilador zCompilador : Un compilador es un programa que traduce un programa escrito en un lenguaje de alto nivel como C++, a lenguaje de máquina. (Recordar que ese es el único lenguaje que la computadora entiende).

14 Contrast Assembler and HLL Compiler zAssembler translates one mnemonic into one ML statement zCompiler translates one HL statement into several ML statements 1010110011110101 0000000000010000 0010111010110101 0000000000010010 0010111011111101 0000000000010100 z = x + y; Compiler

15 Summary of "Levels" of Computer Languages zLow level ML in binary language zMedium Level Assembly language zHigh Level as in C++ zHard to read, not portable zMnemonics, easier to read, still not portable zReads like English and algebra, portable

16 Que es programacion zComputadora: dispositivo programable que puede almacenar, retirar y procesar data. zProgramacion de Computadora : Es el proceso de planear una sucesion de pasos para que la computadora siga. Paso 1 Paso 2 paso 3 … paso n

17 Que es programacion zPrograma de Computadora : una sucesion de instrucciones que se llevan a cabo por la computadora zProgramadores : las personas que escriben los programas.

18 zApplication software: set of programs that interface with the user zSystem software yManages internal operation of the physical device yInsulates user from hardware

19 Objectives in Programming A program should solve a problem: zCorrectly zEfficiently zReadably zIn user-friendly fashion zIt actually solves the problem zWithout wasting time or space zUnderstandable by another person zIn a way that is easy for its user to use

20 Para resolver un problema usando una computadora zUna computadora no es inteligente. No puede analizar un problema y generar una solucion. zEl humano (programador) debe analizar el problema, desarrollar(un algoritmo) una sucesion de instrucciones para resolver el problema y luego comunicarselo a la computadora. zPodriamos entonces preguntarnos:?Cual es la ventaja de usar una computadora si no puede resolver problemas?

21 Contestacion zUna vez se escriba la solucion como una sucesion de instrucciones, la computadora puede repetir la solucion bien rapidamente y consistentemente, muchas veces. Asi que la computadora libera a los humanos de hacer tareas repetitivas y aburridas.

22 El proceso de escribir un programa consiste de varias fases. zDiseno yAnalisar, especificar el algoritmo que resuelve el problema. zCodificacion yEscribir la solucion en la sintaxis de un lenguaje, documentacion zPrueba, Ejecucion, Debugging yEliminar los bugs zMantenimiento yActualizar,modificar para acomodar cambios necesarios

23 Fases en el ciclo de vida de programación 1 Problem- Solving(resolver el problema) 2 Implemantación 3 Mantenimiento

24 Fase de Resolver el Problema Analisar el problema y especificar que debe hacer la solución desarrollar una solución general (algoritmo) para resolver el problema Verificar que su solución realmente resuelve el problema.

25 Un Algoritmo es... Un procedimiento paso a paso para resolver un problema en un tiempo finito.

26 Qué es un lenguaje de programación ? Es un lenguaje con reglas estrictas de gramatica, símbolos y palabras especiales que se usan para construir un programa ce computadora.

27 Fase de Implementación: Programa Traducir el algoritmo a un lenguaje de programación esto se conoce como codificar. En C++ se usa: Documentación -- comentarios escritos Compilerar -- Traducir su programa a lenguaje de máquina. Programa principal (main) -- Puede llamar a subalgoritmos

28 Fase de Implementación : Prueba Probar su programa quiere decir correr (ejecutar) su programa en la computadora, para determinar si produce resultados correctos. Si no es así, entonces hay que determinar lo que está mal en el programa o en el algoritmo ---esto se conoce como debugging

29 Fase de Mantenimiento Use y Modifique el programa para cumplir con combios en los requisitos o corregir errores que se descubran conel uso. Mantenimiento comienza cuando se comienza a usar el programa, hay mucho esfuerzo enesta área.

30 Programming Life Cycle 1 Problem-Solving Phase Analysis and Specification General Solution ( Algorithm ) Verify 2 Implementation Phase Concrete Solution ( Program ) Test 3 Maintenance Phase Use Maintain

31 Ejemplo:(Diseno de un programa zPzProblema : Se quiere determinarel costo de alfombrar un área rectngular. zAzAnálisis : Entrada: 1. Dimensiones(pies ) 2. Costo por pie cuadrado Salida :Costo de alfombrar

32 zAlgoritmo: 1. Obtener dimensiones obtener largo obtener ancho Obtener costo por pie cuadrado 2. Calcular costo Calcular área = ancho x largo Calcular costo = área x costo_por_pie_cuadrado 3. Mostrar los resultados

33 Modulos

34 //Nombre //fecha //Sección //El propósito de este programa es calcular el costo de alfombrar un área rectangular. #include int main() { int largo, ancho, costo_por_pie_cuadrado; int area, costo; cout << Oprima retrun despues de entrar u número\n;


Descargar ppt "Sistema de Computdoras Áreas en Ciencias de Computación Algorithms and Data Structures Architecture Artificial Intelligence and Robotics Database and."

Presentaciones similares


Anuncios Google