Free Essay

Hola Mundo

In: Business and Management

Submitted By k2luis
Words 3261
Pages 14
Introducción a compiladores

Universidad Autónoma de Aguascalientes Prof. Eduardo Serna-Pérez Correo-e: eduardo.serna@gmail.com

Introducción a compiladores
• • • • • • • Definición de compilador Historia de los compiladores Tipos de traductores Fases de un compilador Agrupamiento de fases Compiladores cruzados Herramientas automáticas

Definición de compilador
• Los compiladores son programas de computadora que traducen de un lenguaje a otro. Un compilador toma como su entrada un programa escrito en lenguaje fuente y produce un programa equivalente escrito en lenguaje objeto.

Lenguaje Fuente

Traductor

Lenguaje Destino

Mensajes de error

Definición de compilador
• Generalmente al lenguaje fuente se le asocia como lenguaje de alto nivel, mientras al lenguaje objeto se el conoce como código objeto (código de maquina) escrito específicamente para una maquina objeto. A lo largo del proceso de traducción el compilador debe informar la presencia de errores en el lenguaje fuente. • Diseñar y desarrollar un compilador, no es tarea fácil, y quizás pocos profesionales de la computación se vean involucrados en esta tarea. • No obstante, los compiladores se utilizan en casi todas las formas de la computación y cualquiera involucrado en esta área debería conocer la organización y el funcionamiento básico de un compilador.

Historia de los Compiladores
• A finales de la década de 1940, comenzaron a construirse las primeras computadoras digitales y fue necesario implementar un lenguaje capas de realizar los cálculos, es aquí donde aparece el lenguaje de maquina que representaba secuencias de códigos numéricos:
C7 06 0000 0002 (instrucción que mueve el número dos a la ubicación 0000)

• Desafortunadamente este lenguaje era tedioso de seguir y complicado de mantener, por lo que esta forma de codificación fue reemplazada por el lenguaje ensamblador, en el cual las instrucciones y las localidades de memoria son formas simbólicas. Un ensamblador traduce de los códigos simbólicos a lenguaje de maquina. Aún con esta mejora, el lenguaje ensamblador sigue siendo demasiado difícil de mantener:
MOV X, 2 (instrucción en ensamblador equivalente a la anterior)

Historia de los Compiladores
• En este punto se presenta la necesidad de lenguajes que permitan escribir los programas de forma concisa, similar a una notación matemática, y que se pudieran traducir a código ejecutable para una máquina dada: X=2 • En 1950, G. M. Hooper acuña el termino compilador y aparecen los primeros trabajos sobre compiladores relacionados con la traducción de formulas aritméticas a código de máquina. John Backus lideró un grupo de trabajo en IBM para realizar de un traductor de código máquina a fórmulas matemáticas. Resultando con gran éxito: la especificación de un lenguaje de alto nivel (FORTRAN, FORmule TRANslation) Trabajaron 18 personas durante mas de un año en el proyecto. Fúe un compilador hecho ad-hoc (a puro corazón), pues no existía una teoría formal, sino que se iban resolviendo las construcciones una a una, para cada situación particular.





Historia de los Compiladores
• Noam Chomsky comienza sus estudios sobre la estructura del lenguaje natural. Sus estudios lo condujeron a la clasificación de los lenguajes de acuerdo a una jerarquía de sus gramáticas, además sus estudios sobre los algoritmos de reconocimiento derivaron en una automatización del proceso de traducción mas eficiente. 1960, se diseña el lenguaje LISP. En un principio, el código LISP se traducía manualmente a código máquina. Se escribió en LISP un programa capaz de interpretar programas LISP, que se tradujo manualmente a código de máquina, construyendo de este modo un intérprete ejecutable de LISP. Knuth desarrolla la mayoría de las técnicas de análisis sintáctico. 1970, se presentan los mayores avances en el área de lenguajes de programación. Aparecen los primeros programas que automatizan los procesos de análisis léxico y sintáctico. Surgiendo la llamada Torre de Babel debido a la proliferación de la teoría para la construcción de compiladores.



• • •

Historia de los Compiladores
• • Niklaus Wirth, diseña Pascal, pensado para la enseñanza. Wirth propone el concepto de representación intermedia de código, separando el proceso de traducción en dos fases: el front-end encargada de analizar el programa fuente (operaciones dependientes sólo del lenguaje fuente) y el back-end encargada de generar el código para la máquina objeto. 1980, comienzan a proliferar las técnicas de mejoramiento de código (optimización), se consolida y prolifera el concepto de asignación y liberación de memoria dinámica. La programación orientada a objetos es extensamente utilizada y madura. 1990, los lenguajes de programación y compiladores son muy similares a lo que tenemos actualmente, surgen los ambientes de desarrollo, los lenguajes interpretados comienza a ganar terreno en aplicaciones de Internet y el código intermedio se vuelve a poner de moda.





Tipos de Traductores
• Compilador Programa que convierte un archivo de lenguaje de programación a su correspondiente en lenguaje objeto. Siendo en realidad es un tipo especifico de traductor. Ensamblador Programa que convierte de lenguaje mnemonico a lenguaje máquina, generando un archivo con el código objeto equivalente al código fuente completo, junto con información necesaria para el montaje. Formadores de Texto toman como entrada una cadena de caracteres que incluye el texto a componer y órdenes (TAG´s) para indicar capítulos, secciones, párrafos, enumeraciones, figuras, formulas, tablas, etc. (Latex, Html). Interpretes Ejecutan las instrucciones del programa según se vallan presentando. Necesitan menos memoria, pero son más lentos que los compiladores (LISP, Prolog). Históricamente, se pusieron de moda en los primeros años porque los recursos de memoria eran escasos. Permiten añadir código dinámicamente durante la ejecución.







