Conjunto de instruções

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
NoFonti.svg
Este artigo ou se(c)ção cita fontes fiáveis e independentes, mas que não cobrem todo o conteúdo (desde setembro de 2013). Por favor, adicione mais referências e insira-as corretamente no texto ou no rodapé. Trechos sem fontes poderão ser removidos.
Encontre fontes: Googlenotícias, livros, acadêmicoYahoo!Bing.

Conjunto de instruções (tradução de instruction set) são as operações que um processador, microprocessador, microcontrolador, CPU ou outros periféricos programáveis suporta, fornece ou disponibiliza para o programador, ou seja, é a representação em mnemônicos do código de máquina, com a finalidade de facilitar o acesso ao componente.

Cada componente possui o seu próprio conjunto de instruções, que é fornecido pelo fabricante, que também costuma fornecer ou disponibilizar um montador assembly, que transforma o conjunto de instruções em código de máquina para ser utilizado pelo componente.

As linguagens de máquina são bastante parecidas entre si, pois todas são baseadas nos mesmos princípios (arquitetura de von Neumann);

No caso dos processadores, quando o conjunto de instruções for reduzido leva-o a ter o nome de RISC e se forem complexas o nome de CISC.[1] [2]

Programa[editar | editar código-fonte]

Um Programa de Computador é, basicamente, uma sequê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, 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, desta maneira é necessário um processo de tradução.

As linguagens de baixo nível são definidas por uma série de mnemônicos, que são, basicamente, símbolos que representam código binários, por exemplo, no caso do MIPS a instrução de adição é representada por "add a, b, c". Esta instrução determina que o processador some o conteúdo de dois registradores (b, c) e coloque o resultado em outro registrador (a). [3]

Assembler x Linguagem de Máquina[editar | editar código-fonte]

Entretanto, para que um programa seja entendido pela máquina, é necessário que suas instruções estejam codificadas na forma binária, isto é, na forma de 0s e 1s, por exemplo, no MIPS, a instrução add corresponde ao código binário 000000100000. O conjunto de instruções de uma arquitetura (na forma de mnemônicos) corresponde à linguagem de montagem da arquitetura (linguagem ASSEMBLY). O conjunto de instruções de uma arquitetura (na forma binária) corresponde à linguagem de máquina.

Tanto os programas implementados em linguagens de alto nível como em linguagens de baixo nível precisam ser traduzidos para a linguagem de máquina do processador. O processo de tradução de uma linguagem de alto nível para linguagem de máquina é feito compiladores ou interpretadores, o processo de tradução de uma linguagem de montagem para linguagem de máquina é feito por tradutores denominados de montadores (ou assemblers).

Compiladores e Interpretadores[editar | editar código-fonte]

Compiladores são tradutores que após várias fases (análise léxica, análise sintática, análise semântica, geração de código intermediário, otimização de código e geração de código de montagem) geram um programa executável. Este programa executável deverá ser carregado em memória para ser executado, quem faz esta tarefa é um programa do sistema operacional. Interpretadores não geram código executável, os interpretadores traduzem cada instrução do programa (em LAN ou Assembly) e a executam.

Ver também[editar | editar código-fonte]

Referências

Portal A Wikipédia possui o portal:


Ícone de esboço Este artigo sobre um tipo de computador é um esboço. Você pode ajudar a Wikipédia expandindo-o.