Evolução Computadores
Trabalho Universitário: Evolução Computadores. Pesquise 862.000+ trabalhos acadêmicosPor: doug_pea • 3/4/2013 • 10.349 Palavras (42 Páginas) • 1.014 Visualizações
PONTIFÍCIA UNIVERSIDADE CATÓLICA
CAMPUS CONTAGEM
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Novas Arquiteturas
RODRIGO DE SOUSA LOPES
CONTAGEM, 07 DE JUNHO DE 2006.
ÍNDICE
1. O Microprocessador Intel 8080 03
2. História Do Processador 06
3. Sobre Os Microprocessadores 19
4. E Os Microcontroladores 20
5. As Novas Gerações do Athlon, Duron, Pentium Iii, Celeron E Pentium 4 21
6. Nomes Código dos Processadores 44
7. Bibliografia 49
O MICROPROCESSADOR INTEL 8080
Como exemplo de uma arquitetura de processador, vamos examinar o microprocessador Intel 8080.
O microprocessador Intel 8080 foi lançado em abril de 1974, como uma evolução do 8008.O 8080 é um microprocessador empacotado em um único micro chip LSI (Large Scale Integration) com 40 pinos DIP (dual inline packaging), tem um ciclo de máquina de 72 micro-segundos e possui um conjunto de 72 instruções. Ele possui um barramento de dados bidirecional de 8 bits e um barramento de endereços (unidirecional) de 16 bits, permitindo endereçar 64k bytes. Pode endereçar até 256 portas de entrada e 256 de saída compatível TTL (Transistor-to-Transistor Logic).
Diagrama Esquemático do Intel 8080
UNIDADE ARITMÉTICA E LÓGICA – UAL
A UAL é responsável pela execução das operações aritméticas, lógicas e de deslocamento de bits. É alimentada por um Registrador temporário - TMP, pelo Acumulador - ACC e pelo Carry Flag. O resultado da operação na UAL pode ir para o Acumulador ou, dependendo da instrução, para o barramento interno e daí para um dos registradores ou para a memória. Os resultados das operações na UAL também alimentam os Flags.
A UAL contém 3 registradores de 8 bits:
ACC
TMP
FLAGS
Indicadores de Condição (Condition Flags ou simplesmente Flags)
O registrador FLAG é setado pela UCP de forma a registrar determinadas condições relativas ao resultado de uma operação. Os flags são lidos pela UCP, para utilização pelas instruções de desvio condicional. Os flags também podem ser testados pelo usuário, usando algumas instruções especiais, mas não podem ser alterados diretamente pelo usuário.
São 5 os flags, sobrando 3 bits não utilizados. A palavra de flag tem o seguinte formato:
S Z 0 AC 0 P 1 CY
D7 D6 D5 D4 D3 D2 D1 D0
Obs.: dizemos que um bits está SETADO quando seu valor é 1, e RESETADO quando seu valor é 0.
Z (zero flag ou indicador de zero) - é setado como 1, se todos os bits do ACC como resultado de uma operação são 0. Caso qualquer um dos bits seja 1, será resetado (como 0). Serve portanto para testar se o resultado de uma operação é 0. Este flag pode ser testado pelo programador.
S (sign flag ou indicador de sinal) - é setado pelo sinal do resultado de uma operação no acumulador. O bit 7 do acumulador pode ser interpretado como o sinal do resultado. Algumas instruções setam o flag de sinal igual ao bit 7 do acumulador. Portanto, caso o resultado de uma operação seja negativo (bit 7 = 1), este flag é setado como 1. Caso o resultado seja positivo (bit 7 = 0), o bit é resetado (como 0). Este flag pode ser testado pelo programador.
P (parity flag ou indicador de paridade) - representa a paridade do resultado no acumulador. As instruções que afetam o flag de paridade setam este flag para 1 quando a paridade é par (even) e resetam (como 0) quando a paridade é ímpar (odd). Este flag pode ser testado pelo programador.
C (carry flag ou indicador de "vai um") - é usado para indicar quando uma soma no acumulador causa "vai um" (carry out) ao dígito de mais alta ordem. Também pode ser empregado como "pede emprestado" ("borrow") em operações de subtração. Este flag também pode ser afetado pelas operações lógicas (AND, OR, XOR etc.). operações de rotação de bits tratam o carry flag como um 9o bit do ACC. Quando há carry out para o 9o bit, o flag C é setado (1); quando não há carry out para o 9o bit, o flag C é resetado (0). Este flag também pode ser testado pelo programador.
AC (auxiliary carry ou indicador de "vai um" auxiliar) - indica um carry out no 3o bit do ACC. É utilizado exclusivamente pela instrução DAA (decimal adjust accumulator). O AC e a instrução DAA permitem tratar o valor do acumulador como DOIS algarismos codificados em BCD (quatro bits). A instrução DAA converte valores hexadecimais em decimais. Este flag NÃO pode ser testado pelo programador, sendo reservado exclusivamente para uso pela instrução DAA.
CONJUNTO DE REGISTRADORES DO 8080
Além dos registradores internos da UAL, o 8080 dispõe de 6 registradores de 16 bits: o Program Counter (equivalente ao Contador de Instruções que já estudamos), o Stack Pointer (Ponteiro da Pilha), 6 registradores de 8 bits arranjados em pares (que podem ser utilizados isolados, armazenando 1 byte, ou aos pares, quando então podem armazenar 2 bytes) e finalmente um par de registradores temporários de 8 bits (também podem ser utilizados aos pares, de forma a armazenarem dados de 16 bits).
STACK POINTER (SP)
PROGRAM COUNTER (PC)
W Z
B C
D E
H L
Registradores não disponíveis para o usuário
a) Stack Pointer (SP)
O stack pointer (ponteiro de pilha) guarda o endereço do próximo endereço vago na pilha (topo da pilha). O 8080 usa a pilha para manipular sub-rotinas, guardando nela os endereços
...