ASM en el TOP 10 de los lenguajes de programación actuales....

Foro dedicado a la programación en todo tipo de sistemas clásicos.
Avatar de Usuario
explorer
MSX Turbo R
MSX Turbo R
Mensajes: 403
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias dadas: 2 veces
Gracias recibidas: 138 veces
Contactar:

Re: ASM en el TOP 10 de los lenguajes de programación actuales....

Mensajepor explorer » 11 Sep 2016, 22:25

En la programación de los µcontroladores actuales, en muchas ocasiones, da lo mismo programarlo en C que en ensamblador, por la sencilla razón de que muchas órdenes ocupan lo mismo escribirlas en C que en ensamblador.

Por ejemplo, activar una patilla, arrancar un temporizador, ver el valor de uno de los conversores A/D, etc., son operaciones que muchas veces las resuelves con una sola instrucción en ensamblador. Y en C, prácticamente lo mismo. Hay muchos ejemplos de programas (cortos) que poniéndolos lado a lado, resulta que tienen casi el mismo número de líneas.

Programar en ensamblador tiene la ventaja de que puedes hacer algún truco, como saltarse el orden de retorno de una subrutina, o controlar al µs el número de ciclos que vas a consumir cuando quieres una máxima precisión (salida a aparatos analógicos, como las antiguas TV).

Y programar en C te permite realizar operaciones que en ensamblador ocupan muchas líneas, como por ejemplo algo tan básico como operar con números en punto flotante.

Lo bonito es hacer un proyecto que mezcle los dos lenguajes, algo que los entornos de trabajo actuales permiten hacer de forma sencilla.

Ya que megamarc79 ha sacado el tema de los PIC, comentar que a veces es odioso el programar en ensamblador en esos bichos, por lo de tener en cuenta el segmento de memoria en donde estés (recuerda mucho a los primeros 80x86). Cuando un programa se empieza a meter en esos líos, casi mejor pasarse a C. El compilador no sabrá optimizar todos los casos en los que puede ahorrarse diversas operaciones de cambio de segmento, pero con la cantidad enorme de memoria y lo rápido que van, casi da lo mismo gastar unos pocos bytes de memoria más.


Volver a “Programación”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados