quarta-feira, 17 de dezembro de 2008

so para maiores de 18 anos!!!!!!!



















































muitos me pediram pra colocar fotos desse tipo.
então esta aqui. me pediram pra por videos tbm mas so que os videos so depois.


sábado, 13 de dezembro de 2008

Microprocessadores


Tutorial sobre Microprocessadores
Este componente é o principal responsável pelo desempenho de um microcomputador. Exemplos de microprocessadores usados nos PCs são o Pentium, o 486 e o 386, além de outros, é claro. Todos os microprocessadores usados nos PCs são descendentes do 8086, o primeiro microprocessador de 16 bits lançado pela Intel, no final dos anos 70. Antes deles, reinavam os microprocessadores de 8 bits, entre os quais podemos citar o 8080, 0 8085, o Z80, o 6502, o 6800 e o 6809. Aqueles que usaram micros no final dos anos 70 e no início dos anos 80 devem estar lembrados de alguns deles.
Durante a discussão que faremos a seguir, encontraremos diversos termos técnicos relacionados com os microprocessadores, por exemplo:
Barramento de dados
Barramento de endereços
Acesso à memória
Acesso a entrada e saída Para facilitar a compreensão desses termos, apresentaremos aqui uma descrição simplificada de um microprocessador. Esta descrição não irá reproduzir diretamente as características dos microprocessadores usados nos PCs, mas dará ao leitor, o embasamento necessário para entender melhor esses microprocessadores.
Um microprocessador é um chip que contem o que chamamos de Unidade Central de Processamento (em inglês, Central Processing Unit, ou CPU). É responsável por buscar e executar instruções existentes na memória. Essas instruções são o que chamamos de "linguagem de máquina". São comandos muito simples, como operações aritméticas e lógicas, leituras, gravações, comparações e movimentações de dados. Essas instruções simples, quando agrupadas, formam o que chamamos de programas.
Um microprocessador precisa realizar operações de leitura da memória. Nessas leituras o microprocessador recebe as instruções a serem executadas e os dados a serem processados. Também é preciso realizar gravações de dados na memória, para guardar os resultados intermediários e finais do processamento.
Não basta ser capaz de realizar leituras e gravações na memória. Um microprocessador também precisa ser capaz de comunicar-se com o mundo exterior. Neste mundo exterior está o usuário que opera o microcomputador. É preciso ler dados provenientes do teclado, bem como transferir dados para o vídeo ou para a impressora. Essas operações são chamadas de "entrada e saída", ou E/S (em inglês, Input/Output, ou I/O).
Portanto, além de processar dados, um microprocessador deve ser capaz de realizar operações de entrada e saída, bem como realizar leituras e gravações na memória.
A figura 1 mostra, de forma bem simplificada, alguns dos sinais digitais existentes em um microprocessador. Temos o chamado "barramento de dados", através do qual trafegam os dados que são transmitidos ou recebidos pelo microprocessador. Os dados transmitidos podem ser enviados para a memória ou para um dispositivo de saída, como o vídeo. Os dados recebidos podem ser provenientes da memória, ou de um dispositivo de entrada, como o teclado. Cada uma das "perninhas" do microprocessador pode operar com um bit. No microprocessador da figura 1, temos um barramento de dados com 16 bits. Observe que as linhas desenhadas sobre o barramento de dados possuem duas setas, indicando que os bits podem trafegar em duas direções, saindo e entrando no microprocessador. Dizemos então que o barramento de dados é bidirecional.
O barramento de endereços serve para que o microprocessador especifique qual é a posição de memória a ser acessada, ou qual é o dispositivo de entrada e saída a ser ativado. Na figura 1, temos um barramento de endereços com 24 bits, já que são usadas 24 "perninhas" do microprocessador para a formação deste barramento. Observe ainda que o barramento de endereços é unidirecional, ou seja, os bits "saem" do microprocessador.
Além desses dois barramentos, a figura mostra ainda dois sinais de controle que servem para definir se a operação a ser realizada é uma leitura ou uma gravação, e se deve atuar sobre a memória ou sobre um dispositivo de E/S. São eles:
MIO: Este sinal indica se a operação diz respeito à memória ou a E/S
RW: Este sinal indica se a operação é uma leitura ou uma gravação Através desses dois sinais, podem ser definidas 4 operações básicas:
Leitura da memória
Escrita na memória
Leitura de E/S (Ex: do teclado)
Escrita em E/S (Ex: no vídeo) Os microprocessadores possuem, além do barramento de dados e de endereço, o chamado "barramento de controle", no qual existe uma miscelânea de sinais digitais com diversas finalidades. Os sinais RW e MIO exemplificados na figura 1 são parte do barramento de controle. Outros exemplos de sinais deste barramento são:
INT
Este sinal é uma entrada que serve para que dispositivos externos possam interromper o microprocessador para que seja realizada uma tarefa que não pode esperar. Por exemplo, a interface de teclado interrompe o microprocessador para indicar que uma tecla foi pressionada. Esta tecla precisa ser lida, e seu código deve ser armazenado na memória para processamento posterior. As interfaces de drives e do disco rígido interrompem o microprocessador para avisar o término de uma operação de leitura ou escrita. Vários outros dispositivos também precisam gerar interrupções. Como existe apenas uma entrada INT, o microprocessador opera em conjunto com um chip chamado Controlador de Interrupções. Este chip é encarregado de receber requisições de interrupção de vários dispositivos e enviá-las ao microprocessador, de forma ordenada, através do sinal INT.
NMI
Este é um sinal de interrupção especial para ser usado em emergências. Significa Non Maskable Interrupt, ou Interrupção não mascarável. Em outras palavras, esta interrupção deve ser atendida imediatamente. Ao contrário do sinal INT, que pode ser ignorado pelo microprocessador durante pequenos intervalos de tempo (isto se chama "mascarar a interrupção"), o sinal NMI é uma interrupção não mascarável. Nos PCs, o NMI é usado para informar erros de paridade na memória.
INTA
Significa Interrupt Acknowledge, ou seja, reconhecimento de interrupção. Serve para o microprocessador indicar que aceitou uma interrupção, e que está aguardando que o dispositivo que gerou a interrupção identifique-se, para que seja realizado o atendimento adequado.
Outros sinais
Existem ainda mais de uma dúzia de sinais no barramento de controle. Seu estudo é muito interessante para quem está preocupado em aprender detalhadamente como funciona um microprocessador e uma placa de CPU. Aqui não iremos abordá-los. Nosso objetivo é apenas fazer uma apresentação simplificada, para que você perca um pouco do medo.
Existem ainda outros sinais que não são propriamente de controle, e sim, executam uma miscelânea de funções digitais. Alguns deles são:
VCC
Esta é a entrada de corrente elétrica que alimenta os circuitos internos do microprocessador. Até pouco tempo atrás, os microprocessadores operavam com 5 volts, mas atualmente são comuns os que usam tensões da ordem de 3 volts.
GND
Significa "Ground", ou "Terra". Deve ser ligado ao polo negativo da fonte de alimentação (não se preocupe, você não precisa fazer essas ligações, basta conectar a fonte de alimentação na placa de CPU e os pinos VCC e GND de todos os chips estarão ligados). Na verdade, para obter uma melhor distribuição de corrente, os microprocessadores usam vários pinos VCC e GND.
Reset
Este é um sinal que está ligado indiretamente ao botão RESET do painel frontal do gabinete. Ao ser ativado, o microprocessador para tudo, e atua como se tivesse acabado de ser ligado.
Clock
Esta entrada deve receber um sinal digital que será usado internamente para sincronizar todo o funcionamento do microprocessador.
Não fique muito assustado com o barramento de controle, e nem com os sinais aqui descritos. Preocupe-se mais com os barramentos de dados e de endereços, pois eles serão bastante discutidos mais adiante.
Observe que sem querer já falamos em microprocessadores de 8 e de 16 bits. Existem também os que operam com 32 bits, como vermos adiante. O número de bits é uma das principais características dos microprocessadores, e exerce uma influência direta no desempenho.
Outra característica importantíssima é o clock. É medido em MHz (Megahertz), e está diretamente relacionado com o número de instruções por segundo que podem ser executadas. Os primeiros microprocessadores 8086 operavam com 5 MHz. Em meados de 1996, já tínhamos microprocessadores Pentium e Pentium Pro operando a 200 MHz.
Um microprocessador deve ser também capaz de acessar uma grande quantidade de memória. Os microprocessadores de 8 bits podiam utilizar, no máximo, 64 kB de memória, o que é uma quantidade ridícula para os dias atuais, mas bem razoável para os padrões da sua época. Depois deles vieram os microprocessadores de 16 bits. Os primeiros eram capazes de acessar até 1 MB de memória, depois vieram outros modelos que chegavam a até 16 MB. Os atuais microprocessadores de 32 bits podem endereçar até 4096 MB de memória.

