Neto
Para comandar o hardware do computador, é necessário que falemos sua língua:
♦
As palavras da linguagem de máquina são chamadas de instruções;
♦
O vocabulário forma o conjunto de instruções, que determina a interface hardware/software.
♦
Computadores com arquiteturas diferentes implementam conjuntos de instruções distintos
Conjunto de Instruções
It is easy to see by formal-logical methods that there exist certain [instruction sets] that are in abstract adequate to control and cause the execution of any sequence of operations ... The really decisive considerations from the present point of view, in selection an [instruction set], are more of a practical nature: simplicity of the equipment demanded by the
[instruction set], and the clarity of its application to the actually important problems together with the speed of its handling of those problems.
Burks, Goldstine and von Neumann, 1947
Conjunto de Instruções
As linguagens de máquina são bastante parecidas entre si. Aprendendo bem uma é fácil aprender outra.
Isto ocorre porque:
♦
Todas são baseadas nos mesmos princípios (arquitetura de von
Neumann);
♦
Existe um conjunto de operações básicas que todas as máquinas devem fornecer;
♦
Projetistas têm um mesmo objetivo: encontrar uma linguagem que torne fácil a construção do hardware e de compiladores, maximizando a performance e minimizando os custos →
SIMPLICIDADE
Implementação de Programas
♦
Um Programa de Computador é, basicamente, uma seqüência de comandos ou instruções representando um algoritmo a ser executado pela máquina.
♦
Normalmente os programadores usam Linguagens de
Programação de Alto Nível (LAN), como Pascal e C
♦
Entretanto, estas linguagens correspondem a um nível de abstração elevado.
♦
As linguagens dos processadores como o x86 ou o MIPS correspondem a um nível de abstração baixo, e são denominadas de Linguagens de Baixo Nível (LBN)