Acrônimo para Reduced Instruction Set Computer ou Computador com Conjunto de Instruções Reduzido.

Quando um microprocessador é usado num microcomputador para realizar algum tipo de trabalho como, por exemplo, rodar um programa de contabilidade, ele opera por comandos que nada mais são do que os equivalentes as instruções.

 

Esses comandos aparecem nas linguagens de alto nível como o Pascal, C, Basic, etc. e na realidade não podem ser interpretados diretamente pelos circuitos do microprocessador.

 

Estes comandos precisam ser convertidos ou traduzidos em instruções de máquina num processo denominado compilação ou interpretação.

 

Isso significa que, para cada operação que "mandamos" o computador fazer, dependendo de sua complexidade, diversas instruções precisam ser executadas pela CPU.

 

Por exemplo, se desejamos fazer o cálculo X = A x B – C + D, este simples comando, na verdade precisa ser transformado em três instruções que são:

 

1. Fazer a multiplicação do valor armazenado em A pelo valor armazenado em B. O resultado deve ser armazenado em X.

2. Subtrair o valor armazenado em C do valor armazenado em X e guardar o resultado em X (apagando o que estava antes).

3. Somar o valor armazenado em X com o valor armazenado em D e guardar o valor final em X como resultado do comando.

 

 

 

QUANTIDADE DE INSTRUÇÕES

 

 

É lógico que seria de se pensar que quanto mais tipos diferentes de instruções um microprocessador for capaz de executar, melhor ele será.

 

Nos primeiros microcomputadores as instruções básicas que a CPU podia executar eram simples como:

* Somar dois valores

* Subtrair dois valores

* Realizar uma operação lógica do tipo AND, NAND, OR ou NOR

 

Com o tempo, entretanto, exigindo-se máquinas cada vez mais poderosas, circuitos para a execução de instruções cada vez mais complexas foram sendo agregados ao chip fazendo crescer o "set de instruções".

 

É claro que, ter um microprocessador mais poderoso é sempre muito interessante para os projetistas dos computadores, no entanto existe um problema a ser considerado: os circuitos que realizam as instruções específicas devem ser fabricados no próprio chip e quanto maior for sua complexidade ou a complexidade da instrução que deve ser executada, mais espaço eles ocupam.

 

Chega então o momento em que passamos a ter um set de instruções tão grande que passa a afetar o desempenho ou a possibilidade de se incrementar outras funções importantes do mesmo chip como os registradores, os circuitos de controle, etc.

 

Será que uma grande quantidade de instruções é realmente importante para o desempenho de um computador?

 

 

 

RISC ou CISC

 

 

No laboratório da IBM fez uma análise de como as instruções estavam sendo utilizadas pelos computadores nos diversos tipos de aplicação e o que ela descobriu foi bastante interessante.

 

Verificou-se, por exemplo, que para um computador com um microprocessador usando um set com 200 instruções, a maioria do processamento fazia uso de apenas uns 10 delas.

 

Existia assim uma grande quantidade de instruções que eram muito pouco usadas e às vezes até mesmo não eram sequer executadas uma única vez num longo programa.

 

E, mais do que isso: verificou-se que as instruções não executadas poderiam ser implementadas com a utilização das instruções básicas mais usadas.

 

Por exemplo, você não precisa agregar uma instrução especifica para extrair a raiz quadrada de um valor: você pode encontrar a raiz quadrada deste valor usando a multiplicação e a comparação um certo número de vezes.

 

É como fazemos "de cabeça" quando queremos encontrar a raiz de um número: experimentamos um valor e multiplicamos por ele mesmo. Se o valor passar o número desejado, experimentamos um valor menor, e se não o alcançar, experimentamos um valor maior. Com este procedimento executado algumas vezes podemos encontrar a raiz desejada.

 

Em outra palavras, usando menos instruções o microprocessador não perderia sua capacidade de processamento ou de realização de certas operações, pois elas poderiam ser facilmente substituída por um procedimento externo que usando as instruções existentes.

 

Para diferenciar os computadores com set de instruções mais complexos ou Complex Instruction Set Computer (em inglês) que corresponde à sigla CISC, John Cocke da IBM anunciou uma nova arquitetura com menos instruções ou com um set de instruções reduzido que em inglês, chamado de Reduced Instruction Set Computer resultou na conhecida sigla RISC

 

 

 

NO YOUTUBE