Os microprocessadores de 16 bits podiam operar, opcionalmente, com um tipo especial de microprocessador chamado de coprocessador matemático. Trata-se de um microprocessador auxiliar, dedicado à execução de cálculos em ponto flutuante em alta velocidade. Um microprocessador comum podia perfeitamente realizar operações matemáticas como raiz quadrada, funções algébricas e trigonométricas, mas um coprocessador matemático faz esses mesmos cálculos a uma velocidade dezenas de vezes maior. A partir do 486, o processador matemático passou a ser incluído dentro do próprio chip do microprocessador. Ele está disponível para qualquer programa que precise executar cálculos complexos.
Passemos então a discutir as principais características dos microprocessadores, bem como os modelos que têm sido utilizados nos PCs ao longo de todos esses anos.
Número de bits internos
Daqui vem as terminologias "micro de 8 bits", "micro de 16 bits" e "micro de 32 bits". Dentro de um microprocessador, existem vários circuitos que armazenam, transportam e processam dados. Nos microprocessadores 386 e 486, tais circuitos operam com 32 bits de cada vez. Nos antigos chips 8086, 8088 e 80286, todos esses circuitos operavam com 16 bits. No Pentium e no Pentium Pro, alguns circuitos operam com 64 bits, mas a maioria deles opera com 32. Por isso, esses dois chips são considerados microprocessadores de 32 bits.
Quanto maior é o número de bits de um microprocessador, mais veloz poderá realizar cálculos e processamento de instruções em geral. Veja por exemplo, os limites de números inteiros positivos que podem ser manipulados com 8, 16 e 32 bits:
8 bits
0 a 255
16 bits
0 a 65.535
32 bits
4.294.967.296
Suponha por exemplo que um micro-processador de 16 bits precise realizar a operação 245.818.768 + 978.798.423. Ambas as parcelas desta adição não podem ser representadas em um grupo de 16 bits. Portanto, deve ser realizada por etapas. Um microprocessador de 32 bits é capaz de representar e operar tais números de forma direta, o que faz com que o cálculo seja feito, no mínimo duas vezes mais rápido. Este é apenas um exemplo no qual um microprocessador de 32 bits leva vantagem sobre um de 16 bits. Praticamente em todas as instruções, esta vantagem existe. A tabela abaixo apresenta o número de bits de todos os microprocessadores usados nos PCs.
Microprocessador
Número interno de bits
8086
16
8088
16
286
16
386SX
32
386DX
32
486DX / DX2 / SX / SX2 / DX4
32
486DLC
32
486SLC
32
Pentium
32
Pentium Pro
32
Cyrix 5x86 e AMD 5x86
32
Cyrix 6x86
32
AMD-K5
32
Número de bits externos
Para que um microprocessador seja rápido, é preciso que ele seja capaz de manipular instruções em alta velocidade. Essas instruções são armazenadas na memória, e portanto, é preciso que a memória seja acessada em alta velocidade. Em conjunto com a execução de instruções, o microprocessador também lê e armazena dados na memória, o que é mais uma razão para que a memória seja rápida. A velocidade de transferência de dados entre o microprocessador e a memória está diretamente relacionada com o número de bits do seu barramento de dados (em inglês, DATA BUS). Trata-se de um conjunto de sinais digitais que ligam o microprocessador à memória e aos dispositivos de entrada e saída de dados. Os microprocessadores de 8 bits utilizavam um barramento de dados também com 8 bits. O microprocessador 8086, operava com 16 bits, tanto internamente como externamente, ou seja, utilizava um barramento de dados também com 16 bits. Até então, o número de bits internos era igual ao número de bits externos do microprocessador, mas isto nem sempre ocorre. Por exemplo, o microprocessador 8088, usado nos primeiros PCs, operava internamente com 16 bits, e externamente com apenas 8. Já com o Pentium, ocorre o inverso: opera internamente com 32 bits e externamente com 64. A tabela abaixo apresenta o número interno e o número externo de bits dos microprocessadores usados nos PCs.
Microprocessador
Número interno de bits
Número externo de bits
8086
16
16
8088
16
8
286
16
16
386SX
32
16
386DX
32
32
486DX / DX2 / SX / SX2 / DX4
32
32
486DLC
32
32
486SLC
32
16
Pentium
32
64
Pentium Pro
32
64
Cyrix 5x86 e AMD 5x86
32
32
Cyrix 6x86
32
64
AMD-K5
32
64
Capacidade de endereçamento
Aqui está um fator que não está exatamente relacionado com a velocidade, e sim, com a capacidade de manipular grandes quantidades de dados. A capacidade de endereçamento nada mais é que o máximo tamanho que pode ter a memória, ou, seja, o número máximo de células de memória que um microprocessador consegue acessar. Para acessar uma célula (ou posição) de memória, o microprocessador precisa informar qual é o endereço desta célula. Cada célula armazena um byte. Microprocessadores com barramento de dados de 16 bits podem acessar duas células de uma só vez. Aqueles com barramentos de dados com 32 e 64 bits podem acessar até 4 e 8 células, respectivamente.
O 8086 e o 8088 possuíam barramentos de dados com 20 bits, e por isto podiam acessar 1 MB de memória. Para saber a quantidade máxima de memória que um microprocessador pode acessar, basta saber o número de bits do seu barramento de endereços e calcular 2 elevado a esta número. Portanto:
220 bytes = 1.048.576 bytes = 1 MB
224 bytes = 16.777.216 bytes = 16 MB
232 bytes = 4.294.967.296 bytes = 4 GB
Para a época do 8086 e do 8088, a capacidade de endereçar 1 MB era considerada bem elevada. Os primeiros PCs nem mesmo chegavam a usar toda esta capacidade. Eram comuns modelos com 64 kB, 128 kB e 256 kB de memória RAM. Apenas por volta de 1986 começaram a ser comuns os PCs com 512 kB e 640 kB de RAM.
O microprocessador 286, com sua capacidade de endereçar até 16 MB de memória (usava um barramento de endereços com 24 bits) foi um grande avanço em relação ao 8086 e ao 8088. Mesmo no início dos anos 90, a maioria dos PCs usava entre 1 MB e 2 MB de memória, apenas uma fração da capacidade de endereçamento do 286.
O 386, com seu barramento de endereços com 32 bits, possibilita endereçar até 4 GB de memória RAM, uma quantidade espantosamente alta até para os padrões atuais. Um PC moderno com 32 MB de RAM não está usando nem 1% da capacidade de endereçamento de 4 GB. Por isto, mesmo os microprocessadores mais modernos ainda utilizam barramentos de endereços com 32 bits. A tabela abaixo apresenta o número de bits do barramento de endereços, bem como a capacidade máxima de endereçamento de memória para os microprocessadores usados nos PCs:
Microprocessador
Número bits de
endereço
Capacidade de
endereçamento
8086
20
1 MB
8088
20
1 MB
286
24
16 MB
386SX
24
16 MB
386DX
32
4 GB
486DX / DX2 / SX / SX2 / DX4
32
4 GB
486DLC
32
4 GB
486SLC
24
16 MB
Pentium
32
4 GB
Pentium Pro
32
4 GB
Cyrix 5x86 e AMD 5x86
32
4 GB
Cyrix 6x86
32
4 GB
AMD-K5
32
4 GB
Clock
Também chamado de freqüência, o clock de um microprocessador também está diretamente relacionado com o número de instruções que podem ser executadas a cada segundo. O 8086 e o 8066, nas suas primeiras versões, operavam a 5 MHz. Isto não significa exatamente 5 milhões de instruções por segundo, e sim, 5 milhões de CICLOS por segundo. Algumas instruções mais simples podiam ser executadas em apenas dois ciclos. Desta forma, em um segundo seria possível executar 2.500.000 dessas instruções. Outras instruções mais complexas, como a multiplicação e a divisão, eram muito mais demoradas. Suponha por exemplo uma instrução que precise de 10 ciclos para ser executada. Operando a 5 MHz, esses microprocessadores poderiam executar 500.000 dessas instruções por segundo.
Com o passar do tempo e a evolução da tecnologia foi possível desenvolver microprocessadores capazes de operar com clocks mais elevados, e o que é mais importante: executar instruções em um reduzido número de ciclos. Os microprocessadores mais modernos são capazes de executar a maioria das instruções em apenas um ciclo. O Pentium e o Pentium Pro podem executar instruções de forma simultânea, tornando possível, por exemplo, executar duas instruções em um único ciclo. Isto faria com que, teoricamente, operar a 200 MHz resulte em 400 milhões de instruções por segundo.
Todos os microprocessadores são lançados em uma primeira versão, com um certo valor de clock, em geral mais elevado que o seu antecessor. Depois disso, o fabricante melhora a sua tecnologia e lança novas versões, operando com clocks mais elevados. Por exemplo, o Pentium ao ser lançado operava com 60 ou 66 MHz. Com o passar do tempo, foram lançadas versões de 75, 90, 100, 120, 133, 150, 166 e 200 MHz.
A tabela abaixo mostra os valores máximos de clock usados pelos microprocessadores usados em PCs.
Microprocessador
Clock máximo
8086
10 MHz
8088
10 MHz
286
25 MHz
386SX
40 MHz
386DX
40 MHz
486DX / DX2 / SX / SX2 / DX4
120 MHz
486DLC
40 MHz
486SLC
40 MHz
Pentium
200 MHz *
Pentium Pro
200 MHz *
Cyrix 5x86 e AMD 5x86
133 MHz *
Cyrix 6x86
150 MHz *
AMD-K5
166 MHz *
Obs.: Os microprocessadores indicados com * ainda não tiverem seu ciclo de desenvolvimento encerrado, e segundo seus fabricantes, ainda podem ser lançados com clocks mais elevados
Obs.: O Cyrix 6x86 operando com 150 MHz tem o mesmo desempenho de um Pentium-200, e por isto é chamado de 6x86 P200.
Obs.: A melhor forma de ter informações atualizadas sobre as versões mais recentes dos microprocessadores da tabela acima é consultando os seus fabricantes através da Internet:
Intel: http://www.intel.com
AMD: http://www.amd.com
Cyrix: http://www.cyrix.com
Memória cache interna
Os microprocessadores experimentaram ao longo dos anos, grandes avanços na velocidade de processamento. Um Pentium-166, por exemplo, é cerca de 500 vezes mais veloz que o velho 8088 usado no IBM PC XT. As memórias também experimentaram avanços significativos, mas muito inferiores. No início dos anos 80, eram comuns as memórias DRAM com 250 ns de tempo de acesso. As atuais DRAM mais velozes apresentam 60 ns de tempo de acesso, ou seja, são apenas 4 vezes mais rápidas. O resultado disso é um grande desequilíbrio entre a velocidade do microprocessador e a velocidade da memória.
Este problema é antigo, pois já ocorria com os computadores de grande porte durante os anos 60. Com os microprocessadores, só passou a existir tal problema a partir de 1990, aproximadamente. Antes disso os microprocessadores, sendo mais lentos, ficavam perfeitamente sintonizados com a velocidade das memórias. As memórias, mesmo sendo relativamente lentas, ainda eram capazes de entregar dados na velocidade exigida pelos microprocessadores. Somente quando o seu clock chegou a 25 MHz, os microprocessadores passaram a ter seu desempenho penalizado pela baixa velocidade das memórias.
A memória RAM usada em larga escala nos microcomputadores é chamada de DRAM (Dynamic RAM, ou RAM Dinâmica). Suas principais características são:
Preço relativamente baixo
Grande capacidade em pequeno espaço
Baixa velocidade O preço baixo e o alto grau de miniaturização fizeram com que a DRAM fosse o tipo de memória mais indicado para os microcomputadores. A sua baixa velocidade não chegava a ser um problema, pelo menos até 1990. Existe um outro tipo de memória RAM que apresenta uma velocidade de operação muito mais alta. É chamada de SRAM (Static RAM, o RAM Estática). Suas principais características são:
Preço elevado
Grande capacidade requer um grande espaço
Alta velocidade Tecnicamente seria possível equipar um PC com memória SRAM, mas teríamos duas grandes desvantagens. Uma delas é o preço. A SRAM é cerca de 10 vezes mais cara que a DRAM de mesma capacidade. A outra desvantagem é o seu baixo grau de compactação. Seriam necessárias placas de circuito enormes para dotar um PC com uma razoável quantidade de memória.
A solução utilizada pela indústria foi a mesma usada nos computadores de grande porte a partir dos anos 60. Chama-se de Memória CACHE. É formada por uma pequena quantidade de SRAM, usada para acelerar uma grande quantidade de DRAM. Quanto o microprocessador precisa ler dados da DRAM, estes são antes transferidos para a cache (isto não é feito pelo microprocessador, e sim, por um circuito especial chamado "controlador de cache"). O microprocessador obtém os dados diretamente da cache, e enquanto esses dados estão sendo lidos, o controlador de cache se antecipa e acessa mais dados da DRAM, transferindo-os para a memória cache. O resultado é que na maior parte do tempo, o microprocessador encontra dentro da cache os dados que precisa. Este processo funciona bem porque, mesmo com grandes quantidades de memória, um microprocessador passa bastante tempo utilizando trechos pequenos. Por exemplo, ao executar um programa com o tamanho de 200 kB, todo ele cabe dentro de uma cache com 256 kB (muito comum nos PCs 486). Ao executá-lo, os dados estariam, praticamente o tempo todo, sendo obtidos da rápida memória cache.
O primeiro microprocessador a utilizar memória cache foi o 486. Em seu interior existem 8 kB de memória estática super veloz, operando como cache. Este tipo de cache, localizada dentro do microprocessador, é chamada de:
Cache interna
Cache primária
Cache de nível 1 Apesar de ter apenas 8 kB, a cache interna do 486 podia acelerar consideravelmente o desempenho do acesso à memória.
Os microprocessadores 386 não tinham cache interna, e nem precisavam dela, enquanto operavam com até 20 MHz. Com o lançamento de versões de 25, 33 e 40 MHz, o baixo desempenho da memória DRAM obrigou os fabricantes a lhe acrescentarem memória cache. Esta cache não era localizada dentro do microprocessador, como ocorria com o 486. Era formada por chips de memória SRAM, e era chamada de:
Cache externa
Cache secundária
Cache de nível 2 Foram lançadas placas de CPU baseadas no 386, equipadas com 8 kB, depois com 16, 32, 64 e finalmente 128 kB de memória cache externa (isto ocorreu entre 1990 e 1993). Um computador baseado no 386DX-40, com 128 kB de cache externa, era mais veloz que um 486 de 25 MHz sem cache externa.
Hoje em dia, tanto a cache interna (dentro do microprocessador) como a externa (separada do microprocessador) são importantes para o desempenho. As placas de CPU 486 em geral possuem 256 kB de cache externa, enquanto que as baseados no Pentium possuem, em sua maioria, 512 kB de cache externa. Esses valores não são definidos pelo microprocessador, e sim, pelo fabricante da placa de CPU.
A tabela que se segue apresenta a quantidade de memória cache interna existente nos microprocessadores usados nos PCs.
Microprocessador
Cache interna
8086
-
8088
-
286
-
386SX
-
386DX
-
486DX / DX2 / SX / SX2
8 kB
486 DX4 *
16 kB
486DLC
1 kB
486SLC
1 kB
Pentium
16 kB
Pentium Pro
16 kB
Cyrix 5x86 e AMD 5x86
16 kB
Cyrix 6x86
16 kB
AMD-K5
24 kB
Obs.: O 486 DX4 da Intel possui 16 kB de cache interna. O da AMD e Cyrix possuem 8 kB.
Obs.: O AMD K-5 possui 24 kB de cache interna, divididas em duas seções independentes, sendo 16 kB para código (programas) e 8 kB para dados.Desempenho
Todos os esforços no sentido de melhorar a tecnologia dos microprocessadores giram em torno de um ponto chave: o desempenho, ou seja, a velocidade de processamento. Entre as técnicas implantadas visando obter maiores velocidades, podemos citar:
Aumento do clock
Aumento do número interno de bits
Aumento de número externo de bits
Redução do número de ciclos para executar cada instrução
Uso de cache interna e externa
Execução de instruções em paralelo Avanços em todas essas áreas têm possibilitado obter velocidades cada vez maiores. Para avaliar essas velocidades, é fundamental que existam métodos precisos para medir o desempenho de um microprocessador. No tempo do PC XT, quando apenas o microprocessador 8088 era usado, bastava indicar o seu clock, e automaticamente poderíamos ter uma idéia da sua velocidade de processamento. Por exemplo, um XT de 10 MHz era duas vezes mais veloz que um XT de 5 MHz.
Obs.: O primeiro PC XT não operava com 5 MHz, e sim, com 4,77 MHz. Portanto, um XT de 10 MHz era cerca de 2,09 vezes mais veloz que o XT original.Durante muitos anos, o desempenho dos microprocessadores usados nos PCs foi estimado através de comparações com o XT. Por exemplo, o 80286 de 6 MHz usado no IBM PC AT era cerca de 5,7 vezes mais rápido que o IBM PC XT. Esta comparação era (e ainda é) realizada através de programas chamados de BENCHMARKS. A idéia é relativamente simples. Colocava-se um XT para executar uma grande quantidade de instruções, todas elas envolvendo apenas o microprocessador e a memória, isto, é não eram levados em conta acessos a disco, ao vídeo e demais dispositivos. Marcava-se o tempo que o XT levava para executar esta miscelânea de instruções. Digamos que o XT tenha demorado, por exemplo, 10 segundos. Este tempo era registrado dentro do programa de benchmark. Ao usarmos este programa em um computador de teste, são executadas as mesmas instruções processadas pelo XT, e o tempo total de processamento sendo registrado. Suponha por exemplo que o tempo de execução foi de 2 segundos. Portanto, dividindo o tempo de execução do XT (10 segundos) pelo tempo de execução do computador em teste (2 segundos), encontramos como resultado o índice de velocidade. Neste exemplo, o computador em teste mostrou ser 5 vezes mais veloz que o XT.
Microprocessador e clock
Norton Si 8.0
Checkit 3.0
Pentium-200
640
460
Pentium-166
525
380
Pentium-150
475
340
Pentium-133
420
300
Pentium-120
380
273
Pentium-100
317
228
Pentium-90
285
205
Pentium-75
235
170
Pentium-66
209
150
Pentium-60
190
136
486DX4-120
261
166
486DX4-100
218
139
486DX2-80
174
114
486DX4-75
163
105
486DX2-66
144
91.8
486DX2-50
108
69.5
486DX-40
87.0
57.0
486DX-33
72.0
45.9
486DX-25
54.0
34.7
386DX-40
43.2
31.6
386DX-33
35.6
26.1
386DX-25
27.0
19.8
386DX-20
21.6
15.8
386SX-40
40.6
25.1
386SX-33
33.5
20.7
386SX-25
25.4
15.7
386SX-20
20.3
12.6
386SX-16
16.2
10.0
286-25
18.4
13.9
286-20
14.7
11.1
286-16
11.8
8.9
286-12
8.8
6.7
286-10
7.4
5.6
286-8
5.9
4.4
8088 10 Mhz
2.1
2.1
8088 8 Mhz
1.7
1.7
Vários programas de benchmark foram criados ao longo dos últimos anos. Todos eles são baseados na execução de uma miscelânea de instruções, a contagem do tempo para esta execução, e a comparação com o tempo requerido por um computador tomado como referência, normalmente o IBM PC XT. Sem dúvida, um dos programas mais usados na medição do desempenho de microprocessadores é no Norton Sysinfo. Outro menos cotado, mas também muito conhecido é Checkit. Ambos fazem medidas e apresentam resultados comparativos com o IBM PC XT. A tabela da página 15 apresenta os índices de velocidades de vários microprocessadores, medidos com o Norton SI 8.0 e com o Checkit 3.0.
Observando esta tabela, notamos um fato muito interessante que ocorre com os programas medidores de desempenho. Observe que os índices são iguais quando dizem respeito ao 8088. Em todos os outros microprocessadores, o Norton SI e o Checkit encontram índices diferentes. Porque esses índices são diferentes? Qual dos dois está correto?
Os índices são diferentes porque esses dois programas usam "miscelâneas de instruções" diferentes. Nos microprocessadores mais modernos, as multiplicações e divisões são incrivelmente mais rápidas que nos antigos. Entretanto, operações que realizam acessos à memória são penalizadas pelo fato das memórias não serem tão velozes quanto os microprocessadores exigem. Um programa de benchmark que utiliza operações de multiplicação e divisão tende a apresentar índices muito mais altos que outro que realiza muitos acessos à memória. O resultado é que um microprocessador pode ser muito veloz ao processar programas que fazem muitos cálculos, mas pode não ser tão veloz quanto executa programas que manipulam grandes quantidades de dados na memória.
Hoje em dia, faz pouco sentido medir o desempenho usando programas que fazem comparação com o XT. O fato de um Pentium-166 apresentar o índice 525 medido com o Norton SI não significa que ele realmente será 525 vezes mais veloz que o XT para qualquer tipo de processamento. Por exemplo, quando desabilitamos a memória cache externa de um Pentium-166, ele continua apresentando um índice de 525 medido pelo Norton SI, graças à eficiência da sua cache interna. Esta eficiência não é tão grande assim quando é preciso acessar grandes quantidades de memória. A cache interna não consegue dar conta do serviço, e o desempenho cai consideravelmente. Sem a cache externa, um Pentium-166 apresenta um desempenho similar ao de um Pentium-90, apesar do seu índice de velocidade medido com o Norton SI (ou com o Checkit) permanecer inalterado. Para medir de forma mais realista o desempenho dos PCs baseados no Pentium (o mesmo ocorre com o 586), é preciso usar programas que são baseados na execução de uma miscelânea de instruções mais comuns nos programas mais sofisticados para o ambiente Windows. Exemplos de programas adequados são o Norton Sysinfo para Windows 95, o Winbench 96 e o Winstone 96.
A tabela que se segue mostra índices de desempenho medidos com o Norton Sysinfo 95, em diversos computadores Pentium.
Microprocessador
Índice Sysinfo 95
Pentium-60
14
Pentium-66
16
Pentium-75
18
Pentium-90
21
Pentium-100
24
Pentium-120
28
Pentium-133
32
Pentium-150
35
Pentium-166
40
Pentium-200
48
Coprocessadores aritméticos
Os microprocessadores 8086 e 8088 podiam operar em conjunto com um chip especial chamado 8087. É comum chamar este chip de "coprocessador matemático". Era uma espécia de microprocessador auxiliar, especializado em realizar cálculos com números reais em alta velocidade. Enquanto o 8086 e o 8088 faziam apenas adição, subtração, multiplicação e divisão de números inteiros de 32 bits, o 8087 podia realizar essas mesmas operações, e ainda uma grande quantidade de funções algébricas (raiz quadrada, logaritmo, exponencial, etc), trigonométricas (seno, tangente, arco tangente, etc) e hiperbólicas (seno hiperbólico, cosseno hiperbólico, etc), com números reais de 80 bits de mantissa. Programas que utilizam grandes quantidades de cálculos deste tipo ficavam incrivelmente mais velozes quando usavam o 8087. Normalmente, os softwares eram fornecidos simultaneamente em duas versões, uma para operar através do 8086/8088, e outra para usar o 8087. Quando o PC não tinha o 8087 instalado, mesmo assim podia realizar esses cálculos, mas estes eram feitos por etapas, o que era muito mais demorado. Os programas que se beneficiam de um coprocessador matemático são os seguintes:
CAD (Computer Aided Design)
Programas para engenharia
Programas científicos
Programas que geram figuras tridimensionais Ao lançar os seus novos microprocessadores, a Intel sempre lançava também um coprocessador matemático compatível:
Microprocessador
Coprocessador matemático
8086 / 8088
8087
80286
80287
80386SX
80387SX
80386DX
80387DX
Ao lançar o 486, a Intel finalmente colocou o coprocessador matemático dentro de próprio microprocessador. O chamado 486DX possui um coprocessador matemático interno, enquanto o 486SX não o possui. Outros microprocessadores mais avançados como o Pentium e o Pentium Pro também possuem o coprocessador matemático interno. O mesmo ocorre com os microprocessadores 5x86 da AMD e da Cyrix, com o AMD-K5 e com o Cyrix 6x86.
O grande final
Calma, não é ainda o final do artigo. Vamos apenas apresentar uma tabela que resume as características apresentadas até agora a respeito dos principais microprocessadores.
Passaremos a detalhar individualmente cada um dos microprocessadores mencionados até agora. Você que está interessado em fazer um upgrade não irá utilizar diretamente esses conhecimentos, mas é importante saber como tudo começou e como chegou-se ao atual estado tecnológico.
Micro-processador
Bits internos
Bits externos
Bits de endereço
Memória máxima
8086
16
16
20
1 MB
8088
16
8
20
1 MB
286
16
16
24
16 MB
386SX
32
16
24
16 MB
386DX
32
32
32
4 GB
486DX
32
32
32
4 GB
486 SX
32
32
32
4 GB
486 DX2
32
32
32
4 GB
486 SX2
32
32
32
4 GB
486 DX4
32
32
32
4 GB
486DLC
32
32
32
4 GB
486SLC
32
16
24
16 MB
Pentium
32
64
32
4 GB
Pentium Pro
32
64
32
4 GB
Cyrix 5x86
32
32
32
4 GB
AMD 5x86
32
32
32
4 GB
Cyrix 6x86
32
64
32
4 GB
AMD-K5
32
64
32
4 GB
Microprocessador
Clock máximo
Coprocessador matemático
Cache interna
8086
10 MHz
8087
-
8088
10 MHz
8087
-
286
25 MHz
80287
-
386SX
40 MHz
80387SX
-
386DX
40 MHz
80387DX
-
486DX
40 MHz
interno
8 kB
486 SX
33 MHz
487SX
8 kB
486 DX2
80 MHz
interno
8 kB
486 SX2
66 MHz
-
8 kB
486 DX4
120 MHz
interno
8 kB
486DLC
40 MHz
80387DX
1 kB
486SLC
40 MHz
80387SX
1 kB
Pentium
200 MHz
interno
16 kB
Pentium Pro
200 MHz
interno
16 kB
Cyrix 5x86
133 MHz
interno
16 kB
AMD 5x86
133 MHz
interno
16 kB
Cyrix 6x86
166 MHz
interno
16 kB
AMD-K5
100 MHz
interno
24 kB
8086
Antes do lançamento do 8086, reinavam os microprocessadores de 8 bits. Respire aliviado, pois neste livro você não os estudará. Consideramos o 8086 como o ponto de partida para a atual tecnologia utilizada nos PCs. No final dos anos 70, a Intel, principal fabricante de microprocessadores (como é até hoje) lançou o 8086, o primeiro microprocessador de 16 bits. Operava interna e externamente com 16 bits, possuía um barramento de endereços com 20 bits, através do qual podia acessar até 1 MB de memória, o que era uma capacidade espantosa para a época. Inicialmente lançado em uma versão de 5 MHz, o 8086 era consideravelmente mais veloz que os microprocessadores de 8 bits. Possuía, entre outras instruções, a multiplicação e a divisão. Os microprocessadores de 8 bits não realizavam diretamente tais operações, precisavam executá-las indiretamente, através de adições e subtrações, além de outras operações chamadas de "deslocamentos de bits", através das quais era possível determinar a metade e o dobro de um número inteiro.
Apesar de ser tão veloz, o 8086 não foi um grande sucesso de vendas. Na sua época, todos os microcomputadores existentes (eram milhares, e não milhões como são atualmente) operavam com placas, memórias e chips de 8 bits. Tudo precisaria ser adaptado para operar em 16 bits, o que resultava em uma grande elevação de custo. Para resolver o problema, a Intel lançou uma versão mais simples do 8086, e chamou-a de 8088.
8088
O 8088 era internamente um microprocessador quase idêntico ao 8086, mas externamente, tinha uma diferença fundamental: seu barramento de dados operava com 8 bits, ao invés de 16. Ou seja, o 8088 era uma versão "júnior" do 8086. Pelo fato de usar um barramento de dados com 8 bits, podia operar com todo o hardware para 8 bits existente na sua época: placas, memórias e chips em geral.
Tanto o 8086 como o 8088 não eram os microprocessadores de 16 bits mais avançados de sua época. A Motorola havia lançado o MC68000, e a Zilog havia lançado o Z8000. Ambos operavam com 16 bits e eram mais avançados que o 8086 e o 8088.
Ao entrar no mercado dos microcomputadores, a IBM pretendia lançar o seu computador pessoal, que seria chamado de IBM Personal Computer, ou IBM PC. Até então, o computador pessoal que dominava o mercado há vários anos era o Apple, que operava com 8 bits. A IBM, na dúvida entre lançar um PC de 8 bits, na mesma escala tecnológica que o Apple, e um poderoso PC de 16 bits, optou pelo meio termo. Escolheu o 8088, já que internamente operava com 16 bits, seu software possuía instruções de 16 bits, mas a nível de hardware, podia ser instalado em uma placa que operasse com 8 bits. A IBM logo tratou de comprar uma parte da Intel, e usou vários dos chips fabricados por esta empresa no projeto do IBM PC. Além do 8088, que passou a ser o microprocessador mais vendido em sua época, utilizou outros chips, como o 8253, 8257, 8272 e 8237, todos eles auxiliares do microprocessador.
Pouco tempo depois, a IBM lançou uma versão melhorada do IBM PC. Era chamado de IBM PC XT (XT significa Extended Technology). Sua tecnologia estendida consistia no uso de um disco rígido de 10 MB (o PC original só podia armazenar dados em disquetes ou em fita K-7), e uma maior quantidade de memória RAM: incríveis 256 kB !!!
Durante os anos 80, o IBM PC XT foi o microcomputador mais utilizado em todo o mundo. Mesmo após o lançamento do IBM PC AT, equipado com o microprocessador 80286, o XT continuou fazendo muito sucesso devido ao seu custo mais baixo.
Tanto o 8086 como o 8088 foram lançados inicialmente em versões de 5 MHz. Com o passar do tempo, a Intel lançou o 8086-2 e o 8088-2 (operavam com 8 MHz), e depois o 8086-1 e o 8088-1 (10 MHz). A IBM não utilizou esses microprocessadores em novas versões do XT, já que estava preocupada em promover o IBM PC AT, que era muito mais veloz. Entretanto, os fabricantes de "clones" do PC (ou seja, computadores compatíveis com o IBM PC, mas fabricados por outras empresas) lançaram os chamados "XTs Turbo", operando com 8 e 10 MHz.

