Lógica, Tipos y Semántica:

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

Download "Lógica, Tipos y Semántica:"

Transcripción

1 Lógica, Tipos y Semántica: I para TAL Jornada informativa Paradigma de Lenguajes de Programación Depto de Computación FCEyN UBA 29 de noviembre de 2005

2 Índice Lógica, tipos y semántica para lenguajes de alto nivel han sido estudiados extensamente Una tendencia reciente: enfocar atención sobre 1. lenguajes de bajo nivel (o intermedios) y 2. sus entornos de ejecución (máquinas abstractas y virtuales) En esta charla Repasamos algunas motivaciones Desarrollamos un ejemplo ( ) con algunas citas que respaldan la tendencia I para TAL

3 Por más precisas que sean nuestras técnicas para inferir/probar propiedades sobre lenguajes de alto nivel, lo que termina ejecutándose es la imagen del mismo a través de un compilador Los compiladores son programas complejos Modifican sustancialmente el programa fuente a través de numerosas etapas Movilidad y distribución masiva de código vía Internet Con frecuencia creciente, el productor distribuye el código en algún formato de bajo nivel El consumidor debe poder verificar si el código cumple con su poĺıtica de seguridad/comportamiento antes de ejecutarlo Proof Carrying Code (PCC) I para TAL

4 Qué es PCC? Overview of PCC Approach Please install and execute this. OK, but let me quickly look over the instructions first. I para TAL Code producer Host Slide by Peter Lee

5 Qué es PCC? Overview of PCC Approach I para TAL Code producer Host Slide by Peter Lee

6 Qué es PCC? Overview of PCC Approach This store instruction is dangerous! I para TAL Code producer Host Slide by Peter Lee

7 Qué es PCC? Overview of PCC Approach Can you prove that it is always safe? I para TAL Code producer Host Slide by Peter Lee

8 Qué es PCC? Overview of PCC Approach Yes! Here s the proof I got from my certifying Java compiler! λ Can you prove that it is always safe? I para TAL Code producer Host Slide by Peter Lee

9 Qué es PCC? Overview of PCC Approach λ Your proof checks out. I believe you because I believe in logic. I para TAL Code producer Host Slide by Peter Lee

10 Datos confidenciales deben ser protegidos de posibles filtraciones Mecanismos convencionales como (mandatory/discretionary) access control o stack inspection se quedan cortos pues no hay control sobre la propagación de los datos una vez que se permite el acceso a los mismos I para TAL

11 Information flow apunta a imponer poĺıticas de confidencialidad en una modalidad punta-a-punta: asegurar que, una vez que los datos han sido liberados al programa, la poĺıtica de confidencialidad es respetada Poĺıtica de confidencialidad: I para TAL 1. Indicar qué información es pública, privada, etc. Ej. decorar las direcciones de memoria o variables con etiquetas de seguridad {L, H}. 2. Especificar poĺıtica de flujo de información. Ej. información puede fluír de niveles seguridad bajos a altos

12 Information Expĺıcito/Impĺıcito Flujo de información expĺıcito: y:=x Flujo de información impĺıcito: if x then y:=1 else y:=2 endif Channel: Mechanism for signaling information through a computing system [Myers,Sabelfeld2003] Aparece un covert storage channel : El programa crea un flujo de información desde x hacia y. Otros flujos de información: timing, terminación, consumo de recursos, etc. Survey: -based information flow security, A. Sabelfeld y A.Myers, 2003 I para TAL

13 Detección de flujos ímplicitos Se asigna una etiqueta al program-counter [Denning,Denning1977] Se analiza el programa infiriendo si las variables deben etiquetarse como secretas o públicas PC=L PC=lx PC=lx PC=L if x then y :=1 else y :=2 endif; z :=3 Al llegar al endif podemos volver a bajar el nivel del PC ( junction point ) Instrucciones de control de flujo guían el análisis I para TAL

14 Detección de flujos ímplicitos También se puede hacer a través de sistemas de tipos [Volpano,Smith1996;1997] Dos ejemplos de reglas de tipos Γ e : l Γ c 1 : cmd l Γ c 2 : cmd l l l I para TAL Γ if e then c 1 else c 2 endif : cmd l Γ c 1 : cmd l Γ c 2 : cmd l Γ c 1 ; c 2 : cmd l

15 No-interferencia Cómo determinamos la correctitud de nuestro análisis de flujo de información? No-interferencia [Goguen,Meseguer1982]. Una formalización posible de ausencia de filtraciones Noción semántica que establece que los inputs sólo afectan los outputs de mayor nivel de seguridad L H1 L H2 I para TAL L H1 L H2 Correctitud del sistema de tipos programas tipados verifican no-interferencia

16 I para Los obstáculos más relevantes a la hora de trasladar lógicas, sistemas de tipos y semántica a lenguajes de bajo nivel son: Ausencia de sentencias de control de flujo de alto nivel La presencia de una pila Las instrucciones de salto Estos obstáculos varían de gravedad según el problema en cuestión I para TAL

17 Qué es? Descripción ejecutiva [D.Walker, Lect. Notes, 2004]: Lenguaje assembler RISC sencillo Semántica operacional formal para una máquina abstracta Sistema de tipos formal que captura propiedades del procesador y memoria: registros, pila y heap I para TAL

