Está en la página 1de 7

Lenguaje ensamblador

El lenguaje ensamblador, o assembler (assembly language en ingls) es un lenguaje de programacin de bajo nivel para los computadores, microprocesadores, microcontroladores, y otros circuitos integrados programables. Implementa una representacin simblica de los cdigos de mquina binarios y otras constantes necesarias para programar una arquitectura dada de CPU y constituye la representacin ms directa del cdigo mquina especfico para cada arquitectura legible por un programador. Esta representacin es usualmente definida por el fabricante de hardware, y est basada en los mnemnicos que simbolizan los pasos de procesamiento (las instrucciones), los registros del procesador, las posiciones de memoria, y otras caractersticas del lenguaje. Un lenguaje ensamblador es por lo tanto especfico a cierta arquitectura de computador fsica (o virtual). Esto est en contraste con la mayora de los lenguajes de programacin de alto nivel, que, idealmente son portables. Un programa utilitario llamado ensamblador es usado para traducir sentencias del lenguaje ensamblador al cdigo de mquina del computador objetivo. El ensamblador realiza una traduccin ms o menos isomorfa (un mapeo de uno a uno) desde las sentencias mnemnicas a las instrucciones y datos de mquina. Esto est en contraste con los lenguajes de alto nivel, en los cuales una sola declaracin generalmente da lugar a muchas instrucciones de mquina. Muchos sofisticados ensambladores ofrecen mecanismos adicionales para facilitar el desarrollo del programa, controlar el proceso de ensamblaje, y la ayuda de depuracin. Particularmente, la mayora de los ensambladores modernos incluyen una facilidad de macro (descrita ms abajo), y son llamados macro ensambladores. Fue usado principalmente en los inicios del desarrollo de software, cuando an no se contaba con potentes lenguajes de alto nivel y los recursos eran limitados. Actualmente se utiliza con frecuencia en ambientes acadmicos y de investigacin, especialmente cuando se requiere la manipulacin directa de hardware, altos rendimientos, o un uso de recursos controlado y reducido. Muchos dispositivos programables (como los microcontroladores) an cuentan con el ensamblador como la nica manera de ser manipulados.

Orientacin de los lenguajes de programacin hacia lo cientfico


Lenguaje de Programacin FORTRAN
Su nombre proviene del ingles de: FORmula TRANslator. Es un lenguaje de programacin para el desarrollo de aplicaciones matemticas y cientficas, fue el primer lenguaje de programacin de alto nivel. Estos lenguajes de alto nivel tienen entre otras las ventajas que pueden utilizarse en cualquier computadora y son ms afines al lenguaje humano. Uno de los lenguajes de programacin orientado a procedimientos es el FORTRAN. Un lenguaje orientado a procedimiento es aquel en el que el programador al escribir el programa lo hace con un orden determinado para resolver el problema. Estos lenguajes tienen la ventaja de que con una sola instruccin propia hacen referencia a varias del lenguaje de mquina. El FORTRAN nace en los aos 50, se utiliza principalmente para aplicaciones cientficas y el anlisis numrico. Durante toda su vida ha pasado por varias versiones, inicialmente fue un lenguaje imperativo, actualmente en sus ltimas versiones comprobamos que es un lenguaje de programacin orientado a objetos y a procedimientos.

El FORTRAN fue bien acogido en la comunidad cientfica por su excelente rendimiento en todo este tipo de aplicaciones. Por ello lo utilizaron para el desarrollo de programas de cmputo intensivo. Posteriormente se le incluyo la aritmtica de nmeros complejos lo mejoro notablemente. Algunos expertos opinan que el FORTRAN se acabar extinguiendo, pero comprobamos que actualmente se sigue usando. Una de las razones por la que aun no se ha extinguido es porque a las compaas que han invertido muchsimo dinero en el desarrollo de un determinado software, no les es rentable traducirlo a otro lenguaje de programacin porque es una labor muy tediosa y cara.

Pascal (lenguaje de programacin)


Pascal es un lenguaje de programacin desarrollado por el profesor suizo Niklaus Wirth entre los aos 1968 y 1969 y publicado en 1970. Su objetivo era crear un lenguaje que facilitara el aprendizaje de programacin a sus alumnos, utilizando la programacin estructurada y estructuracin de datos. Sin embargo con el tiempo su utilizacin excedi el mbito acadmico para convertirse en una herramienta para la creacin de aplicaciones de todo tipo. Pascal se caracteriza por ser un lenguaje de programacin estructurado fuertemente tipado. Esto implica que:
1. El cdigo est dividido en porciones fcilmente legibles llamadas funciones o procedimientos. De esta forma Pascal facilita la utilizacin de la programacin estructurada en oposicin al antiguo estilo de programacin monoltica. 2. El tipo de dato de todas las variables debe ser declarado previamente para que su uso quede habilitado.

