COMO ES LA PROGRAMACIÓN DE MICROCONTROLADORES
Enviado por Ledesma • 14 de Diciembre de 2018 • 6.062 Palabras (25 Páginas) • 306 Visitas
...
Dichos microcontroladores, cada vez más capaces y más pequeños, son los responsables del control de la mayoría de los procesos que ocurren dentro de los aparatos modernos, estando presentes en cosas tan inimaginables como en el sistema de frenos de un automóvil o el control de temperatura de un horno. Así, poco a poco estos pequeños dispositivos toman más fuerza y ganan más terreno dentro de la tecnología actual, llegando a que en un mundo moderno la idea de un mecanismo complejo que no utilice microcontroladores se hace impensable.
Los lenguajes que ocupan estos microcontroladores irán variado según la persona que los este programando, esto es porque existen lenguajes de difícil entendimiento, que solo puede ocuparlo un programador avanzado y que tenga conocimientos acerca del lenguaje de programación.
Esta amplia gama de lenguajes se clasifica en los lenguajes de bajo nivel y por otro lado tenemos el lenguaje alto nivel. Estos dos se rigen a la compresión del lenguaje, si es de bajo nivel se asemeja con el lenguaje de la máquina, y si se asimila al lenguaje humano se familiariza con el lenguaje de alto nivel.
-
DESARROLLLO
-
LENGUAJE ASSEMBLY
-
¿Qué se entiende por lenguaje ensamblador?
El lenguaje ensamblador es un tipo de lenguaje de bajo nivel utilizado para escribir programas informáticos, y constituye la representación más directa del código máquina específico para cada arquitectura de computadoras legible por un programador.
Fue usado principalmente en los inicios del desarrollo de software, cuando aún no se contaba con los potentes lenguajes de alto nivel. Actualmente se utiliza con frecuencia en ambientes académicos y de investigación, especialmente cuando se requiere la manipulación directa de hardware, se pretenden altos rendimientos o un uso de recursos controlado y reducido.
Muchos dispositivos programables como los microcontroladores aun cuentan con el ensamblador como la única manera de ser manipulados.
-
Características del lenguaje ensamblador
- Posee una cierta dificultad de ser entendido directamente por un ser humano ya que su estructura se acerca más bien al lenguaje máquina, es decir, lenguaje de bajo nivel.
- Es difícilmente portable, suele necesitar ser modificado, muchas veces en su totalidad para poder ser usado en otra máquina distinta.
- Los programas hechos en lenguaje ensamblador son generalmente más rápidos y consumen menos recursos del sistema (memoria RAM y ROM). Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel.
- Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microcontrolador por lo que se pueden crear segmentos de código difíciles de programar en un lenguaje de alto nivel.
- Se puede controlar el tiempo en que tarda una rutina en ejecutarse, e impedir que se interrumpa durante su ejecución.
-
Ventajas y desventajas del lenguaje ensamblador
El lenguaje ensamblador a diferencia del lenguaje de nivel alto tiene ciertas ventajas.
Ventajas:
Velocidad:
- Implica un proceso de cómputo adicional al que el programador quiere realizar.
- Un intérprete es siempre más lento que realizar la misma acción en Lenguaje Ensamblador.
- Los compiladores son mucho más rápidos que los intérpretes, pues hacen la traducción una vez y dejan el código objeto.
- Mayor parte de las veces, el código generado por un compilador es menos eficiente que el código equivalente que un programador escribiría.
Eficiencia de tamaño:
- Existen programas donde el uso de las memoria es crítico para esos casos es eficiente el lenguaje ensamblador por la mínima cantidad de recursos de los que dispone.
Flexibilidad:
- Los lenguajes de alto nivel tienen limitantes en el control; al hacer abstracciones, limitan su propia capacidad. En cambio, en ensamblador es sumamente sencillo, pues tenemos el acceso directo al hardware del monitor.
Tanto como ventajas, el lenguaje ensamblador tiene también sus desventajas frente al lenguaje de alto nivel
Desventajas:
Tiempo de programación:
- Requiere más instrucciones para realizar el mismo proceso, eso quiere decir que requiere de más cuidado por parte del programador.
. Programas fuentes grandes:
- Crecen los programas fuentes; puesto que, requerimos más instrucciones primitivas para describir procesos equivalentes. Esto es una desventaja porque dificulta el mantenimiento de los programas, y nuevamente reduce la productividad de los programadores.
. Peligro de afectar recursos inesperadamente:
- El problema es que todo error que podamos cometer, o todo riesgo que podamos tener, podemos tenerlo también en este Lenguaje. Dicho de otra forma, tener mucho poder es útil pero también es peligroso.
Falta de portabilidad:
- Como ya se mencionó, existe un lenguaje ensamblador para cada máquina; por ello, evidentemente no es una selección apropiada de lenguaje cuando deseamos codificar en una máquina y luego llevar los programas a otros.
-
Proceso de ensamblado
TASM: Ensamblador:
Se le llama ensamblador no sólo al lenguaje; sino también al programa que traduce el código fuente escrito en ensamblador, a código objeto, equivalente a los opcodes en lenguaje de máquina.
En el caso de 8086 y familia, el ensamblador, sea TASM
...