18 Ejemplo en TAL fact : L2 : X.{sp : X, r 1 : int, r 2 : int, r 3 : {r 1 : int, sp : X } {}} {} ble r 1, L2 % if n<=0 goto L2 mul r 2, r 2, r 1 % a:=a*n sub r 1, r 1, 1 % n:=n-1 jmp fact[x ] % goto fact X.{sp : X, r 2 : int, r 3 : {r 1 : int, sp : X } {}} {} mov r 1, r 2 % result:=a jmp r 3 % jump to return address I para TAL

19 Algunas reglas de tipado de TAL Las reglas de tipado de TAL permiten capturar una serie de propiedades interesantes de código de bajo nivel Ilustramos algunas propiedades junto con la regla de tipado que la captura Saltos son a etiquetas válidas I para TAL Ψ; ; Γ 1 v : [].Γ 2 Γ 1 Γ 2 T Jmp Ψ; ; Γ 1 jmp v Aritmética sobre enteros Ψ; ; Γ r s : int Ψ; ; Γ v : int Ψ; ; Γ[r d := int] B T Arith Ψ; ; Γ aop r d, r s, v; B

20 Algunas reglas de tipado de TAL Más ejemplos de propiedades No puede escribirse fuera de la pila Γ(sp) = τ 1... τ i Σ Ψ; ; Γ v : σ Ψ; ; Γ[sp := τ 1... τ i 1 σ Σ] B T Sst Ψ; ; Γ sst sp[i], v; B I para TAL Bloque llamado no puede trastornar pila del llamador

21 I para TAL Problema 1 I para TAL Construcciones de flujo de control de alto nivel (encargados de guíar el proceso de tipado) se encuentran ausentes!

22 I para TAL % r 1 holds x, r 2 holds y Start : bnz r 1, L1; % if x goto L1 jmp L2 % goto else branch L1 : mov r 2, 1; % y:=1 jmp L3 I para TAL L2 : mov r 2, 2; % y:=2 jmp L3 L3 : halt

23 I para TAL % r 1 holds x, r 2 holds y Start : bnz r 1, L1; % if x goto L1 jmp L2 No debe bajar PC, L2 no es junction point! L1 : mov r 2, 1; % y:=1 jmp L3 Debe bajar PC, L3 es junction point! L2 : mov r 2, 2; % y:=2 jmp L3 Debe bajar PC, L3 es junction point! L3 : halt I para TAL

24 I para TAL Idea: adaptar linear continuations de [Myers,Zdancewic2002] a lenguaje assembler % r 1 holds x, r 2 holds y Start : bnz r 1, L1; jmp L2 L1 : mov r 2, 1; % y:=1 jmp L3 L2 : mov r 2, 2; % y:=2 jmp L3 L3 : halt % if x goto L1 No debe PC, L2 no es junction point! Debe bajar PC, L3 es junction point! Debe bajar PC, L3 es junction point! I para TAL

25 I para TAL % r 1 holds x, r 2 holds y Start : pushjp L3; Introducir continuación bnz r 1, L1; % if x goto L1 jmp L2 Obligación lineal, te acompaña! L1 : mov r 2, 1; % y:=1 jmpjp L3 Obligación lineal descargada L2 : mov r 2, 2; % y:=2 jmpjp L3 Obligación lineal descargada L3 : halt pushjp es una directiva de tipado: guía el sistema de tipos pero desaparece en tiempo de ejecución jmpjp L se comporta igual que jmp L I para TAL

26 I para TAL % r 1 holds x, r 2 holds y Start : pushjp L3; Introducir continuación bnz r 1, L1; % if x goto L1 jmp L2 Obligación lineal, te acompaña! L1 : mov r 2, 1; % y:=1 jmpjp L3 Obligación lineal descargada L2 : mov r 2, 2; % y:=2 jmpjp L3 Obligación lineal descargada L3 : halt pushjp es una directiva de tipado: guía el sistema de tipos pero desaparece en tiempo de ejecución jmpjp L se comporta igual que jmp L I para TAL

27 I para TAL % r 1 holds x, r 2 holds y Start : pushjp L3; Introducir continuación bnz r 1, L1; % if x goto L1 jmp L2 Obligación lineal, te acompaña! L1 : mov r 2, 1; % y:=1 jmpjp L3 Obligación lineal descargada L2 : mov r 2, 2; % y:=2 jmpjp L3 Obligación lineal descargada L3 : halt pushjp es una directiva de tipado: guía el sistema de tipos pero desaparece en tiempo de ejecución jmpjp L se comporta igual que jmp L I para TAL

28 I para TAL Problema 2 I para TAL La pila

29 Dos ejemplos ilustrativos En los dos ejemplos siguientes, al finalizar la ejecución del programa el componente que queda en el tope de la pila es público deja filtrar información secreta (a saber, si el contenido secreto del registro r2 es cero o no) Problema del primer ejemplo: en una rama secreta del bnz se libera un componente público de la pila Problema del segundo ejemplo: en una rama secreta se liberan componentes que no se liberan en la otra rama secreta del bnz I para TAL

30 Rama secreta libera componente público L start Code {r1 : int L, r2 : int H } L salloc 2 mov r1,0 sst sp[0],r1 mov r1,1 sst sp[1],r1 bnz r2,l high jmp L JP I para TAL L high Code {r1 : int L } H sfree 1 jmp L JP L JP Code {r1 : int L } L sld r1,sp[0]...

31 Ramas secretas liberan no. de componentes L start Code {r1 : int L, r2 : int H } L salloc 3 mov r1,0 sst sp[2],r1 mov r1,1 sst sp[1],r1 sst sp[0],r2 bnz r2, L high jmp L JP I para TAL L high Code {r1 : int L } H sfree 1 jmp L JP L JP Code {r1 : int L } L sfree 1 sld r1,sp[0]...

