Vantagens e desvantagens da linguagem de máquina
Jupiterimages/Photos.com/Getty Images
O objetivo de qualquer linguagem de programação é transformar um computador de um peso para papéis caro em um dispositivo útil de processamento e armazenamento de dados. A linguagem escolhida para realizar essa tarefa deve estar equilibrada entre a eficiência e a facilidade de uso. A linguagem de máquina representa os extremos do espectro para ambos fatores.
Linguagem de máquina
A linguagem de máquina produz o único conjunto de instruções que um computador entende sem um tradutor. Os computadores conseguem reproduzir áudio e vídeo, processar e armazenar dados, comunicar-se com a internet e realizar outras tarefas especializadas, respondendo a um conjunto de instruções que reconhece apenas uns e zeros. Escrever centenas de linhas de código com apenas uns e zeros é uma tarea entediante que contribui à popularidade de linguagens de nível alto, como o C e o Java.
Vantagens iniciais
O primeiro computador pessoal da IBM estava equipado com 512 KB de memória de acesso aleatório e uma unidade de disco flexível de 360 KB. Depois de que o sistema operacional era carregado na memória a partir do disco flexível, os programas eram carregados no espaço de memória restante, deixando uma pequena área da memória RAM, geralmente menos de 100 KB, para que o programa ativo processasse dados. Durante esse período, a preocupação principal de um programador era criar códigos concisos e eficientes. A ferramenta de programação mais usada nesses computadores era a linguagem de máquina, que pode ser consideravelmente menor do que uma versão escrita em BASIC ou C. Também era um pouco mais fácil usar a linguagem de montagem (assembly).
Dependência da plataforma
A linguagem de máquina aponta diretamente ao hardware do computador, dando ao programador um controle completo de cada aspecto da execução de um programa. A desvantagem dessa abordagem é que o programador deve conhecer a arquitetura de cada conjunto de circuitos integrados (chipset) para escrever um código eficaz. Quando um componente como uma placa de vídeo ou controlador de disco é alterado, o código deve ser atualizado para reconhecer e utilizar o novo dispositivo.
Linguagens de nível alto
As vantagens na velocidade e no menor uso de memória da linguagem de máquina são superadas pela dificuldade de escrever instruções a nível de chip em código binário. A disponibilidade de gigabytes de RAM e terabytes de armazenagem eliminou a necessidade de ter código conciso e eficiente nos computadores pessoais modernos. As demandas adicionais de memória e armazenamento dos programas escritos em linguagens de nível alto, tais como o C e o Java, não são mais um fator ao escolher uma plataforma de desenvolvimento. As facilidades de uso e manutenção são fatores preferidos à velocidade e à eficiência na maioria dos projetos de software modernos.
Referências
Sobre o Autor
Finn McCuhil is a freelance writer based in Northern Michigan. He worked as a reporter and columnist in South Florida before becoming fascinated with computers. After studying programming at University of South Florida, he spent more than 20 years heading up IT departments at three tier-one automotive suppliers. He now builds wooden boats in the north woods.
Créditos Fotográficos
Jupiterimages/Photos.com/Getty Images