Tipos de Traductores
• Lenguajes de programación interpretados Están diseñados para ser ejecutados por medio de interprete a partir de un código pre-compilado. • Por ejemplo Java es compilado para posteriormente ser ejecutado por un traductor del lenguaje objeto denominado Java Virtual Machine. • Mientas que los lenguajes de la plataforma .NET compilan en una forma intermedia (CIL), que posteriormente puede ser recompilado a código de maquina nativo o interpretado por una maquina virtual. • Lenguajes como Python y Java emplean representaciones intermedias de código para ser ejecutadas, mientras que lenguajes como Ruby emplean un árbol de sintaxis abstracta como representación intermedia.

Tipos de Traductores
Ventajas del compilador • Se compila una vez, se ejecuta n-veces • En bucles, la compilación genera código equivalente al bucle pero un interprete se traduce tantas veces una línea como veces se repite el bucle • El compilador tiene una visión global del programa, por lo que la información de mensajes de errores es más detallada. Ventajas del intérprete • Un interprete necesita menos memoria que un compilador • Permite una mayor interactividad con el código en tiempo de desarrollo.

Tipos de Traductores
Ventajas del compilador - intérprete • Proporcionan algo de flexibilidad extra • Son independientes de la plataforma en la que se ejecuten • Permiten un mecanismo de reflexión • Tipos de datos altamente dinámicos • Gestión de memoria dinámico • Fácilmente depurables y reducidos en tamaño

Fases de un Compilador
• Un compilador se compone internamente de varias etapas, o fases, que realizan operaciones lógicas. • Es útil pensar en estas fases como piezas separadas dentro del compilador, y pueden en realidad escribirse como operaciones codificadas separadamente aunque en la práctica a menudo se integran. • A continuación describiremos brevemente cada un de ellas: – Análisis Léxico – Análisis Sintáctico – Análisis Semántico – Generación y Optimización de código intermedio – Generación de código objeto

Fases de Compilación
Código fuente Fase de análisis Análisis Léxico Componentes léxicos / Tokens Análisis Sintáctico Árbol sintáctico Análisis Semántico Árbol sintáctico con anotaciones Generación / Optimización de código intermedio Código intermedio Generación / Optimización de código objeto Fase de síntesis Código objeto Tabla de símbolos

Gestor de errores

Fases de Compilación
• Analizador léxico: lee la secuencia de caracteres de izquierda a derecha del programa fuente y agrupa las secuencias de caracteres en unidades con significado propio (componentes léxicos o “tokens” en ingles). Las palabras clave, identificadores, operadores, constantes numéricas, signos de puntuación como separadores de sentencias, llaves, paréntesis, etc. , son diversas clasificaciones de componentes léxicos. La estructura léxica la modelaremos mediante expresiones regulares. Por ejemplo la siguiente instrucción en código C:
Genera los siguientes componentes léxicos: a [ indice ] = 4 + 2 ;



• •

a[indice] = 4 + 2;

identificador corchete de apertura Identificador corchete de cierre operador de asignación numero operador suma numero punto y coma

Fases de Compilación
• Análisis sintáctico: determina si la secuencia de componentes léxicos sigue la sintaxis del lenguaje y obtiene la estructura jerárquica del programa en forma de árbol, donde los nodos son las construcciones de alto nivel del lenguaje. • Se determinan las relaciones estructurales entre los componentes léxicos, esto es semejante a realizar el análisis gramatical sobre una frase en lenguaje natural. La estructura sintáctica la definiremos mediante las gramáticas independientes del contexto. • Como ejemplo consideremos la línea de código C anterior. Representa un elemento estructural denominado expresión, la cual es una expresión de asignación compuesta de una expresión de subíndice a la izquierda y una expresión aritmética a la derecha (árbol de análisis gramatical).

Fases de Compilación expresión expresión asignación expresión expresión subíndice = expresión expresión aditiva

expresión identificador a

[

expresión identificador indice

]

expresión numero 4

+

expresión numero 2

Fases de Compilación
• Los nodos internos del árbol de análisis gramatical están etiquetados con los nombres de las estructuras que representan y las hojas del árbol representan la secuencia de tokens. Los árboles de análisis gramatical son útiles para visualizar la sintaxis de un programa pero no es eficaz en la representación de esa estructura. Los analizadores sintácticos tienden a generar un árbol sintáctico (una simplificación de la información contenida en un árbol de análisis gramatical). Para nuestro ejemplo observamos que en el árbol sintáctico se han eliminado nodos, esto debido a que sabiendo la naturaleza de la expresión, ya no es necesario contar con ciertos tokens.
= [] +





identificador a

identificador indice

numero 4

numero 2

Fases de Compilación
• Análisis semántico: realiza las comprobaciones necesarias sobre el árbol sintáctico para determinar el correcto significado del programa. • Las tareas básicas a realizar son: La verificación e inferencia de tipos en asignaciones y expresiones, la declaración del tipo de variables y funciones antes de su uso, el correcto uso de operadores, el ámbito de las variables y la correcta llamada a funciones. • Nos limitaremos al análisis semántico estático (en tiempo de compilación), donde es necesario hacer uso de la Tabla de símbolos, como estructura de datos para almacenar información sobre los identificadores que van surgiendo a lo largo del programa. El análisis semántico suele agregar atributos (como tipos de datos) a la estructura del árbol semántico.