32 SIFTAL SIFTAL: un TAL con junction points y tipos decorados con etiquetas de seguridad. Incluye registros, heap locations y stack polimórfico Un sistema de tipos y una noción formal de no-interferencia Semántica operacional: la máquina abstracta original de TAL Prueba de type soundness: programas tipados gozan de la propiedad de no-interferencia I para TAL

33 Hay una clara tendencia a estudiar propiedades de programas escritos en lenguajes de bajo nivel como (TAL) Java bytecode (Sun) Common Intermediate (CIL, Microsoft) Muchos otros asociados a máquinas abstractas de una variada gama y sus entornos de ejecución (abstract y virtual machines) como ser JVM (Java Virtual Machine) CLR (Common Runtime) Otros: Abstract Machines for Programming Implementation, Diehl, Hartel y Sestoft, Future Generation Computing Systems, I para TAL

34 Hemos visto algunas complicaciones que surgen a la hora de analizar secure information flow en un lenguaje de bajo nivel Ausencia de sentencias de control de flujo de alto nivel Pila Saltos (en menor medida) I para TAL

35 Más allá de information flow Qué sucede con otras técnicas para estudiar lenguajes de programación: lógica, sistemas de tipos, semántica, etc? Mucha actividad Verificación (ej: lógicas à la Hoare) Propiedades de seguridad (ej: information flow, secuenciación de operaciones, lectura/escritura a memoria) Terminación y Consumo de recursos (ej: heap bounded assembly language) Optimizaciones (ej: SOOT para bytecode) Fundamentos (derivación de abstract machines a partir de semántica operacional, Isomorphismo de Curry-Howard) I para TAL

36 Gracias! I para TAL

37 Information flow flow via linear continuations, Myers y Zdancewic, 2002 Type based information flow analysis for low-level languages, Kobayashi y Kirane, 2002 Security Types Preserving Compilation, Barthe, Basu y Rezk, 2004 I para TAL Checking secure information flow in Java bytecode by code transformation an d standard bytecode verification, Bernardeschi, De Francesco, Lettieri y Martini, 2004 Non-Interference for a JVM-like, Barthe, Basu y Rezk, 2005

38 Information flow Timing aware information flow security for a javacard-like bytecode, Hedin y Sands, 2005 Information Analysis for Java Bytecode, Genaim y Spoto, 2005 A for Non-Interference, E.B., R. Medel y A. Compagnoni. ICTCS 2005 I para TAL Information- Analysis for a with Polymorphic Stacks, E.B., R. Medel y A. Compagnoni, CASSIS 2005.

Grupo de Procesadores de Lenguajes - Línea: Código Móvil Seguro

Grupo de Procesadores de Lenguajes - Línea: Código Móvil Seguro Grupo de Procesadores de Lenguajes - Línea: Código Móvil Seguro Francisco Bavera Martín Nordio Jorge Aguirre Marcelo Arroyo Gabriel Baum Ricardo Medel Resumen En el último tiempo Proof-Carrying Code (PCC)

Más detalles

Comunicación con la Computadora

Comunicación con la Computadora Comunicación con la Computadora Programación Básica Copyright CARIMOBITS Comunicación con la computadora Se logra a través de lenguajes de computadoras o lenguajes de programación. Tipos de lenguajes de

Más detalles

GENERACIÓN DE CÓDIGO

GENERACIÓN DE CÓDIGO GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información

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

TEMA 1: INTRODUCCIÓN

TEMA 1: INTRODUCCIÓN 1 DISEÑO Y DESARROLLO DE COMPILADORES TEMA 1: INTRODUCCIÓN Qué es un Compilador? Un compilador no es más que un traductor, es decir, un programa que nos permite pasar información de un lenguaje a otro.

Más detalles

La Arquitectura de las Máquinas Virtuales.

La Arquitectura de las Máquinas Virtuales. La Arquitectura de las Máquinas Virtuales. La virtualización se ha convertido en una importante herramienta en el diseño de sistemas de computación, las máquinas virtuales (VMs) son usadas en varias subdiciplinas,

Más detalles

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones Instruction Set Architecture (ISA) Arquitectura del conjunto de instrucciones software Conjunto de instrucciones hardware Universidad

Más detalles

Práctica 4. Introducción a la programación en lenguaje ensamblador

Práctica 4. Introducción a la programación en lenguaje ensamblador Enunciados de prácticas Práctica 4. Introducción a la programación en lenguaje ensamblador Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Práctica 4:

Más detalles

INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA

INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA Fuente: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html Por qué Java? TIOBE Index for March 2015 Fuente: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Más detalles

Generación de Código Intermedio

Generación de Código Intermedio Generación de Código Intermedio Francisco Rodríguez Zamora Universidad de Costa Rica, Escuela de Ciencias de Computación e Informática San José, Costa Rica francisco.rodriguez@ecci.ucr.ac.cr Jonathan Calderón

Más detalles

Introducción al.net Framework. Introducción al.net Framework. Diseño Basado en Componentes. Curso 2008 / 09. Diseño Basado en Componentes

Introducción al.net Framework. Introducción al.net Framework. Diseño Basado en Componentes. Curso 2008 / 09. Diseño Basado en Componentes Introducción al.net Framework Diseño Basado en Componentes Introducción al.net Framework Arquitectura.NET Herramientas, lenguajes y tecnologías.net.net Framework Ingeniería Informática Universidad Carlos

