Adriano Vieira da Silva 2° InfoNoite O Que é e qual a diferenças entre Risc e Cisc?
Na pesquisa feita a seguir, é destacada a importância de cada um e quais as suas diferenças e semelhanças, que é de extrema importância para entendermos a arquitetura por trás dos computadores. Essas são as arquiteturas RISC e CISC.
RISC Com a tentativa de minimizar a distância entre o que a máquina podia realizar e entre o que a programação de alto nível exigia foi criado outro tipo de processador que privilegiava instruções mais simples, denominado como RISC (Reduced Instruction Set Computer). A arquitetura RISC como o próprio nome já diz, tem como principal objetivo simplificar as instruções de modo que elas possam ser executadas mais rapidamente. Cada instrução executa apenas uma operação, que são todas do mesmo tamanho, tem poucos formatos, e todas as operações aritméticas devem ser executadas entre registradores (dados da memória não podem ser utilizados como operandos). Praticamente todos os conjuntos de instruções (para qualquer arquitetura) lançados desde 1982 têm sido RISC, ou alguma combinação entre RISC e CISC. Essa arquitetura diferentemente da arquitetura CISC, mais antiga, possuía uma redução no número de instruções que era em torno de 50, já que uma máquina CISC continha em torno de 200 a 300 instruções. Outra grande vantagem dessa arquitetura e que a sua execução era feita diretamente no hardware, o que resultou em uma maior velocidade na execução das instruções. Isso ocorria porque a arquitetura RISC somente fazia uso das instruções CISC que eram utilizadas com mais frequência (instruções simples). Por outro lado a desvantagem dessa arquitetura era que não havia compatibilidade com os computadores e softwares da época.
CISC É a arquitetura capaz de executar um conjunto complexo de instruções, sua interpretação era feita através de microinstruções, e com isso a sua execução é mais lenta. As Máquinas CISC (Complex Instruction Set Computer) têm um conjunto de instruções grandes, de tamanhos variáveis, com formatos complexos, e apesar de um processador CISC ser capaz de executar centenas de instruções diferentes, apenas algumas são usadas freqüentemente. O uso de micro programação era uma característica que permitia aos projetistas implementar instruções complexas em hardware e muitas dessas instruções são bastante complicadas, executando múltiplas operações quando uma única instrução é dada (por exemplo, é possível realizar um loop complexo usando apenas uma operação assembly). Outras características dessa arquitetura era a redução de custos globais do sistema, redução dos custos de desenvolvimento de software e da quantidade dos mesmos, diminuindo a distância entre a linguagem humana e de máquina, e aumentando a
eficiência dos programas escritos em linguagem de alto nível, melhorando a compactação do código facilitando a detecção e correção de erros. Citado por Álvaro Borges, Danilo Junior foi dito: “Examinando do ponto de vista um pouco mais prático, a vantagem da arquitetura CISC é que já temos muitas das instruções guardadas no próprio processador, o que facilita o trabalho dos programadores de linguagem de máquina; disponibilizando, assim, praticamente todas as instruções que serão usadas em seus programas. Os processadores CISC têm a vantagem de reduzir o tamanho do código executável por já possuirem muito do código comum em vários programas, em forma de uma única instrução.” A Tabela mostra as principais diferenças entre essas duas arquiteturas; Risc e Cisc:
RISC Múltiplos conjuntos de registradores, muitas vezes superando 256 Três operandos de registradores permitidos por instrução (por ex., add R1, R2, R3) agem eficiente de parâmetros por registradores no chip (processador) Instruções de um único ciclo (ex. load e store) Controle hardwired (embutido no hardware) Altamente paralelizado (pipelined) Instruções simples e em número reduzido Instruções de tamanho fixo Complexidade no compilador Apenas instruções load e store podem ar a memória Poucos modos de endereçamento
CISC Único conjunto de registradores, tipicamente entre 6 e 16 registradores Um ou dois operandos de registradores permitidos por instrução (por ex., add R1, R2) agem de parâmetros ineficiente através da memória Instruções de múltiplos ciclos Controle micro programado Fracamente paralelizado Muitas instruções complexas Instruções de tamanho variável Complexidade no código Muitas instruções podem ar a memória Muitos modos de endereçamento