V-20 e V-30
No final dos anos 80, a NEC lançou microprocessadores inteiramente compatíveis com o 8086 e o 8088, a nível de software e de hardware, porém sensivelmente mais velozes. São velhos NEC V-20 (similar ao 8088) e o NEC V-30 (similar ao 8086). Muitos XTs foram vendidos naquela época, equipados com o V-20, e alguns até mesmo usando o V-30. Terminada a época dos XTs, terminou também a atuação da NEC no mercado de microprocessadores para PCs.
286
Após o 8086 e o 8088, a Intel lançou outros microprocessadores que foram muito pouco utilizados. Eram o 80186 e o 80188. Tecnologicamente pertenciam à mesma geração que o 8086 e o 8088. Operavam inclusive com clocks de 8 e 10 MHz. A sua vantagem era que utilizavam internamente diversos circuitos que antes eram implementados em chips auxiliares, como por exemplo, controladores de interrupções, timers e decodificadores de endereços. Seu objetivo era a implementação de microcomputadores usando um reduzido número de componentes. Seu sucesso foi muito limitado, e praticamente não foram utilizados em PCs.
Logo depois a Intel finalmente lançou um microprocessador bem mais avançado, o 80286. Inicialmente lançado em uma versão de 6 MHz, o 80286 era cerca de 6 vezes mais veloz que o 8088 usado no IBM PC XT. Também era, aproximadamente, 3 vezes mais veloz que um XT de 10 MHz. A IBM utilizou este microprocessador no seu novo PC, o IBM PC AT (AT significa Advanced Tecnhology). Possuía uma configuração relativamente avançada, se comparado com um XT. Sua memória poderia chegar, através de placas de expansão apropriadas, a até 16 MB. Naquela época, o hardware sempre andava à frente do software, ou seja, mesmo os sistemas operacionais e softwares mais avançados não chegavam a explorar todo o potencial do hardware existente. Mesmo podendo chegar a 16 MB, durante muitos anos reinaram os micros com 640 kB, quantidade de memória mais que suficiente para executar os softwares dos anos 80.
Da mesma forma como foram criados clones do IBM PC XT, isto também ocorreu com o IBM PC AT. No final dos anos 80, as revistas especializadas em informática estavam repletas de anúncios de PCs classe AT, muito mais velozes que os da IBM, em versões de 8, 10 e 12 MHz.
Mesmo depois do lançamento do 386, os fabricantes de microprocessadores continuaram a lançar versões mais velozes do 80286. O 80286 da Intel foi lançado em versões de 6, 8, 10, 12 e 16 MHz. Outros fabricantes, como a AMD, lançaram versões de 20 e 25 MHz.
Por volta de 1992, caiu vertiginosamente a produção de PCs baseados no 286, até a sua extinção total, que ocorreu exatamente na época em que o preço de um microprocessador 386 passou a ser praticamente igual ao de um 286.
386DX
Ao ser lançado, chamava-se 80386. Isto ocorreu em meados dos anos 80, mas somente por volta de 1990 tornaram-se comuns os PCs que utilizavam este microprocessador. O 80386 abriu a era dos 32 bits em micros da classe PC. Durante o seu ciclo de vida, foi lançado em versões de 16, 20, 25, 33 e finalmente 40 MHz. Entre 1992 e 1993, quando começou a popularização do micro no Brasil, eram muito comuns os equipados com o 386DX-40.
Apesar de ser tecnologicamente mais avançado que o 80286, o 80386 passou pelo mesmo problema sofrido pelo 8086: a dificuldade na transição para um maior número de bits. Toda a arquitetura de micros classe "PC AT" era voltada para 16 bits: memórias de 16 bits, placas de expansão de 16 bits, chips auxiliares de 16 bits. A solução dada pela Intel foi a mesma usada com o 8086: lançaram uma versão simplificada do 80386, chamado de 80386SX (poderiam tê-lo chamado de 80388). Internamente, o 80386SX operava com 32 bits, mas externamente com apenas 16. Depois disso, o 80386 original, com 32 bits internos e externos, passou a ser chamado de 80386DX.
386SX
O 386SX é a versão "júnior" do 80386. Por dentro, ele é idêntico a o 80386. Possui os mesmos circuitos e executa as mesmas instruções, de 8, 16 e 32 bits. A diferença está no barramento de dados, que opera com 16 bits, ao invés dos 32 bits usados pelo 80386 original, que passou a chamar-se 386DX. Além do barramento de dados com 16 bits, existe ainda mais uma diferença. Seu barramento de endereços, apesar de possuir 32 bits, utiliza apenas 24, o que limita seu espaço de endereçamento a apenas 16 MB. Isto não chegou a ser nenhum problema, pois na sua época, raros eram os PCs que usavam mais de 4 MB de memória.
O 386SX é sensivelmente mais lento que o 386DX. Ao fazer a leitura de dados da memória, o 386DX recebe 32 bits de uma só vez. O 386SX precisa realizar duas leituras consecutivas para completar os 32 bits. Apesar do acesso à memória ser mais demorado, o processamento é feito na mesma velocidade que o 386DX. Enquanto uma instrução está sendo executada, outra instrução é buscada na memória. Como em muitas instruções, o tempo de execução é maior que o tempo de busca, na maioria delas o tempo adicional causado pelo barramento de 16 bits não chega a causar impacto muito forte no desempenho.
Além da Intel, vários outros fabricantes produziram microprocessadores 386SX e 386DX. O principal deles foi a AMD. Foram lançadas versões de 16, 20, 25, 33 e 40 MHz.
486DX
O 80486 foi lançado em 1989. Naquela época, muito tempo passava entre o lançamento de um novo microprocessador e a disponibilidade de PCs que o utilizam. Era normal um período de um a dois anos. O mercado caminhava a passos bem mais lentos. Apenas em 1991 podíamos encontrar à venda PCs baseados em microprocessadores 486. Atualmente, antes do lançamento de um novo microprocessador, fabricantes de placas de CPU recebem protótipos para testar e usar nos projetos de suas novas placas. A produção em alta escala do microprocessador praticamente coincide com a produção das placas, seguida pela venda de PCs utilizando o microprocessador recém-lançado.
Em sua versão inicial, o 80486 operava com um clock de 25 MHz. Era cerca de duas vezes mais rápido que o 386DX-25. Em seu interior, apresentava duas grandes inovações: um coprocessador matemático interno, e 8 kB de memória cache interna.
Em muitos aspectos, o 80486 pode ser considerado como uma versão moderna do 386DX. Executa as mesmas instruções, possui barramentos de dados e de endereços com 32 bits, características comuns a todos os microprocessadores da família 486, o que inclui o 486SX, 486DX2, 486SX2 e 486DX4.
A Intel lançou posteriormente versões de 33 e de 50 MHz. A AMD e a Cyrix lançaram tempos depois os seus próprios microprocessadores 486. Entre eles, o Am486DX-40 (40 MHz) e o Cx486DX-40 (40 MHz). Entretanto, a estória não parou por aí. Tanto a Intel como a AMD e a Cyrix continuaram a lançar vários tipos de 486, como veremos a seguir.
486SX
Muitos dizem que o 486SX foi um erro cometido pela Intel. Este microprocessador era uma versão simplificada do 80486: não possuía o coprocessador matemático interno. Seu objetivo era competir com os microprocessadores Am386DX-40, que estavam fazendo um grande sucesso. Assim como o 80486 original (que passou a chamar-se 486DX), o 486SX também possui 8 kB de cache interna e barramentos de dados e endereços com 32 bits. Estava disponível nas versões de 25 e 33 MHz.
Um usuário interessado em acrescentar um coprocessador matemático ao 486SX poderia perfeitamente fazê-lo. Bastava adquirir um 487SX, que para todos os efeitos, era o "coprocessador aritmético" do 486SX. As placas de CPU baseadas no 486SX em geral possuíam um soquete pronto para a instalação deste chip. Entretanto, este tipo de instalação não era nada vantajosa do ponto de vista financeiro. Era mais barato adquirir uma placa de CPU equipada com o 486DX. O 486SX tanto foi considerado um erro, que os concorrentes da Intel (AMD e Cyrix) não lançaram microprocessadores equivalentes.
486DX2
O 486DX2 inaugurou uma característica de hardware que está presente até hoje nos modernos microprocessadores. Há muito tempo os microprocessadores já evoluíam muito mais que as memórias. Quando chegou o 486DX-50, o desequilíbrio tornou-se muito crítico. Apesar de ser tecnologicamente viável, seguro e estável um microprocessador operar internamente a 50 MHz, era muito difícil, com a tecnologia da época (1992), uma placa de CPU funcionar com uma freqüência tão elevada. Tanto as memórias como os chips auxiliares não podiam suportar de forma segura o funcionamento a 50 MHz. O resultado é que as placas de CPU baseadas no 486DX-50 eram muito problemáticas, apresentando até mesmo menor confiabilidade que as de 33 MHz.
Para resolver esses problemas, a Intel utilizou dois clocks separados, um para o funcionamento interno do microprocessador, e outro para o funcionamento externo. Todas as operações eram realizadas internamente comandadas por um clock de 50 MHz, enquanto externamente tudo ocorria à velocidade de 25 MHz. Isto resolveu todos os problemas decorrentes da elevada velocidade externa ao microprocessador, e curiosamente não causou perdas no desempenho. Mesmo acessando a memória duas vezes mais devagar, ainda assim esta nova versão do 486 era capaz de manter a cache interna sempre com instruções prontas para serem executadas. Este novo chip foi chamado de 486DX2-50. A Intel parou então de produzir o 486DX-50, ficando apenas com a versão DX2. Foram mantidos o 486DX-33 e o 486DX-25.
Logo depois, a Intel lançou o 486DX2-66. Campeão de velocidade de sua época, este microprocessador foi o mais vendido durante 1994. Este aumento de vendas ocorreu quando seus preços caíam em virtude do lançamento de microprocessadores equivalentes pela AMD e Cyrix. Inicialmente em versões de 50 e 66 MHz, foram pouco depois lançados em versões de 80 MHz. Portanto, já em 1995 tínhamos as seguintes versões do 486DX2:
Intel: 486DX2-50 e 486DX2-66
AMD: Am486DX2-50, Am486DX2-66 e Am486DX2-80
Cyrix: Cx486DX2-50, Cx486DX2-66 e Cx486DX2-80 Todos os microprocessadores 486DX2 possuem uma característica em comum: seu clock interno é igual ao dobro do externo. Por exemplo, o 486DX2-80 opera internamente a 80 MHz e externamente a 40 MHz.
486SX2
Este microprocessador fez muito pouco sucesso, tanto que foi produzido apenas pela Intel. Trata-se de uma versão mais veloz do 486SX. Disponível em versões de 50 e 66 MHz (486SX2-50 e 486SX2-66), este microprocessador não possui em seu interior o coprocessador matemático, e opera com um clock externo igual à metade do clock interno. Por exemplo, o 486SX2-66 opera internamente a 66 MHz e externamente a 33 MHz.
486DX4
A Intel foi a primeira a lançar esta versão do 486. Com clocks internos de 75 e 100 MHz (486DX4-75 e 486DX4-100), esses microprocessadores também usam valores diferentes para o seu clock externo. A grande diferença é que, ao invés do clock externo ser sempre igual à metade do interno, este divisor pode ser igual a 2, 2,5, 3 ou 4. Por exemplo, um 486DX4-100 pode operar com clocks externos de 50, 40, 33 ou 25 MHz. A escolha não é feita pelo usuário, e sim, pelo projetista da placa de CPU. Em geral, as placas de CPU equipadas com o 486DX4-100, para uso em micros de mesa (desktop) operam com o clock externo de 33 MHz, enquanto os computadores portáteis (notebooks) baseados neste microprocessador o utilizam com um clock externo de 25 MHz.
Pouco depois da Intel, a AMD e a Cyrix também lançaram seus microprocessadores 486DX4. São o Am486DX4 e o Cx486DX4. A AMD criou versões de 100 e 120 MHz. A Cyrix lançou apenas o modelo de 100 MHz.
Cx486DLC e Cx486SLC
Depois de falar em tantos microprocessadores 486 lançados pela AMD e pela Cyrix, vamos agora fazer um pequeno retrocesso no tempo. Antes de lançar seus microprocessadores 486, a Cyrix criou versões melhoradas do 386DX e do 386SX. Além de serem cerca de 30% mais velozes que microprocessadores 386 de mesmo clock, esses microprocessadores possuem ainda em seu interior, 1 kB de memória cache interna, e ainda um circuito capaz de realizar multiplicações em alta velocidade. Apesar dos envenenamentos, esses dois microprocessadores eram inteiramente compatíveis com o 386. O Cx486DLC opera com um barramento de dados com 32 bits, sendo portanto equivalente ao 386DX, enquanto o Cx486SLC usa um barramento de dados com 16 bits, sendo equivalente ao 386SX. Teoricamente é possível retirar um microprocessador 386 de uma placa de CPU e instalar um Cx486 (DLC ou SLC, conforme o original seja 386DX ou 386SX), ganhando assim, uma melhora de cerca de 30% na velocidade de processamento. Fabricantes de placas de CPU fizeram alterações simples nos BIOS de suas placas para dar suporte ao uso desses chips. Em sua época (por volta de 1993), muitas pessoas compravam computadores e placas de CPU equipados com esses microprocessadores, pensando que se tratavam de genuínos chips 486. De certa forma, a Cyrix usou um pouco de má fé ao embutir o número "486", já que na verdade esses chips possuem uma tecnologia inferior, e mais próxima do 386.
A Intel moveu um processo contra a Cyrix mas não obteve resultados, já que foi considerado que um número não pode ser usado como marca registrada. Algum fabricante poderia até mesmo vender micros XT batizados com a sigla "486". Por esta razão, a Intel mudou o nome do 80586 para Pentium, já que um nome pode ser protegido por um registro de marca, ao contrário do que ocorre com os números. Também daí originou-se o logotipo "Intel Inside", que ao ser afixado na parte externa de um computador, garante ao usuário que em seu interior existem, genuínos componentes Intel.
AMD 5x86
A Intel lançou seu último 486 na versão de 100 MHz. Como sempre, a AMD foi um pouco mais adiante, lançando uma versão de 120 MHz, e lançando também o microprocessador AMD 5x86 de 133 MHz. Do ponto de vista externo, é exatamente igual a um 486DX4 de 133 MHz. Isto não quer dizer que qualquer placa de CPU para 486DX4 possa receber este microprocessador, e sim, que os fabricantes de placas de CPU podem realizar mínimas alterações em projetos já existentes para suportar o AMD 5x86. Medidas de desempenho realizadas com o Norton Sysinfo 8.0 e o Checkit 3.0 mostram que este microprocessador é equivalente a um Pentium-90. Entretanto, para efeito de comparação com o Pentium, a indústria padronizou o uso do Winstone 96, o software medidor de desempenho usado pela revista PC Magazine e por diversas outras. Nesses testes, o 5x86 mostrou ser um pouco mais veloz que o Pentium-75.
Sendo equivalente a um 486DX4, o AMD 5x86 opera internamente com um clock de 133 MHz, e externamente usa um clock com a quarta parte deste valor: 33 MHz. Possui barramentos de dados e de endereços com 32 bits, uma cache interna de 16 kB, e um coprocessador matemático interno compatível com o da Intel. É uma boa opção se compararmos seu custo com o de um Pentium-75. É preciso entretanto tomar cuidado com a forma como computadores deste tipo estão sendo anunciados. Ao ser chamado de 586 de 133 MHz, os usuários menos informados tendem a pensar que é equivalente a um Pentium-133, o que não é verdade. Equivale em termos de velocidade de processamento a um Pentium-75.