Más detalles

Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos

Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos Ingeniero en Computación José Alfredo Cobián Campos josealfredocobian@gmail.com Facultad de Ciencias

Más detalles

INF 473 Desarrollo de Aplicaciones en

INF 473 Desarrollo de Aplicaciones en INF 473 Desarrollo de Aplicaciones en Java Unidad II El Lenguaje de Programación Java Prof. José Miguel Rubio jose.rubio.l@ucv.cl jrubio@inf.ucv.cl PUCV Marzo 2008 1 Orígenes del Lenguaje Java 1991. James

Más detalles

Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio

Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio Fundamentos de Arquitectura de Computadores Modelo de von Neumann Profesor: Felipe Cabarcas Correo:cabarcas@udea.edu.co Oficina:

Más detalles

Informática I. Código 2547100 Semestre 2014-2. Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza

Informática I. Código 2547100 Semestre 2014-2. Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza Informática I Código 2547100 Semestre 2014-2 Para Ingeniería Electrónica e Ingeniería de Telecomunicaciones Profesor: Sebastián Isaza Programming tools Editor de texto (gedit, kate, vim, wordpad, etc):

Más detalles

TEMA 4. EXCEPCIONES Y MANEJO DE EXCEPCIONES.

TEMA 4. EXCEPCIONES Y MANEJO DE EXCEPCIONES. TEMA 4. EXCEPCIONES Y MANEJO DE EXCEPCIONES. 4.1. Introducción. 4.2. Tratamiento de excepciones. 4.2.1. Excepciones en lenguajes tradicionales. 4.2.2. Tratamiento de excepciones moderno. 4.3. Tratamiento

Más detalles

Agustiniano Ciudad Salitre School Computer Science Support Guide - 2015 Second grade First term

Agustiniano Ciudad Salitre School Computer Science Support Guide - 2015 Second grade First term Agustiniano Ciudad Salitre School Computer Science Support Guide - 2015 Second grade First term UNIDAD TEMATICA: INTERFAZ DE WINDOWS LOGRO: Reconoce la interfaz de Windows para ubicar y acceder a los programas,

Más detalles

Introducción a Java LSUB. 15 de enero de 2015 GSYC

Introducción a Java LSUB. 15 de enero de 2015 GSYC Introducción a LSUB GSYC 15 de enero de 2015 (cc) 2014 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada

Más detalles

1 Procedimiento de instalación general en español de Conecta Disney

1 Procedimiento de instalación general en español de Conecta Disney 1 2 1 Procedimiento de instalación general en español de Conecta Disney 1. El usuario realiza la instalación estándar por Internet de Conecta Disney. El sistema muestra el primer panel de Conecta Disney.

Más detalles

02 Lenguajes de programación y compiladores

02 Lenguajes de programación y compiladores 2 Contenido Introducción Lenguaje de programación Traductor Compilador Interprete Lenguaje compilado Lenguaje interpretado Compiladores (just in time) Lenguaje ensamblador Programa objeto Lenguajes de

Más detalles

Diseño de compiladores. Representación intermedia Ambientes de ejecución

Diseño de compiladores. Representación intermedia Ambientes de ejecución Diseño de compiladores Representación intermedia Ambientes de ejecución Generación de la RI Es la ultima etapa del frontend de un compilador El objetivo es traducir el programa en el formato que espera

Más detalles

Datos parciales. Datos Parciales. La Programación estructurada se concentra en las acciones que controlan el flujo de datos.

Datos parciales. Datos Parciales. La Programación estructurada se concentra en las acciones que controlan el flujo de datos. Unidad I Conceptos Básicos de la Programación Orientada a Objetos 1.1 Paradigma de la Programación Orientada a Objetos Paradigma. Según el Diccionario de la Real Academia de la Lengua Española, paradigma

Más detalles

mari_clau_18@hotmail.com Java es el lenguaje de programación que

mari_clau_18@hotmail.com Java es el lenguaje de programación que PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA Dra. Maricela Bravo mari_clau_18@hotmail.com JUSTIFICACIÓN Java es el lenguaje de programación que más impacto ha tenido en los últimos años, especialmente en

Más detalles

Nociones Básicas de Sémantica: Semántica Denotacional

Nociones Básicas de Sémantica: Semántica Denotacional Nociones Básicas de Sémantica: Semántica Denotacional Análisis de Lenguajes de Programación Mauro Jaskelioff 21/08/2015 Acerca de la Semántica Operacional En la semántica operacional el significado de

Más detalles

! Una variable declarada con final no puede volver a ser reinicializada. numero = 2;! ! Para definir constantes

! Una variable declarada con final no puede volver a ser reinicializada. numero = 2;! ! Para definir constantes Modificador final Introducción a la Programación IV Curso de Programación en Java Luis Guerra l.guerra@upm.es Enero 2012 Una variable declarada con final no puede volver a ser reinicializada final int

Más detalles

1. Aplicaciones del J2SE SDK1.4.2 de Sun.

1. Aplicaciones del J2SE SDK1.4.2 de Sun. Dept Informatica Índice 1 Aplicaciones del J2SE SDK142 de Sun 1 11 javac 1 12 java 1 13 javadoc 2 14 Las que no se explican 3 2 Guía de estilo de Java 3 21 Clases 3 211 Nombres para las clases 3 212 Estructura

Más detalles

MANUAL EASYCHAIR. A) Ingresar su nombre de usuario y password, si ya tiene una cuenta registrada Ó

