C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid

Tamaño: px
Comenzar la demostración a partir de la página:

Download "C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid"

Transcripción

1 C1 INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid

2 Índice 1. Lenguajes de Programación 1. Definición. 2. Niveles de lenguajes de programación 3. Compiladores e intérpretes 2. El lenguaje C 1. Historia 2. Características. 3. Compilación. 4. Entorno de desarrollo. 5. Mi primer programa.

3 Lenguajes de Programación: Definición Un Lenguaje de Programación es un conjunto de símbolos y reglas con los que expresar órdenes a un ordenador. Los símbolos que acepta un lenguaje de programación representan su léxico. Las reglas son sintácticas y semánticas: Sintaxis: establece qué construcciones son aceptables como instrucciones válidas. Semántica: establece el significado de dichas Instrucciones válidas.

4 Lenguajes de Programación: Definición Lenguaje Natural (Humano) Lenguaje de Programación Léxico Palabras y signos de puntuación Símbolos del lenguaje. Sintaxis Oraciones correctas. Instrucciones bien formadas y válidas. Semántica Información que trasmite quien habla o escribe. Qué acciones debe ejecutar el ordenador para hacer lo que ordena el programa.

5 Niveles de los lenguajes de programación Básicamente se pueden establecer tres categorías: Lenguaje máquina Lenguaje ensamblador Alto nivel Lenguaje máquina Lenguaje directamente comprensible por el procesador. Representación bit a bit en '1's y '0's. Depende totalmente del hardware. Es definido por el conjunto de instrucciones que soporta un procesador. Ej: Un programa escrito en lenguaje de máquina del Motorola es completamente incomprensible por el Pentium Intel.

6 Niveles de los lenguajes de programación Lenguaje ensamblador Emplea palabras nemotécnicas para hacer referencia a las instrucciones del lenguaje de máquina. Ensamblador ADD AX, Lenguaje de máquina Incluye nombres simbólicos para hacer referencia a las variables o etiquetas para marcar el destino de los saltos en el flujo del programa. Ensamblador atras: jmp atras Lenguaje de máquina El programa escrito en lenguaje ensamblador debe ser traducido a lenguaje de máquina, ya que el procesador sólo entiende 0 s y 1 s. Programa Fuente en Ensamblador Programa Ensamblador Programa Objeto 1 s y 0 s en Lenguaje Máquina

7 Niveles de los lenguajes de programación Lenguaje Máquina y Ensamblador Son esencialmente iguales. Hay una correspondencia simple entra ambos y son considerados lenguajes de Bajo Nivel. Ambos están directamente ligados a la arquitectura del procesador y del ordenador que se utilice y requieren una alta especialización del programador. Lenguajes de Alto Nivel Definen su sintaxis y sus estructuras al margen del procesador que se utilicen. Son independientes del procesador. Son portables (a priori). Una sola sentencia de alto nivel corresponde en general a muchas instrucciones de bajo nivel. La correspondencia entre las estructuras de alto nivel y el código de máquina es compleja. Las sentencias se escriben en un programa fuente utilizando un editor de texto (son legibles), en el que pueden aparecer comentarios. Las instrucciones son más abstractas y potentes. Necesitan ser traducidos al lenguaje del procesador (compilador).

8 Compiladores e intérpretes El compilador En la etapa de análisis, el compilador verifica que los símbolos son correctos (léxico), que las sentencias están bien construidas (sintaxis) y que las instrucciones tengan un significado coherente (semántica). En la etapa de síntesis se genera código de máquina para el procesador específico y si es posible se optimiza el código atendiendo, por ejemplo, a criterios como: Tamaño del programa Velocidad de ejecución.

9 Compiladores e intérpretes Tras la compilación se genera un fichero con el programa ejecutable. Al ejecutarse puede dar lugar a varios procesos. El Intérprete En contraposición a un compilador, un intérprete es un programa que sólo realiza la traducción del programa fuente a medida que sea necesario y, normalmente, no guardan el resultado de dicha traducción. Los programas interpretados suelen ser más lentos que los compilados debido a la necesidad de traducir el programa mientras se ejecuta, pero a cambio son más flexibles como entornos de programación y depuración. Comparando su actuación con la de un ser humano, un compilador equivale a un traductor profesional que, a partir de un texto, prepara otro independiente traducido a otra lengua, mientras que un intérprete corresponde al intérprete humano, que traduce de viva voz las palabras que oye, sin dejar constancia por escrito

10 Historia del Lenguaje C Creado por Dennis Ritchie entre el año En 1973 la mayor parte del kernel de Unix fue reescrito en C. En 1978, Ritchie junto a Brian Kerninghan publicaron The C Programming Language (K&R) donde se hicieron nuevas aportaciones al lenguaje y se estableció el conjunto mínimo de carácterísticas que debía cumplir un compilador de C. Estándar de Facto Durante los 70 empezó progresivamente a reemplazar a BASIC en microcomputadoras Stroustroup desarrolla C++ como una extensión orientada a objetos del C. El ANSI crea una comisión para estandarizar el lenguaje El lenguaje C que cumple con la especificación se le llama ANSI C. Soportado por la mayoría de los compiladores. Incluye el K&R pero con nuevas características. Si se escribe en ANSI C se garantiza la portabilidad.

11 Características del Lenguaje C Lenguaje de alto nivel con posibilidad de bajo nivel. Independiente del hardware aunque si el programador quiere puede "bajar" al hardware. El núcleo del lenguaje es relativamente pequeño. Se apoya en bibliotecas o librerías externas para realizar funciones esenciales (como la entrada /salida). Dado que las librerías están también estandarizadas (ANSI) se puede considerar que forman parte del lenguaje. El paradigma de programación que mejor se aviene al lenguaje C es el de Programación Estructurada: Escritura de programas mediante módulos que necesitan sólo tres estructuras: secuencia, selección e iteracción (sin necesidad de saltos incondicionales de tipo goto, exit o múltiples return) El flujo del programa en C está definido por secuencia, decisiones condicionales, bucles y llamadas a funciones. Conjunto de operadores aritmético-lógicos muy poderoso. Cuidado, porque puede fácilmente crear programas casi imposibles de entender o crípticos. Valores almacenados en variables, con diferentes tipos. Los programas grandes se subdividen en funciones: procedimientos con parámetros de entrada y de salida bien definidos.

12 Compilación El Programa Fuente es un fichero texto que contiene las instrucciones y comentarios escritos por el programador. Puede incluir sentencias del tipo: # include <stdio.h> Indica que se incluya un archivo de cabecera.(.h).estos archivos contienen definiciones y declaraciones útiles y utilizadas por las librerías. Antes de compilar se crea otro programa fuente mediante un preprocesamiento: incluyendo los archivos de cabecera quita comentarios reemplaza definiciones (#define PI 3.14) se obtiene programa fuente intermedio (texto) extendido (.i)

13 Compilación El programa fuente intermedio es compilado y se obtiene un programa objeto en código de máquina del procesador (.o). Este programa objeto todavía no es directamente ejecutable, dado que falta por integrar el código ejecutable de las Librerías (.a) o de otros prgramas (.o).

14 Compilación El enlazador (Linker) une todos los archivos que contengan código objeto para el programa, así como las librerías a las que éstos hacen referencia. Se resuelven las referencias cruzadas entre las distintas partes del código. Ejemplo: Una instrucción en objeto1.o puede hacer referencia a una variable en objeto2.o En objeto1.o y objeto2.o se invocan funciones de la librería estándar. Como resultado se obtiene el programa directamente ejecutable por el S.O.

15 Entorno de desarrollo integrado (IDE) Un entorno de desarrollo integrado, (IDE: integrated development environment), es un programa informático compuesto por un conjunto de herramientas para facilitar las tareas de programación. Normalmente constan de: un editor de textos donde escribimos el código un compilador, que generará el código ejecutable un depurador, que nos permite buscar errores herramientas para elaborar interfaces gráficas (GUI: graphical user interface)

16 Entorno de desarrollo integrado (IDE) CODE::BLOCKS Es un IDE de uso libre y multiplataforma para el desarrollo de programas en C y C++. Permite el uso de diferentes compiladores. En nuestro caso usaremos el compilador gcc en su versión para Windows MinGW Dispone de multitud de posibilidades de configuración en lo que respecta a las características del editor, opciones de compilación, depuración, etc. Durante el curso, nosotros nos centraremos sólo en los aspectos relacionados con la programación en C Más información en:

17 Entorno de desarrollo integrado (IDE) CODE::BLOCKS

18 Mi primer programa en C #include <stdio.h> /*Cabecera E/S estandar*/ main() /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/

19 Mi primer programa en C Todo programa debe tener una función main, donde comienza la ejecución del programa #include <stdio.h> /*Cabecera E/S estandar*/ main() /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/

20 Mi primer programa en C #include <stdio.h> /*Cabecera E/S estandar*/ main() /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/ Las llaves {} delimitan las sentencias incluidas en el bloque de definición de la función main.

21 Mi primer programa en C #include <stdio.h> /*Cabecera E/S estandar*/ main() /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/ Comentarios aclaratorios delimitados por /* */. Son ignorados por el compilador y eliminados en la etapa de preprocesamiento

22 Mi primer programa en C Se ordena la inclusión (durante el etapa de preprocesamiento) del archivo de cabecera de E/S estándar. Es necesario porque se va a utilizar una función de E/S. #include <stdio.h> /*Cabecera E/S estandar*/ main() /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/

23 Mi primer programa en C #include <stdio.h> main() Dentro de función main se invoca la función printf de la librería de E/S estándar. printf muestra por la salida estándar (la pantalla normalmente) el contenido de la cadena de caracteres que se le pasa como argumento. /*Cabecera E/S estandar*/ El carácter especial representado por \n /*Función principal main*/ significa un cambio de línea. { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/

24 Mi primer programa en C #include <stdio.h> main() /*Cabecera E/S estandar*/ Las sentencias en C terminan con el carácter ; /*Función principal main*/ { /*Inicio bloque main*/ printf(" Hola mundo!\n"); /*Llamada función main*/ } /*Fin bloque main*/

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

Más detalles

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales

Más detalles

Fundamentos de Programación 2017-I

Fundamentos de Programación 2017-I Fundamentos de Programación 2017-I Fundamentos para la construcción de código a partir del algoritmo Objetivo: El alumno construirá programas utilizando el lenguaje de programación C a través de un análisis

Más detalles

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

Lenguaje de Programación