El nombre de Pascal fue escogido en honor al matemtico Blaise Pascal.

Caractersticas nicas
Otra diferencia importante es que en Pascal, el tipo de una variable se fija en su definicin; la asignacin a variables de valores de tipo incompatible no estn autorizadas (en C, en cambio, el compilador hace el mejor esfuerzo para dar una interpretacin a casi todo tipo de asignaciones). Esto previene errores comunes donde variables son usadas incorrectamente porque el tipo es desconocido; y tambin evita la necesidad de notacin hngara, que vienen a ser prefijos que se aaden a los nombres de las variables y que indican su tipo.

C (lenguaje de programacin)
C es un lenguaje de programacin creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolucin del anterior lenguaje B, a su vez basado en BCPL. Al igual que B, es un lenguaje orientado a la implementacin de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del cdigo que produce y es el lenguaje de programacin ms popular para crear software de sistemas, aunque tambin se utiliza para crear aplicaciones. Se trata de un lenguaje dbilmente tipificado de medio nivel pero con muchas caractersticas de bajo nivel. Dispone de las estructuras tpicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar cdigo en ensamblador con cdigo C o acceder directamente a memoria o dispositivos perifricos. La primera estandarizacin del lenguaje C fue en ANSI, con el estndar X3.159-1989. El lenguaje que define este estndar fue conocido vulgarmente como ANSI C. Posteriormente, en 1990, fue ratificado como

estndar ISO (ISO/IEC 9899:1990). La adopcin de este estndar es muy amplia por lo que, si los programas creados lo siguen, el cdigo es porttil entre plataformas y/o arquitecturas.
Propiedades

Un ncleo del lenguaje simple, con funcionalidades aadidas importantes, como funciones matemticas y de manejo de archivos, proporcionadas por bibliotecas. Es un lenguaje muy flexible que permite programar con mltiples estilos. Uno de los ms empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura). Un sistema de tipos que impide operaciones sin sentido. Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir macros e incluir mltiples archivos de cdigo fuente. Acceso a memoria de bajo nivel mediante el uso de punteros. Interrupciones al procesador con uniones. Un conjunto reducido de palabras clave. Por defecto, el paso de parmetros a una funcin se realiza por valor. El paso por referencia se consigue pasando explcitamente a las funciones las direcciones de memoria de dichos parmetros. Punteros a funciones y variables estticas, que permiten una forma rudimentaria de encapsulado y polimorfismo. Tipos de datos agregados (struct) que permiten que datos relacionados (como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una nica variable "empleado").

Hacia lo comercial

Visual FoxPro
Saltar a: navegacin, bsqueda Visual FoxPro Autor Microsoft Corporation http://msdn.microsoft.com/vfoxpro Informacin general Lanzamiento inicial

21 de junio de 1995 (info)

ltima versin estable

Visual FoxPro 9.0 Service Pack 2 (SP2) (info)


11 de octubre de 2007; hace 4 aos

Gnero

Lenguaje de programacin de base de datos Microsoft Windows

Sistema

operativo x86 y superior PowerPC (VFP 3.0 para Mac) Microsoft EULA Con soporte IDE: Ingls, Alemn, Espaol Idiomas Runtime: Adicionalmente a los ya mencionados, Francs, Chino, Ruso, Checo, Coreano En espaol

Plataforma

Licencia Estado actual

Visual FoxPro es un lenguaje de programacin procedural, orientado a objetos que posee un Sistema Gestor de Bases de datos o Database Management System (DBMS) y Sistema administrador de bases de datos relacionales, producido por Microsoft.

Caractersticas
Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o para la Web. Entre sus caractersticas se pueden enumerar:

Capacidades para el manejar datos nativos y remotos. Flexibilidad para crear soluciones de bases de datos. Lenguaje de Programacin Orientado a objetos. Utilizacin de Sentencias SQL en forma nativa. Manejo de vistas, cursores y control completo de estructuras relacionales. Su propio gestor de base de datos incorporado. Sin embargo, tambin puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL. Cuenta con un motor de generacin de informes renovado y flexible para soluciones ms robustas. Desde la versin 9.0, amplio soporte de XML, tanto como fuente de datos (por ej., servicios Web basados en XML) como por generar reportes en formato XML.

La ltima versin liberada es la 9.0. Esta cuenta con el SP1 y el (ms reciente) SP2 (en ingls) en los que hay algunas nuevas caractersticas y especialmente brindan estabilidad al producto. Una empresa llamada etecnologia "www.etecnologia.net" ha desarrollado el .NET EXTENDER que permite utilizar el .net framework en Visual FoxPro, y han anunciado que a finales del 2009 van a sacar su "VFP Developer Studio" herramienta que convierte a VFP en un lenguaje .Net. A 31 de mayo del 2009, este producto ya soporta el 92% de los comandos y funciones de VFP y se puede comprar por $250.00. En la actualidad, a pesar de que Microsoft ha decicido no continuar con Microsoft Visual FoxPro, existe una comunidad de desarrolladores que sigue trabajando en l, PortalFox y Mundo Visual FoxPro son las ms importantes entre los desarrolladores de habla hispana.