MANUAL EASYCHAIR. A) Ingresar su nombre de usuario y password, si ya tiene una cuenta registrada Ó MANUAL EASYCHAIR La URL para enviar su propuesta a la convocatoria es: https://easychair.org/conferences/?conf=genconciencia2015 Donde aparece la siguiente pantalla: Se encuentran dos opciones: A) Ingresar

Más detalles

Estructura de Computadores. Capítulo 3b: Programación en

Estructura de Computadores. Capítulo 3b: Programación en Estructura de Computadores Capítulo 3b: Programación en ensamblador del MIPS. José Daniel Muñoz Frías Universidad Pontificia Comillas. ETSI ICAI. Departamento de Electrónica y Automática Estructura de

Más detalles

Processadors de Llenguatge II. Compiladores

Processadors de Llenguatge II. Compiladores Processadors de Llenguatge II Compiladores Que es un compilador Un traductor es cualquier programa que toma un texto escrito en un lengiaje y da como salida en otro lenguaje(llamado objeto) texto lenguaje

Más detalles

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

Programa Analítico 2010. Asignatura: Resolución de problemas de Optimización en Entornos Industriales

Programa Analítico 2010. Asignatura: Resolución de problemas de Optimización en Entornos Industriales Programa Analítico 2010 Asignatura: Resolución de problemas de Optimización en Entornos Industriales CARRERA: LCC AÑO: 5º CREDITO HORARIO: 8 hs áulicas semanales DESPLIEGUE (primer semestre, segundo semestre

Más detalles

Laboratorio Informix. Stored Procedures Triggers

Laboratorio Informix. Stored Procedures Triggers Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

Manual de Arduino Wifly Shield

Manual de Arduino Wifly Shield Manual de Arduino Wifly Shield Material necesario: Arduino UNO. Wifly shield Software requerido en la PC: Arduino IDE v.1.0.1 Librería Wifly Alpha2 Preparando el hardware: Como se puede ver 4 LEDs parpadean

Más detalles

Java en 2 horas. Rodrigo Santamaría

Java en 2 horas. Rodrigo Santamaría + Java en 2 horas Rodrigo Santamaría + Generalidades 2 Desarrollado por Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión

Más detalles

"Programación en Ensamblador del microprocesador Pentium (I)"

Programación en Ensamblador del microprocesador Pentium (I) PRÁCTICA 3 "Programación en Ensamblador del microprocesador Pentium (I)" ÍNDICE 3.1.- El microprocesador Pentium. 3.2.- Inserción de ensamblador en Visual Studio. 3.3.- Facilidades para la depuración de

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Ricardo.Sanz@upm.es Curso 2004-2005 Arquitectura de Computadores Arquitectura de computadores es la disciplina que estudia la organización y funcionamiento de los computadores

Más detalles

Práctica 4 - Arquitectura CPU

Práctica 4 - Arquitectura CPU Práctica 4 - Arquitectura CPU Organización del Computador 1 1er. Cuatrimestre 2006 Programación en Assembler Ejercicio 1 Dados los siguientes valores de la memoria y del registro R0 de la arquitectura

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Paradigmas de programación 2 Paradigmas de programación Paradigma de programación estructurada Enfatiza la separación datos de un programa

Más detalles

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?,

Más detalles

TÉCNICAS DE PROGRAMACIÓN Lenguaje Java. Introducción a Java Daniel Finol

TÉCNICAS DE PROGRAMACIÓN Lenguaje Java. Introducción a Java Daniel Finol TÉCNICAS DE PROGRAMACIÓN Lenguaje Java Introducción a Java Daniel Finol Qué es Java? Java: El lenguaje de programación Java. La Máquina Virtual de Java. La plataforma Java. 2 Qué es Java? El lenguaje de

Más detalles

V.- V.-El El manejo de de las las Interrupciones

V.- V.-El El manejo de de las las Interrupciones Las Las V.- V.-El El manejo de de las las Conceptos Conceptos BásicosB Básicos Modos Modos de de Manejo Manejo Ejemplos Ejemplos de de aplicación aplicación Las Las El manejo de las en el 8051 Las interrupciones

Más detalles

Instructions on How to Access and Print Your W2 Statement for Active or Terminated Employees

Instructions on How to Access and Print Your W2 Statement for Active or Terminated Employees Instructions on How to Access and Print Your W2 Statement for Active or Terminated Employees SUBJECT: ACCESSING AND PRINTING YOUR W2 STATEMENT AS AN ACTIVE EMPLOYEE PURPOSE: This document outlines the

Más detalles

Tema 6: Generación de código (parte 2)

Tema 6: Generación de código (parte 2) Tema 6: Generación de código (parte 2) Procesamiento de Lenguajes Dept de Lenguajes y Sistemas Informáticos Universidad de Alicante Procesamiento de Lenguajes Tema 6: Generación de código (parte 2) 1 /

Más detalles

picojava TM Características

picojava TM Características picojava TM Introducción El principal objetivo de Sun al introducir Java era poder intercambiar programas ejecutables Java entre computadoras de Internet y ejecutarlos sin modificación. Para poder transportar

Más detalles

PROGRAMACIÓN BÁSICA DE LA COMPUTADORA. 1 Introducción. Tabla 1: Instrucciones MIPS

PROGRAMACIÓN BÁSICA DE LA COMPUTADORA. 1 Introducción. Tabla 1: Instrucciones MIPS PROGRAMACIÓN BÁSICA DE LA COMPUTADORA 1 Introducción Un sistema de computadora total incluye tanto circuitería (hardware) como programación (software). El hardware consta de los componentes físicos y todo

Más detalles

Algunas características de los lenguajes de programación orientados a objetos son:

Algunas características de los lenguajes de programación orientados a objetos son: Programación Orientada a Objetos (POO) La programación orientada a objetos es un paradigma de programación que, como su nombre lo indica, se basa en el uso de objetos estructuras de datos que consisten

Más detalles

Informática Aplicada I

Informática Aplicada I Informática Aplicada I Dr. Alonso Ramirez Manzanares CIMAT e-mail: alram@cimat.mx web: http://www.cimat.mx/~alram/info_apli1/ Profesor Alonso Ramirez Manzanares, Ciencias de la computación, computo matemático.

Más detalles

Procesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción

Procesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción Tema 8 Procesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción IA-64 es una arquitectura de 64 bits desarrollada conjuntamente por Intel y HP (Hewlett- Packard). Está basado en una tecnología

Más detalles

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente Capítulo 5: Aplicaciones cliente 46 5.1 La aplicación cliente en la Pocket PC La aplicación desarrollada para el cliente en un dispositivo móvil como corresponde a la Pocket PC necesita una capa muy delgada

Más detalles

La complejidad de los automatismos y la necesidad de especificar con precisión las tareas => útiles simbólicos de representación

La complejidad de los automatismos y la necesidad de especificar con precisión las tareas => útiles simbólicos de representación PROGRAMACIÓN DEL AUTÓMATA Tiene una serie de pasos: Determinar qué debe hacer el sistema de control y en qué orden Identificar entradas y salidas al autómata Representar mediante un modelo el sistema de

Más detalles

Lección: Lenguaje de Programación JULIA

Lección: Lenguaje de Programación JULIA Lección: Lenguaje de Programación JULIA ICI3140 Métodos Numéricos Profesor : Dr. Héctor Allende-Cid e-mail : hector.allende@ucv.cl JULIA Julia is a highlevel, high-performance dynamic programming language

Más detalles

Virtualización. Fernando Lorge florge@unlu.edu.ar. Laboratorio de REDES Recuperación de Información y Estudios de la Web

Virtualización. Fernando Lorge florge@unlu.edu.ar. Laboratorio de REDES Recuperación de Información y Estudios de la Web Administración y Gestión de Redes Lic. en Sistemas de Información Laboratorio de REDES Recuperación de Información y Estudios de la Web Virtualización Fernando Lorge florge@unlu.edu.ar - 2015 - Virtualización

Más detalles

Carrera: IFE - 0438 2-2-6. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Carrera: IFE - 0438 2-2-6. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Software de sistemas Licenciatura en Informática IFE - 0438 2-2-6 2.- HISTORIA

Más detalles

Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008

Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008 Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008 Instrucciones Generales El objetivo de esta iniciativa es determinar si sus aplicaciones ejecutan apropiadamente en SQL Server 2008 y apoyar

Más detalles

Capítulo 1 Introducción a la Computación

Capítulo 1 Introducción a la Computación Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:

Más detalles

Tema: PROCEDIMIENTOS ALMACENADOS.

Tema: PROCEDIMIENTOS ALMACENADOS. Base de datos I. Guía 9 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: PROCEDIMIENTOS ALMACENADOS. Objetivo Específico Conocer la sintaxis de un procedimiento almacenado

Más detalles

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario

Más detalles

Objetivo de aprendizaje del tema

Objetivo de aprendizaje del tema Computación 2 Tema 1. Características de la tecnología Java Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Describir las características ti fundamentales de la tecnología Java. Describir

Más detalles

Un largo etcétera de desventajas respecto a otros lenguajes de programación.

Un largo etcétera de desventajas respecto a otros lenguajes de programación. HISTORIA DE VISUAL BASIC El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code) nació en el año 1964 como una herramienta destinado a principiantes, buscando una forma sencilla

Más detalles

1. Manejo de memoria estática 2. Manejo de memoria dinámica

1. Manejo de memoria estática 2. Manejo de memoria dinámica 1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo

Más detalles

ETS APPs 26.10.2012 MATELEC 2012. Nuevas Funciones para ETS. Madrid. Casto Cañavate KNX Association International

ETS APPs 26.10.2012 MATELEC 2012. Nuevas Funciones para ETS. Madrid. Casto Cañavate KNX Association International ETS APPs Nuevas Funciones para ETS 26.10.2012 MATELEC 2012 Madrid Casto Cañavate KNX Association International KNX Association International Page No. 2 Introducción Diversidad de Proyectos Viviendas Oficinas

Más detalles

Instrumentación Virtual con LabVIEW

Instrumentación Virtual con LabVIEW Instrumentación Virtual con LabVIEW ESTRUCTURAS ESTRUCTURAS WHILE FOR.. CASE SEQUENCE Opciones de selección de CASE Controles Visibles Variables Locales y Globales Personalizar controles 1.- ENTORNO DE

Más detalles

servicios. El API es definido al nivel de código fuente y proporciona el nivel de

servicios. El API es definido al nivel de código fuente y proporciona el nivel de GLOSARIO API Application Program -ming- Interface Es la interfaz por la cual una aplicación accede al sistema operativo u a otros servicios. El API es definido al nivel de código fuente y proporciona el

Más detalles

Cómo comprar en la tienda en línea de UDP y cómo inscribirse a los módulos UDP

Cómo comprar en la tienda en línea de UDP y cómo inscribirse a los módulos UDP Cómo comprar en la tienda en línea de UDP y cómo inscribirse a los módulos UDP Sistema de registro y pago Este sistema está dividido en dos etapas diferentes*. Por favor, haga clic en la liga de la etapa