Cyrix 5x86
A Cyrix também lançou microprocessadores 5x86, compatíveis com o 486DX4 da Intel, porém com desempenho mais elevado. Em versões de 100 e 120 MHz, o Cyrix 5x86 apresenta desempenho equivalente ao de um Pentium-75 e de um Pentium-90, respectivamente. Seu clock externo pode ser igual 1/2 ou 1/3 do clock interno. Portanto, a versão de 100 MHz pode operar externamente com 50 ou 33 MHz, e a de 120 MHz pode usar externamente 60 ou 40 MHz.
O Cyrix 5x86 possui, assim como o 486 da Intel, barramentos de dados e de endereços com 32 bits. Possui um coprocessador matemático interno, compatível com o da Intel, e uma cache interna de 16 kB.

Pentium
Inicialmente foi lançado nas problemáticas versões de 60 e 66 Mhz (apresentavam aquecimento em excesso). Problemas resolvidos, seu desenvolvimento continuou, e atualmente estamos na versão de 200 MHz. O Pentium é um microprocessador de 32 bits, mas com várias características de 64 bits. Por exemplo, o seu barramento de dados, que dá acesso à memória, opera com 64 bits. Desta forma, o tráfego de dados entre o Pentium e a memória é feito a uma velocidade duas vezes mais alta. Seu barramento de endereços permanece com 32 bits, possibilitando o acesso a uma memória máxima de 4096 MB. O Pentium possui uma memória cache interna de 16 kB, e um coprocessador matemático interno de alto desempenho. Em meados de 1994, foi descoberto que este coprocessador apresentava um pequeno erro de projeto, o que resultava em erros de cálculo com certos tipos de operação e certos valores numéricos. A Intel corrigiu o erro de projeto, e fez a substituição de todos os Pentiums já vendidos.
Aperfeiçoamentos no projeto do Pentium foram introduzidos, permitindo o lançamento de modelos com clocks mais elevados. Um dos principais melhoramentos foi a operação em baixa voltagem. Os modelos de 60 e 66 MHz operavam com 5 volts e apresentavam um excessivo aquecimento. A alteração da sua voltagem de operação para 3 volts, e a diminuição do tamanho de seus 3,5 milhões de transistores internos possibilitaram o uso de clocks mais elevados, com menor dissipação de calor. Mesmo assim, o Pentium ainda precisa operar acoplado a um microventilador.
O clock externo do Pentium é regulado para 50, 60 ou 66 MHz, dependendo do modelo. A tabela abaixo mostra os vários modelos de Pentium, o fator pelo qual o clock interno é multiplicado, e o clock externo resultante. O clock externo é multiplicado, para resultar no clock interno apropriado.
Clock interno
Fator
Clock externo
75 MHz
1,5
50 MHz
90 MHz
1,5
60 MHz
100 MHz
1,5
66 MHz
120 MHz
2
60 MHz
133 MHz
2
66 MHz
150 MHz
2,5
60 MHz
166 MHz
2,5
66 MHz
200 MHz
3
66 MHz1996 foi o ano do microprocessador Pentium. Placas de CPU que o utilizam ainda não estão extremamente baratas, mas seus custos já permitem que sejam as mais vendidas do mercado. Computadores super baratos ainda são vendidos equipados com o 486DX4-100, ou ainda com AMD 5x86 e o Cyrix 5x86. Mesmo assim, não é grande a diferença de preço que os separa de um PC equipado, por exemplo, com um Pentium-133.
Pentium Pro
O Pentium Pro é o microprocessador Intel de sexta geração. Aliás, podemos classificar os microprocessadores usados em PCs da seguinte forma:
Primeira geração: 8086, 8088, 80186 e 80188
Segunda geração: 80286
Terceira geração: 386SX e 386DX
Quarta geração: 486SX, 486DX, 486SX2, 486DX2 e 486DX4
Quinta geração: Pentium
Sexta geração: Pentium Pro Inicialmente, o Pentium Pro foi lançado em versões de 150, 180 e 200 MHz. É mais um microprocessador de 32 bits, apesar de apresentar muitos aspectos em 64 bits, como por exemplo, o seu barramento de dados. Utiliza também um barramento de endereços com 32 bits, característica que tem sido mantida desde a terceira geração de microprocessadores Intel.
O Pentium Pro possui uma cache interna (ou cacha primária) com 16 kB, e ainda uma cache secundária com 256 ou 512 kB (existem os dois modelos disponíveis). Esta é uma alteração fundamental em relação aos microprocessadores 486 e Pentium. Ambos utilizavam uma cache interna com baixa capacidade (8 kB e 16 kB, respectivamente). Além dessas caches, chamadas de internas ou primárias, placas de CPU baseadas nesses microprocessadores também utilizam uma cache secundária (faz sentido usar o também o termo "cache externa"), formada por chips SRAM externos ao microprocessador. No caso do Pentium Pro, a Intel colocou, dentro do próprio chip que o constitui, 256 kB de memória SRAM que formam a cache secundária (agora não faz mais sentido usar o termo "cache externa"). Mais tarde foram lançadas versões equipadas com 512 kB, ao invés de 256 kB.
Pelo menos na época em que este livro foi escrito (início de 1997), ainda era muito difícil falar sobre o futuro do Pentium Pro. Placas de CPU que o utilizam ainda são muito caras e vendidas em reduzida escala. É possível que sejam feitas alterações em vários dos seus aspectos, mas isto só poderemos comprovar a partir de 1997. De qualquer forma, espera-se que o Pentium ainda continue a ser o microprocessador mais vendido, sendo substituído pelo Pentium Pro em larga escala apenas a partir de 1998. Tanto é assim que, em termos de desempenho, ainda não é grande a vantagem do Pentium Pro em relação ao Pentium. Ambos estavam disponíveis com clocks máximos de 200 MHz ao lançamento deste livro. No processamento de software de 32 bits (por exemplo, programas para Windows 95), o Pentium Pro é cerca de 30% mais veloz que o Pentium. Entretanto, o Pentium leva vantagem no processamento de software de 16 bits, como por exemplo, todos os programas para MS-DOS e Windows 3.1. Muita coisa ainda vai mudar em relação ao Pentium Pro.
Finalmente resta lembrar que o Pentium Pro, a exemplo do Pentium e do 486DX/DX2/DX4, também possui um coprocessador matemático interno.
AMD-K5
Este é o Pentium lançado pela AMD. Seu nome diferente é devido ao fato da palavra "Pentium" ser uma marca registrada que não pode ser usada por outros fabricantes além da Intel. A AMD não fez uma cópia do Pentium, e sim, um microprocessador totalmente novo, com características de quinta geração, totalmente compatível com o Pentium a nível de hardware e de software. Isto significa que podemos retirar o Pentium de uma placa de CPU e instalar em seu lugar, um AMD-K5 de mesmo clock. Inicialmente, a AMD liberou versões de 75 e 90 MHz, e pouco depois de 100 MHz, seguida pela de 133 e finalmente pela de 166 MHz, já no início de 1997.

