Cursos / Redes de Computadores / Arquitetura de Computadores / Aula
Os primeiros computadores desenvolvidos eram muito caros. Todo o esforço era utilizado para reduzir o custo final do equipamento. Em particular, a memória dos computadores era cara e armazenavam poucas informações. Portanto, era preciso que o código do programador possuísse poucos comandos e realizasse muitas ações. A redução do código tornaria mais barato o preço final do computador porque ele não necessitaria de muita memória para o seu armazenamento.
Os Processadores CISC (sigla para Complex Instruction Set Computer, ou, em uma tradução literal, "Computador com um Conjunto Complexo de Instruções") surgem deste conceito. Tais processadores possuíam instruções complexas, ou seja, uma única instrução era capaz de realizar diversas ações, como por exemplo, “ler dados da memória, realizar operações básicas (soma, subtração, etc) e depois armazenar o resultado na memória”. O processador, então, tinha que possuir uma enorme gama de instruções diferentes para que o programador pudesse usá-las e, com isso, reduzir o tamanho do código. Portanto, o entendimento da época é que o processador tinha que ser mais complexo e os códigos mais simples.
Com o passar do tempo, houve uma redução do custo dos computadores. O custo das memórias já não era um grande problema. Os processadores RISC (sigla para Reduced Instruction Set Computer, ou, em tradução literal, “Computador com um conjunto reduzido de instruções”) surgem com o intuito de reduzir a sua complexidade e seu custo.
Um processador RISC possui um conjunto mínimo (reduzido) de instruções que permite o funcionamento pleno do computador. Cada instrução era simples o suficiente para que, combinadas com outras, pudesse desempenhar as funções das instruções mais complexas. Assim sendo, como exemplo, existia uma instrução para ler dados da memória, uma outra instrução para realizar uma operação básica (uma para soma, uma para subtração, etc.), e uma instrução para gravar dados na memória. Portanto, o entendimento é que o processador deveria ser o mais simples possível e o código mais complexo.
Aparentemente, o número de instruções RISC é maior que CISC. Entretanto, como os códigos em processadores CISC necessitavam ser curtos, existiam uma enorme quantidade de instruções CISC, muito maior que a quantidade das instruções RISC, porque todas as necessidades dos programadores deveriam ser atendidas para que, então, o código fosse menor. Por este mesmo motivo, em CISC vemos diversas instruções que acessam a memória, enquanto que no RISC só existem duas (uma para leitura, uma para escrita); o tamanho das instruções em CISC é variado enquanto que é de tamanho fixo no RISC; o tempo de execução de instruções CISC poderiam variar muito, enquanto que instruções RISC tinha tempo de execução bem determinada; entre outras características.
Com o passar do tempo, o avanço da tecnologia em hardware modificou a visão de alguns projetistas e as adaptações foram surgindo em ambas as partes, de modo que atualmente não se pode afirmar com absoluta certeza que um determinado processador segue rigorosamente a linha RISC ou CISC, nem que uma linha é melhor do que a outra.
Versão 5.3 - Todos os Direitos reservados