jueves, 21 de febrero de 2008

Compilador

Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje máquina). De esta manera un programador puede diseñar un programa en un lenguaje mucho más cercano a como piensa un ser humano, para luego compilarlo a un programa más manejable por una computadora.

Normalmente los compiladores están divididos en dos partes:

  • Front End: es la parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Esta parte suele ser independiente de la plataforma o sistema para el cual se vaya a compilar.
  • Back End: es la parte que genera el código máquina, específico de una plataforma, a partir de los resultados de la fase de análisis, realizada por el Front End.

Ensamblador


El término ensamblador (del inglés assembler) se refiere a un tipo de programa informático que se encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto que contiene código máquina, ejecutable directamente por la máquina para la que se ha generado. El propósito para el que se crearon este tipo de aplicaciones es la de facilitar la escritura de programas, ya que escribir directamente en código binario, que es el único código entendible por la computadora, es en la práctica imposible. La evolución de los lenguajes de programación a partir del lenguaje ensamblador originó también la evolución de este programa ensamblador hacia lo que se conoce como programa compilador.

Podemos distinguir entre tres tipos de ensambladores:

Ensambladores básicos. Son de muy bajo nivel, y su tarea consiste básicamente en ofrecer nombres simbólicos a las distintas instrucciones, parámetros y cosas tales como los modos de direccionamiento.

Ensambladores modulares, o macro ensambladores. Hacen todo lo que puede hacer un ensamblador, y además proporcionan una serie de directivas para definir e invocar macroinstrucciones (o simplemente, macros).

Ensambladores modulares 32-bits o de alto nivel. Son ensambladores que aparecieron como respuesta a una nueva arquitectura de procesadores de 32 bits, muchos de ellos teniendo compatibilidad hacia atrás pudiendo trabajar con programas con estructuras de 16 bits. Además de realizar la misma tarea que los anteriores, permitiendo también el uso de macros, permiten utilizar estructuras de programación más complejas propias de los lenguajes de alto nivel.

Tomado de Wikipedia.

martes, 19 de febrero de 2008

¿Que es un microcontrolador?


Un microcontrolador es un circuito integrado que incluye todos (o casi) los componentes necesarios para tener un sistema de control completo.

Los microcontroladores incluyen típicamente:

· CPU

· RAM

· EPROM/PROM/ROM

· I/O (input/output) - serie y paralelo

· Temporizadores/Contadores

· Sistema de interrupciones.

• Los modelos más potentes incluyen además :

» Sistemas auxiliares (A/D, D/A, dsp ..)

Switch Om


Este blog se llama Switch Om como la canción del famoso Kraftwerk, este título es para mí un símbolo de unión entre lo automático, lo artificial y la fuente de todo lo creado el Om.

Tal vez esta asociación sea un buen comienzo para este semestre de investigaciones con micro controladores y medios digitales.

¿Que es un autómata?

Generalmente el autómata es considerado como una máquina que imita la figura y los movimientos de un ser animado, esta concepción tiene su origen en la visión cartesiana del mundo en la que fuerzas mecánicas eran las que determinaban el movimiento y la existencia de los seres vivos.

Alejándose de la visión clásica
y aproximándose a la teoría de la computación el autómata es una maquina con lenguaje que calcula de manera lógica un juego de instrucciones orientados hacia un sistema de evolución secuencial.