Visual Basic
Visual Basic es un lenguaje de programacin dirigido por eventos, desarrollado por Alan Cooper para Microsoft. Este lenguaje de programacin es un dialecto de BASIC, con importantes agregados. Su primera versin fue presentada en 1991, con la intencin de simplificar la programacin utilizando un ambiente de desarrollo completamente grfico que facilitara la creacin de interfaces grficas y, en cierta medida, tambin la programacin misma. La ltima versin fue la 6, liberada en 1998, para la que Microsoft extendi el soporte hasta marzo de 2008. En 2001 Microsoft propuso abandonar el desarrollo basado en la API Win32 y pasar a un framework o marco comn de libreras, independiente de la versin del sistema operativo, .NET Framework, a travs de Visual Basic .NET (y otros lenguajes como C Sharp (C#) de fcil transicin de cdigo entre ellos); fue el sucesor de Visual Basic 6. Aunque Visual Basic es de propsito general, tambin provee facilidades para el desarrollo de aplicaciones de bases de datos usando Data Access Objects, Remote Data Objects, o ActiveX Data Objects. Visual Basic (Visual Studio) contiene un entorno de desarrollo integrado o IDE que integra un editor de textos para edicin del cdigo fuente, un depurador, un compilador (y enlazador) y un editor de interfaces grficas o GUI.

Caractersticas
Los compiladores de Visual Basic generan cdigo que requieren una o ms libreras de enlace dinmico para que funcione, conocidas comnmente como DLL (sigla en ingls de dynamic-link library); en algunos residente en el archivo llamado MSVBVMxy.DLL (siglas de "MicroSoft Visual Basic Virtual Machine x.y", donde x.y es la versin) y en otros en VBRUNXXX.DLL ("Visual Basic Runtime X.XX"). Estas DLL proveen las funciones bsicas implementadas en el lenguaje, conteniendo rutinas en cdigo ejecutable que son cargadas bajo demanda en tiempo de ejecucin. Adems existe un gran nmero de bibliotecas del tipo DLL, por ejemplo las que facilitan el acceso a la mayora de las funciones del sistema operativo o tambin las que proveen funciones para la integracin con otras aplicaciones. En el Entorno de desarrollo integrado (IDE) de Visual Basic se puede ejecutar el programa que est desarrollndose, es decir en modo intrprete (en realidad pseudo-compila el programa muy rpidamente y luego lo ejecuta, simulando la funcin de un intrprete puro). Desde ese entorno tambin se puede generar el programa en cdigo ejecutable (exe). Ese programa as generado en disco puede luego ser ejecutado fuera del ambiente de programacin (incluso en modo stand alone), aunque ser necesario que las libreras DLL requeridas se encuentren instaladas en el sistema para posibilitar su ejecucin. Visual Basic provee soporte para empaquetado y distribucin, es decir, permite generar un mdulo instalador que contiene el programa ejecutable y las bibliotecas DLL necesarias para su ejecucin. Con ese mdulo la aplicacin desarrollada se distribuye y puede ser instalada en cualquier equipo (que tenga un sistema operativo compatible). As como bibliotecas DLL, hay numerosas aplicaciones desarrolladas por terceros que permiten disponer de variadas y numerosas funciones y mejoras para Visual Basic, incluyendo algunas para empaquetado y distribucin, y hasta para otorgar mayor funcionalidad a mismo entorno de programacin (IDE).

Hacia lo general

Logo (lenguaje de programacin)


Logo es un lenguaje de programacin de alto nivel, en parte funcional, en parte estructurado; de muy fcil aprendizaje, razn por la cual suele ser el lenguaje de programacin preferido para trabajar con nios y jvenes. Fue diseado con fines didcticos por Danny Bobrow, Wally Feurzeig y Seymour Papert, los cuales se basaron en las caractersticas del lenguaje Lisp. A pesar de que Logo no fue creado con la finalidad de usarlo para ensear programacin, puede usarse para ensear la mayora de los principales conceptos de la programacin, ya que proporciona soporte para manejo de listas, archivos y entrada/salida. Papert desarroll un enfoque basado en su experiencia con Piaget a principios de los sesenta. Fundamentalmente consiste en presentar a los nios retos intelectuales que puedan ser resueltos mediante el desarrollo de programas en Logo. El proceso de revisin manual de los errores contribuye a que el nio desarrolle habilidades metacognitivas al poner en prctica procesos de autocorreccin. Es conocido por poder manejar con facilidad grficas tortuga, listas, archivos y recursividad. Logo es uno de los pocos lenguajes de programacin con instrucciones en espaol en algunos intrpretes, entre ellos: FMSLogo, LogoWriter, WinLogo, Logo Grfico, XLogo, MSWLogo y LogoEs. Logo tiene ms de 180 intrpretes y compiladores, segn constan en el proyecto "Logo Tree". XLogo, MSWLogo y LogoES tienen la particularidad de ser adems software libre.

BASIC
Saltar a En la programacin de computadoras, el BASIC, siglas de Beginner's All-purpose Symbolic Instruction Code,1 es una familia de lenguajes de programacin de alto nivel. El BASIC original, el Dartmouth BASIC, fue diseado en 1964 por John George Kemeny y Thomas Eugene Kurtz en el Dartmouth College en New Hampshire, Estados Unidos, como un medio para facilitar programar computadores a estudiantes (y profesores) que no fueran de ciencias. En ese tiempo, casi todo el uso de los computadores requera codificar software hecho a la medida, lo cual era algo bastante restringido a personas con formacin como cientficos y matemticos. BASIC originalmente fue desarrollado como una herramienta de enseanza. El lenguaje y sus variantes llegaron a estar ampliamente disponibles en los microcomputadores a finales de los aos 1970 y en los aos 1980. El BASIC sigue siendo popular hasta el da de hoy en un puado de dialectos altamente modificados, y en nuevos lenguajes, influenciados por BASIC tales como Microsoft Visual Basic o Gambas en GNU/Linux. Por el ao 2006, el 59% de los desarrolladores para la plataforma .NET usaban Visual Basic .NET como su nico lenguaje.

Disponibilidad y variantes del lenguaje


BASIC est disponible para casi todas las plataformas y sistemas operativos existentes. Una implementacin gratuita que cumple con estndares y es multiplataforma es Bywater BASIC (bwBASIC). El intrprete est escrito en C y viene bajo la licencia GNU. Est diseado para interfaz de texto o consola (no grfica), no incluye soporte para crear interfaces grficas de usuario (GUI's, Graphical User Interface). Hay un BASIC gratuito que si incluye soporte para GUI, es similar a Visual Basic y se ejecuta en Windows y GNU/Linux, es Phoenix Object BASIC. Las versiones de intrpretes/compiladores ms conocidos son la lnea de productos Quick BASIC y QBASIC, ste ltimo es slo intrprete, ambos son de Microsoft. En la actualidad lo es el moderno Visual BASIC, que Microsoft ha tratado de mantener al menos mnimamente compatible con incluso las primeras

versiones de sus BASIC (en realidad es escasamente compatible), si bien existe FreeBASIC que es un compilador libre, compatible en sintaxis con QBASIC/QuickBASIC. Otras versiones comerciales incluyen PowerBASIC de PowerBASIC, PureBasic de Fantaisie Software, as como TrueBASIC de TrueBASIC, que cumple con los ltimos estndares oficiales de BASIC. (True BASIC Inc. fue fundada por los creadores originales de Dartmouth BASIC.) REALbasic es una variante disponible para Mac OS Classic, Mac OS X, Microsoft Windows y GNU/Linux, comercializada por los actuales propietarios de Rapid-Q, otra implementacin inicialmente libre de BASIC actualmente abandonada. Una versin de un dialecto simple de BASIC para la parrot virtual machine, muestra cmo se implementa un intrprete de BASIC en un lenguaje similar al ensamblador. SmallBASIC es un dialecto que ejecuta en muchas plataformas (Win32, DOS, GNU/Linux y PalmOS) y viene bajo la licencia GNU (GPL). Existen muchas implementaciones de BASIC freeware o GNU, como BCX, YaBasic, HBasic, XBasic, Gambas o Just BASIC, entre otras.

Diferencia Del Algoritmo y lenguaje de programacion


Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. Un programa normalmente implementa (traduce a un lenguaje de programacin concreto) un algoritmo. Ntese que es la secuencia de instrucciones en s (la ejecucin) la que debe ser finita, no el nmero de pasos realizados. Los programas suelen subdividirse en partes menores (mdulos), de modo que la complejidad algortmica de cada una de las partes sea menor que la del programa completo, lo cual ayuda al desarrollo del programa. Segn Niklaus Wirth, un programa est formado por algoritmos y estructura de datos. Se han propuesto diversas tcnicas de programacin cuyo objetivo es mejorar tanto el proceso de creacin de software como su mantenimiento. Entre ellas, se pueden mencionar las siguientes: * programacin estructurada * programacin modular * programacin orientada a objetos (POO) * programacin declarativa