Fases de Compilación
• El analizador semántico registrara el árbol sintáctico con los tipos de datos de las sub-expresiones y verificara que la asignación tiene sentido para los tipos, en caso contrario mandara un mensaje de error en correspondencia de tipos. De esta forma se obtiene un árbol sintáctico con anotaciones. • Siguiendo con el ejemplo de la expresión en C, el analizador semántico extrae la información de que a es una arreglo de valores enteros y que indice es una variable entera.
= [] Tipo : entero a puntero a enteros Tipo: entero indice Tipo : entero 4 constante Tipo : entero + Tipo : entero 2 constante Tipo : entero

Fases de Compilación
• Generación y optimización de código intermedio: la optimización consiste en la calibración del árbol sintáctico donde ya no aparecen construcciones de alto nivel. Generando un código mejorado, ya no estructurado, más fácil de traducir directamente a código ensamblador o máquina, compuesto de un código de tres direcciones (cada instrucción tiene un operador, y la dirección de dos operándoos y un lugar donde guardar el resultado), también conocida como código intermedio. • La etapa de optimización sólo dependen del lenguaje fuente (y no de la máquina), se busca principalmente: eliminar sub-expresiones comunes, identificar código muerto, sustituir operaciones aritméticas, cálculo previo de constantes, variables de inducción, propagación de copias o código inalcanzable. Suele ser una fase lenta y compleja.

Fases de Compilación
• Siguiendo con el ejemplo de la expresión de asignación, el generador/optimizador, colapsara la expresión aditiva generando una constante 6. • En ocasiones estas adecuaciones pueden realizarse en el árbol directamente, pero generalmente resulta mas fácil hacerlo de manera lineal en una estructura de código de tres direcciones (cuadruplos). código optimizado a[indice] = 6 código intermedio t1 = indice * elem_size(a) t2 = &a + t1 *t3 = 6

Fases de Compilación
• Generación de código objeto: toma como entrada la representación intermedia y genera el código objeto. La optimización depende de la máquina, es necesario conocer el conjunto de instrucciones, la representación de los datos (número de bytes), modos de direccionamiento, número y propósito de registros, jerarquía de memoria, encauzamientos, etc. Suelen implementarse a mano, y son complejos porque la generación de un buen código objeto requiere la consideración de muchos casos particulares. También se está investigando la creación de generadores de código automáticos. La idea es automáticamente hacer corresponder una representación intermedia a plantillas de instrucciones objeto. Permitiendo generar fácilmente el código objeto para una nueva máquina objeto, cambiando el conjunto de plantillas. Por ejemplo GNU GCC posee plantillas para mas de 10 arquitecturas más habituales de ordenadores.





Fases de Compilación
• Finalmente para nuestro ejemplo debemos decidir ahora cuantos enteros se almacenarán para generar el código del arreglo, para este ejemplo emplearemos modos de direccionamiento propios de C, generando el código objeto en un lenguaje ensamblador hipotético.

MOV MOV ADD MOV

R0, t1 R1, &a R1, R0 *R1, 6

;; valor de index -> ;; dirección de a -> R1 ;; sumar R0 a R1 ;; constante 6 -> dirección en R1

Fases de Compilación
• Tabla de Símbolos: es una estructura tipo diccionario con operaciones de inserción, borrado y búsqueda, que almacena información sobre los símbolos que van apareciendo a lo largo del programa como son:
– los identificadores (variables y funciones) – Etiquetas – tipos definidos por el usuario (arreglos, registros, etc.)



Además almacena el tipo de dato, método de paso de parámetros, tipo de retorno y de argumentos de una función, el ámbito de referencia de identificadores y la dirección de memoria. Interacciona tanto con el analizador léxico, sintáctico y semántico que introducen información conforme se procesa la entrada. La fase de generación de código y optimización también la usan.

Fases de Compilación
• Tabla de Símbolos: es una estructura tipo diccionario con operaciones de inserción, borrado y búsqueda, que almacena información sobre los símbolos que van apareciendo a lo largo del programa como son:
– los identificadores (variables y funciones) – Etiquetas – tipos definidos por el usuario (arreglos, registros, etc.)



Además almacena el tipo de dato, método de paso de parámetros, tipo de retorno y de argumentos de una función, el ámbito de referencia de identificadores y la dirección de memoria. Interacciona tanto con el analizador léxico, sintáctico y semántico que introducen información conforme se procesa la entrada. La fase de generación de código y optimización también la usan.

Fases de Compilación
• Gestor de errores: detecta e informa de errores que se produzcan durante la fase de análisis. Debe generar mensajes significativos y reanudar la traducción. Encuentra errores:
– En tiempo de compilación: errores léxicos (ortográficos), sintácticos (construcciones incorrectas) y semánticos (p.ej. errores de tipo) – En tiempo de ejecución: direccionamiento de vectores fuera de rango, divisiones por cero, etc. – De especificación/diseño: compilan correctamente pero no realizan lo que el programador desea.





Se trataran sólo errores estáticos (en tiempo de compilación). Respecto a los errores en tiempo de ejecución, es necesario que el traductor genere código para la comprobación de errores específicos, su adecuado tratamiento y los mecanismos de tratamiento de excepciones para que el programa se continúe ejecutando.

