Académique Documents
Professionnel Documents
Culture Documents
Quando cada parte de uma CPU está fisicamente em um único chip circuito integrado,
ela é chamada de microprocessador. Praticamente todas as CPUs fabricadas hoje são
microprocessadores.
O termo CPU é frequentemente usado de forma pouco precisa para incluir outras partes
importantes de um computador, tais como caches e controladores de entrada/saída,
especialmente quando aquelas funções estão no mesmo chip/microprocessador da CPU.
Primeiro desenvolvimento
Sistemas numéricos
Uma ULA deve processar números usando o mesmo formato que o resto do circuito
digital. Nos modernos processadores, que quase sempre é o número binário em
representação de complemento para dois. Os primeiros computadores usavam uma
grande variedade de sistemas numéricos, incluindo os formatos complemento para um,
sinal-magnitude e mesmo o sistema decimal. ULAs para cada um desses sistemas
numéricos tinham diferentes projectos, e influenciou a actual preferência pelo
complemento para dois, e essa é a representação que é a mais fácil para a ULA calcular
adições e subtracções.
Uma simples ULA de 2-bit que faz AND, OR, XOR, e adição (clique na imagem para
explicação)
Muitas das acções dos computadores são executadas pela ULA. Esta recebe dados dos
registadores, que são processados e os resultados da operação são armazenados nos
registadores de saída. Outros mecanismos movem os dados entre esses registadores e a
memória. Uma unidade de controlo controla a ULA, através de circuitos que dizem que
operações a ULA deve realizar.
Operações simples
Um engenheiro pode projectar uma ULA para calcular qualquer operação, no entanto
isso gera complexidade; o problema é que quanto mais complexa a operação, mais cara
é a ULA, mais espaço utiliza do processador e mais dissipa energia. Então, engenheiros
sempre calculam um compromisso entre o poder de processamento e a sua
complexidade, satisfazendo aos requisitos do processador ou de outro circuito. Imagine
um cenário, onde é preciso calcular a raiz quadrada. O engenheiro teria as seguintes
opções:
1. Projectar uma ULA extremamente complexa que calcula a raiz quadrada de qualquer
número num único passo. Isso é chamado cálculo em passo-único de clock.
2. Projectar uma ULA bastante complexa que calcula a raiz quadrada de qualquer número
em vários passos. Mas, existe um truque, os resultados intermediários vão através de
uma série de circuitos arranjados em linha, como numa linha de produção. Que faz com
que a ULA seja capaz de aceitar novos números para cálculo antes mesmo de terminar o
cálculo dos anteriores. Isso faz com que a ULA seja capaz de produzir números tão
rápido como cálculos em passo-único de relógio, com um atraso inicial até os números
começarem a sair. Isso é chamado cálculo em pipeline.
3. Projectar uma ULA complexa que calcula a raiz quadrada através de vários passos. Isso
é chamado de cálculo interactivo, e usualmente confia no controle de uma complexa
unidade de controlo com microcódigo.
4. Projectar uma ULA simples no processador e vender separadamente um processador
especializado e caro que o consumidor possa instalá-lo ao lado desse, realizando uma
das opções acima. Isso é chamado de co-processador.
5. Dizer aos programadores que não há nenhum co-processador e que não há nenhuma
emulação, assim eles tem que escrever seus próprios algoritmos para calcular a raiz
quadrada por software. Isso é chamado de bibliotecas de software.
6. Emular a existência de um co-processador, ou seja, sempre que um programa tenta
realizar o cálculo da raiz quadrada, faz o processador verificar se há co-processador
presente e o utiliza se está ali; se não há, interrompe o programa e invoca o sistema
operativo para realizar o cálculo da raiz através de algum algoritmo de software. Isso é
chamado de emulação de software.
As opções acima vão desde a mais rápida e cara até a mais lenta e mais complicada.
Então, enquanto o mais simples computador pode calcular a mais complexa fórmula, os
computadores mais simples vão usualmente levar mais tempo fazendo isso porque
levam vários passos para calcular a fórmula. Processadores poderosos como Intel Core e
AMD64 utilizam a opção #1 para as operações mais simples, #2 para as operações
complexas mais comuns e #3 para as operações extremamente complexas. Isso é
possível através da construção de ULAs muito complexas nesses processadores.
Entradas e Saídas
Uma Unidade de ponto flutuante também realiza operações aritméticas entre dois
valores, mas eles realizam isso com número em representação de ponto flutuante, que é
muito mais complexa que a complemento para dois. Para fazer esses cálculos, uma UPF
tem vários circuitos complexos, incluindo algumas ULAs internas. Usualmente
engenheiros chamam uma ULA o circuito que realiza operações aritméticas com
números inteiros em complemento para dois ou BCD, enquanto circuitos que calculam
em formatos como ponto flutuante usualmente recebem esse ilustre nome.
Byte
Origem: Wikipédia, a enciclopédia livre.
Múltiplos de bytes
Prefixo binário (IEC) Prefixo do SI
Nome Símbolo Múltiplo Nome Símbolo Múltiplo
byte B 20 byte B 100
kibibyte(quilobyte) KiB 210 quilobyte kB 103
mebibyte(megabyte) MiB 220 megabyte MB 106
gibibyte(gigabyte) GiB 230 gigabyte GB 109
tebibyte(terabyte) TiB 240 terabyte TB 1012
pebibyte(petabyte) PiB 250 petabyte PB 1015
exbibyte(exabyte) EiB 260 exabyte EB 1018
zebibyte(zettabyte) ZiB 270 zettabyte ZB 1021
yobibyte(yottabyte) YiB 280 yottabyte YB 1024
A codificação padronizada de byte foi definido como sendo de 8 bits. O byte de 8 bits é,
por vezes, também chamado de octeto, nomeadamente no contexto de redes de
computadores e telecomunicações.
Para os computadores, representar 256 números binários é suficiente. Por isso, os bytes
possuem 8 bits. Basta fazer os cálculos. Como um bit representa dois valores (1 ou 0) e
um byte representa 8 bits, basta fazer 2 (do bit) elevado a 8 (do byte) que é igual a 256.
Note que um byte nada tem de especial, é apenas um número binário de oito algarismos.
Sua importância na informática deriva apenas do fato do código ASCII haver adoptado
números de oito bits, além de razões meramente construtivas ou operacionais. Por
exemplo: os códigos enviados a impressoras para controlar a impressão têm oito bits, os
valores trocados pelos modems entre computadores também, assim como diversas
outras operações elementares de intercâmbio de informações. Além disso, memórias
costumam ser organizadas de tal forma que as operações de leitura e escrita são feitas
com quantidades de um byte ou de um múltiplo de bytes (oito, dezasseis, trinta e dois,
sessenta e quatro ou cento e vinte e oito bits – o que corresponde a um, dois, quatro, oito
e dezasseis bytes, respectivamente).
Segundo norma da IEC, lançada em 2000, foi definida uma nova nomenclatura para
dados de base dois em substituição a nomenclatura usada erroneamente de base dez
separando a confusão causada entre proporção 1:1000 ou 1:1024.