Core i7, ARM, Zion, x86,
tantos nomes diferentes
para processadores
e chegou a hora de entendermos
porque existem tantos nomes assim
e, afinal de contas,
de que assunto estamos falando?
Nós já sabemos que os processador
são o cérebro do computador, ou seja,
aquele maestro que é capaz
de processar os dados
e transformar
as entradas em saídas,
mas tem um detalhe que impacta
a fabricação desses componentes.
Quando uma empresa
decide fabricar um novo processador,
ela precisa definir
qual é a arquitetura dele.
E quando estamos falando
de arquitetura, estamos falando
em como esse processador
vai se conectar
aos outros componentes
e também como vamos
dar instruções,
como nós vamos dar ordens
para ele fazer
o que precisa ser feito.
E quando o assunto é esse,
existem dois nomes de arquitetura
que estão na cabeça
de todo mundo
que inicia a jornada
no mundo da tecnologia.
Eu estou falando das arquiteturas
RISC e CISC
e é sobre elas que eu quero
explorar um pouquinho agora.
RISC, na verdade, é uma sigla
que significa
Reduced Instruction
Set Computer
ou se ligarmos a tecla SAP
e traduzir isso,
é um computador com um
conjunto de instruções reduzidas
e esse tipo de arquitetura
é muito comum,
mas ao invés de eu ficar te contando
um monte de teorias aqui,
eu quero trazer um exemplo
lúdico para entendermos
o que representa esse
tipo de computador.
Esse é um exemplo
puramente lúdico
e, aqui do meu lado esquerdo,
eu tenho um processador
que eu estou dizendo que
tem a arquitetura RISC.
Imagina que nós queremos fazer
esse cálculo matemático aqui,
então, nós queremos pegar um número
da memória RAM do computador,
somar 4 , multiplicar
por um outro número
que está em um dos registradores
desse processador e somar 1.
Eu sei que esse cálculo não faz
nenhum sentido, ainda,
que é um cálculo
totalmente hipotético,
mas vamos partir dele
para entender
como esses processadores
funcionam.
Se eu estiver falando de um
processador com a arquitetura RISC,
eu preciso trabalhar com
uma instrução de cada vez.
Afinal de contas, ele tem um conjunto
reduzido de instruções.
Isso quer dizer que primeiro
eu vou fazer a multiplicação:
4 vezes o que está
nesse registrador aqui
e vou guardar o resultado.
Depois, eu preciso
fazer a adição:
o que estava
no endereço da memória
mais o que eu
acabei de calcular
e, só então, eu vou conseguir
fazer a minha soma final.
O que eu acabei de guardar,
mais 1.
Claro que isso aqui
é só um exemplo,
mas já dá para entendermos
o que é um processador
com um conjunto reduzido
de instruções representa.
Aqui, eu não tenho
instruções complexas,
eu preciso passar cada uma
das operações separadamente
e ir guardando os resultados até
chegar naquilo que eu queria por final.
Mas agora, se eu estiver
trabalhando
com o processador
na arquitetura CISC,
que também
é uma sigla e significa
Complex Instruction
Set Computer,
ou seja, computador que tem
um conjunto complexo de instruções,
eu vou ganhar
algumas vantagens
porque esse tipo de arquitetura
suporta mais instruções,
inclusive instruções
de tamanho variável.
Então, se eu for
fazer aquele
mesmo cálculo que
está aqui em cima
na arquitetura CISC,
ao invés de eu ter
todas essas etapas,
eu teria, simplesmente,
uma etapa dizendo:
"Processador, faça esse
cálculo aqui pra mim".
Agora, por favor,
respira fundo,
porque eu não quero que
você fique com a impressão
de que o CISC
é melhor do que o RISC
ou que o RISC
é melhor do que o CISC.
Essas duas arquiteturas
diferentes foram pensadas
para resolver problemas muito
diferentes um do outro
e você deve estar pensando
que lá no caso do RISC,
onde eu tenho aquelas
instruções reduzidas
e preciso passar tudo por etapas
só existem desvantagens,
mas isso não podia estar
mais longe da verdade.
Na verdade, o RISC,
por ter menos instruções,
pode sim gerar códigos
muito mais complexos.
Só que ele tem uma
eficiência energética
muito melhor
e não é à toa.
Os processadores do tipo ARM,
que estão em boa parte dos celulares,
utilizam essa arquitetura
para funcionar.
É por isso que eles estão em
dispositivos que têm uma bateria
e não os que estão
conectados na tomada.
Por outro lado, o CISC,
tem uma grande vantagem:
apesar dele perder bastante
em eficiência energética,
ele pode gerar códigos
muito mais simples,
o que facilita a vida de
quem não é um computador
e está do outro lado.
E é por isso mesmo que um
processador como um Core i7
utiliza esse tipo de arquitetura
para funcionar.
Afinal de contas, via de regra,
temos uma garantia
de que esse computador
vai estar lá plugado na tomada.
E existem muitas outras
arquiteturas disponíveis,
cada uma para uma aplicação,
não é só o RISC e o CISC,
mas essas arquiteturas são tão
importantes que a Apple, em 2020,
decidiu lançar a sua própria
linha de processadores.
Eles pararam de utilizar processadores
de outros fornecedores
e lançaram os processadores
Apple Silicon.
E o que vai te surpreender
é que esses processadores
utilizam a arquitetura ARM,
justamente baseada
no nosso querido RISC.
Não é a toa que uma das grandes
marcas dos primeiros MacBooks,
que utilizavam
os processadores M1,
era que eles conseguiam fazer
muito utilizando pouca energia.
E também não é a toa que quando
esses notebooks foram lançados
pela Apple no mercado,
alguns programas demoraram
para ser migrados.
Afinal de contas,
uma arquitetura diferente
também implica
em softwares diferentes
para lidarem com aquele
componente específico.
Por isso, conheça o máximo
de arquiteturas possível
e entenda para que
elas servem.
Assim, você vai ser
capaz de criar
soluções muito
mais inteligentes,
tendo em mente o equipamento
que você tem em mãos.