Fases de Compilación
• La mayoría de los compiladores son dirigidos por la sintaxis, es decir, el proceso de traducción es dirigido por el analizador sintáctico. El análisis sintáctico genera la estructura del programa fuente a través de tokens. El análisis semántico proporcionan el significado del programa basándose de la estructura del árbol de análisis sintáctico. Las fases de análisis léxico y análisis sintáctico se pueden automatizar de manera relativamente fácil, las verdaderas dificultades en la construcción de compiladores son el análisis semántico, la generación y la optimización de código. El número de pasadas, es decir, el número de veces que hay que analizar el código fuente, esta en función del grado de optimización. Típicamente se realiza una pasada para realizar el análisis léxico y sintáctico, otra pasada para el análisis semántico y optimización del lenguaje intermedio y una tercera pasada para generación de código y optimizaciones dependientes de la máquina.





Estructuras de datos Empleadas
• Componentes léxicos: estructura tipo registro con dos campos, componente léxico representado por una enumeración y el lexema con una cadena de caracteres. Árbol sintáctico: es una representación de árbol de la estructura sintáctica abstracta del código fuente escrito en cierto lenguaje de programación. Cada nodo del árbol denota una construcción que ocurre en el código fuente. Tabla de Símbolos: contiene información sobre los identificadores, funciones, variables, ámbito de referencia de identificadores, constantes numéricas y literales, tipos de datos, o incluso la dirección de memoria (tabla Hash). Código intermedio: se implementa como una lista de registros, donde cada registro tiene cuatro campos (operador, la dirección de los operándoos y del resultado). Es eficiente para mover código para el proceso de optimización posterior.







Agrupamiento de fases
• En el modelo de análisis y síntesis las operaciones del compilador que analizan el programa fuente y calculan sus propiedades se clasifican como análisis del compilador, mientras que las operaciones involucradas con la traducción a código objeto se conoce como síntesis del compilador. Etapa de análisis: Análisis léxico Análisis sintáctico Análisis semántica Etapa de síntesis: Optimización y generación de código intermedio Generación de código objeto • La intención de separa las etapas de análisis y síntesis, es principalmente para realizar mantenimientos y actualizaciones eficientes.

Compilador Cruzado
• Es un compilador que genera código ejecutable para una plataforma distinta a aquella en la que se ejecuta • Es muy común construir un compilador en una plataforma Linux, empleando un lenguaje ANSI C++ para una sintaxis tipo Basic que genere código objeto para Windows

ANSI C++ Linux

Basic ANSI C++ Linux Windows Windows Windows Basic

Compilador Cruzado
• Existe también la variante que implica un compilador para maquina abstracta, que facilita la transportabilidad de compiladores de un lenguaje fuente a varias maquina objeto. La construcción de este tipo de compiladores se realiza en dos etapas: – front-end o etapa inicial: Las operaciones dependen sólo del lenguaje fuente. Incluye: análisis léxico, sintáctico y semántico, la creación de la Tabla de Símbolos, generación de código intermedio y algunas optimizaciones. Además, del manejo de errores de cada fase. – back-end o etapa final: Las operaciones dependen sólo de la máquina objeto. Incluye: generación de código objeto y optimizaciones dependientes de la máquina. Depende de los modos de direccionamiento, conjunto de instrucciones de la máquina, número de registros, arquitectura de la máquina, sistema operativo, etc.

Compilador Cruzado
Principal ventaja de este método: • Si se cambia de lenguaje fuente, entonces se reescribe el front-end. Si se cambia la máquina objeto, entonces se reescribe el back-end. Si aparece una nueva arquitectura, basta con desarrollar un traductor del lenguaje intermedio a esa nueva máquina.

Código fuente

Front-End

Código intermedio

Back-End

Código objeto

Compilador Cruzado

Herramientas Automáticas
• Son programas de ayuda en el proceso de escritura de compiladores: sistemas generadores de traductores. También se les conoce como compiler writing tools, compiler generators, compiler-compilers. A continuación mencionaremos los mas conocidos. • Generadores de analizadores léxicos: a partir de una especificación basada en expresiones regulares. Lex / Flex. • Generadores de analizadores sintácticos: a partir de una entrada que es la gramática independiente del contexto que representa la estructura sintáctica del lenguaje. Yacc / Bison. • Generadores de código: con rutinas para la generación del árbol de análisis sintáctico y para su recorrido. En cada nodo se especifican las acciones para su traducción a código objeto correspondiente.

Bibliografía • Aho, A.V., Sethi, R., Ullman, J.D. (1990), Compiladores: principios, técnicas y herramientas, capitulo 1, páginas: 1- 25, 743-747. • Louden, K.C. (1997), Construcción de Compiladores: Principios y práctica, capitulo 1, páginas: 1- 27.

Similar Documents

Free Essay

No Se

