¿ Los programas de ordenador están escritos en una amplia variedad de idiomas , dependiendo de los recursos disponibles para el propio ordenador y de las necesidades de los propios programadores. Sin embargo , sólo hay una lengua nativa entendido por un procesador dado, y estos idiomas se conocen colectivamente como conjunto . El Sitio lenguaje más básico
lenguaje ensamblador, cada comando se refiere a una operación que se puede realizar directamente por el hardware de la computadora con ninguna interpretación adicional requerida . Por esta razón, las estructuras de programación para lenguajes ensambladores se definen más por las capacidades del hardware y qué comandos se pueden implementar a bajo precio, y no por lo que los programadores se encontrarían más fácil o más natural para trabajar.
comunes asamblea Idiomas
el lenguaje ensamblador más común para ordenadores personales , con mucho, es el lenguaje utilizado por la línea X86 de Intel de procesadores de ordenador . Casi todos los ordenadores personales de consumo contienen procesadores ya sea producidos por Intel o deliberadamente diseñadas para ser compatibles con el conjunto de X86 de Intel . Sin embargo , hay excepciones . Sun Microsystems produce estaciones de trabajo Solaris que utilizan el conjunto de SPARC , muchas consolas de videojuegos y ordenadores antiguos de Apple utilizar asamblea PowerPC de IBM y los dispositivos de computación pequeños, como teléfonos inteligentes y PDAs suelen utilizar ARM.
CISC y RISC
idiomas Asamblea
se pueden dividir en dos filosofías de diseño : Complex Instruction Set Computing ( CISC ) y Reduced Instruction Set Computing (RISC ) . Idiomas RISC tienen menos instrucciones . Esto significa que un programa de montaje debe ser más largo para lograr la misma tarea , pero cada instrucción individual puede ejecutar más rápidamente . Ejemplos de lenguajes RISC incluyen ARM, PowerPC y SPARC . Idiomas CISC tomar el camino contrario : tienen más instrucciones , permitiendo a los programadores para lograr más con cada instrucción. X86 es un ejemplo de una arquitectura CISC .
Ejemplo de la Asamblea
Este es un programa conjunto relativamente simple de X86 que imprime un mensaje corto a la pantalla . < Br >
. small.stack.datamessage modelo db " Hola mundo , estoy aprendiendo Asamblea !" , "$"
. código
principal procmov hacha, seg messagemov ds , hacha
mov ah, 09lea dx, messageint 21h
mov ax , 4c00hint 21hmain endpend principales
Ventajas del uso directo
Debido a que las instrucciones de montaje se correlacionan directamente con las operaciones realizadas por la máquina , los programas de montaje escritos de manera eficiente se ejecutará un programa dado en la forma más rápida posible.
Ventajas de nivel superior Idiomas
Asamblea tiene algunas desventajas profundas también. Durante el montaje , teóricamente, puede producir el código más rápido posible, en la práctica, la optimización automatizada proporcionada por lenguajes de alto nivel como C + + superará los esfuerzos de optimización de la mayoría de los programadores. Programas de la Asamblea también tienden a ser extremadamente complejo en comparación con sus equivalentes en Java o C. Por ejemplo , el siguiente programa C consigue el mismo resultado que el programa de la asamblea anterior :
cout << " Hello world , C es mucho más fácil que la Asamblea ! "