Microcontroladores: C ou Assembler?
Apesar da resposta parecer bastante óbvia, várias pessoas se perguntam sobre qual linguagem é melhor: C ou Assembler. Essa resposta é diretamente dependente da situação e uso.
Microcontrolador C ou Assembler?
Para programas muito pequenos, que utilizam apenas funções básicas do 8051, talvez o assembler não seja tão ruim. Para programas maiores, que incluem a grande maioria dos projetos comerciais, a linguagem C é sem dúvidas a mais adequada. E os microcontroladores são uma boa opção para ajudar na qualidade da sua programação.
Leia também
Comparativo entre C e Assembler
Ao programar em assembler o código gerado não irá depender do compilador utilizado, pois o mesmo precisará apenas traduzir as instruções digitadas pelo programador para o código de máquina a ser gravado no microcontrolador. Quando um programa é feito em C o compilador tem um papel fundamental e decisivo na eficiência do mesmo. Bons compiladores C para 8051, em geral, são caros.
![Programando para microcontroladores](http://www.palpitedigital.com.br/wp-content/uploads/2007/05/microcontrolador.jpg)
Na figura, esquema de conectores em um microcontrolador 8031 e 8051. (Foto: pt.wikipedia.org)
Codificar em assembler é muito mais susceptível a erros que em C, e modificar um programa grande em assembler é extremamente mais complicado que modificar um programa em C.
Testar um programa grande em um simulador assembler é em geral mais difícil e as vezes quase impossível dependendo da complexidade do hardware externo envolvido. A maioria dos fabricantes disponibiliza ferramentas e ambientes de desenvolvimento considerando que os programas serão feitos em C.
A maior parte das bibliotecas, funções e material de apoio encontrados na internet estão em C. Apesar dos compiladores C serem cada vez melhores, muitas vezes é possível otimizar trechos de códigos escrevendo-os em Assembler.
Qual linguagem de programação é melhor?
Como se pode observar, a linguagem assembler é extremamente improdutiva nas maioria das situações. Deve ser encarada fortemente como um método didático e aproveitada neste caso. Ter conhecimento do que está por trás das instruções C durante a elaboração de um programa é, sem dúvida, um grande diferencial para um programador de microcontroladores.
Qual linguagem de programação você prefere? Como faz sua programação para microcontroladores?
Sobre o autor
Profissional de TI com mais de 20 anos de experiência na indústria. Bacharel em Matemática Computacional, sempre aprendendo sobre tecnologia, jogos, desenvolvimento de software e automação. É criador do site Palpite Digital onde compartilha conhecimentos desde 2007!
Veja também
![Como escolher o microcontrolador adequado ao seu projeto](http://www.palpitedigital.com.br/y/224/microcontrolador-escolha-90x90.jpg)
Como escolher o microcontrolador adequado ao seu projeto
![Problema com acentos e caracteres especiais em HTML](http://www.palpitedigital.com.br/y/223/html-acentos-caracteres-especiais-90x90.jpg)
Problema com acentos e caracteres especiais em HTML
![Canais do Youtube mais visualizados no Brasil e por que!](http://www.palpitedigital.com.br/y/32738/porta-fundos-90x90.jpg)
Canais do Youtube mais visualizados no Brasil e por que!
![Por que utilizar microcontroladores](http://www.palpitedigital.com.br/y/221/microcontrolador-1-90x90.jpg)
Por que utilizar microcontroladores