...de Hilton Hotel Corporation es "Ser por excelencia de la compañía hotelera del mundo - la primera opción de los clientes, miembros del equipo, y los propietarios por igual" (Hiltonworldwide.com). La interpretación de la declaración de la misión se puede analizar para entender el negocio principal de Hilton. A continuación se presentan los elementos de su negocio principal: 1. Ser el líder en la compañía global de hospitalidad - Hilton trabaja agresivamente para obtener una ventaja competitiva con respecto a otros hoteles de la competencia con el fin de mantener su imagen y reputación mundial y ser la primera opción de las personas que viajan por todo el mundo por negocios o por placer. 2. La intención de Blackstone para hacer crecer el negocio y marcas a nivel mundial - Después de la adquisición de Hilton por el grupo Blackstone, la intención principal del grupo es invertir en el Hilton y otras marcas de todo el mundo que les ayudará a hacer crecer el negocio en beneficio de las partes interesadas y, finalmente, convertirse en un "premier en el negocio global de la hospitalidad". 3. Mejorar la experiencia del cliente - Hilton cree en proporcionar la experiencia mejor que la última vez que los invitados los visitó, por el cuidado de las preferencias de los huéspedes y lo que el cliente se espera de ellos. 4. La consistencia de los Servicios - Hilton cree que allí donde el cliente viaja por el mundo de los servicios prestados deben ser coherentes. Trabajan en la minimización de...

Words: 381 - Pages: 2

Free Essay

Paper X

...PROGRAMA DE HABILIDADES DIRECTIVAS (PHD) DEL GLOBAL MBA PRACTICA PERSONAL DE APRENDIZAJE Nº1 Estimadas/os Alumnas/os: ¡Bienvenidos a la primera Práctica Personal de Aprendizaje de nuestro Programa de Habilidades Directivas del Global MBA! Como ustedes ya saben, el objetivo principal de este programa es que Uds. expandan sus niveles de conciencia: de sí mismos y del mundo en que les toca vivir. Para ello, por un lado, les damos a leer textos que creemos útiles para fortalecer vuestro conocimiento y desarrollo cognitivo. Por otro, les pedimos que realicen actividades recurrentes – a las que denominamos prácticas personales de aprendizaje (PPA)destinadas a producir los cambios de sentido hermenéutico – vulgo “caídas de chaucha”– que tanto hoy necesitamos para diseñar y gestionar mejor nuestras vidas. La recurrencia en un conjunto de prácticas, clave para que las “caídas de chaucha” ocurran. A ello los invitamos en esta primera Práctica Personal de Aprendizaje, a seguir repitiendo ciertas prácticas básicas. En el Programa de Habilidades Directivas del Global MBA: “No hay materia que aprender. Sólo una conciencia que expandir. Y un cuerpo que flexibilizar” Les solicitamos que lean esta introducción y los enunciados de las 5 actividades que a continuación se señalan, al menos dos veces, muy focalizadamente, antes de iniciar el trabajo. Y luego realicen un plan de trabajo de manera que puedan avanzar gradualmente, idealmente todos los días, para maximizar y hacer de...

Words: 1559 - Pages: 7

Free Essay

Obesity

...Discurso: LA OBESIDAD Buenos días profesora y compañeros mi nombre es Gabriela Ahumada y hoy vengo a hablarles sobre la obesidad. ¿Sabían ustedes que Chile está entre los 10 países con más sobrepeso del mundo? El sitio web www.visual.ly realizó un mapa global de la obesidad usando como parámetro el Indice de Masa Corporal y lo lamentable es que Chile ocupa el puesto número nueve, con IMC promedio de 27,8. Cabe señalar , que según la Organización mundial de la salud (OMS) una persona normal tiene un IMC entre 18 y 24,9. Entre 25 y 29,9 es sobrepeso, y sobre 30, obesidad. Además, según la última Encuesta Nacional de Salud realizada el 2010, existe un 25% de obesidad en la población adulta y el 67% de la población presenta exceso de peso. Mientras que entre 2006 y 2010 la diabetes pasó de 6,3 personas por cada cien habitantes a 9,4, y esto se debe fundamentalmente al aumento de la obesidad. En cuanto al sedentarismo, también alcanza cifras preocupantes llegando al 80%. Y a esto sumémosle el peor de los datos: cada 60 minutos muere una persona por obesidad y sobrepeso. Entonces, la pregunta es: ¿Qué estamos esperando? ¿Qué estas cifras sigan aumentando?¿Qué cada día más personas mueran a causa de la obesidad?. Obviamente que no, llego el momento de actuar. Hoy las personas no asocian la muerte con la obesidad. Pero la realidad es que si las personas fallecen por infartos, esto se debe principalmente a la obesidad. Es por esto, que ha llegado la hora como país...

Words: 381 - Pages: 2

Free Essay

Ensayo

...Enager Industries Inc. es una empresa la cual esta dedicada al rubro netamente industrial donde su funcionalidad se desarrolla en tres subdivisiones que complementan sus procesos; en primera instancia esta el área de productos para el consumidor, que es la más antigua y se encarga de lineamientos tales como el diseñar, fabricar y distribuir productos para el hogar. Por otro lado esta la división se productos industriales y la división más reciente que es la de servicios profesionales. No obstante, la compañía planteó una manera de globalizar todo el proceso de las diferentes subdivisiones, de tal forma que aunque cada sector se maneja de manera independiente en cuestión a espacios, se le adjudico el incorporar cada una de las ganancias de cada división y de esa manera sacar el rendimiento total de la empresa. Sin embargo, es una cuestión que se desarrolló por la propuesta del área financiera (Henry Hubbard) que propició una estrategia en el que únicamente las proyecciones con un rendimiento del 15% podrían ser tomadas en cuenta (cosa que se tomaba en cuenta de manera global) para que se pudiera aprobar la acción. Tal es el caso de Sarah MacNeil, gerente de la división de productos para el consumidor que tenía contemplado una inversión que adjudicaba cada uno de los detalles para conllevar su procesamiento, pero se obstruyó por Hubbard al no cubrir sus expectativas de manera globales para la compañía. Concluyendo de tal forma que al tomarse las medidas de previsión...

Words: 906 - Pages: 4

Free Essay

Uso Adobe Photoshp Cs5

...NIIF Debido a la globalización presente en todo el mundo las ya conocidas NIC (normas internacionales de auditoria), han tenido que someterse a una reingería técnica para de esta forma adaptarse con las cambiantes corrientes tecnológicas, políticas, para de esta forma poder expresar de manera mas clara la realidad actual de una empresa dada su complejidad. A esta nueva evolución o mejoramiento de las normas se las llama NIIF las cuales no remplazan a las NIC sino que las contienen y expresan de una manera más eficiente los principios contables El 20/11/2008, la Superintendencia de Compañías establece el CRONOGRAMA de aplicación de las NIIFs (Res. 08 - RO 498 - 31/12/2008). Se establecen 3 grupos para su obligatoriedad: GRUPO I.-  01/01/2010 Las Compañías: •           Regulados por la Ley Mercado Valores •           Las Auditoras Externas GRUPO II.-  01/01/2011 Las Compañías: •           Con Activos desde 4 mil millones (31/12/07) •           Los Holding; Economía Mixta; Sucursales Extranjeras. GRUPO III  01/01/2012 •          Todas las demás Compañías no consideradas en los grupos anteriores Se establece para cada grupo de empresas como año de transición el inmediato anterior al de su implementación. Deben elaborar hasta el 31 de marzo de cada año: 1.       Plan de capacitación 2.       Plan de Implementación 3.       Diagnóstico de los impactos 4.       Conciliaciones del Estado Resultados, bajo NEC 5.       Conciliaciones del patrimonio neto...

Words: 474 - Pages: 2

Free Essay

Design Research

...Desing Research Fue originalmente construida como investigación del proceso del diseño. Vamos a tener problemas * Local * Regional * Global El concepto conserva un sentido general, destinada a comprender y mejorar los procesos de diseño y practicas de manera bastante amplia. Surgió como un campo reconocible del estudio en la década de los 1960, inicialmente marcado por una conferencia de métodos para el diseño John Christopher Jones – Iniciadores de la conferencia de 1962. Fundo un laboratorio de investigación para el diseño en la Universidad de Manchester La sociedad de investigación para el diseño siempre ha declarado su objetivo como: “promover el estudio y la investigación del diseño en todos los ámbitos.” Los orígenes de los métodos de diseño y de investigación aparecen después de la Segunda Guerra Mundial, como métodos de investigación operativa y la gestión de la toma de decisiones técnicas y de creatividad. Bruce Archer – El desafío más fundamental a las ideas convencionales sobre el diseño ha sido el apoyo cada vez mas por métodos sistemáticos de resolución de problemas, tomados de las técnicas informativas y e la teoría de gestión para la evaluación de los problemas de diseño el desarrollo de soluciones de diseño Herbert A. Simon – Ciencia del diseño. Un cuerpo de intelectuales duro, analítico, en parte formalizable, en parte empírica, enseñable doctrina sobre el proceso del diseño. Los primeros trabajos fueron principalmente...

Words: 292 - Pages: 2

Free Essay

Ingeniero

...NetLetter 09/2009 ¡ De no: Brasil! ti s EL WORLD LP GAS FORUM EN RIO Y UNA PLANTA DE LLENADO EN SAO PAULO ¡Venga a visitar una de las más grandes plantas de llenado de GLP del Brasil! Siraga estará presente en el World LP Gas Forum : ¡Venga a encontrar nuestra gente en Rio ! Expondremos en los stands 37-38 &47-48 y le presentaremos nuestras últimas innovaciónes. Para recibir una invitación, no duda en contactar : Virginie Sterling Tel: + 33 (0) 2 54  4  0  7 8 5 1 E-mail  virginie.sterling@siraga.com : A mm ¿Cuándo tendrá lugar la visita? La visita se desarrollará el lunes 5 de octubre de 2009 entre las 9.30 h y las 13.30 h. ¡Puede prever pasar el día entero con nosotros ! mm ¿Cómo ir al sitio ? La planta se situa en Capuava, en la región metropolitana de São Paulo. Por consiguiente, al momento de la reserva de su vuelo para la exposición de Rio, es probable que Usted tendrá que cambiar de avión a São Paolo. ¡Es la ocasión para venir a visitar esta planta de llenado! El transporte en autobús será organizado por Siraga entre el centro de la ciudad de Sao Paolo y la planta en Capuava. Todos los detalles le serán transmitidos a tiempo. ¡Después de la visita, podrá aprovechar una agradable comida con nosotros en un restaurante brasileño tradicional! mm ¿Cómo registrarse y obtener más informaciones ? Si está interesado, por favor contactar con Virginie Sterling a la dirección siguiente: virginie.sterling@siraga...

Words: 920 - Pages: 4

Free Essay

Russian Standard

...Caso Russian Standard Vodka 1) Entendiendo las causas del valor de la marca: ¿Cuáles son las causas del valor de la marca Russian Standard? ¿Porqué fue la marca capaz de conseguir un suceso tan rápido en Rusia? La firma logró, con el asesoramiento de las principales firmas de marketing mundiales y a través de una intensa investigación de mercado, conocer el cliente Ruso y hacerlo sentir identificado con la marca. Logró transmitir el concepto de que Russian Standard era representativo de las tradiciones rusas al más alto nivel. Dio a conocer la marca, a través de diversos medios de comunicación y utilizando, por primera vez en el mercado ruso, herramientas de marketing, tales como publicaciones en revistas de primer nivel. Su estrategia de posicionamiento de la marca se dividió en dos frentes: - Presencia en la vida nocturna, en los mejores restaurants, nigthclubs y bares, frecuentados por personajes formadores de opinión. Fiestas semanales en nightclubs sponsoreadas por la marca, donde se buscaba fomentar la degustación del producto. Se desarrolló un programa exclusivo para restaurants, logrando en los mejores de Moscú, la presencia en su menú en forma de co-branding con el caviar. - La marca negoció espacios significativos en las góndolas de los principales supermercados, logrando efectivamente la comunicación visual de la marca. Además, desarrolló un programa de incentivos para motivar al personal de los mismos a promover la marca. El concepto de calidad de su...

Words: 481 - Pages: 2

Free Essay

Globalización

...DEFINICIÓN DE GLOBALIZACIÓN La globalización es un fenómeno moderno que puede ser analizado desde diversos ángulos. El término proviene del inglés globalization, donde global equivale a mundial. Por eso, hay quienes creen que el concepto más adecuado en castellano sería mundialización, derivado del vocablo francés mondialisation. Globalización A grandes rasgos, podría decirse que la globalización consiste en integración de las diversas sociedades internacionales en un único mercado capitalista mundial. Por eso, el fenómeno es defendido desde teorías económicas como el neoliberalismo y por entidades como el Fondo Monetario Internacional y el Banco Mundial. Los defensores de este fenómeno mundial exponen multitud de razones para estar a favor del mismo. Así, entre ellas se encuentra el que permite que la libertad se extienda, da lugar a más puestos de trabajo y a un crecimiento palpable de la economía, ha disminuido la mortandad infantil, ha aumentado la esperanza de vida, han avanzado los derechos de las mujeres y ha decrecido la explotación laboral infantil. Existen numerosas corrientes de pensamiento que creen que la globalización trasciende la cuestión económica y abarca a la cultura, por ejemplo. Como la relación de fuerzas entre las naciones más desarrolladas (como las europeas o los Estados Unidos) y las subdesarrolladas (como las latinoamericanas o africanas) es sumamente desigual, la globalización sin límites ni controles favorece el imperialismo cultural...

Words: 417 - Pages: 2

Free Essay

Mcdonald´S Case

...Cómo podría cualquier empresa cuantificar los efectos positivos en ventas y utilidades a partir de un valor de marca fortalecido a partir de iniciativas de sostenibilidad? Actualmente hay diferentes métodos para cuantificar las ganancias y el fortalecimiento que una marca obtiene como resultado de los programas de sostenibilidad que implementa; sin embargo, cada uno de estos métodos difiere entorno el tamaño, la ubicación y el objetivo que cada compañía tiene con los programas de sostenibilidad. Los métodos más usados por las compañías alrededor del mundo son dos: el método “Triple Bottom Line” y el sistema de evaluación de generadores de valor. El método “Triple Bottom Line”, o TBL, esta enfocado hacia la revisión de los resultados en la inversión sobre tres dimensiones, la economía, la sociedad y el ambiente, y como éstos se relacionan hacia el cumplimiento de los objetivos de sostenibilidad (Slaper & Hall, 2011). El alcance de cada dimensión depende de la naturaleza del negocio donde hace una diferenciación en aspectos como aquellos con ánimo y sin ánimo de lucro, el objetivo de la inversión, los límites geográficos, entre otras variables. Teniendo en cuenta la divergencia entre cada dimensión no hay una unidad de medida específica, la unidad de medida en determinada por cada compañía con base en las variables que evalúa. Dentro de las variables más evaluadas, están: * Dimensión económica: Evalúa variables que afectan el resultado final y el flujo de dinero de la...

Words: 1395 - Pages: 6

Free Essay

Puede La Globalizacion Beneficiar a Todo El Mundo?

...Going Global: Building an Inclusive World Economy ¿Puede la globalización beneficiar a todo el mundo? David Dollar, Alfaomega, 2005 Washington, DC, USA, 64p. 1. Me asignaron este libro porque de él me puede gustar…. (el título, el tipo de letra, las ilustraciones, el autor, etc.). Principalmente fue el título, y el tener un poco mas de conocimientos acerca de este tema, pues siento que es un tema que nunca quedara resagado y siempre hay algo mas que escuchar o leer. 2. A partir del título y de la ilustración de la portada, procura imaginar cuál será, a grandes rasgos el argumento del libro. Dar una perspectiva diferente de como y en que ámbitos exactamente puede beneficiar a cada región, ciudad, estado, país, continente. 3. En realidad, el argumento del libro es el siguiente (redacta un resumen del libro en dos hojas). La globalización tiene sus altibajos, por ello las naciones necesitan desarrollar políticas que respalden la seguridad social, la educación y la salud de toda la humanidad. La globalización es de todos y para todos, por ello es necesario que todas las naciones se acojan a este mercado global y para ello se han llevado a cabo políticas internacionales para fortalecer la globalización en beneficio de todos como: la de crear políticas comerciales en donde se definan las relaciones económicas entre países, reduciendo las tasas arancelarias; analizar el programa de ayudas de los países ricos hacia los países pobres, ya que ...

Words: 2163 - Pages: 9

Free Essay

Kombs Enginering