Cyrix 6x86
Este é o grande sucesso da Cyrix. Externamente, o 6x86 comporta-se de forma idêntica a um Pentium. Possui compatibilidade total, pino a pino, o que significa que podemos instalá-lo em placas de CPU Pentium. Portanto, possui características semelhantes em relação ao barramento de dados e de endereços, além da cache interna e do coprocessador matemático.
A diferença fundamental é que, em seu interior, o 6x86 apresenta características de sexta geração. Em outras palavras, a Cyrix criou um chip concorrente do Pentium Pro, mas fez o seu exterior totalmente compatível com o Pentium. O resultado é que, com um clock de 150 MHz, o 6x86 apresenta desempenho equivalente ao de um Pentium-200. Por isto, ao invés de ser anunciado como 6x86-150, é usada a indicação 6x86 P200+, o que indica que seu desempenho é superior ao de um Pentium-200. Este tipo de classificação é chamado de P-Rating (Pentium Rating). Trata-se de um tipo de medida próprio para fazer comparações com microprocessadores Pentium. Essas comparações são baseadas em um dos programas de benchmark mais aceitos, que é o Winstone 96. A tabela a seguir apresenta as versões do 6x86 e os respectivos índices P-Rating:
Modelo
P-Rating
Clock interno
6x86-P200+
P200+
150 MHz
6x86-P166+
P166+
133 MHz
6x86-P150+
P150+
120 MHz
6x86-P133+
P133+
110 MHz
6x86-P120+
P120+
100 MHz
Overdrives
Desde o 486, a Intel tem lançado versões especiais de seus microprocessadores chamadas de "Overdrive". Este tipo de microprocessador pode ser instalado exatamente no mesmo local onde antes estava outro microprocessador 486 ou Pentium (dependendo do modelo). O objetivo da instalação de um Overdrive é a obtenção de maior velocidade de processamento. Para obter este resultado, o Overdrive utiliza dois princípios básicos:
Seu funcionamento externo é idêntico ao do microprocessador que está sendo substituído.
Internamente, opera em uma velocidade superior ao do microprocessador que está sendo substituído. A Intel lançou vários modelos de Overdrive:
Overdrive 486 para ser instalado no lugar de outro 486
Overdrive Pentium para ser instalado no lugar de um 486
Overdrive Pentium para ser instalado no lugar de outro Pentium Muitas placas de CPU permitem a instalação de um microprocessador normal, sem a necessidade de um Overdrive. Por exemplo, as atuais placas de CPU Pentium permitem que seja instalado, desde um Pentium-75 até um Pentium-200. Uma placa de CPU como esta, equipada com um Pentium-90, pode ter este microprocessador removido, e substituído por exemplo por um Pentium-200. Para isto, será preciso alterar alguns jumpers da placa de CPU, para indicar o novo valor de clock interno e externo. Existem porém placas de CPU que não admitem a instalação de versões mais rápidas de um microprocessador. Quem comprou por exemplo uma placa de CPU Pentium no início de 1995, provavelmente recebeu um modelo de 90 MHz. Naquela época, as placas de CPU Pentium permitiam o uso de um único valor de clock. Seria impossível instalar, por exemplo, um Pentium-150 em uma dessas placas de CPU. Neste caso, pode ser feita a instalação de um Pentium Overdrive de 150 MHz, específico para substituir o Pentium-90.
Podemos encontrar também Overdrives 486 para serem instalados em placas de CPU 486. Por exemplo, podemos instalar no lugar de um 486DX-33, um Overdrive 486 de 66 MHz, obtendo assim uma velocidade quase duas vezes maior. Existem ainda Overdrives Pentium próprios para serem instalados em placas de CPU 486. No lugar de um 486DX2-66, podemos instalar um Overdrive Pentium de 83 MHz, conseguindo assim um desempenho quase duas vezes mais elevado.

ass:gato-bravo-e-brasileiro

Pascal II

------------------------------------------------------------------------Tutorial de Turbo Pascal ------------------------------------------------------------------------1- Tipos de Variáveis 2- Units 3- Comandos Básicos 4- Estruturas Condicionais 4.1 If.. Then.. Else 4.2 CASE 5- Estruturas de Repetição 5.1 For 5.2 While 5.3 Repeat 6- Manipulação de Strings 7- Functions e Procedures 8- Arquivos e Registros BEGIN - Todo programa começa com a declaração PROGRAM seguido de um nome do programa. - Após deve-se declarar as unidades. - Declarar as variáveis. - O algorítmo em si começa com BEGIN e termina com END. (não esqueça do ponto no end); - Todas as instruções terminam com ; . Ex.: Program example; Uses crt; Var x : integer; y : real; Begin {Aqui vai o algorítmo} End. 1 - Tipos de VARIÁVEIS - Boolean : ocupa 1 byte, só pode ter os valores True ou False (Verdadeiro ou Falso); - Real : ocupa 6 bytes, seus valores vão de 1E-38 até 1E+38; - Integer : ocupa 2 bytes, seus valores vão de -32768 até 32767, do tipo inteiro; - Word : ocupa 2 bytes, inteiro de 0 a 65535; - Longint : ocupa 4 bytes, valores inteiros de -2147483648 a 2147483647; - Shortint : inteiros de -128 a 127; - Byte : ocupa 1 byte, tipo inteiro de 0 a 255; - Char : ocupa 1 byte, tipo alfanumérico, seu conteúdo é qualquer valor da tabela ASCii; - String : ocupa de 2 a 256 bytes, cadeia de caracteres; As próximas variáveis são só para o Turbo Pascal 5 ou superior - Single : tipo real com 7 digitos - Double : tipo real com 15 digitos - Extended : tipo real com 19 digitos - Comp : inteiros de -10E18 até 10E18 Obs: A atribuição de um valor a uma variavel é com := Soma:=(1+2+3+4); 2- UNITS As units são rotinas separadas do programa principal. Para usar uma unit deve se declarar Uses. - CRT: rotinas de vídeo e som; - DOS: Controles do SO; - GRAPH: Rotinas gráficas; - PRINTER: Define LST como arquivo de texto direcionado para impressora; É possivel se criar uma unit própria, para ser usada em vários programas. Ex: UNIT Exemplo; INTERFACE PROCEDURE Logo; IMPLEMENTATION USES Crt; VAR C : Integer; PROCEDURE Logo; BEGIN For C:=1 to 15 do TextColor(c); WriteLn('------------------------'); WriteLn(' Exemplo de um logo '); WriteLn('------------------------'); END; BEGIN END. Quando num programa você declarar USES "Exemplo" e charmar a rotina "Logo" o logo aprecerá piscando na tela. 3- COMANDOS BÁSICOS DE I/O Write ou WriteLn : escreve algo num dispositivo de saída, se o dispositivo não for especificado o default será a tela do micro. WriteLn('Isto é uma string e sairá na tela'); Read ou ReadLn : Permite a entrada de dados via teclado Write('Digite um valor para X: )' Read(x); ClrScr (Clear Screen): Permite limpar a tela, posicionando o cursor no canto superior esquerdo. Equivale ao CLS do DOS. GotoXY : Posiciona o cursor em qualque parte da tela. GotoXY(Coluna, Linha); Delay : Permite uma pausa no programa em milisegundos. (Este comando funciona conforme o clock do computador, sendo diferente em cada tipo de computador); Delay(1000); 4- ESTRUTURAS CONDICIONAIS As estruturas condicionais imnpõem uma condição para que uma tarefa seja realizada. 4.1 - Condição IF.. Then.. Else (Se.. Então.. Senão); Se a condição for satisfeita enão executa um bloco de tarefas senão executa outra tarefa ou cai fora da estrutura. If Then ; OU If Then Else ; 4.2 - Instrução CASE; O comando CASE é um seletor de opções, executando a opção que for igual a expressão. Ex.: CASE Of 1:bloco; 2:bloco; 3:bloco; Else bloco; END; 5- Estruturas de REPETIÇÃO Uma estrutura de repetição repete um bloco até que a condição seja satisfeita. 5.1 FOR FOR X:=1 to 10 do Begin { O bloco será repetido até que x tenha o valor 10} end; Ex.: ClrScr; For L:=1 to 24 do begin GotoXY(1,L); WrteLn('Esta é a linha ', l); End; 5.2 WHILE While Do Enquanto a condição não for satisfeita faça Ex.: while x<100 tecla="'a';"> 2: END. FUNCTION A FUNCTION é uma rotina que nos retorna um determinado valor. Da mesma forma que uma procedure, uma FUNCTION deve ser declarada antes de ser utilizada. Ex.: PROGRAM Ex_Function; USES CRT; VAR X:INTEGER; FUNCTION RESULTADO (Y:INTEGER): INTEGER; BEGIN Y:=Y*Y; RESULTADO:=Y; END; BEGIN CLRSCR; WRITE ('DIGITE UM VALOR: '); READLN(X); X:=RESULTADO(X); WRITELN ('O RESULTADO É : ',X); DELAY (10000); END. 8 - ARQUIVOS e REGISTROS ARQUIVO Para formar um arquivo, devemos formar uma variável do tipo arquivo, além de criar comandos de abertura, leitura e fechamento. - File: Define uma variável como sendo arquivo. Ex.: Type Registro=record Nome:string[50]; Endereço:string[100]; Fone: string[8]; end; VAR Arquivo:File of Registro; Reg:registro; - Assign: Este procedimento associa um nome externo de arquivo a uma variável do tipo arquivo. Ex.: Assign (Arquivo,' d:\ficha.dat'); - Reset: Este procedimento permite abrir um arquivo já existente. No caso do arquivo não existir ocorrerá erro. Ex.: Reset(Arquivo); - ReWrite: Permite Criar e Abrir um arquivo novo. Caso o arquivo já exista, terá seu conteúdo eliminado e será gerado um novo arquivo. Ex.: ReWrite(Arquivo); - Close: Este procedimento permite que se feche um arquivo. É necessário fechar um arquivo para não ocorrer erro com a FAT do Sistema Operacional. Ex.: Close(arquivo); - Write: Permite gravar em um arquivo. Ex.: Write (arquivo, reg); {Grava todo o reg no arquivo} - EOF: Retorna o valor TRUE quando for encontrado o fim do arquivo. Ex.: While not eof(arquivo) do begin x:=x+1; Seek (arquivo,x); end; - Seek: Este procedimento permite que movamos(do verbo 'movar') o ponteiro do arquivo para uma posição preestabelecida. Ex.: Seek(Arquivo,0); - FilePos: Retorna a posição atual do ponteiro do arquivo. Ex.: x:=FilePos(Arquivo); - FileSize: Retorna o numero de registros de um arquivo. END.

ass:gato-bravo-e-brasileiro

Photoshop para a Web

A alguns anos atrás a web era um ambiente somente de texto, não existiam imagens, fotos ou sons, portanto, não muito atrativo. Era apenas uma importante fonte de informações em forma de texto, destinada a comunicação e pesquisas. Hoje, não muito tempo depois, a web tornou-se um ambiente mais versátil, que inclui além da informação o recusro dos gráficos, as imagens, as fotos, que deram uma outra "roupagem" a web. Certamente pode-se afirmar que por causa deles a web sofre, a cada dia, um enorme crescimento, não só a níveis educacionais e de pesquisas, mas a níveis de entretenimento.
E o que mais intriga e fascina tantos usuários (a mim inclusive) são os efeitos aplicados as imagens: sombras, clarões, distorções,... E para a alegria de todos, é mais fácil do que se imagina a criação de tais efeitos, torna-se apenas necessário um bom editor de imagens. Em nosso caso, usaremos o Adobe Photoshop.
Além de uma cópia do Photoshop, você precisará apenas de criatividade, para dar vida a sua home page e imagens em geral.
Criando Sombras DeslocadasTodos estão descobrindo que, ao inserir uma sombra por trás de algum texto ou imagem, ela acrescenta uma dimensão que realmente chama a atenção. É um efeito especial interessante e fácil para fornecer um apelo visual e fazer com que as pessoa prestem atenção.Lembre-se de não usar sombras em todo lugar! Se você usa sombras demais, então tudo aparece de forma igual e você perde a vantagem de usar as sombras a fim de chamar a atenção para um determinado objeto. E também certifique-se de que todas as suas sombras se pareçam! Se você pretende usar sombras sobre objetos na mesma área, certifique-se de que as sombras tenham a mesma direção e de que a "profundidade" da sombra seja apropriada. Se as sombras são diferentes entre si e desencontradas, as pessoas percebem.
Abra o seu Photoshop e inicie um novo arquivo. Escolha um fundo de cor clara, preferencialmente, branco, pois uma sombra deve ser de cor preta, outra cor não parecerá natural. É importante que as dimensões do arquivo sejam apenas o suficiente para guardar o texto, tendo apenas milímetros de margem, do contrário a figura tomará toda a sua página e nada mais caberá.
Digite o seu texto ou insira o gráfico desejado em um novo Layer. (certifique-se de que a palheta Layers está sendo exibida escolhendo o menu Window, Show, Layers.)
Duplique a layer 1. Na palheta Layers, dê um clique na Layer 1 e arraste-a na direção da parte inferior da palheta até que o botão Create New Layer (botão do meio) seja selecionado e, depois, solte o botão do mouse. Você obtem uma nova camada de cópia, chamada de Layer 1 copy.
Torna-se mais fácil lembrar-se das camadas renomeando-as. Dê um clique na copia da Layer 1 na palheta Layers e renomei-a para Shadow (sombra).
Agora dê um clique na camada Shadow na palheta Layers e arraste-a para baixo, logo abaixo da Layer 1. Se você não fizer isso, a sombra final aparecerá em cima do gráfico, o que obviamente não está correto!
Certifique-se de que a camada Shadow ainda é a camada ativa e selecione a tela de desenho inteira (Select, All). Depois, selecione a ferramenta Move e rapidamente pressione as teclas de setas à esquerda e à direita, em qualquer ordem. Isso seleciona apenas os gráficos em si, não qualquer espaço ao redor.
Preencha a seleção com preto (através do comando Edit, Fill). Se você tornar a Layer 1 temporariamente invisível (dê um clique no olho na palheta Layers), poderá ver que as suas imagens estão agora inteiramente preenchidas. (caso não tenha ocorrido, verifique se a opção Mode em Edit, Fill, Mode, está selecionada como Normal.)
Use as suas setas para mover a sua nova sombra um pixel de cada vez.
Agora, o passo mágico. Escolha o comando Filter, Blur, Gaussian Blur. Na caixa de diálogo que aparece na tela, você pode escolher diferentes definições da opção Radius e ver como fica cada uma. Enquanto a caixa de verificação Preview está marcada, você pode ver seus resultados temporários na janela da imagem principal, assim como na janela da caixa de diálogo.
Aqui está sua sombra! *O Photoshop classifica cada item criado ou inserido em um arquivo, como uma camada (layer). Cada camada pode ser editada separadamente. Imagine uma cadeira e sua sombra projetada ao fundo. A cadeira representa uma camada, a sombra outra camada e o fundo uma outra camada diferente.

ass:gato-bravo-e-brasileiro

SQL

Por que usar bancos de dados relacionais?
Por que se fala tanto em bancos de dados relacionais atualmente? É cada vez mais comum encontrar em anúncios de jornais o requisito "experiência em SGBD", ou "experiência no banco de dados tal". As empresas de head hunter confirmam esta tendência do mercado, tanto nacional quanto internacional.
Na verdade, parece que demos uma grande volta e chegamos ao mesmo lugar. Bem, não exatamente no mesmo lugar; talvez um pouco mais a frente. No passado, qualquer empresa que quisesse implantar um sistema informatizado tinha que adquirir grandes computadores, onde rodariam verdadeiros bancos de dados relacionais. SQL era praticamente um segundo idioma dos profissionais de sistemas daquele tempo, e não era possível fugir do COBOL na hora de programar.
Os micros, no entanto, já planejavam seu domínio do mundo, e em pouco tempo palavras tais como "COBOL" e "SQL" eram coisas do passado. Pareciam mais coisa de museu, e traziam à mente grandes salas, com mesas entulhadas de papel e unidades de fita magnética. Agora, tecnologia significava micro-computadores, discos de alta densidade, cd rom, Windows e etc. E para armazenar os dados? Parece que o grande sucesso foi o padrão xBase, embora outras soluções menores tenham sido usadas. E em que ponto chegamos então?
Hoje temos muitas pequenas e médias empresas ainda atravancadas ao velho padrão xBase. Há algumas que, acredite se quiser, mantém verdadeiras bases de dados em arquivos tipo DBF, chegando a 500 ou 600 megabytes de informação. Para quem já usou, ou usa, este tipo de arquivo, sabe que bases assim precisam ser reindexadas muito frequentemente. Depois desta "aventura", estas mesmas empresas estão reconsiderando seus métodos e tecnologias de armazenamento de dados.
E o que surge como a mais recente tecnologia de armazenamento de dados? Os velhos e bons bancos de dados, e sem dúvida alguma, a velha e boa linguagem SQL. É claro que voltaram com cara nova, bonitinhos em interfaces gráficas, e até algumas melhoras em seus algoritmos de armazenamento e consulta em dados. Mas afinal de contas, depois de toda esta viagem, finalmente estamos de volta em casa.

ass:gato-bravo-e-brasileiro

Visual Basic

VISUAL BASICEm primeiro lugar, devemos explicar o que é o Visual Basic. O Visual Basic consiste em umalinguagem de programação orientada a eventos. Isto significa que todas as ações que ocorremdurante a execução do programa são estruturadas nos eventos dos objetos. Por exemplo: se existirum Botão chamado Botao1, e o usuário clicar sobre ele, será acionado o evento Botao1.Click doBotao1. Caso seja dado um duplo clique, será acionado o evento Botao1.DblClick do Botao1. Os comandos usados no Visual Basic são basicamente os mesmos usados no Basic, com adiferença de que foram ampliados para satisfazer os necessidades de uma aplicação voltada paraAmbientes Gráficos. Aliás, o Visual Basic serve para gerar aplicações que serão executadas emambientes gráficos como o Windows. O Visual Basic é considerado por muitos como uma revolução no mundo da Informática, istodevido à sua versatilidade e relativa facilidade de aprendizado comparado a outras linguagens.Embora as aplicações de Visual Basic possam ser mais amigáveis para o usuário final, são maistrabalhosas para serem construídas do ponto de vista de sua interface gráfica. Isto deve-se ao fato de que todas as opções possíveis no programa devem ser pensadas ecodificadas pelo programador, o que não acontecia com linguagens anteriores. Em síntese quantomais o detalhado e fácil de se usar o programa for, mais trabalhoso será o seu processo decodificação. COMEÇANDO A EXPLORAR O VISUAL BASIC A interface do Visual Basic é muito simples. Quando abrimos esta ferramenta de programação,veremos que surgem 5 janelas: 1. A barra de menus 2. A janela de propriedades3. A caixa de ferramentas4. A barra de ferramentas5. A janela do form1. A BARRA DE MENUS A barra de menus apresenta as principais funções do Visual Basic, na forma de menus que sãoacessados através do mouse ou de uma tecla de atalho. Entre as funções disponíveis nos menus,encontram-se as ferramentas de depuração e configuração do Visual Basic, assim como asferramentas de compilação. 2. A JANELA DE PROPRIEDADES A janela de propriedades apresenta as configurações disponíveis para os objetos dispostos no form,que estão atualmente selecionados. Por exemplo, em uma caixa de texto, pode-se configurar apropriedade Font Size para 8,5, alterando deste modo o tamanho da fonte que será exibida nomonitor. 3. A CAIXA DE FERRAMENTAS A caixa de ferramentas apresenta todos os objetos e controles disponíveis no Visual Basic,acrescentados à este através de arquivos VBX. Esses arquivos são bibliotecas de ferramentas queacrescentam ao Visual Basic uma série de recursos extras, como uma Textbox ou Controles deImagens. 4. A BARRA DE FERRAMENTAS Consiste basicamente em um atalho na forma de botões, para as principais funções do menus, comosalvar o Projeto ativo. 5. A JANELA DO FORM Uma coisa é imprescindível para que um programa em Visual Basic funcione: a presença de umform. Um form nada mais é do que a janela onde o programa será exibido. O programador podeacrescentar códigos escritos para determinados eventos do form (como Load, por exemplo, que éexecutado cada vez que o form é carregado) e modificar as propriedades gerais do form (como porexemplo, o Height).. COMEÇANDO A ESCREVER O CÓDIGOUm programa em Visual Basic consiste basicamente em código escrito e na configuração daspropriedades dos objetos e dos eventos. Para modificar as propriedades de um objeto, clica-senele e depois pressiona-se F4, o que resultará na exibição da Janela de Propriedades.Para adicionar um código escrito a determinado evento de um objeto, clica-se duas vezes neste.Será exibida uma janela apropriada para a inserção de instruções via teclado. O código seráadicionado em uma SUB, que poderá ser acessada a qualquer momento pelo mesmo procedimento.É importante ressaltar que as variáveis usadas em um form, se não declaradas da forma correta,serão excluídas de eventos exteriores ao form ou objeto no qual ela está sendo usada. Em outraspalavras, uma variável criada em um form deve ser declarada como Global para ser compartilhadaentre outros forms e Subs do programa. Essas declarações são feitas na SUB General do form, ouem um módulo adicional que pode ser adicionado ao programa. Neste caso, o módulo seria umarquivo .BAS, onde são declaradas variáveis e constantes, por exemplo. PROJETO, FORM E MÓDULOSUm programa em Visual Basic divide-se basicamente em três partes, que são: projeto, form emódulos. Um form, como já explicamos, é basicamente a janela onde ficam todos os objetospresentes no programa. O Visual Basic salva cada form separadamente, em arquivos com aextensão .FRMUm projeto é basicamente um controle de vários forms interligados, que juntos proporcionaram ofuncionamento completo do programa. O Visual Basic salva o projeto em um arquivo com extensão.MAK.Esse esquema de tratamento de arquivos é uma das grandes vantagens do Visual Basic, uma vezque permite que forms de outros programas sejam adicionados a outros programas, assim comobibliotecas e funções.Os módulos são um conjunto de declarações de variáveis e constantes que abrangem todo oprojeto. O Visual Basic ainda permite que sejam adicionados a um projetos novos arquivos deferramentas (.VBX), aumentando a versatilidade e as funções de um programa. Um VBX éadicionado através do arquivo AUTOLOAD.MAK, que é carregado cada vez que o Visual Basic éiniciado. A utilização dos arquivos .VBX varia desde funções mais simples, como uma Textbox comefeitos 3D até a possibilidade de se trabalhar com gráficos mais elaborados. VARIÁVEIS NO VISUAL BASIC No Visual Basic, existem sete tipos de variáveis: · Integer: Abrange números inteiros entre -32.768 até 32.767· Long: Abrange números entre -2.147.483.648 até 2.147.483.677· String: Abrange desde 0 até 65.536 caracteres· Currency: Abrange números entre -922.337.203.685.477,5808 até 922.337.203.685.477,5807· Single: Abrange números entre +/- 1,40 x 10-45 até +/- 3,40 x 1038.· Double: Abrange valores entre +/- 4,94 x 10-324 até +/- 1,79 x 10308.· Variant: Qualquer um dos anteriores.Para declarar-se uma variável no Visual Basic, usa-se a instrução DIM, Global ou CONST,conforme for o caso. INSTRUÇÕES E LINHAS DE CÓDIGOAs instruções, linhas de código, operações matemáticas, funções de laço e de lógica do Visual Basicsão as mesmas do BASIC. Entre elas, estão presentes as tradicionais: if, then, else, goto, or, +, -, /,*, ^, for, next, do, while, loop, etc... Os comandos do Visual Basic são praticamente os mesmos doBasic, com a diferença de que a maior parte deles é voltada para a manipulação de objetos e seusrespectivos eventos. FERRAMENTAS COMUNSO Visual Basic já vem com várias ferramentas dispostas na sua Janela de Ferramentas. As maisusadas são: Picture e Image: Ambas são utilizadas para colocar uma figura gráfica no form. Label: Usada para adicionar um texto no form, o qual não poderá ser modificado pelo usuário final. Textbox: Como o próprio nome diz, é uma caixa de texto. Consiste em um local onde é permitidoao usuário digitar qualquer coisa. Frame: Usado para agrupar vários botões Option Command: Um botão. Option e Check: São botões que só possuem dois estados: ativados desativados. Combo: Gera uma lista de opções combinada com uma caixa de texto. Timer: Executa determinada ação em intervalos de tempo constantes. Common Dialogs: Caixas padronizadas para manipulação de arquivos. Além destes, existem ainda ferramentas para proporcionar controle de banco de dados, objetosimportados de outros aplicativos, etc... As funções citadas acima são quase imprescindíveis para seescrever um programa simples. EVENTOS COMUNSO Visual Basic apresenta alguns eventos de objetos que são usados freqüentemente, e seapresentam na maior parte dos objetos de um form.Abaixo segue uma relação dos principais e suas respectivas funcões: · Click: É um evento que executa determinadas ações especificadas pelo programador quandoalguém clica sobre alguma coisa.· Dblclick: Executa determinadas ações especificadas pelo programador quando alguém clica duasvezes sobre algum objeto.· Resize: executa algum comando pre estabelecido quando o usuário redimensiona o form.· Load: executa ordens sempre que o programa for carregado na memória.· Gotfocus: quando um objeto, um botão por exemplo, apenas ganha o foco, sem executar as suasfunções em outros eventos.· Lostfocus: quando o foco passa para um outro objeto.· Keypress: quando é pressionada alguma tecla, geralmente em caixas de texto, são acionadosdeterminados comandos.· Mousemove: sempre que se move o mouse, algo será ativado. Um exemplo prático, são osprotetores de tela, que são desativados quando mexemos o mouse. PROPRIEDADES GERAISAs principais propriedades dos objetos do Visual Basic, que estão presentes em praticamente todosos objetos do Visual Basic, são as seguintes: · Caption - Nos botões, form, e frames, altera o seu título a ser exibido no form.· Enabled - Presente em todos os objetos, permite que os objetos sejam acessados, caso ela estejadefinida como False. · Visible - Torna o objeto invisível caso esta propriedades esteja configuradacomo False.· Fontname - presente em objetos como textbox, label, botões command e botões check e option.Permite que seja alterada a fonte de um objeto, como uma Textbox, passa a ter fonte Arial, ao invésde fonte Times New Roman.· Fontsize: Muda o tamanho da fonte.· Name - altera o nome do objeto, para fins de referência durante a programação.· Forecolor, Backcolor - define a cor da fonte e do fundo de uma textbox e uma label, por exemplo.· Propriedades do form: Height (altura do form), Weight (largura do form), Maxbutton (ativa oudesativa a presença do botão Maximizar), Minbutton (ativa ou desativa presença do botãoMinimizar), Left (altera a distância do form a partir da extrema esquerda do vídeo) e Top (altera adistância do form a partir do topo do vídeo).Em geral, todas as propriedades dos objetos presentes no Visual Basic são bastante intuitivas, noque se refere ao seus nomes. Isto pode ser notado claramente nas propriedades Visible, Enabled,Name, entre outras. OBJETOS OLE E LINKS COM OUTROS PROGRAMASUma das vantagens do Visual Basic é permitir o intercâmbio de informações entre os programas doWindows. Assim, é possível abrir um banco de dados do Access através de um programa escritoem Visual Basic. Além disto, com o uso de objetos OLE (Object Linking and Embedding), épossível inserir um arquivo .WAV dentro do seu programa. MENUSO Visual Basic, tendo em vista o uso freqüente de menus em praticamente todos os aplicativos paraWindows, criou uma ferramenta para facilitar a criação destes. Ela se chama Menu Design. Comesta opção, criam-se ferramentas poderosas e atraentes, de forma rápida e simples. Apenas com ainserção do nome do menu e do texto com o qual ele vai aparecer, é possível criar menus, queserão considerados SUBs e objetos no programa.Tendo em vista que a presença de menus facilita bastante o uso de funções freqüentes, é semprebom colocá-los em seus programas. Visual Basic 5.0 Entre outras opções, a segunda versão do Visual Basic para Windows 95 (a primeira foi a 4.0),destacam-se aquelas referentes à criação de arquivos DLL e VBX, que são bibliotecas decomandos e ferramentas voltadas para o Visual Basic, a ferramenta de criação de formuláriosreferentes à banco de dados, a nova interface, que permite que se trabalhe em mais de um projetoao mesmo tempo e muitas opções que permitem a reciclagem de código, diminuindo o trabalho doprogramador.Quanto a criação de DLL e VBX, este trabalho foi muito facilitado, uma vez que nas versõesanteriores, era necessário se trabalhar com linguagens como o Visual C++ e o Delphi. Agora, existeum módulo que compila o código fonte para DLL ou VBX.Uma das grandes deficiências apontadas por programadores experientes era a dificuldade de segerar um formulário no estilo Access para o Visual Basic. Era necessário muito trabalho deinterligação entre a tabela Access e os objetos Visual Basic. Agora, existe um Wizard (assistente)que facilita e muito esta tarefa.Na interface, houveram sensíveis mudanças, com o uso de vários projetos ao mesmo tempo, o quetorna a interação entre os projetos muito mais rápida. Neste sentido, a janela de propriedades, velhaconhecida de qualquer programador em Visual Basic, foi remodelada, apresentando aspropriedades em ordem alfabética, como nas versões anteriores, ou na versão por categorias,deixando agrupadas propriedades de layout, de dados, etc, como no Microsoft Access, porexemplo.Aproveitando o assunto de vários projetos ao mesmo tempo, uma das melhores vantagens doVisual Basic 5.0 foi a interligação entre os projetos: caso um form que esteja sendo usado por maisde um projeto seja alterado, o Visual Basic avisará ao usuário dessa alteração e de quepossivelmente poderá haver erro em algum projeto, uma vez que as propriedades não se cruzarãocorretamente.

ass:gato-bravo-e-brasileiro