? Os programas de computador são escritos em uma grande variedade de idiomas , dependendo dos recursos disponíveis para o computador em si e sobre as necessidades dos próprios programadores. No entanto , existe apenas um idioma nativo compreendida por um processador de dados , e línguas são colectivamente conhecidas como conjunto . A linguagem mais básica
linguagem de montagem , cada comando se refere a uma operação que pode ser realizada diretamente pelo hardware do computador sem mais interpretação necessário. Por esta razão , as estruturas de programação disponíveis para linguagens de montagem são definidos mais pelas capacidades do hardware e que comandos podem ser barata implementada, e não pelo que os programadores acharia mais fácil ou o mais natural para trabalhar.
assembleia Idiomas
comuns
a língua mais comum de montagem de computadores pessoais , de longe, é a linguagem usada pela linha da Intel X86 de processadores de computador. Quase todos os computadores pessoais de consumo contêm processadores ou produzidos pela Intel ou deliberadamente projetados para serem compatíveis com o conjunto X86 da Intel. No entanto, há exceções. Sun Microsystems produz estações de trabalho que usam Solaris SPARC montagem , muitos consoles de videogame e computadores mais antigos da Apple usam montagem PowerPC da IBM, e pequenos dispositivos de computação , como smartphones e PDAs normalmente usam ARM .
CISC e línguas RISC
Assembleia pode ser dividido em duas filosofias de design : Complex Instruction Set Computing (CISC) e Reduced Instruction Set Computing ( RISC ) . Línguas RISC tem menos instruções . Isto significa que um programa de montagem tem de ser maior para conseguir a mesma tarefa , mas cada instrução individual podem ser executadas mais rapidamente . Exemplos de linguagens RISC incluem ARM , PowerPC e SPARC . Línguas CISC tomar o caminho inverso : eles têm mais instruções , permitindo que programadores para conseguir mais com cada instrução . X86 é um exemplo de uma arquitetura CISC .
Exemplo de Assembléia
Este é um programa de montagem relativamente simples em X86 que imprime uma mensagem curta para a tela. < Br >
. modelo small.stack.datamessage db " Olá mundo , estou Assembléia aprender ! ", " $ "
. código
principal machado procmov , segmentos messagemov ds , machado
mov ah, 09lea dx, messageint 21h
mov ax, 4c00hint 21hmain endpend principais
Vantagens do Uso Direto
Porque instruções de montagem correlacionam diretamente para as operações realizadas pela máquina , programas de montagem eficiente escritos irá executar um determinado programa da maneira mais rápida possível.
Vantagens de Nível Superior Idiomas
Assembléia
tem algumas desvantagens profundas também. Enquanto a montagem pode, teoricamente, produzir o código mais rápido possível, na prática, a otimização automatizada fornecida pelo linguagens de alto nível , como C + + irá superar os esforços de otimização da maioria dos programadores. Programas de montagem também tendem a ser extremamente complexo em comparação com seus equivalentes em Java ou C. Por exemplo , o seguinte programa C atinge o mesmo resultado que o programa de montagem acima :
cout << " Olá, mundo , C é muito mais fácil do que Assembly ! "