quinta-feira, 13 de junho de 2013

Microcontroladores: Por que programar em Assembly?





Muitos alunos já me fizeram essa pergunta. Por que programar em Assembly? Será que não podemos utilizar a linguagem C? 

Existem várias linguagens de programação que podem ser utilizadas em sistemas inteligentes utilizando microcontroladores. Além do Assembly (nível baixo) citado no título várias outras podem ser utilizadas com a linguagem C (nível médio) e Basic(nível alto). A escolha de qual linguagem utilizar é muito importante e envolve conhecimentos técnicos especializados. 

Citei acima linguagens de nível baixo, nível médio e nível alto, vamos explicar cada uma delas:

Nível baixo: a principal característica de uma linguagem de nível baixo como o Assembly é a de apresentar o mesmo conjunto de instruções que aquele definido pela fabricante da família de microcontroladores com a qual se deseja desenvolver projetos. Essa característica implica em total controle sobre registradores internos, posições de memória e o principal, gera programas muito mais compactos que as outras linguagens. Então sempre que houver limitação de memória e velocidade de processamento recomenda-se a utilização de programação nível baixo, ou seja, Assembly. A desvantagem em relação as outras linguagens de programação é que o Assembly é rico em detalhes e exige dos programadores grande conhecimento sobre o hardware do dispositivo a ser programado.

Nível médio: Tem como característica a de apresentar aspectos de uma linguagem nível baixo (manipulação de bit ou byte dos registradores internos e das posições de memória), e também características de linguagem nível alto. 

Nível alto: Muito mais próxima da linguagem humana. Uma linguagem descritiva cujas instruções são palavras em inglês e que estão muito longe das instruções em Assembly. Cada instrução em linguagem de nível alto é representada por muitas instruções em linguagem de nível baixo. Esse tipo de linguagem é muito mais simples para programar porém gera programas maiores e com menor velocidade de processamento.

Portanto pelas próprias características dos microcontroladores, é muito comum a utilização do Assembly como linguagem de programação.

Nenhum comentário :

Postar um comentário