Conjunto de instruções ortogonal

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Question book.svg
Esta página ou secção não cita nenhuma fonte ou referência, o que compromete sua credibilidade (desde dezembro de 2009).
Por favor, melhore este artigo providenciando fontes fiáveis e independentes, inserindo-as no corpo do texto por meio de notas de rodapé. Encontre fontes: Googlenotícias, livros, acadêmicoScirusBing. Veja como referenciar e citar as fontes.

Um conjunto de instruções de computadores é dito ortogonal se há compatibilidade dos modos de endereçamento de todas as instruções.

A palavra ortogonal significa ângulo fechado. É uma analogia geométrica a decisão de parâmetros para as instruções, ou seja, a primeira escolha (modo de endereçamento) independe da segunda, e vice versa.

Isto pode significa uma facilidade extrema no aprendizado do conjunto de instruções. Porém estes conjuntos de instruções causa uma complexidade extrema na estrutura de micro-programação do microprocessador. Também se usa este conceito no estudo de linguagens de programação de alto nível e os efeitos são quase os mesmos: pouca ortogonalidade torna o aprendizado lento devido ao número de casos especiais, mas o excesso dela também é ruim devido complexidade.[1]

História[editar | editar código-fonte]

Os conjuntos de instruções ortogonais surgiram com a necessidade de se facilitar a programação em nível de máquina e diminuir o tamanho dos programas. Contudo surgiram os processador do tipo RISC, e o foco passou a ser a simplicidade das instruções. Hoje em dia só restam exemplos antigos de microprocessadores que tinham conjunto de instruções absolutamente ortogonais.

Exemplos[editar | editar código-fonte]

uma arquitetura do tipo Dec Vax (década de 80) é um exemplo típico de conjunto de instruções ortogonais. Ou seja, um modo de endereçamento usado em uma instrução pode ser usada em toda as outras.

Um conjunto de instruções da arquitetura do tipo Intel X86 não pode ser considerada ortogonal.

Notas[editar | editar código-fonte]

  1. Robert Sebesta. Conceitos de linguagem de programação. [S.l.: s.n.], 2009.