Arquitetura de computadores
Linguagem Assembly
Assembly é uma linguagem de baixo nível que se aproxima de linguagem de maquina, ou seja, depende do hardware. Ela permite que o programador utilize símbolos no lugar de números que simbolizam as fases de processamento de instruções, registradores do processador, posições de memória e recursos de outra língua. Podemos dizer que pilota diretamente a CPU do computador. Isto não significa que seja menos eficiente que uma linguagem chamada de alto nível: são apenas modos distintos de se programar e níveis diferentes de atuação.
Assembly surgiu na década de 50, os computadores eram da primeira geração de válvulas. A idéia de linguagem de assembly era usar um comando substituindo a cada instrução de maquina. Ao invés de usar instruções como 10110011001 poderiam memorizar como Add, Div, Mul, Or, etc. E deste modo criando variáveis ocupando um baixo espaço na memória RAM para guardar informações, tudo que o processador interpreta tem que ser descrito pelo programador. Portanto assembly manipula as instruções e endereços de memória tornando trabalhoso.
A segunda geração a linguagem assembly libertou as dificuldades de lembrar códigos numéricos e calcular endereços. É um mero padrão de bit, tornando legível valor em bruto por símbolo chamado de mnemoônicas. A conversão de linguagem assembly para linguagem maquina é chamada de montagem e feita por um programa chamado assembler. Instruções típicas:
ORG 100
LDAA # $10
END
Essa linguagem é também classificada como linguagem de segunda geração, e, assim como a linguagem de máquina, é considerada uma linguagem de baixo nível.
A terceira geração projetada para ser de fácil entendimento humano, exemplo com variáveis com nomes:
COMPUTE COMISÃO = VENDA *0,5
Linguagens Modernas (Basic,C, C++) são de terceira geração.
Na década de 80 foi substituída pelas linguagens de alto nível, possuía uma estrutura mais Próxima da linguagem humana tornando mais fácil de serem lidos