Programación Específica > Programación en C

 C ó Asm?

<< < (5/5)

ADC:
Mayor dificultad para integrar tu codigo con un sistema operativo: esto esta relacionado directamente con la eficiencia, ya que si no podemos utilizar un sistema operativo, muy buenos y listos tenemos que ser para que nuestro programa en ASM sea capaz de ejecutar eficientemente (sin esperas activas, con tiempos de respuesta controlados, aprovechando de forma dinámica los modos de bajo consumo....) varios procesos simultaneamente. Ademas la API de los SO siempre es en C.

Por que ninguna empresa te va a pedir que programes en ASM: quizás te pidan en la oferta de trabajo que sepas ASM, pero despues es muy raro programar algo en ASM, así, que para el caso, como la mayoria estais aprendiendo, deciros que lo mas problable es que si llegais a trabajar en desarrollo de sistemas embebidos nunca utilizareis ASM.

Por que la tendencia en sistemas embebidos son los sistemas con Linux embebido: es la tendencia, cada vez son mas baratos, en pocos años por el precio de PIC podrás comprar un micro capaz de mover Linux (hay ARM de 3€ y pico capaces), esto no es "usar Linux por que si", usar un SO tan avanzado permite implentar facilmente una series de funcionlidades en nuestros dispositivos que hace unos años no pensabamos que fuese posible.

Bueno, de todas formas tambien quiero dejar claro que existe la posiblidad de que una determinada aplicación se tenga que usar ASM. Despues de tanto rollo no he comentado una cosa que en realidad es la clave, la decisión de si se va utilizar ASM o C en un produto se toma siempre como resultado de un estudio economico del proyecto, así que en determinados casos puede resultar la opcion adecuada. Lo que pasa es actualmente siempre se quiere mucha funcionalidad en el sistema, y esto hace que ASM siempre pierda, por su mayor tiempo de desarrollo sobre todo.

Resumen:
mas funcionalidad = mas codigo
tiempo desarrollo ASM = 10*tiempo desarollo C
tiempo de desarrollo = coste, +competencia
C es reusable
ASM no es reusable
ASM mala integracion con SOs
escasa diferencia de precios entre micros mas y menos potentes


Saludos,
adc

ADC:
P.D. que se me pasan unos comentarios muy importantes.

He hablado de la tendencia a Linux embebido (tambien existe .NET micro framework, Windows CE y otros). Por ejemplo ya hay mucha gente haciendo su software no solo en C y C++, sino en C# ,Java, Phyton, Ruby, etc,(Linux permite eso por ejemplo), al final son las cuentas las que mandan, si  el tiempo de desarollo es caro y el hardware barato, manda el tiempo de desarollo.

Saludos

Meta:
Hola:

La mejor explicación clara y razonable que he visto sobre el C vs ASM. Sobre el sistema C# es bueno saberlo, también estoy aprendiendo ese lenguaje nuevo y es bueno saberlo. Si me permite, haré un copy & paste a otros foros sobre tu comentario cuando lo vuelvan a decir.

Bajo mi punto de vista, aprender ASM primero, luego al meterte con el C, entenderás más cosas y será más eficiente en aprendizaje. No todos los PIC cabe el código C, por falta memoria, RAM, etc. Trabajos pequeños ASM, grandes C.

Muy buen aporte, los que quieran aprender ASM que en las universidades utilizan es ASM, http://www.pic16f847a.com

Quiero hacer un SO en ASM como el Windows, pero en C me parece más fácil y en menos tiempo aunque no sea tan eficiente que el ASM.

Por algo será que se crea los lenguajes de alto nivel.

Un cordial saludos.

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa