LINGUAGEM DE MÁQUINA
LINGUAGEM DE MÁQUINA
O tipo mais primitivo de linguagem de programação é a linguagem que o computador entende diretamente, isto é, as instruções que podem ser diretamente executadas pelo hadware, isto é, pela CPU. É a linguagem de máquina, que foi utilizada pela primeira geração de programadores. A única verdadeira linguagem de programação é a linguagem de máquina, mas, para a maioria das pessoas, a linguagem de máquina é ininteligível.
Um programa em linguagem de máquina é uma longa seqüência de números, alguns dos quais representam instruções e outros, os dados a serem manipulados pelas instruções.
Para escrever um programa em linguagem de máquina, o programador deve conhecer todas as instruções disponíveis para aquela máquina e seus respectivos códigos de operação e formatos, assim como os registradores da CPU disponíveis e os endereços das células de memória onde serão armazenadas as instruções e os dados.
Um programa real em linguagem de máquina, pode conter milhares de instruções, o que é uma tarefa extremamente tediosa e difícil, pelos detalhes que precisam ser observados pelo programador.
Em um programa escrito em linguagem de máquina, cada instrução escrita pelo programador será individualmente executada, isto é, a cada instrução do programa corresponderá uma ação do computador.
A relação é portanto 1 para 1 - uma instrução do programa corresponde a uma operação do computador. Cada família de computadores possui sua própria linguagem de máquina.
Um programa em linguagem de máquina é dependente do computador ou seja, tendo sido escrito para um determinado computador, somente poderá ser executado em computadores da mesma família, que lhe sejam 100% compatíveis.
Linguagem Assembly
Para os cientistas que desenvolveram o primeiro programa para traduzir instruções em código de máquina, qualquer linguagem mais fácil de compreender do que a linguagem de máquina teria sido considerada uma linguagem de alto nível.
Para tentar minimizar esta ineficiência (dificuldade de entendimento do significado dos números, todos semelhantes), foi desenvolvida, ainda para a primeira geração de computadores, uma linguagem que representasse as instruções por símbolos e não por números. A linguagem assenbly está mais próxima da linguagem humana, mas também não apresenta legibilidade nem portabilidade.
Esta linguagem simbólica foi denominada Linguagem de Montagem (Assembly Language).
Segundo os padrões dos dias de hoje, a linguagem assembly é uma linguagem de nível muito baixo, porque seus comandos correspondem, um a um, ao conjunto de instruções de uma CPU. Na verdade não existe apenas uma linguagem assembly. Cada tipo de CPU que tem um conjunto de instruções exclusivo tem sua própria linguagem assembly.
Para usar-se linguagem de montagem em um computador, é necessário que haja um meio de converter os símbolos alfabéticos utilizados no programa em código de máquina, de modo a poder ser compreendido pela CPU. O processo de conversão (também denominado tradução) é chamado de montagem e é realizado por um programa chamado Montador (Assembler). O montador lê cada instrução em linguagem de montagem e cria uma instrução equivalente em linguagem de máquina.
A linguagem assembly continua, apesar de ser de uso tedioso e complexo, a ser importante, porque dá aos programadores total controle sobre a CPU do computador. Além disso produz-se um código compacto, rápido e eficiente.
Vantagens:
• Os programas escritos apresentam grande velocidade de execução;
• Os programas gerados são mais compactos, portanto ocupam menos espaço em memória;
• programador tem à sua disposição todos os recursos da máquina, sem limitações da linguagem.
Desvantagens:
• Os programadores devem ter altíssimo nível técnico;
• Os programas levam muito tempo para serem desenvolvidos e apresentam grande dificuldade para alterações futuras;
• Os programas são muito específicos para cada microprocessador (não são portáveis).
Comentários
Enviar um comentário