Más detalles

4 o Ingeniería Informática

4 o Ingeniería Informática Esquema del tema 1. Introducción 4 o Ingeniería Informática II26 Procesadores de lenguaje Estructura de los compiladores e intérpretes 2. Etapas del proceso de traducción 3. La interpretación 4. La arquitectura

Más detalles

BBVA emarkets. Solución de problemas y requisitos mínimos del sistema

BBVA emarkets. Solución de problemas y requisitos mínimos del sistema BBVA emarkets Solución de problemas y requisitos mínimos del sistema 2012 Solución de problemas Si experimentas alguno los siguientes problemas, por favor busca una solución en la tabla de abajo. Problema

Más detalles

Funciones. Diseño de funciones. Uso de instrucción jal y retorno de subrutina.

Funciones. Diseño de funciones. Uso de instrucción jal y retorno de subrutina. MIPS Funciones 1 Funciones Diseño de funciones. Uso de instrucción jal y retorno de subrutina. Se suelen denominar funciones, procedimientos, subrutinas, subprogramas a las estructuras que emplean los

Más detalles

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware)

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware) 1. Niveles de organización de computadoras Hardware y software Enfoque de máquina multinivel Clasificación de computadoras Hardware y Software Hardware: componentes físicos (UCP, discos, impresora, circuitos

Más detalles

Los bloques DLL (Figura A.1) externos permiten al usuario escribir su propio código y

Los bloques DLL (Figura A.1) externos permiten al usuario escribir su propio código y Apéndice A Bloques DLL Los bloques DLL (Figura A.1) externos permiten al usuario escribir su propio código y programarlo en lenguaje C, compilarlo dentro de un archivo DLL usando el Microsoft C/C++ o el

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

Sistemas Operativos. Tema 1. Arquitectura Básica de los Computadores

Sistemas Operativos. Tema 1. Arquitectura Básica de los Computadores Sistemas Operativos. Tema 1 Arquitectura Básica de los Computadores http://www.ditec.um.es/so Departamento de Ingeniería y Tecnología de Computadores Universidad de Murcia Sistemas Operativos. Tema 1 Arquitectura

Más detalles

(volver a Tabla de Contenidos)

(volver a Tabla de Contenidos) Para escribir, compilar y ejecutar un programa en Java lo único que realmente se necesita y no viene incluido con el sistema operativo es el kit de desarrollo de Java, denominado SDK (Software Development

Más detalles

Concurrencia en.net David Jesús Horat Flotats

Concurrencia en.net David Jesús Horat Flotats Concurrencia en.net David Jesús Horat Flotats ÍNDICE 1. Introducción n a.net 2. Sincronización n en.net 2.1 Contextos sincronizados 2.2 Método M Synchronized 2.3 Regiones de código c sincronizado 2.4 Sincronización

Más detalles

2. Se puede aplicar a la representación intermedia un optimizador de código independiente de la máquina.

2. Se puede aplicar a la representación intermedia un optimizador de código independiente de la máquina. Traductores, Compiladores e Intérpretes 1 Tema 7 Generación de Código En el modelo de análisis y síntesis de un compilador, la etapa inicial traduce un programa fuente a una representación intermedia a

Más detalles

Tema: INTÉRPRETE ENSAMPOCO/3

Tema: INTÉRPRETE ENSAMPOCO/3 Compiladores. Guía 11 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: INTÉRPRETE ENSAMPOCO/3 Contenido En esta práctica se desarrollará un intérprete de lenguaje ENSAMPOCO/3

Más detalles

Una introducción al compilador C de GNU

Una introducción al compilador C de GNU Una introducción al compilador C de GNU Héctor Adrián Valdecantos Departamento de Ciencias de Computación Facultad de Ciencias Exactas y Tecnología - UNT Materia: Programación Carrera: Programador Universitario

Más detalles

Uso de excepciones en Java

Uso de excepciones en Java Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que

Más detalles

Resumen Lenguaje Java

Resumen Lenguaje Java Resumen Lenguaje Java Comentarios Elementos del Lenguaje De una sola línea // comentario De varias líneas /* Este es un comentario de varias líneas */ Comentarios para Javadoc /** * The Example class */

Más detalles

INTRODUCCIÓN A JAVA. Índice

INTRODUCCIÓN A JAVA. Índice INTRODUCCIÓN A JAVA Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía 2 1 Qué es Java? La tecnología Java

Más detalles

Sistema para la administración, control y seguimiento de reuniones institucionales.

Sistema para la administración, control y seguimiento de reuniones institucionales. 87 Sistema para la administración, control y seguimiento de reuniones institucionales. María Rodríguez, Luis Luna, Marcos Sixto, Joel Quintanilla y José Aguirre. M. Rodríguez, L. Luna, M. Sixto, J. Quintanilla

Más detalles

Repaso de las características más importantes de la programación Java y su adaptación a Android

Repaso de las características más importantes de la programación Java y su adaptación a Android Repaso de las características más importantes de la programación Java y su adaptación a Android 1. Entorno de programación en java 2. Variables y tipos de datos 3. Operaciones y operadores 4. Clases y

Más detalles

Análisis de Lenguajes de Programación II El Inicio

Análisis de Lenguajes de Programación II El Inicio Análisis de II El Inicio 08/08/2011 Docentes de la Materia Cecilia Manzino Pablo Buiras Lucio Nardelli Adscripto: Martín Ceresa (mauro@fceia.unr.edu.ar) (ceciliam@fceia.unr.edu.ar) (pablobuiras@gmail.com)

Más detalles

Compilación y ejecución de programas en Java.

Compilación y ejecución de programas en Java. Java Virtual Machine La mayoría de los lenguajes de programación se caracterizan por ser interpretados o compilados, lo que determina la manera en como serán ejecutados en una computadora. Java tiene la

Más detalles

Tema 1: y el lenguaje Java 1.Programación orientada a objetos 2.El lenguaje Java 3.Compilación, bytecode y JVMs 4.Entornos de desarrollo Java 5.Java vs otros lenguajes OO Programación orientada a objetos

Más detalles

HERRAMIENTAS DE DESARROLLO

HERRAMIENTAS DE DESARROLLO CONTENIDO 3.1 Estudio de herramientas para el desarrollo de Servicios Web 3.2 Compatibilidad de Herramientas integradas a.net 3.3 Ventajas y desventajas de la integración de código.net MONICA CECILIA GALLEGOS

Más detalles

Juan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN

Juan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN UNICIENCIA 24 pp. 83-89 2010 IMPLEMENTACIÓN DE UN SERVIDOR FTP UTILIZANDO EL MODELO CLIENTE/SERVIDOR MEDIANTE EL USO DE SOCKETS EN LENGUAJE C UNIX CON EL FIN DE MEJORAR LOS TIEMPOS DE RESPUESTA EN LA RED

Más detalles

IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES

IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES IMPLEMENTACION DE UN INTERPRETE SQL EN MANAGED CODE PARA DISPOSITIVOS MOVILES Sebastián Mariano Salomón Luis Rogero Lucero Daniel Alejandro Giménez Gabriel Mamani Federico Martín Pascual Ing. Cesar Ignacio

Más detalles

SOR -::- Prácticas -::- Curso 05/06. RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX.

SOR -::- Prácticas -::- Curso 05/06. RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX. RPC RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX. El RPC es una interfaz de programación de aplicación (API) disponible para el desarrollo de

Más detalles

Introducción a Java. Diseño y Programación Orientados a Objetos 1

Introducción a Java. Diseño y Programación Orientados a Objetos 1 Introducción a Java Diseño y Programación Orientados a Objetos 1 Java: Motivaciones de su origen Deja atrás características problemáticas : Punteros Asignación de memoria (malloc) Herencia múltiple (se

Más detalles

Práctica 3: Programación con subrutinas

Práctica 3: Programación con subrutinas Práctica 3: Programación con subrutinas 3.1 Objetivos El objetivo de esta práctica es estudiar el soporte del ensamblador del ARM para la gestión de subrutinas, para lo que resulta necesario familiarizarse

Más detalles

Objetos Distribuidos - Componentes. Middleware

Objetos Distribuidos - Componentes. Middleware Objetos Distribuidos - Componentes Middleware Middleware Component Oriented Development Arquitecturas 3 Tier Middleware es el software que: conecta y comunica los componentes de una aplicacion distribuida

Más detalles

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012 Prácticas: Introducción a la programación en Java Informática (1º Ingeniería Civil) Índice Introducción a Java y al entorno de desarrollo NetBeans Estructura de un programa Tipos de datos Operadores Sentencias

Más detalles

2008 Series Hemodialysis Machine Operator s Manuals Addendum for Concentrate Connection

2008 Series Hemodialysis Machine Operator s Manuals Addendum for Concentrate Connection 2008 Series Hemodialysis Machine Operator s Manuals Addendum for Concentrate Connection Caution: Federal (US) law restricts this device to sale only by or on the order of a physician. This is an addendum

Más detalles

C#.NET. Capítulo 1. Este libro está dirigido a todas aquellas. personas que desean aprender. el lenguaje de programación C# y tienen

C#.NET. Capítulo 1. Este libro está dirigido a todas aquellas. personas que desean aprender. el lenguaje de programación C# y tienen C# Capítulo 1 C#.NET Este libro está dirigido a todas aquellas personas que desean aprender el lenguaje de programación C# y tienen conocimientos básicos de programación o no tienen ninguna experiencia

Más detalles

Visual Studio 2008 es el conjunto de herramientas de

Visual Studio 2008 es el conjunto de herramientas de 1. VISUAL STUDIO 2008 Visual Studio 2008 es el conjunto de herramientas de desarrollo y programación creado por Microsoft tanto para aplicaciones Windows como aplicaciones web. La aparición de Visual Studio

Más detalles

150Mbps Micro Wireless N USB Adapter

150Mbps Micro Wireless N USB Adapter 150Mbps Micro Wireless N USB Adapter TEW-648UBM ŸGuía de instalación rápida (1) ŸTroubleshooting (5) 1.11 1. Antes de iniciar Contenidos del paquete ŸTEW-648UBM ŸCD-ROM (herramienta y guía del usuario)

Más detalles

Connection from School to Home Science Grade 5 Unit 1 Living Systems

Connection from School to Home Science Grade 5 Unit 1 Living Systems Connection from School to Home Science Grade 5 Unit 1 Living Systems Here is an activity to help your child understand human body systems. Here is what you do: 1. Look at the pictures of the systems that

Más detalles

Procesadores de lenguaje Tema 1: Introducción a los compiladores

Procesadores de lenguaje Tema 1: Introducción a los compiladores Procesadores de lenguaje Tema 1 Introducción a los compiladores Salvador Sánchez, Daniel Rodríguez Departamento de Ciencias de la Computación Universidad de Alcalá Resumen del tema Traductores Estructura

Más detalles