LENGUAJE C PARA SISTEMAS DEDICADOS
|
|
- Lorena Vargas Escobar
- hace 7 años
- Vistas:
Transcripción
1 LENGUAJE C PARA SISTEMAS DEDICADOS
2 FUNDAMENTOS
3 Computadora Se dispone de un S.O. El S.O. inicia y configura los periféricos. El S.O. brinda al usuario subrutinas para utilizar los periféricos ( system calls ).
4 Microcontrolador No posee un S.O. El firmware debe iniciar los periféricos. El usuario debe crear sus propias subrutinas para utilizar los periféricos.
5 En lenguaje C para sistemas dedicados no podemos hacer: printf( Hola Mundo );
6 Llamada a la función main A pesar que main es el punto de entrada al programa, el firmware realiza tareas previas a main. Entre ellas. Cargar registros de configuración. Limpiar zonas de RAM. Cargar el puntero de pila SP.
7 Código en ensamblador ORG $EE00 configuración de los periféricos ricos. BRA $
8 Código en C ORG $EE00 código de inicialización CALL/JMP main void { } main(void) código escrito por el usuario while(1) { }
9 Recursos
10 Arquitecturas de memoria
11 Modelo tiny ( Freescale ) MOV PORTA,PORTB
12 Modelo small ( Freescale ) LDA PORTA STA var1
13 Pasaje de parámetros Al igual que en un computadora, la pila se utiliza para el pasaje de parámetros: int funcion(char a, int b, float c,.)
14 Ejemplo de pasaje de parámetros usando la pila void main(void) { int dunga, donga; dunga = 3; donga = 5; dunga = suma(dunga, donga); } donga = resta(dunga, donga); int sum(int s1, int s2) { return s1 + s2; } int resta(int r1, int r2) { return r1 r2; }
15 Pasaje de parámetros usando la pila Ventajas: Al retornar de la función se libera el espacio de memoria. Desventajas: Llamados anidados a funciones pueden limitar la RAM libre.
16 Uso del heap Se hace declarando variables estáticas externas, mas conocidas como VARIABLES GLOBALES.
17 Ejemplo de pasaje de parámetros usando el heap iint dunga, donga; void main(void) { dunga = 3; donga = 5; suma(); resta(); } int { } suma(void) dunga = dunga + donga; int { } resta(void) dunga = dunga - donga;
18 Pasaje de parámetros usando el heap Ventajas: Pueden anidarse los llamados a funciones sin que crezca la pila enormemente. Desventajas: La memoria usada en el heap no puede liberarse.
19 Uso de las funciones recursivas void factorial(int n) { if(n == 1) return 1; else return factorial(n-1) * n; } factorial(8);
20 Variables
21 Tipos de datos básicos En PC: char: 1 byte int: 2 ó 4 bytes float: 4 bytes En microcontroladores: char: 1 byte int: 2 bytes float: 4 bytes
22 Variantes de los tipos básicos Se admiten los modificadores signed y unsigned. También los modificadores short y long. El float puede no estar contemplado en versiones gratuitas de los compiladores.
23 Operaciones básicas Aritméticas Suma + Resta Multiplicación * División / Resto % Lógicas AND & OR XOR ^
24 No necesariamente existe en ensamblador una instrucción para realizar cierta operación aritmética. Ej: Los PIC 16F no cuentan con instrucciones de multiplicación. En ese caso el compilador debe generar un algoritmo en assembler que ejecute esa operación.
25 Alternativas al tipo float En general queremos representar cifras del tipo: 20,3 mv Se trata de un número decimal de punto fijo. Tampoco se dispone de representación en punto fijo.
26 Solución: Trabajar las mangintudes multiplicadas x10, x100, La cifra 20,3 se almacena como 203. Así puede contenerse en un tipo int.
27 Manejo de bits como variables Es válida aplicar una asignación a un bit. Son válidas las operaciones lógicas entre bits, & y ^. Ejemplos: Freescale: PTAD_PTAD4 = 1; PIC: PORTBbits.RB4 = 0;
28 Volatile Código en C void findecuenta(void) { if(time == 100) { time = 0; } } Posible compilación en ensamblador: findecuenta: LDA time CMP #!100 BNE CLR time
29 Volatile Si time no cambia antes del if, la compilación anterior es válida. Si time proviene del módulo timer puede modificarse entre que es cargada y el if.
30 Solución Código en C: volatile int time; void findecuenta(void) { if(time == 100) { time = 0; } } Compilación en ensamblador: findecuenta: LDA time CMP #!100 BNE CLR time
31 Reseña de punteros Se declaran y usan de la forma convencional: int *p; char *p; int hola; p= &hola; *p = 3; ( hola = 3 )
32 Punteros a RAM int int hola; *p; p = &hola; *p = 3; p apunta a una posición en RAM.
33 Punteros a ROM char char *p; texto[20] = Hola mundo ; p = texto; p apunta a una posición en ROM (FLASH).
34 Arquitectura Von Neumann ( Freescale ) La RAM y ROM están en un mismo mapa. Pueden accederse por una única clase de punteros.
35 Arquitectura Harvard ( PIC ) La RAM y ROM están en mapas diferentes. Se deben indicar a que mapa apunta el puntero.
36 Punteros en micros Hardvard Punteros a RAM: char char p = &hola; hola; *p; Punteros a ROM: const char rom char rom *p; p = texto; texto[20] = me duermo ;
37 Entrada y salida
38 En la computadora Acceso al I/O de entrada: a = getch(); Acceso al I/O de salida: printf( Hola mundo );
39 Sistema dedicado Crear bibliotecas de funciones: LCD_printf(char *texto); LCD_Dato(char caracter); LCD_gotoxy(char x, char y);
40 sprintf resuelve todo Genera textos. Convierte datos int a BCD. Convierte datos float a BCD. Permite generar salidas en formatos muy complejos. sprintf(texto, Chau ); sprintf(texto, %d, a); sprintf(texto, %f, d); sprintf(texto, V = %02.1f mv, voltios);
41 Uso de los puertos de E/S Acceso a pines individuales: struct { byte PTAD0:1 byte PTAD1:1 byte PTAD2:1 byte PTAD3:1 byte PTAD4:1 byte PTAD5:1 byte PTAD6:1 byte PTAD7:1 }Bits; Bits.PTAD0 = 1;
42 Mas sobre puertos Acceso a todo el puerto: typedef { byte struct { }Bits; }PTADSTR; union Byte; byte byte byte byte byte byte byte byte PTAD0:1 PTAD1:1 PTAD2:1 PTAD3:1 PTAD4:1 PTAD5:1 PTAD6:1 PTAD7:1 PTADSTR.Byte = 0xff; PTADSTR.Bits.PTAD0 = 1; PTAD_PTAD0 = 1;
43 Manejo de periféricos En PC usando system calls. En microcontroladores: Freescale: Asistentes de configuración ( Processor Expert ) Funciones de biblioteca. En PIC: Bibliotecas.
44 Processor Expert Permite configurar cualquier módulo del microcontrolador.
45 Processor Expert Pueden configurarse todos los parámetros del módulo.
46 Processor Expert Genera el código de inicialización Genera funciones para el manejo de módulo. Genera vectores de interrupción.
47 Bibliotecas para PIC A/D Comparador EEPROM I2C PWM
48 Temporización
49 Demoras cortas Intercalando código en ensamblador: unsigned char contador_1; asm { LDA #$32 STA contador_1 dem_100us_1: NOP NOP NOP T total = 50 x 2µs = 100µs T int = 10 ciclos x 200ns = 2µs DBNZ contador_1,dem_100us_1 }
50 Demoras largas Intercalando código en ensamblador: unsigned char contador_1; unsigned char contador_2; unsigned char contador_3; for(contador_3 = 0; contador_3 < 100; contador_3++) for(contador_2 = 0; contador_2 < 20; contador_2++) { asm { LDA #$C8 STA contador_1 dem_1s_1: NOP NOP NOP DBNZ contador_1,dem_1s_1 } } T total = 100 x 10ms = 1s T ext = 20 x 500µs = 10ms T int = 250 x 2µs = 500µs
51 Demoras largas Módulo timer con interrupciones: void main(void) { TI1_SetPeriodSec(1); } ISR(TI1_Interrupt) { (void)tpm1c0sc; TPM1C0SC = 0x80; } (código del usuario)
52 Código bloqueante Durante el llamado a una función el programa no continúa su ejecución hasta retornar de ella. Ej: void main(void) { demora_seg(1); }
53 Código no bloqueante El programa puede continuar con otras tareas mientras una función no entregue los resultados deseados. Ej: void main(void) { } ISR(TI1_Interrupt) { (void)tpm1c0sc; TPM1C0SC = 0x80; } (código del usuario)
54 Timer tick de la PC Produce interrupciones cada 1ms. El usuario puede generar eventos por timer tick. El usuario no debe atender la interrupción. void fastcall TForm1::Timer1Timer(TObject *Sender) { ( código del usuario ) }
55 Eventos de timer con microcontroladores La velocidad del timer tick es determinada por el firmware. Pueden generarse eventos por timer tick. El usuario no debe atender la interrupción. void TI1_OnInterrupt(void) { ( código del usuario ) }
56 Interrupciones
57 Arquitectura PIC Existen 1 ó 2 vectores de interrupción. El usuario debe determinar con un if que periférico disparó la interrupción. #pragma code low_vector=0x18 void interrupt_at_low_vector(void) { _asm GOTO low_isr _endasm } #pragma code #pragma interruptlow low_isr void low_isr(void) { }
58 Arquitectura Freescale El Processor Expert resuelve buena parte del código. Existen vectores independientes para cada evento y periférico. El usuario no debe atender una interrupción. El Processor Expert genera el código que lo hace.
59 Evento de conversión A/D word AD1_OutV; ISR(AD1_Interrupt) { ((TWREG*)(&AD1_OutV))->b.high = ADC1RH; ((TWREG*)(&AD1_OutV))->b.low = ADC1RL; OutFlg = TRUE; AD1_OnEnd(); ModeFlg = STOP; } void AD1_OnEnd(void) { unsigned int medicion; }
60 CHAU!
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 detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 2 Nombre: El lenguaje de programación C Contextualización Una constante en todos los lenguajes de programación (viejos y nuevos) es la implementación
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Más detallesElementos 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 detallesApuntadores (Punteros)
Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable
Más detallesProgramació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 detallesLanzamiento de nueva versión KIT PLUGIN_AW... Ahora aprender C es más fácil!
COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar edudevices@gmail.com dilella@arnet.com.ar
Más detallesTema 2. El lenguaje JAVA
Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias
Más detallesUnidad 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 detallesLENGUAJE. Tema 2 Elementos de un programa
LENGUAJE Tema 2 Elementos de un programa ELEMENTOS DE UN PROGRAMA Comentarios. Identificadores. Constantes. Variables. Operadores. Sentencias o instrucciones. COMENTARIOS Los comentarios en C pueden ocupar
Más detallesIntroducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
Más detallesLanzamiento de nueva versión KIT PLUGIN_AW... Ahora aprender C es más fácil!
COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar edudevices@gmail.com dilella@arnet.com.ar
Más detallesEl lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Más detalles2.2 Nombres, Ligado y Ámbito
2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el
Más detallesLenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006
Lenguaje C Elementos de un Programa Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 Objetivos Conocer los elementos que conforman un programa en C 1. Elementos léxicos de un Programa Cuando el programa
Más detallesINTRODUCCIó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 detallesRegistros SFR vistos hasta ahora: Microcontroladores PIC
Registros SFR vistos hasta ahora: Microcontroladores PIC Microcontroladores PIC: Timer Características del Timer TMR0: Cumple básicamente la función de contador de eventos (o divisor de frecuencia). El
Más detallesFundamentos de JAVA. Angel Kuri Enero, /2/2006
Fundamentos de JAVA Angel Kuri Enero, 2006 Enunciados y Expresiones Los siguientes son enunciados sencillos: int i = 1 import java.awt.font System.out.println( Esta moto es una + color + + marca); m.enginestate
Más detallesMICROPROCESADORES II LENGUAJE C EN LOS MICROCONTROLADORES PIC
MICROPROCESADORES II LENGUAJE C EN LOS MICROCONTROLADORES PIC Tipos de datos en CCS TIPO TAMAÑO RANGO DESCRIPCION int1 short 1 bit 0 a 1 Binario int int8 8 bits 0 a 255 Entero int16 long 16 bits 0 a 65535
Más detallesUNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.
UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.
Más detallesFicha de Aprendizaje N 13
Ficha de Aprendizaje N 13 Curso: Lógica y lenguaje de programación Tema: Fundamentos de programación Duración: 2 horas pedagógicas Logros de aprendizaje Identifica los diferentes tipos de operadores que
Más detallesFUNCIONAMIENTO 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 detallesJava para programadores
Java para programadores Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Variables. Tipos
Más detallesLENGUAJE. Tema 1 - Introducción
LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del
Más detallesProgramación en C para Sistemas Embebidos
SASE 2012 Programación en C para Sistemas Embebidos (con ejemplos basados en MSP430) Mg. Guillermo Friedrich UTN-FRBB Tópicos destacados - Generalidades sobre la arquitectura MSP430 - Paso de parámetros
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detallesCaracteres 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 detallesConceptos de Arquitectura de Computadoras Curso 2015
PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.
Más detallesINTRODUCCIÓN A LA PROGRAMACIÓN EN FORTRAN. Métodos Numéricos Carlos Zotelo
INTRODUCCIÓN A LA PROGRAMACIÓN EN FORTRAN Métodos Numéricos 2008 - Carlos Zotelo Introducción a Fortran 77 / 90 1. El lenguaje Fortran 77 / 90 2. Tipos de datos básicos 3. Constantes y variables 4. Entrada
Más detallesIntroducción al PLC Simatic Siemens S7-200.
Francisco J. Jiménez Montero. Málaga, Febrero de 2007. Revisado: Noviembre de 2010. Ciclo Formativo de Grado Medio de Instalaciones Eléctricas y Automáticas. Introducción al PLC Simatic Siemens S7-200.
Más detallesJava Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.
Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo
Más detallesLa familia PIC18 USB posee 4 timers: Timer0, Timer1, Timer2 y Timer3, cada uno de los cuales tiene sus características únicas.
59 5 TIMERS Todos los microcontroladores poseen circuitos temporizadores (timers), los cuales son útiles para: Programar tareas con alta precisión. Contar pulsos externos. Medir intervalos de tiempo. etc.
Más detallesIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
Más detallesDescripció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 detallesCurso de Programación en C. Licenciatura, FCQeI. APUNTADORES.
APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación
Más detallesControl Digital en PC con MS-DOS
Control Digital en PC con MS-DOS Abel Alberto Cuadrado Vega 19 de abril de 2006 1. Introducción Un PC puede ser utilizado para realizar un sistema de control digital. Para ello necesita lo siguiente: tarjeta
Más detallesOperadores. Javier Fernández Rivera -
Programación en C Operadores Javier Fernández Rivera - www.aurea.es Los operadores Son los elementos o caracteres gráficos encargados de manipular los datos, que pueden ser dados por números, caracteres,
Más detallesEl lenguaje C. if (a>3) { printf("hola"); // bloque printf("%d",a); // de getch(); //código } Partes de un programa en C.
El lenguaje C El lenguaje C es uno de los lenguajes de programación estructurada más utilizados en nuestros días. El principal componente estructural de C es la función. En C, las funciones son bloques
Más detallesOperadores de comparación
Operadores de comparación Los operadores de comparación en C son: Igual (==) Distinto (!=) Mayor (>) y Mayor o igual (>=) Menor (
Más detallesBIBLIOGRAFIA TEORIA DE CIRCUITOSY DISPOSOTIVOS BOYLESTAD ELECTRONICA DIGITAL TOKHEIM SISTEMAS DIGITALES TOCCI
Guía de preparación para el examen ELECTRONICA CxTx En esta materia básicamente se evalúan temas tales como son: MULTIVIBRADORES, MEMORIAS, CONTADORES Y COMPUERTAS LOGICAS, SUMADOR RESTADOR Y MICROPOCESADORES
Más detallesContenido. Capítulo 1. Introducción a lenguaje C 1
Contenido Capítulo 1. Introducción a lenguaje C 1 Introducción... 2 Qué es un lenguaje de programación?... 2 Tipos de lenguajes de programación... 2 Introducción a lenguaje C... 2 Historia de lenguaje
Más detallesTIPOS 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-76 a 767 3.4E-3 a 3.4E+3 1.7E-30 a 1.7E+30 sin valores TIPO ANCHO EN BIT RANGO
Más detallesTEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN
TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN 4.1 Definiciones y palabras reservadas básicas del C El lenguaje C++ está compuesto por: 32 palabras clave (estándar ANSI), comunes a todos los compiladores de
Más detallesDependiendo del dispositivo usado, se tienen hasta 5 puertos de entrada/salida disponibles: PORTA PORTB PORTC PORTD PORTE
25 3 ENTRADA / SALIDA Dependiendo del dispositivo usado, se tienen hasta 5 puertos de entrada/salida disponibles: PORTA PORTB PORTC PORTD PORTE Cada uno de estos puertos es de 8 bits, sin embargo no todos
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesIntroducción al lenguaje C. Procesadores Digitales de Señal
Introducción al lenguaje C Procesadores Digitales de Señal Conceptos básicos Conceptos avanzados Índice Lenguaje C Procesadores Digitales de Señal 2 Índice (primera parte) Conceptos básicos Estructura
Más detallesPROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I
PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Table of contents 1 INFORMACIÓN GENERAL...2 2 INTRODUCCIÓN... 2 3 OBJETIVOS GENERALES DE LA ASIGNATURA... 3 4 OBJETIVOS, TEMAS Y SUBTEMAS... 3 5 PLAN TEMÁTICO...6
Más detallesLaboratorio de Arquitectura de Redes. Punteros en lenguaje C
Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones
Más detallesIntroducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Más detallesElementos léxicos del lenguaje de programación C
Elementos léxicos del lenguaje de programación C Elementos léxicos de los lenguajes de programación (tokens) Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices
Más detallesMemoria Dinámica. Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez
Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez 1. PUNTEROS 2. MEMORIA DINÁMICA 2 1. PUNTEROS 3 Qué es un puntero? Un tipo de variable cuyo valor es la dirección de memoria de otra variable.
Más detallesProgramación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.
Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor
Más detallesIntroduccion 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 detallesProgramación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática
Programación de Computadores 4 Iteraciones y Decisiones Prof. Javier Cañas Universidad Técnica Federico Santa María Departamento de Informática Contenido 1 Introducción 2 Operadores Relacionales y Lógicos
Más detallesFundamentos de Programación Visual Basic
Pág. N. 1 Fundamentos de Programación Visual Basic Familia: Editorial: Tecnología de información y computación Macro Autor: Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-236-3 N. de páginas: 280
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesAgradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Más detallesUniversidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C
Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }
Más detallesPráctica 3: El teclado del PC
Práctica 3: El teclado del PC Gustavo Romero López Arquitectura y Tecnología de Computadores 7 de junio de 2016 Gustavo Romero López Práctica 3: El teclado del PC 1 / 11 Objetivos Objetivos: Fuentes: Recordar
Más detallesProgramación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.
Programación n Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño o Vargas MsC. Variables y expresiones aritméticas Variables Conceptos de Memoria Una variable es un espacio en la memoria
Más detallesClases y Objetos. Informática II Ingeniería Electrónica
Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),
Más detallesExpresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Expresiones Aritméticas Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas El computador puede realizar cálculos además de mostrar datos por pantalla.
Más detallesObjetivos. Objetivos. Arquitectura de Computadores. R.Mitnik
Objetivos Objetivos Arquitecturas von Neumann Otras Unidad Central de Procesamiento (CPU) Responsabilidades Requisitos Partes de una CPU ALU Control & Decode Registros Electrónica y buses 2 Índice Capítulo
Más detallesAlgoritmos y Programación I
Algoritmos y Programación I ARREGLOS Y ESTRUCTURAS EN C Arreglos Un arreglo o vector es un conjunto de datos del mismo tipo, almacenados de forma contigua (es decir uno al lado del otro) en memoria principal.
Más detallesPaso de parámetros y gestión del marco de pila
Paso de parámetros y gestión del marco de pila Estructura de Computadores 1. Introducción En clases previas se ha presentado el modelo de programación del 88110 y se ha explicado cómo se ubican las distintas
Más detallesDOCUMENTACIÓN PARA EL TRABAJO CON LA PLATAFORMA GUADALBOT
DOCUMENTACIÓN PARA EL TRABAJO CON LA PLATAFORMA GUADALBOT I.E.S VIRGEN DE LAS NIEVES Programación C para microcontroladores La función printf Índice de contenidos Introducción...2 La función printf...2
Más detallesCurso 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 detallesTema 6. Gestión dinámica de memoria
Tema 6. Gestión dinámica de memoria http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz@icc.uji.es Estructuras de datos y de la
Más detallesINDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos
INDICE Prólogo XI 1. Operación del Computador 1 1.1. Calculadoras y Computadores 2 1.2. Computadores digitales electrónicos 5 1.3. Aplicación de los computadores a la solución de problemas 7 1.4. Aplicaciones
Más detallesDatos y tipos de datos
Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato
Más detallesArquitectura de Computadores. Apellidos, Nombre:
No se considerarán como válidas las respuestas en las que no se justifiquen los cálculos realizados No se permite el uso de ningún tipo de documentación, ni de calculadora Sólo existe una única opción
Más detallesDatos y tipos de datos
Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato
Más detallesUn identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * /
undamentos de sintaxis en algunas instrucciones de C#.Net Dr. Ramón Roque Hernández Identificadores Un identificador le da nombre único a un elemento en un programa (ariables, procedimientos, etc.). No
Más detallesSistema 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 detallesLas plantillas permiten definir funciones genéricas.
Introducción (Genericidad). Plantillas de funciones o funciones genéricas. Sintaxis de plantillas. Ejemplos de declaraciones. A tener en cuenta Un ejemplo de plantilla de funciones: Máximo de un vector.
Más detallesMé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 detallesFuncionamiento de la Pila (o stack)
Funcionamiento de la Pila (o stack) Todo μp cuenta con una memoria de almacenamiento temporal denominada Pila Es una estructura de datos de tipo secuencial (LIFO) Existen dos operaciones básicas posibles:
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesINDICE Capitulo 1. Álgebra de variables lógicas Capitulo 2. Funciones lógicas
INDICE Prefacio XV Capitulo 1. Álgebra de variables lógicas 1 1.1. Variables y funciones 1 1.2. Variables lógicas 2 1.3. Valores de una variable lógica 2 1.4. Funciones de una variable lógica 3 1.5. Funciones
Más detallesAprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS
Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Por Andrés Raúl Bruno Saravia Entrega Nº 5. Cómo declaramos una variable en Lenguaje C? En C siempre se deben declarar las variables.
Más detallesEl nivel ISA (II)! Conjunto de Instrucciones
El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina
Más detallesResumen de Sintaxis en C
1 Tipos, operadores y expresiones Resumen de Sintaxis en C Identificadores: Formados por letras, números y '_'. Los primeros 31 caracteres son significativos (dependiente del compilador). Las mayúsculas
Más detallesSISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Más detallesPresentación. Programación I. Conceptos Avanzados de Programación. :: Prof. Yeniffer Peña
Presentación Conceptos Avanzados de Programación :: Prof. Yeniffer Peña Unidad I: Conceptos Avanzados de Programación Recursividad: El concepto de recursividad va ligado al de repetición. Son recursivos
Más detallesPROGRAMACIÓN EN C para uc MCS-51
PROGRAMACIÓN EN C para uc MCS-5 Resumen de contenidos - Objetivos 2 - Justificación 3 - Compiladores cruzados 4 - Compiladores Keil uvision2 5 - Uso del entorno de programación 6 - Ejemplos 7 - Bibliografía
Más detalles4. Operadores Operador asignación
Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre
Más detalles(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM
Unidad 1 Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM Índice 1. Sistemas digitales basados en microprocesador. 1.1. Arquitectura
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesTransmisi n de Datos a Trav s de un PIC
Transmisi n de Datos a Trav s de un PIC 4 Introducción Tal como lo dice MICROCHIP en sus páginas Web, y según lo que hemos podido experimentar, los microcontroladores PIC16CXXX son de alto rendimiento
Más detallesEl lenguaje C: Elementos básicos del lenguaje
Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II El lenguaje C: Elementos básicos del lenguaje Este material debe utilizarse
Más detallesPRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador.
PRACTICA #1 Aprender a programar una interrupción software empleando C y/o Ensamblador. Aprender a manipular dispositivos externos (8253, 8255) desde C y/o ensamblador. PROCEDIMIENTO: Vamos a programar
Más detallesIntroducción a C Primera parte Sofía Vitale
1 de 16 Introducción a C Primera parte Sofía Vitale 2 de 16 1. Qué es un programa? Un programa está constituído por un conjunto de instrucciones que se ejecutan de modo secuencial. 1.a Lenguajes de programación:
Más detallesIntroducción al lenguaje C
Programación 2 Profesorado de Informática CeRP del Suroeste, Uruguay 29 de marzo de 2016 Estructuras de control IV Iteración Sentencia for: for (inicio; condicion; paso) cuerpo for (int i = 0; i < 10;
Más detallesOPERADORES Y EXPRESIONES
OPERADORES Y EXPRESIONES Una expresión es una combinación de variables, literales y operadores, que representan un valor Operadores aritméticos Operador Función + suma - resta * producto / división % operador
Más detallesEsquema de partida. Maximum Operating Supply Voltage 5.5V USB 1 USART 1
PROYECTO: INTERFACE USB CON PIC 18F4550 Especificaciones. Dispone de 8 entradas digitales, 8 salidas digitales, 8 entradas analógicas(entre 0 y 5 voltios 10 bits ) y 2 salidas analógicas(entre 0 y 5 voltios).
Más detallesTema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C
Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS Departamento de Ciencias de la Computación e IA Subprogramas en C Objetivo Una vez que tengamos un programa que resuelva un problema concreto, ser capaces de usarlo
Más detallesQué ofrece la programación en AutoCAD? Qué necesito para empezar a programar? Qué es C# y.net? Autor: Jorge A. Díez Pomares Laboratorio de C.A.D.
Qué ofrece la programación en AutoCAD? Qué necesito para empezar a programar? Qué es C# y.net? Laboratorio de C.A.D. UMH 1 1.1. INTRODUCCIÓN 1.2. SOFTWARE NECESARIO 1.3. CONFIGURACIÓN DEL PROYECTO EN VS2010
Más detalles6 MODULACIÓN DE ANCHO DE PULSO (PWM)
69 6 MODULACIÓN DE ANCHO DE PULSO (PWM) En el PWM, se produce un pulso rectangular con un ciclo de trabajo determinado (comúnmente producido por un Timer), este ciclo de trabajo puede variar de 0 a 100%.
Más detalles