...¿Cómo puede innovar una Pyme? Manuel Ruiz Aldereguia Constantemente se está bombardeando a las PYMES para que innoven, puesto que sin innovación no hay futuro, y sin futuro no hay empresa, pero ¿Cómo puede innovar una Pyme?. Las pequeñas empresas se definen como aquellas que tienen entre 10 y 49 trabajadores, y las medianas entre 50 y 249. En los últimos años, debido a la tremenda reducción de personal que han sufrido las empresas, muchas han pasado de grandes a medias y de medias a pequeñas, quedándose con el personal justo para poder llevar a cabo su producción o sus servicios, lo cual les ha dejado en una situación que cualquier actividad que no sea productiva de forma directa e inmediata es difícil de abordar. Las Pymes, normalmente, no disponen de departamentos de marketing, de ventas, financieros, etc., si no que disponen de la persona, o de un equipo, de marketing, que además hacen otras cosas, del jefe de ventas y comerciales, del contable, …., y desde luego no disponen, normalmente, de un departamento de innovación, ni tan siquiera, excepto en casos excepcionales, de un departamento de I+D. Con lo cual nos seguimos preguntando, ¿Cómo puede innovar una Pyme?. El propietario, los socios, o algún directivo involucrado suelen llevar iniciativas de mejora, en productos, servicios, procesos, etc., que pueden ser consideradas como innovaciones, pero se encuentran después con la dificultad de implantar y poner en marcha dichas iniciativas en la empresa, pues normalmente el...

Words: 633 - Pages: 3

Free Essay

Case Study : Spanning the Globe

...gerentes de recursos humanos internacional tienen el reto de desarrollar prácticas que mantengan la congruencia con los planes estratégicos de las multinacionales, a la vez que puedan balancear los factores económicos, sociales, políticos y legales de los países anfitriones. 2. Las estrategias de gerencial global utilizadas en las empresas multinacionales van a ser variadas. Dichas diferencias tendrán un efecto en la variación de los procesos, prácticas, sistemas y estructuras que se desarrollen. 3. Las situaciones conflictivas suelen suceder cuando las multinacionales intentan maximizar su habilidad de responder a las necesidades de los países anfitriones, a la vez que intentan controlar la estructura corporativa en todo el mundo, o al menos en los países donde están localizados. 4. Mientras más autonomía tiene la subsidiaria, estas actúan más independientemente y responden más a las necesidades locales, lo que crea que surja menor integración a nivel mundial en la subsidiaria. 5. Las estrategias de gestión resultantes implican la interacción entre la integración global y la capacidad de respuesta local. 6. Cuatro estrategias de gerencia: etno céntrica, poli céntrica, región céntrica y geocéntrica. 7. La estrategia geocéntrica...

Words: 903 - Pages: 4

Free Essay

The Global Transformations Reader

...Fabián Felipe Peralta Rodríguez 11-04-2014 Kevin David Silva Caicedo Facultad de Administración, Finanzas y Ciencias Económicas Fragmentos: (The global transformations reader) - “Globalization implies that connection across frontiers are not just occasional or random, but rather are regularized such that there is a detectable intensification, or growing magnitude, of interconnectedness, patterns or interaction and flows which trascend the constituent societes and states of the world order..” Pagina 67, Párrafo 3. R//: Tener una plena comunicación con los entes económicos y eficaces, brinda que los países potencialicen sus mercados y puede crear nichos de mercados que puedan llegar a mercados que sean de difícil acceso, sin importar las limitaciones que este le presente. - “Globalization is not conceived here in opposition to more spatially delimited processes but, on the contrary, as standing in a complex and dynamic relationship wirh them.” Pagina 68, Párrafo 5. R//: La iniciativa de la globalización no busca en que un solo agente comercial se beneficio con el desarrollo de este proceso, y se convierta en una relación poca amena que termine en un conflicto con otro países, por no tener plenamente establecidos los parámetros de que beneficie a todas las partes por igual y brindar una relación dinámica. - “Infrastructures may facilitate or constrain the intensity and intensity of...

Words: 299 - Pages: 2

Premium Essay

Caso Nike

...Preguntas ¿Cuáles son los pros, contras y riesgos asociados con la estrategia de mercadotecnia de Nike? Pros Nike vende en un inicio tennis de alta calidad diseñados por atletas para atletas, esto es un producto que va acompañado de una experiencia al estar basado en deportistas reconocidos, lo cual lo vuelve en un producto único y que da estatus. A través del tiempo ha construido una imagen solida de la marca, una propuesta de valor, que hace que los consumidores sientan seguridad al momento de realizar una compra ya que han desarrollado un producto diferenciado de los demás, tomando a los deportistas del momento para diseñar sus propias líneas de ropa y zapatos deportivos, contando con una cadena de distribución amplia que logra hacer llegar los productos a los consumidores, así mismo cuenta con un comunicación amplia a través de cada uno de los medios de cada deporte, selecciona a los mejores equipos de futbol de cada país para que utilicen sus productos o al mejor jugador de golf quien porta en cada torneo la línea exclusivamente diseñada para él. Esto es porque se encuentran dentro del mercado de consumo. De igual forma, integra la responsabilidad social dentro de su estrategia de mercadotecnia mediante la incorporación de campañas de reciclaje de tennis usados, fomenta el desarrollo personal a través de la carrera Nike Human Race que logra un evento a nivel global coordinado por una sola empresa para lograr una cultura de deporte y ecología. Nike se ha adaptado...

Words: 765 - Pages: 4