Lenguaje de Programación Introducción a C/C++() UG Introducción a C/C++() Universidad de Guanajuato Sesión 18 Introducción a C/C++() Qué es un? Un entorno de desarrollo integrado o (acrónimo en inglés de integrated development

Más detalles

Computadora y Sistema Operativo

Computadora y Sistema Operativo Computadora y Sistema Operativo Según la RAE (Real Academia de la lengua española), una computadora es una máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos

Más detalles

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual. Manual de Dev-C++ 4.9.9.2 Página 1 de 11 Introducción Dev-C++ es un IDE (entorno de desarrollo integrado) que facilita herramientas para la creación y depuración de programas en C y en C++. Además, la

Más detalles

TEMA 3: El proceso de compilación, del código fuente al código máquina

TEMA 3: El proceso de compilación, del código fuente al código máquina TEMA 3: El proceso de compilación, del código fuente al código máquina 3.1 Fase de compilación y linkado (link, montado o enlace) Un programa escrito en un lenguaje de alto nivel, no puede ser ejecutado

Más detalles

Técnicas de Programación

Técnicas de Programación Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo Qué es una computadora? Una computadora es una máquina digital y sincrónica con capacidad de cálculo numérico y lógico controlada

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

Introducción a la programación

Introducción a la programación Introducción a la programación Conceptos Básicos El objetivo fundamental de éste curso es enseñar a resolver problemas mediante una computadora. El programador de computadoras es antes que nada una persona

Más detalles

Elementos de un programa en C

Elementos de un programa en C Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución

Más detalles

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para

Más detalles

Informática Ingeniería en Electrónica y Automática Industrial

Informática Ingeniería en Electrónica y Automática Industrial Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:

Más detalles

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:

Más detalles

Introducción a la programación. El lenguaje de programación C

Introducción a la programación. El lenguaje de programación C Introducción a la programación El lenguaje de programación C El lenguaje de programación ANSI C Componentes del estándar ANSI C Historia de C Herramientas de programación en C Aplicaciones en C Programa

Más detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria 1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo

Más detalles

Lenguaje de programación. COMPILADORES Unidad I: Introducción al proceso de compilación

Lenguaje de programación. COMPILADORES Unidad I: Introducción al proceso de compilación COMPILADORES Unidad I: Introducción al proceso de compilación Flor Prof. Flor Narciso GIDyC-Departamento de Computación LABSIULA-Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de

Más detalles

Estructuras de Datos Declaraciones Tipos de Datos

Estructuras de Datos Declaraciones Tipos de Datos Departamento de Informática Universidad Técnica Federico Santa María Estructuras de Datos Declaraciones Tipos de Datos Temas: 2-3-4 IWI-131, paralelo 01 Profesor: Teddy Alfaro O. Lenguaje de Programación

Más detalles

Enteros. Son los números que no contienen componentes fraccionarios y, por tanto, no contienen punto decimal.

Enteros. Son los números que no contienen componentes fraccionarios y, por tanto, no contienen punto decimal. LENGUAJE DE PROGRAMACIÓN TURBO PASCAL El lenguaje de programación de alto nivel Pascal fue diseñado el 1968 por Niklaus Wirth con una finalidad eminentemente pedagógica El 1983, el Pascal fue estandarizado

Más detalles

Tema V Generación de Código

Tema V Generación de Código Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.

Más detalles

LÓGICA DE PROGRAMACIÓN

LÓGICA DE PROGRAMACIÓN LÓGICA DE PROGRAMACIÓN Lógica de la Programación Lenguajes de Programación Ing CIP. Mike Joseph Palacios Juárez Clasificación del Software Sistemas Operativos 1. Multitarea 2. Multiusuario 3. Multiproceso

Más detalles

1. Computadores y programación

1. Computadores y programación 1. Computadores y programación Informática y computadora (RAE) Informática (Ciencia de la computación) Conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la

Más detalles

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

Laboratorio de Arquitectura de Redes. Entrada y salida estándar Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada

Más detalles

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla Índice de contenido 1.- Qué es un ordenador?...3 2.-Hardware básico de un ordenador:...3 3.-Software...4 3.1.-Software

Más detalles

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA Nombre del Módulo: PROGRAMACIÓN EN JAVASCRIPT Código: CSTI0087 total: 51 Horas Objetivo General: Crear contenido web basado en

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Un. VI. Generador de código intermedio.

Un. VI. Generador de código intermedio. Un. VI. Generador de código intermedio. La administración de la memoria se da en esta etapa. Se debe considerar tanto la memoria estática como dinámica, y en esta se utilizan generalmente pilas. Los lenguajes

Más detalles

FUNDAMENTOS DE INFORMÁTICA

FUNDAMENTOS DE INFORMÁTICA FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería

Más detalles

Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador.

Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador. Unidad III: Optimización Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador. La optimización va a depender del lenguaje

Más detalles

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C. El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información que se puede tratar en un programa informático. En este artículo vamos a conocer los tipos de datos

Más detalles

Tema III: Introducción al lenguaje de programación

Tema III: Introducción al lenguaje de programación Tema III: Introducción al lenguaje de programación Semestre: U-2014 Profesora: Nelly García Mora Agenda 1. Definición 2. Programación estructurada 3. Programación Modular 4. Tipos de lenguaje de Programación

Más detalles

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje. Modulo 1. Introducción a los lenguajes de programación La solución de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construcción de estos programas debe

Más detalles

Programación En Lenguaje C

Programación En Lenguaje C Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un

Más detalles

Tecnología de software para sistemas de tiempo real

Tecnología de software para sistemas de tiempo real 1 dit UPM Tecnología de software para sistemas de tiempo real Juan Antonio de la Puente DIT/UPM Motivación Las herramientas y la tecnología de software que se usan para construir otros tipos de sistemas

Más detalles

Programación Avanzada

Programación Avanzada Programación Avanzada Instructivo de Compilación 1 1 Índice 1 ÍNDICE... 2 2 INTRODUCCIÓN... 3 3 HERRAMIENTAS... 3 3.1 SINTAXIS DE LOS COMANDOS GCC Y G++... 3 3.2 OTRAS HERRAMIENTAS:... 4 3.3 EJEMPLOS:...

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

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

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten

Más detalles

Pruebas de escritorio

Pruebas de escritorio Pruebas de escritorio Es un proceso que consiste en hacer seguimiento a un algoritmo recorriendo sus líneas simulando el funcionamiento del procesador del computador. Ejemplo: Realizar un algoritmo que

Más detalles

Compilación de Programas C en UNIX y LINUX

Compilación de Programas C en UNIX y LINUX Compilación de Programas C en UNIX y LINUX Apéndice W1 La forma de compilar programas C en el entorno UNIX varía considerablemente entre las diferentes plataformas UNIX. Las versiones de Linux y FreeBSD

Más detalles

Curso de Programación Avanzada en C

Curso de Programación Avanzada en C Curso de Programación Avanzada en C Copyright, 1996 Universidad Sim on Bol ivar 1 Prof. Mariela J. Curiel Contenido del Curso Conceptos BásicosB Estructuras de Control Arreglos Otros tipos de datos derivados

Más detalles

Tema 7. Generación de código

Tema 7. Generación de código Departamento de Tecnologías de la Información Tema 7 Generación de código Ciencias de la Computación e Inteligencia Artificial Índice 7.1 Visión general 7.2 Código de tres direcciones 2 Índice 7.1 Visión

Más detalles

Programación. Test Autoevaluación Tema 3

Programación. Test Autoevaluación Tema 3 Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.

Más detalles

Unidad I: Organización del Computador. Ing. Marglorie Colina

Unidad I: Organización del Computador. Ing. Marglorie Colina Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar

Más detalles

FUNCIONAMIENTO DEL ORDENADOR

FUNCIONAMIENTO DEL ORDENADOR FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores

Más detalles

Lenguaje de Programación: Compiladores de C y C++

Lenguaje de Programación: Compiladores de C y C++ UG Introducción a C/C++ Lenguaje de Programación: de C y C++ Universidad de Guanajuato Septiembre 2010 C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell de

Más detalles

Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz.

Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz. Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz. TIPOS DE ERRORES Sintácticos. Los errores de sintaxis, o sintácticos, ocurren cuando el programador escribe código que no va de acuerdo

Más detalles

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación 1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos

Más detalles

Lenguajes de programación Última modificación 2008/10

Lenguajes de programación Última modificación 2008/10 Lenguajes de programación Última modificación 2008/10 La Torre de Babel (1563) - Pieter Brueghel el Viejo 2008 Güimi (http://guimi.net) Esta obra está bajo una licencia "Reconocimiento-Compartir bajo la

Más detalles

Unidad V Análisis Semántico. M.C. Juan Carlos Olivares Rojas

Unidad V Análisis Semántico. M.C. Juan Carlos Olivares Rojas Unidad V Análisis Semántico M.C. Juan Carlos Olivares Rojas Agenda 5.1 Analizador semántico 5.2 Verificación de tipos en expresiones. 5.3 Conversión de tipos. 5.4 Acciones agregadas en un analizador sintáctico

Más detalles

JAVA 7 Los fundamentos del lenguaje Java

JAVA 7 Los fundamentos del lenguaje Java Presentación 1. Historia 9 1.1 Por qué Java? 9 1.2 Objetivos del diseño de Java 10 1.3 Auge de Java 11 2. Características de Java 12 2.1 El lenguaje de programación Java 12 2.1.1 Sencillo 13 2.1.2 Orientado

Más detalles

TEMA 3: EL LENGUAJE C: PRESENTACIÓN

TEMA 3: EL LENGUAJE C: PRESENTACIÓN TEMA 3: EL LENGUAJE C: PRESENTACIÓN Historia del lenguaje C Características del lenguaje C Estructura de un programa en C El editor de textos: elementos Funciones: de usuario y de librería Librerías de

Más detalles

Métodos que devuelven valor Dado el siguiente triángulo rectángulo:

Métodos que devuelven valor Dado el siguiente triángulo rectángulo: Métodos que devuelven valor Dado el siguiente triángulo rectángulo: hipotenusa altura base Para dibujar este triángulo necesitamos los siguientes datos: base y altura La base y la altura, se utilizarán

Más detalles

Unidad III El lenguaje de programación C 1. 2. 3. 4. 5. 6. 7. 8.

Unidad III El lenguaje de programación C 1. 2. 3. 4. 5. 6. 7. 8. Unidad III 1. Introducción. 2. Breve historia del C. 3. Lenguajes de programación de alto nivel, bajo nivel y nivel medio. 4. Compiladores e intérpretes. 5. Compilación, enlace y generación de un programa

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa 1. Introducción. 2. Desarrollo de programas. 3. Sintaxis de un lenguaje ensamblador.

Más detalles

Lenguaje C. Tipos de Datos Simples y Estructuras de Control

Lenguaje C. Tipos de Datos Simples y Estructuras de Control Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje

Más detalles

INTRODUCCIÓN AL LENGUAJE C

INTRODUCCIÓN AL LENGUAJE C INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática EUP ULPGC Jose Torres 1 de 36 Historia de C Precursores: muchas ideas provienen de BCPL (Martin Richards, 1967) y de B (Ken Thompson, 1970) C fue diseñado

Más detalles

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema

Más detalles

Microsoft Visual Studio está basado en.net framework. Definiciones de.net Framework:

Microsoft Visual Studio está basado en.net framework. Definiciones de.net Framework: 1) CONCEPTO La palabra "Visual" hace referencia al método que se utiliza para crear la interfaz gráfica de usuario (GUI). En lugar de escribir numerosas líneas de código para describir la apariencia y

Más detalles

01 Introducción al lenguaje C. Diego Andrés Alvarez Marín Profesor Asociado Universidad Nacional de Colombia Sede Manizales

01 Introducción al lenguaje C. Diego Andrés Alvarez Marín Profesor Asociado Universidad Nacional de Colombia Sede Manizales 01 Introducción al lenguaje C Diego Andrés Alvarez Marín Profesor Asociado Universidad Nacional de Colombia Sede Manizales 1 Arquitectura de un computador Procesador (CPU, memoria caché) Buses de datos

Más detalles

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY ALGORITMO DEFINICIÓN: CONSISTE EN LA DESCRIPCIÓN CLARA Y DETALLADA DEL PROCEDIMIENTO A SEGUIR PARA ALCANZAR LA SOLUCIÓN A UN PROBLEMA EN DONDE SE ESTABLECE

Más detalles

Funciones básicas del depurador

Funciones básicas del depurador Funciones básicas del depurador Con frecuencia, los alumnos piensan que cuando su programa no tiene errores de compilación (está correctamente escrito) entonces ya es correcto. Muchas veces esto no es

Más detalles

Qué es un programa informático?

Qué es un programa informático? Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s

Más detalles

Introducción a la Operación de Computadoras Personales

Introducción a la Operación de Computadoras Personales Introducción a la Operación de Computadoras Personales Conceptos básicos de computadoras: Software Dr. Diego García Depto. de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur, Bahía

Más detalles

Construyendo Programas más Complejos

Construyendo Programas más Complejos Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Algoritmos y Lenguajes de Programación

Algoritmos y Lenguajes de Programación Introducción y horario Algoritmos y Lenguajes de Programación 543242-2 mariomedina@udec.cl Código: 543242-2 Carrera: Ing. Civil Electrónica Clases 7 de Marzo a 28 de Junio Horario clases Martes, 9:10 a

Más detalles

Operadores y Expresiones

Operadores y Expresiones Operadores y Expresiones Los programas Java constan de datos, sentencias de programas y expresiones. Una expresión es normalmente, una ecuación matemática, tal como 3 * x + 5 * z. En esta expresión, los

Más detalles

TIPOS DE DATOS BASICOS EN LENGUAJE C

TIPOS DE DATOS BASICOS EN LENGUAJE C TIPOS DE DATOS BASICOS EN LENGUAJE C TIPO char int float double void ANCHO EN BIT 64 0 TIPOS DE DATOS RANGO EN PC -12 a 127 3.4E-3 a 3.4E+3 1.7E-30 a 1.7E+30 sin valores TIPO ANCHO EN BIT RANGO EN PC char

Más detalles

Unidad II: Análisis semántico

Unidad II: Análisis semántico Unidad II: Análisis semántico Se compone de un conjunto de rutinas independientes, llamadas por los analizadores morfológico y sintáctico. El análisis semántico utiliza como entrada el árbol sintáctico

Más detalles

ANEXO XVII DE LA RESOLUCION N

ANEXO XVII DE LA RESOLUCION N Hoja 1 de 7 UNIVERSIDAD NACIONAL DE CÓRDOBA Facultad de Ciencias Exactas Físicas y Naturales República Argentina Programa de: Código: Informática Carrera: Materia común Res. Nº Plan: Puntos:3.5 Escuela:

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

Tema III: Semestre: A-2011

Tema III: Semestre: A-2011 Tema III: Introducción al lenguaje de programación Semestre: A-2011 Profesora: Nelly García Mora Agenda 1. Definición 2. Tipos de lenguaje de Programación 3. Programación estructurada 4. Programación Modular

Más detalles

Programación MODULAR: Subalgoritmos - funciones y procedimientos

Programación MODULAR: Subalgoritmos - funciones y procedimientos Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas

Más detalles

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

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus

Más detalles

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje Nombre de la asignatura: Programación Básica Créditos: 2 4-6 Objetivo de aprendizaje Plantear metodológicamente la solución de problemas susceptibles de ser computarizados a través del manejo de técnicas

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

Descripción y Contenido del Curso. Programación C++ Capacity Academy.

Descripción y Contenido del Curso. Programación C++ Capacity Academy. Descripción y Contenido del Curso Programación C++ Capacity Academy Educación en Tecnología de la Información Online, Efectiva y Garantizada Qué aprenderá si toma este Curso? En este curso aprenderás todo

Más detalles

Informática I. Lenguajes de Programación, Herramientas de Desarrollo. Alejandro Furfaro

Informática I. Lenguajes de Programación, Herramientas de Desarrollo. Alejandro Furfaro Informática I Lenguajes de Programación, Herramientas de Desarrollo Marzo 2011 Temario 1 Lenguajes de programación Primeros conceptos Lenguaje Ensamblador Lenguajes de alto nivel 2 Primeros pasos en lenguaje

Más detalles

Lenguaje C++ Introducción 6. Introducción a la Computación Tc1001 Programación en Lenguaje C++

Lenguaje C++ Introducción 6. Introducción a la Computación Tc1001 Programación en Lenguaje C++ Programación en Lenguaje C++ Lenguaje C++ Introducción 6 Charles Babbage definió a mediados del siglo XIX lo que él llamó la máquina analítica. Se considera a esta máquina el diseño del primer ordenador.

Más detalles

Manual de turbo pascal

Manual de turbo pascal Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de

Más detalles

Parte I:Teoría. Tema 3:Introducción a los Sistemas operativos. Instalación

Parte I:Teoría. Tema 3:Introducción a los Sistemas operativos. Instalación Tema 3:Introducción a los Sistemas operativos. Instalación Parte I:Teoría Introducción a los SO Componentes Llamadas al sistema Estructura del Kernel Drivers Esta obra está bajo una licencia Reconocimiento-No

Más detalles

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013 TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Ingeniería Técnica en Informática de Sistemas Segundo curso Departamento de Informática y Análisis Numérico Escuela Politécnica Superior Universidad de Córdoba

Más detalles

Programación estructurada (Introducción a lenguaje C)

Programación estructurada (Introducción a lenguaje C) Programación estructurada (Introducción a lenguaje C) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 15-I Sergio Luis Pérez (UAM CUAJIMALPA) Curso de programación estructurada

Más detalles

Bloque III. Herramientas

Bloque III. Herramientas Bloque III. Herramientas Capítulo 2. Uso de un entorno integrado de desarrollo de programas Editor de texto El compilador y la ejecución Uso del entorno de desarrollo de programas bluej La depuración Generación

Más detalles

Nociones Básicas de un Sistema Computador. Clase 2 Introducción a la Programación

Nociones Básicas de un Sistema Computador. Clase 2 Introducción a la Programación Nociones Básicas de un Sistema Computador Clase 2 Introducción a la Programación Antes de empezar a programar Veremos algunos conceptos muy básicos sobre: Computadoras Sistemas Operativos Programas, lenguajes

Más detalles

Consigue las herramientas que necesitas Inicio: 20 Noviembre 2016

Consigue las herramientas que necesitas Inicio: 20 Noviembre 2016 formacion@galejobs.com ONLINE / 30H MACROS CON VBA PARA EXCEL Consigue las herramientas que necesitas Inicio: 20 Noviembre 2016 290 IVA inc. OBJETIVOS QUÉ APRENDERÁS EN EL CURSO En la actualidad, las empresas

Más detalles

Usando el Sistema Operativo

Usando el Sistema Operativo Sistemas Operativos Pontificia Universidad Javeriana Enero de 2010 Los sistemas operativos Los sistemas operativos Perspectivas del Computador Concepto general El sistema operativo es parte del software

Más detalles

El lenguaje de programación PHP Tipos de Datos. Semestre: A-2010

El lenguaje de programación PHP Tipos de Datos. Semestre: A-2010 Tema IV y V: El lenguaje de programación PHP Tipos de Datos Semestre: A-2010 Profesora: Nelly García Mora Agenda 1. Introducción al lenguaje de programación 2. Conceptos básicos 3. Ventajas y desventajas

Más detalles

Objetos de aprendizaje: Computadora

Objetos de aprendizaje: Computadora MOMENTO I. BLOQUE 1. Opera las funciones básicas del sistema operativo y garantiza la seguridad de la información Objetos de aprendizaje: Computadora Lectura 1: La Computadora La computadora es una máquina

Más detalles

FUNCIONES PHP: DECLARACIÓN Y LLAMADAS. PARÁMETROS, RETURN. EJERCICIOS EJEMPLOS RESUELTOS. (CU00827B)

FUNCIONES PHP: DECLARACIÓN Y LLAMADAS. PARÁMETROS, RETURN. EJERCICIOS EJEMPLOS RESUELTOS. (CU00827B) APRENDERAPROGRAMARCOM FUNCIONES PHP: DECLARACIÓN Y LLAMADAS PARÁMETROS, RETURN EJERCICIOS EJEMPLOS RESUELTOS (CU00827B) Sección: Cursos Categoría: Tutorial básico del programador web: PHP desde cero Fecha

Más detalles

ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C

ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C 2010 UNAN LEON Departamento de Computación Ing. En Sistemas Sabatino Autor: Ing.Karina Esquivel Alvarado. Asignatura: Programación II. ENTORNO DE DESARROLLO Y COMPILACIÓN DE PELLES C OBJETIVOS: Conocer

Más detalles

INICIACIÓN A LA PROGRAMACIÓN 1ª parte

INICIACIÓN A LA PROGRAMACIÓN 1ª parte TEMA 4 INICIACIÓN A LA PROGRAMACIÓN 1ª parte Qué es la programación? La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. En la actualidad,

Más detalles

Lenguaje Orientado por Objetos Simple, Poderoso y Fácil de aprender Robusto Interactivo Arquitectura neutral Interpretado y de alto desempeño

Lenguaje Orientado por Objetos Simple, Poderoso y Fácil de aprender Robusto Interactivo Arquitectura neutral Interpretado y de alto desempeño Programación Orientada a Objetos Introducción a Java Angela Carrillo Ramos Java: Lenguaje de Programación Por qué surge un lenguaje? Para adaptarse a los cambios de entorno y usos: Independencia de la

Más detalles

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad

Más detalles

Fundamentos de Ordenadores. Depurar programas usando Nemiver

Fundamentos de Ordenadores. Depurar programas usando Nemiver Fundamentos de Ordenadores Depurar programas usando Nemiver Departamento de Arquitectura de Computadores Autor: Mario Macias. Fecha de elaboración: 16/10/2015 1 Manual básico Nemiver Nemiver es un sencillo

Más detalles

UNIVERSIDAD DE OVIEDO

UNIVERSIDAD DE OVIEDO 1 Compiladores de C: Ficheros de Código Fuente.C Escritos para Lenguaje C Ficheros de Directivas y Encabezamiento.H COMPILADOR de C Fichero para depuración del Programa.COD Fichero con Errores de Compilación.ERR

Más detalles

Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.

Toda copia en PAPEL es un Documento No Controlado a excepción del original. S U P E RIO R DE MISANTLA Apartado: 7.1 Copia No. Código:PD-SCD-1016 Versión No.: 02 Hoja : 2 de 12 4.- COMPETENCIAS A DESARROLLAR 4.1 Competencias Específicas: Diseña mediante el uso de reglas semánticas

Más detalles