![Page 1: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/1.jpg)
Organização de Computadores
Paulo Maciel
![Page 2: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/2.jpg)
Arquitetura de Computadores
Introdu₤₧oResumo HistóricoComponentes computadorComponentes de um
processadorOpera₤ões de um
processador Sistema de Interconex₧o
Estruturas Estáticas e Dinâmicas
Barramentos Memória Interna
Memória SemicondutoraMemória Cache
Memória Externa Disco Magn₫tico CD-ROM Fita Magn₫tica
Dispositivos de Entrada e Saída I/O Programado Tratado por Interrup₤₧o DMA Canais SCSI
![Page 3: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/3.jpg)
Arquitetura de Computadores
Suporte do Sistema OperacionalVis₧o Geral de um Sistema
OperacionalEscalonamentoGerenciamento de Memória
Unidade de ProcessamentoComponentes
Via de DadosUnidade de Controle
Aritm₫ticaControle HardwiredControle MicroprogramadoRISC versus CISC
![Page 4: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/4.jpg)
Arquitetura de Computadores
SoftwareModos de endere₤amento
de dados e programaInstru₤õesIntrodu₤₧o à programa₤
₧o Interrup₤ões
Classifica₤₧oProcessamento de
Interrup₤ões Macroassembly Programando com Servi₤os
do Sistema Operacional
Arquitetura X86 Modos de opera₤₧o Modelo de software Descri₤₧o funcional Opera₤ões sobre o
barramento Pipelining Processador Super-escalar Previs₧o de desvio Memória cache Cache de instru₤₧o e de
dados Unidade de Ponto Flutuante
![Page 5: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/5.jpg)
Arquitetura de Computadores
Material Didático:
Computer Organization and Architecture
Autor: William Stallings
Editora : Prentice-Hall, Inc
The Pentium Microprocessosr
Autor - James L. Antonakos
Editora: Prentice-Hall, Inc.Outros Livros
![Page 6: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/6.jpg)
Computadores Mecânicos
Máquina de Pascal
– Opera₤ões:Soma e Subtra₤₧o
– Manivela
Blaise Pascal (1623-1662)
Máquina Analítica
– Componentes:» Armazenamento
» Engenho
» Se₤₧o de Entrada
» Se₤₧o de Saída
– Cartões Perfurados
– Charles Babbage (1792-1871)
– Ada Lovelace
![Page 7: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/7.jpg)
Computador El₫trico
Advento da Energia El₫trica
Desenvolvimento da tecnologia eletrot₫cnica– dispositivos eletromagn₫ticos– rel₫s
Automatiza₤₧o dos processos mecânicos
Máquinas de Aiken
– Rel₫s
– Dígitos decimais
– Fita de papel perfurado
![Page 8: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/8.jpg)
Computador Eletrônico
– Máquina Enigma
COLOSSUS (1943) » 1° computador eletrônico
Alan Turing
![Page 9: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/9.jpg)
1ª Gera₤₧o (1945-1955)
– ENIAC» Tecnologia - Válvulas e rel₫s
» Arquitetura: 20 registradores
10 digitos decimais
» Programa₤₧o: Chaves
Jonh Mauchley
– UNIVAC– IBM 7090
![Page 10: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/10.jpg)
1ª Gera₤₧o (1945-1955) EDSAC - Jonh von Neumann
– Tecnologia - Válvulas e rel₫s
– Arquitetura:» Componentes
• Memória
• Unidade lógico-aritm₫tica
• Unidade de controle
• Equipamentos de entrada
• Equipamentos de saída
» Aritm₫tica binária
– Programa em linguagem de baixo nível armazenado em memória
Memória
Unidadede
ControleULA
Entrada Saída
Acumulador
Arquitetura de von Neumann
![Page 11: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/11.jpg)
Camadas de um Sistema Computacional
Linguagens
Sistemas Operacionais
Máquinas
MáquinaMáquina
SOSO
Aplica₤õesAplica₤ões
![Page 12: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/12.jpg)
1ª Gera₤₧o (1945-1955)
Máquinas
– UNIVAC
– IBM 7090
LinguagensLinguagens Código AbsolutoCódigo Absoluto
Fios e PaineisFios e Paineis
Nesta ₫poca os Nesta ₫poca os conceitos de linguagemconceitos de linguagemde programa₤₧o e dede programa₤₧o e desistemas operacioniassistemas operacioniasn₧o estavam clarosn₧o estavam claros
Um único grupo de Um único grupo de pessoas projetava, pessoas projetava, construia, programava, construia, programava, operava e efetuava operava e efetuava manuten₤₧o das máquinasmanuten₤₧o das máquinas
![Page 13: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/13.jpg)
2ª Gera₤₧o (1955 - 1965)
Advento do Transistor– redu₤₧o de dimensões– redu₤₧o do consumo de
pot₨ncia– possibilita a constru₤₧o de
equipamentos mais complexos
TX-0» 1° Computador transistorizado
– MIT PDP-1
– Metade do desempenho do IBM 7090
– ~5% o valor do IBM 7090
– DEC IBM 1401 IBM 7094
![Page 14: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/14.jpg)
2ª Gera₤₧o (1955 - 1965)
Sistema Operacional Batch
– Fortran Monitor System
– IBSYS
Distin₤₧o clara das atividades e grupos de pessoas na execu₤₧o de tarefas
Linguagens de Alto Nível Linguagens de Alto Nível
FORTRANFORTRAN
ALGOLALGOL
![Page 15: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/15.jpg)
3ª Gera₤₧o (1965 - 1980)
Circuitos Integrados– redu₤₧o de dimensões– redu₤₧o do consumo de
pot₨ncia– possibilita a constru₤₧o de
equipamentos mais complexos– melhoria de desempenho
Microprocessadores
IBM System/360– Família de Computadores com
diferentes desempenhos, precos, mas compatíveis.
DEC PDP-11– Minicomputador de 16 bits.
Microprocessadores– INTEL
» 4004,8008,8080,8085,8086– ZILOG
» Z80– Motorola
» 68000
![Page 16: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/16.jpg)
3ª Gera₤₧o (1965 - 1980)
Multiprograma₤₧o
Timesharing
Simula
Pascal
C
ML
Smalltalk
![Page 17: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/17.jpg)
4ª Gera₤₧o (1980 - ?)
Very Large Scale Integration
Computadores Pessoais
Workstations
Computadores– Cray– SUN - 20– IBM SP2
Processadores
– Intel PENTIUM
– ALPHA Digital
– PowerPC
![Page 18: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/18.jpg)
4ª Gera₤₧o (1980 - ?)
Sistemas Operacionais para Redes
Sistemas Operacionais Distribuídos
Unix, Windows NT
C++
VisualBasic(Programa₤₧o Visual)
Java(Aplica₤ões para WEB)
![Page 19: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/19.jpg)
Arquitetura de Computadores
Abordagens de Hardware e de Software
Seqü₨ncia de Fun₤ões Aritm₫tica
e Lógicas
Dados Resultados
Programa₤₧o em Hardware Fun₤ões Aritm₫tica
e Lógicas dePropósito Geral
Dados Resultados
Programa₤₧o em Software
Interpretadorde
Instru₤ões
Códigos deInstru₤ões
Controle
![Page 20: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/20.jpg)
Arquitetura de Computadores
Diagrama em Bloco
I/O Paralelo I/O Serial Circuitos de Interrup₤₧o
Circuitos de Temporiza₤₧o CPU Memória
![Page 21: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/21.jpg)
Sistema de Memória
Hierárquia– Interna
» Registradores
» Cache
» Memória Principal
– Externa» Disco Magn₫tico
» Fita
Desempenho × Custo
Princípio da Localidade
Memória de Massa
Memória Principal
Reg.
![Page 22: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/22.jpg)
Processador Hipot₫tico
Reg. UsoGeral
Data buffer
Latch End.
A
Unidade de Controle
Reg. Inst
Dec. InstFlags
Reg. Aux.ALU
.......................
Barramento de Dados
Barramento de Endere₤osBarramento de Controle
•Desempenho•Espa₤o de endere₤amento
![Page 23: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/23.jpg)
Arquitetura de Computadores
Ciclo de Instrução
– Ciclo de Busca
– Ciclo de Decodificação
– Ciclo de Leitura
– Ciclo de Execução
– Ciclo de Escrita
![Page 24: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/24.jpg)
Arquitetura de Computadores
Formato Genérico de Uma Instrução
Exemplos:– mov al,01h
– mov al,[0400]
– mov al,[bx+si]
Código da Instrução Dado, Endereço ou Modo de Endereçamento
![Page 25: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/25.jpg)
Arquitetura de Computadores
Diagrama de Estado do Ciclo de Instrução
BuscaInst.
Cal. End.Prox. Inst.
Lê Operand.
Cal. End.Operand.
Exec.Operaç.
Cal. End.Operand.
Escrev.Operand.
Dec.Inst.
MúltiplosOperandos
Múltiplos Resultados
Retorna para string ou vetorInstrução Finalizada. BuscaNova Instrução
![Page 26: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/26.jpg)
Arquitetura de Computadores
Interrupções
– Internas - erro de paridade, divisão por zero
– Externas - relógio, teclado – Mascarável - pode ser inibida
– Não Mascarável - não pode ser inibida
![Page 27: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/27.jpg)
Arquitetura de Computadores
Interrupções na Arquitetura x86
– Hardware Internas
Externas Mascarável
Não-Mascarável
– Software Sistema Operacional
Usuário
![Page 28: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/28.jpg)
Arquitetura de Computadores
Programa do Usuário Servi,co de Interrupção
12
ii+1
m
![Page 29: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/29.jpg)
Arquitetura de Computadores
Diagrama de Estado do Ciclo de Instrução com Interrupção
BuscaInst.
Cal. End.Prox. Inst.
L₨ Operand.
Cal. End.Operand.
Exec.Operaç.
Cal. End.Operand.
Escrev.Operand.
Dec.Inst.
MúltiplosOperandos
Múltiplos Resultados
Retorna para string ou vetorInstrução Finalizada. BuscaNova Instrução
Verif. sehá interrp.
Interrupção
Sem Interrup.
![Page 30: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/30.jpg)
Arquitetura de Computadores
Programa do Usuário Serviço da Interrupção X
12
ii+1
jj+1
m
Serviço da Interrupção Y
Múltiplas Interrupções
![Page 31: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/31.jpg)
Arquitetura de Computadores
Programa do Usuário Serviço da Interrupão X
12
ii+1
m
Serviço da Interrupção Y
Interrupções Aninhadas
Jj+1
![Page 32: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/32.jpg)
Arquitetura de Computadores
I/O I/O
CPU Memória
Barramento
Dados
Endereço
Controle
•Desempenho•Espaço de endereçamento
![Page 33: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/33.jpg)
Arquitetura de Computadores
Barramento
Linhas de Controle TípicasEscrita em memóriaLeitura de memóriaEscrita em I/OLeitura de I/OSolicitação de BarramentoReconhecimento da Solicitação do BarramentoSolicitação de InterrupçãoReconhecimento de InterrupçãoClockReset
![Page 34: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/34.jpg)
Arquitetura de Computadores
Barramento Hierárquico
CPU Cache
Memória
Modem I/O Serial SCSI Network
ControladorLocoal de I/O
Interfacede Expansão
Barr. Local
Barr. do Sistema
Expansão do Bus
![Page 35: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/35.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Tipo
Multiplexado Dedicado
I/O Paralelo I/O Serial
CPU Memória
Vantagem•Menos linhas•Possível menor Custo
Desvantagem•Circuitos dosmódulos émais complexo•Desempenho
![Page 36: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/36.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Tipo
Multiplexado Dedicado
I/O Paralelo I/O Serial
CPU Memória
Vantagem•Menor contenção•Desempenho
Desvantagem•Mais linhas•Custo
Adaptador
Barr. de I/O
Adaptador
Barr. local
![Page 37: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/37.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Método de Arbitragem
CentralizadoDistribuído
P0LM0P1
LM1Árbitro
Req0 Req1
Gnt0 Gnt1
I/OSM
![Page 38: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/38.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Método de Arbitragem
CentralizadoDistribuído
P0LM0
I/OSM
P1LM1 P2LM2
Term.Barr.
Term.Barr.
BPI BPI BPIBPO BPO
BPOBusy
![Page 39: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/39.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Temporização
SíncronoAssíncrono
Válido
P/ CPU
mrq
rd
add
data
clk
Leitura de Memória
CPU Memória
Circuitos de Temporiza₤₧o
clk
mrq
rd
AD bus
![Page 40: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/40.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento Temporização
SíncronoAssíncrono
Válido
P/ CPU
msyn
rd
add
data
Leitura de Memóriassyn
CPU Memória
msyn
ssyn
rd
AD bus
![Page 41: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/41.jpg)
Arquitetura de Computadores
Elementos de Projeto de um Barramento
Largura
Baramento de Dados : desempenho
Barramento de Endereço: espaço de endereçamento
![Page 42: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/42.jpg)
Arquitetura de Computadores
PCI - Peripherical Component Interconnect
CPU
Ponte/Controlador de
Memória
Áudio
Dispositivos I/O
SCSI
Ponte paraExpansão
Barr. Local
Barramento PCI
Expansão do Bus
DRAM
Contolador deVídeo
Vídeo
Cache
Network
![Page 43: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/43.jpg)
Arquitetura de Computadores
PCI - Peripherical Component InterconnectEstrutura
Pinos de Sistema (reset e clock)Pinos de Dados e Endereços (32 linhas multiplexadas de dados e
endereços, erro de paridade)Pinos de Controle de Interface (Coodernação e controle de transações entre dispositivos - IRDY, TRDY, IDSEL, DEVSEL) Pinos de Arbitragem - (Req, GNT)Pinos de Erro - (PERR,SERR)Pinos de Interrupção - (INTA,INTB,INTC,INTD)Pinos de Suporte à Cache - (SOB,SDONE)Pinos de Extensão para Barr. de 64 Bits - (Linhas de endereço e dados multipliexadas, linhas de erro etc)Pinos JTAG - ( Procedimentos de teste definidos no padrão IEEE 1149.1)
![Page 44: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/44.jpg)
Arquitetura de Computadores
PCI - Peripherical Component InterconnectComandos
Reconhecimento de InterrupçãoCiclo Especial - (Utilizado por um iniciador para enviar comando para mais de um destino ao memo tempo)Leitura e Escrita de I/OLeitura de Memória
LeituraLeitura de LinhaLeitura Múltipla
Escrita em MemóriaEscrita em Memória com InvalidaçãoLeitura de Configuração de DispositivoEscrita de Configuração de DispositivoCiclo de Endereçamento Dual - (Endereçamento de 64 bits)
![Page 45: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/45.jpg)
Sistema de Memória
Hierárquia– Registradores
– Cache
– Memória Principal
– Disco Magnético
– CDROM
– Fita
• Memória Interna
• Memória Externa
• Memória Off-line
![Page 46: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/46.jpg)
Sistema de Memória
Memória Principal - semicondutora -Volateídade Categoria Tipo Apagamento Escrita
Volátil E/L RAM Elétrico Elétrico
Só leitura ROM Ñ é Possível Máscara
PROM Elétrico
Ñ volátil Quase só EPROM UV
de leitura EEPROM Elétrico
![Page 47: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/47.jpg)
Sistema de Memória
Memória ROM
A0
An-1 Dm-1
D0CS
n mROM
Diagrama em Bloco
Vcc
Vcc
Vcc
D0 D1 D m-1
A0
An-1
CS
Estrutura Interna
Lógicade
Decod.
![Page 48: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/48.jpg)
Sistema de Memória
Memória PROM
A0
An-1 Dm-1
D0CS
n mPROM
Diagrama em Bloco
Vcc
Vcc
Vcc
D0 D1 D m-1
A0
An-1
CS
Estrutura Interna
Lógicade
Decod.
Fusível
![Page 49: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/49.jpg)
Sistema de Memória
Memória EPROM
A0
An-1 Dm-1
D0CS
n mEPROM
Diagrama em Bloco
OE/Vpp
Modo Entradas Saídas
CS OE/Vpp
Ler/ VL VL dados_saídaVerificarSaída VL VH Alta Imp.Desabilitada Standby VH X Alta Imp.
Programa VL VPP Dados_entrada
![Page 50: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/50.jpg)
Sistema de Memória
Memória EEPROM
A0
An-1 Dm-1
D0CS
n mEEPROM
Diagrama em Bloco
A0
An-1OE
Modo Entradas Saídas
CS OE WE
Ler VL VL VH Dados_saída
Escreve VL VH VL Dados_ent.
Standby VH X X Alta imp. WE
![Page 51: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/51.jpg)
Sistema de Memória
Memória RAM Estática
A0
An-1 Dm-1
D0CS
n mRAM
Diagrama em Bloco
A0
An-1RW
A0
An-1
CS
Lógicade
Decod.
Buffer de Saída
Buffer de Entrada
Registradores
R/WEnt_ Dados
Saída_Dados
Célula
![Page 52: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/52.jpg)
Sistema de Memória
Memória RAM Estática
A0
An-1
A0
An-1
CS
Lógicade
Decod.
Buffer de Saída
Buffer de Entrada
Registradores
R/WEnt_ Dados
Saída_Dados
CélulaVdd
Q1 Q2
Q3 Q4
Célula
![Page 53: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/53.jpg)
Sistema de Memória
Memória RAM Dinâmica
A0/Ak
Ak-1/An-1 Din
Dout
RAS
n 1RAM
Diagrama em Bloco
A0
An-1RW
A0
An-1
CS
Lógicade
Decod. Matrix
R/WEnt_ Dados
Saída_Dados
Célula
CAS
![Page 54: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/54.jpg)
Memória Cache
Princípio da Localidade
– Instruções
– Dados
Operação
Processador Cache Memória
MOV CX,1000 SUB AX,AX
Next: ADD AX,[SI]MOV [SI],AXINC SILOOP Next
![Page 55: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/55.jpg)
Memória Cache
Princípio da Localidade
– Tacc=HitRate Tcache+(1- HitRate) (Tcache+Tmem)
– Tcache=10 ns– Tmem= 70 ns– HitRate= 0,9 Tacc= 17 ns
Processador Cache Memória
![Page 56: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/56.jpg)
Memória Cache
Política de Busca
Define quando e quais informações buscar na CACHE
– Demanda
» Busca uma linha i quando esta se faz necessário
– Pré-busca» Busca a linha i+1
quando a linha i for referida
![Page 57: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/57.jpg)
Memória Cache
Política de Escrita
Define quando uma palavra deve ser alterada na memória principal.
– Writethrough» Garante consistência dos
dados
» Aumenta o tráfego no barramento
– Writeback» Reduz o tráfego no
barramento
» Necessita de mecanismos para manutenção de consistência
![Page 58: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/58.jpg)
Memória Cache
Política de Substituição
Define como uma linha da memória CACHE deve ser substituída.
– RAND - Aleatório
– FIFO - First in First Out
– LRU - Least Recently Used
![Page 59: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/59.jpg)
Memória Cache Organização
Mapeamento Direto
– Vantagem
Simplicidade do Hardware
Algoritmo de Substituição ₫ simples
– Desvantagem Não é flexível
Diversos blocos de memória são mapeados na mesma linha da CACHE
20 7 5 Endereço de 32 bits
Tag Linha
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
127
25 = 32 bytes
Número de Linhas27 = 128
![Page 60: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/60.jpg)
Memória Cache Organização
Completamente Associativa
– Vantagem
Flexibilidade
– Desvantagem
Complexidade do Hardware
27 5 Endereço de 32 bits
Tag Linha
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
127
25 = 32 bytes
![Page 61: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/61.jpg)
Memória Cache Organização
Associativa por Conjunto (Set Associative)
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
63
25 = 32 bytes
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
25 = 32 bytes
21 6 5 Endereço de 32 bits
Tag Linha
![Page 62: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/62.jpg)
Coer₨ncia de Cache em Sistemas Multiprocessadores
Protocolo de coerência de Cache MESI– Modified - a linha corrente
foi modificada (diferente da informação na memória principal) e pertence a uma única cache.
– Exclusive - linha são modificada e exclusiva de uma única cache. Escrevendo-se nesta linha, esta passa para o
estado Modified.
– Shared - linha corrente pertence a mais de uma cache. Ao escrever-se nesta linha, um writethrough é gerado e invalidam-se as outras cópias em outras caches.
– Invalid - a linha corrente está vazia. Uma leitura desta linha gera um miss.
![Page 63: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/63.jpg)
Coerência de Cache em Sistemas Multiprocessadores
Barramento
Icache
Dcache
X=7
X=30X=10
P1
P2
p3
p4
Icache
Dcache
Icache
Dcache
Icache
Dcache Memória
![Page 64: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/64.jpg)
Arquitetura de Computadores
Classifica₤₧o de Flyn
– SISD - Processadores von
Neumann
– SIMD - Array Processors
– MISD
– MIMD - Multiprocessadores
/Multicomputadores
Classifica₤₧o para Arquiteturas Paralelas
– Computadores Pipeline
– Array Processors
– MIMD
![Page 65: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/65.jpg)
Multiprocessadores - UMA
Sistema de Interconex₧o
P1 P2 Pn
I/O SM1 SMm
MemóriaCompartilhada•Fortemente Acoplados
•Aplica₤ões Gerais Time-sharing
![Page 66: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/66.jpg)
Multiprocessadores - NUMA
GSM
Rede de Interconex₧o Global
Modelo Cedar - University Illinios
GSM GSM
P CSM
P
P
P CSM CSM
CSM
C1 C2
![Page 67: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/67.jpg)
Multiprocessadores - COMA
P
Rede de Interconex₧o Global
P P
Cache Cache Cache
•DDM - Swedish Institute of Computer Science
![Page 68: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/68.jpg)
Multicomputadores
M P
M P
M P
M P
Redede
Inter-conex₧o
•Intel iPSC/1 -•Intel Paragon - •MIT J-Machine-
![Page 69: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/69.jpg)
Memória Externa
• Disco Magnético
– Organização dos Dados
• Superfícies
• Trilhas (separadas por gaps)
• Setores (separados por gaps)
• Densidade
Setor Trilha
Gap
![Page 70: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/70.jpg)
Memória Externa
• Disco Magnético
– Características Físicas
• Cabeças Móveis
Trilhas
Cabeça
![Page 71: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/71.jpg)
Memória Externa
• Disco Magnético
– Características Físicas
• Cabeças Fixas
Trilhas
Cabeças
![Page 72: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/72.jpg)
Memória Externa
• Disco Magnético
– Características Físicas
• Cabeças Fixas
• Cabeças Móveis
• Removíveis (Floppy disk)
•
![Page 73: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/73.jpg)
Memória Externa
• Disco Magnético
– Características Físicas
• Cabeças Fixas
• Cabeças Móveis
• Removíveis (Floppy disk)
• Fixos (hard disk)
•
![Page 74: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/74.jpg)
Memória Externa
• Disco Magnético
– Características Físicas
• Sistema das Cabeças de R/W
– Contact (Floppy disk)
– Fixed Gap
– Gap Aerodinâmico (Winchester)
•
![Page 75: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/75.jpg)
Memória Externa
• Disco Magnético
Setor Trilha
Gap
Superficies
Cabeças de Leitura/Gravação
Tacesso=Tseek + Tlat + Ttrans
Taxatransf = bytes transf./ Tacesso
![Page 76: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/76.jpg)
Memória Externa
• CD-ROM– Tecnologia
• Disco feito de resina
• Coberto por alumínio reflexivo
• Informação gravada através criados por raios lazer
• Proteção final feita por um lacquer
• Leitura feita através da relexão de raios lazer sobre a
superfície
![Page 77: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/77.jpg)
Memória Externa
• CD-ROM
VelocidadeAngular Constante
VelocidadeLinear Constante
•DesvantagemCapacidade dossetores externos ficalimitada a do mais interno
VantagemSimplicidade noendereçamento desetores
VantagemMaior capacidadede armazenamento
DesvantagemSistema de endereçamentomais complexo
* CD-ROM
![Page 78: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/78.jpg)
Memória Externa
• CD-ROM
r=32,55m
•Espaçamento entretrilhas (eet)= 1.6 m
#trilhas = r/eet =20344 (aparentes)
•De fato, tem-se uma espiral!•Comprimento da espiral = 5,27Km•VLC = 1,2 m/sTempo para percorrer o disco = 4391s = 73,2 min•Densidade de Armazenamento = 176,4 Kbytes/s Capacidade = 774,57 Mbytes
![Page 79: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/79.jpg)
Memória Externa
• CD-ROM
– Organização dos Dados• Superfícies
• Trilhas (separadas por gaps)
• Blocos
– Formato do Bloco
Sync Id Dados M2=dados, M1=ECC
00 FF×1000 End M 2048 bytes 288 bytesou ECC
Modos
•M0 - campo de dados em branco
•M1 - 2048 bytes + ECC•M2 - 2336 sem ECC
![Page 80: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/80.jpg)
Memória Externa
• WORM (Write Once Read Many)– Tecnologia
• Disco feito de resina• Coberto por alumínio reflexivo• Pré-formatação feita através de raios lazer que cria uma
série de “bolhas”• Gravação feita por um sistema lazer (não tão poderoso)
que rompe as “bolhas”• Leitura feita através da relexão de raios lazer sobre a
superfície
– Layout - VAC
– Capacidade característica = 650 Mbytes
![Page 81: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/81.jpg)
Memória Externa
• Erasable Optical Disk– Tecnologia
• Disco feito de resina• Coberto por um material cuja reflexibilidade pode ser Alta, Baixa ou
indeterminada.• A gravação é feita através de raio lazer que altera o estado
de reflexivo do material• Leitura feita através da relexão de raios lazer sobre a
superfície
– Layout - VAC
– Capacidade Característica : 650 Mbytes
![Page 82: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/82.jpg)
Memória Externa
• Fita Magnética– Tecnologia
• Material recoberto por oxido magnético.
– Organização dos dados
Gap
Registro
Trilhas
![Page 83: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/83.jpg)
Memória Externa
• Fita Magnética
– Número Típico de Trilhas - 9, 18, 36– Acesso Seqüencial– Vantagem : Custo– Desvantagem : Tempo de Acesso
![Page 84: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/84.jpg)
Entrada/Saída
• Técnicas para Controle de I/O
– I/O programado
– Baseado em Interrupções
– Baseado em DMA
![Page 85: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/85.jpg)
Entrada/Saída
• Modelo de Genérico de Dispositivo de I/O
Módulo I/O
Disp. Externo
Bus de end.Bus de dados
Bus de controle
status e controle
dados
Dados do/para o ambiente
![Page 86: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/86.jpg)
Entrada/Saída
• Categorias de Dispositivo Externo
– Para Interação com Pessoas (Teclado, vídeo etc)
– Para Interação com Máquinas (Unidade de disco)
– Para Comunicações (Dispositivo remoto)
![Page 87: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/87.jpg)
Entrada/Saída
• Modelo Genérico de um Dispositivo Externo
Lógicade
ControleTransdutor
Buffer
Dados de/para o ambiente
Dados de/para o módulo I/OStatus para módulo I/OControle do módulo I/O
![Page 88: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/88.jpg)
Entrada/Saída
• Modelo Genérico do Módulo I/O
Reg. de dados
Regs. Status e de Controle
Lógicade I/O
InterfacecomDisp.
Externos
InterfacecomDisp.
Externos
Dados
Endereço
Controle
Dados
Controle
Status
Dados
Controle
Status
![Page 89: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/89.jpg)
Entrada/Saída
• Técnicas para Controle de I/O– I/O programado
• Comandos
– Controle - informa ao periférico o que fazer
– Teste - testa condições
– Leitura - ler dados do periférico
– Escrita - escreve dados no periférico
![Page 90: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/90.jpg)
Entrada/Saída
• Técnicas para Controle de I/O– I/O programado
Envia Comando de Leitura
para Módulo I/OLê status doMódulo I/O
Lê palavra doMódulo I/O
Escreve palavra na Memória
Ver.status
Feito ?
Não estápronto
Condição de erro
pronto
não
sim
Próxima Instrução
![Page 91: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/91.jpg)
Entrada/Saída
• Técnicas para Controle de I/O – Baseado em Interrupção
Envia Comando de Leitura
para Módulo I/OLê status doMódulo I/O
Lê palavra doMódulo I/O
Escreve palavra na Memória
Ver.status
Feito ?
Condição de erro
pronto
não
sim
Próxima Instrução
Vai fazer qualquer coisa
Interrupção
![Page 92: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/92.jpg)
Entrada/Saída
PUSH FLAGSPUSH IPFETCH ISR ADDRESS
POP IPPOP FLAGS
INTERRUPTSERVICE
PROCEDURE
Restaura EstadoRetorno
•Técnicas para Controle de I/O - Baseado em Interrupção Hardware Software
Controlador ou Periférico solicita
Interrupção
Processador Finaliza
Execução de Instrução Corrente
Processador Reconhece Interrupção
Salva Estado
Processa Interrupção
Processamento da Interrupção
![Page 93: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/93.jpg)
Entrada/Saída
• Técnicas para Controle de I/O – Baseado em DMA
Quantidadede Dados
Reg. deDados
Reg. de Endereço
Lógicade
Controle
DMA_Req
DMA_AckInt_req
Rd
Wr
Bus de Dados
Bus de Endereço
Diagrama Genéricodo Controlador de DMA
![Page 94: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/94.jpg)
Entrada/Saída
• Técnicas para Controle de I/O – Baseado em DMA
Escreve na Memória ou
no Dispositivo
Feito ?não
sim
Próxima Instrução
Solicitação de DMA
Vai fazer qualquer coisa
Suspensão
Reconhecimentoda solicitação DMA
Retira Solicitação de DMA
Processador
Controlador DMAEnviaSolicitação de DMA
AguardaReconh.
Solicitação de DMA
Envia Reconh. DMA
Envia Comando de Leitura/Escrita
DMApara Módulo I/O
Lê dados do Dispositivo ou
da Memória
![Page 95: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/95.jpg)
Arquitetura de Computadores
Arquiteturas RISC X CISC
– Complex Instruction Set Computer
– Reduced Instruction Set Computer
» RISC : SPARC
» CISC : Intel 386
![Page 96: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/96.jpg)
Arquitetura de Computadores
Problemas CISC– Desempenho
– ROM interna aumenta as dimensões da pastilha
– Mau uso, pelos programadores, das instruções e modos de endereçamento disponíveis
Caracteristicas CISC– Instruções complexas
– Modos de endereçamento complexos
– Controle implementado por ROM
– Micro-instruções
![Page 97: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/97.jpg)
Arquitetura de Computadores CISC
•SE CARACTERIZA POR:
•CONJUNTO DE INSTRUÇOES E MODOS DE ENDEREÇAMENTO SOFISTICADOS
•CONTROLE MICROPROGRAMADO
•UM NÚMERO REDUZIDO DE INSTRUÇÕES NO CÓDIGO COMPILADO
•COMPILADOR DE CONSTRUÇÃO MAIS SIMPLES
![Page 98: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/98.jpg)
Arquitetura de Computadores CISC
MEMÓRIA DE MICROPROGRAMA
CONTADOR DE MICROPROGRAMA
LÓGICA DE SELEÇÃO DE ENDEREÇO
REGISTRADOR DE INSTRUÇÃO
VIA DE DADOS
PC
MEMÓRIA
+1
CONTROLE
STATUS
UNIDADE DE CONTROLE
![Page 99: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/99.jpg)
Arquitetura de Computadores RISC
Objetivos das Maquinas RISC
– Melhoria de desempenho
– Reduzir acesso à memória principal (arq. load/store)
– Instruções e modos de endere₤amento simples (Controle hardware wired)
– Bom uso dos registradores
– Pipelining (execução super-escalar)
– Uso extensivo do compilador
![Page 100: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/100.jpg)
Arquitetura de Computadores RISC
SE CARACTERIZA POR:
•CÓDIGOS DE INSTRUÇÃO MAIS SIMPLES
•COMPILADORES MAIS SOFISTICADOS
•PEQUENOS CICLOS DE CLOCK
•PEQUENOS NÚMEROS DE CICLOS POR INSTRUÇÃO
•EFICIENTE PIPELINING DE FLUXO DE INSTRUÇÕES
![Page 101: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/101.jpg)
Arquitetura de Computadores RISC
HARDWIRED OUTPUT AND NEXT-STATE
LOGIC
STATE REGISTER
INSTRUCTION REG.
REGISTER
FILE
MEMORY
CONTROL
STATUS
CONTROL UNIT
INSTR.
CACHE
DATA
CACHE
ALU
DATAPATH
![Page 102: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/102.jpg)
Arquitetura de Computadores Petium
8086– 16 bits
– Espaço de endereçamento : 1 Mb
– Endereço da primeira instrução executada: FFFF0H
286– 16 bits
– Espaço de endereçamento : 16 Mb (24 bits)
– Memória Virtual
386– 32 bits
– Espaço de endereçamento : 32 bits
– Registradores de 32 bits
486– Cache interna de 8K
– Co-processador 80387 interno
![Page 103: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/103.jpg)
Arquitetura de Computadores Petium
Pentium é uma máquina CISC com características de RISC– Pipelines - Superescalar – Cache Interna - Dados, Instrução– Registradores de uso geral - 32– Previsão dinâmica de desvios– Co-processador aritmético interno com 7
registradores de ponto flutuante de 80 bits
![Page 104: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/104.jpg)
Modos de Operação
Modo Real– 1 Mbyte
Modo Protegido– 4 Gbytes– Multitarefa– Memória Virtual– Gerenciamento e Proteção de Memória
Modo Virtual Modo de Gerenciamento
![Page 105: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/105.jpg)
Modelo de Software
EAX
EBX
ECX
EDX
EBP
ESI
EDI
AX
BX
CX
DX
BP
SI
DI
AL
BL
CL
DL
AH
BH
CH
DH
IP
SP
Flags
EIP
ESP
EFlags
CS
DS
SS
ES
FS
GS
Registradores de SegmentoRegistradores de Uso Geral
Acumulador
Base
Contador
Dados
Base de Pilha
Índice Fonte
Índice Dest.
Apont. Inst.
Apont.Topo de Pilha
Flags
Codigo
Dados
Pilha
Extras
![Page 106: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/106.jpg)
Modelo de Software
Registrador de Flags
» CF - Vai-um» PF - Paridade» AF - Vai-um auxiliar» ZF - Zero» SF - Sinal» OF - Estouro
NT IOPL OF DF IF TF SF ZF AF PF CF
» IF – Interrupção»DF - Direção»TF - Passo Simples»IOPL - Nível de Prioridade
da Tarefa»NT - Tarefa Aninhada
![Page 107: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/107.jpg)
Modos de Endereçamento de Dados
Imediato
– Ex.: mov cx,1024H Registrador
– Ex.: mov al,ah
Op_Code Dado
Op_Code Regist.
Regist. Dado
![Page 108: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/108.jpg)
Modos de Endereçamento de Dados
Direto
– Ex.: mov al,[0300h] mov ax,counter
Registrador Indireto
– Ex.: mov ch,[bx]
Op_Code Ender. Dado
Op_Code Regist.
DadoBX,SI,DI Ender.
![Page 109: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/109.jpg)
Modos de Endereçamento de Dados
Indexado
– Ex.: mov ch,[bx]
Op_Code Regist. de Índice
SI,DI
Desl.
Desl.
DadoEnder.
![Page 110: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/110.jpg)
Modos de Endereçamento de Dados
Base
– Ex.: mov ch,[bx+02]
Op_Code Regist. de Base
BX,BP
Desl.
Desl.
DadoEnder.
![Page 111: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/111.jpg)
Modos de Endereçamento de Dados
Base Indexado
– Ex.: mov ch,[bx+si]
Op_Code Regist. de Base
BX,BP
Regist. de Índice
DadoEnder.
Regist. de Índice
![Page 112: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/112.jpg)
Modos de Endereçamento de Dados
Base Indexado com Deslocamento
– Ex.: mov ch,[bx+si+03]
Op_Code Regist. de Base
BX,BP
Regist. de Índice
DadoEnder.
Regist. de Índice Desl.
Desl.
![Page 113: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/113.jpg)
Modos de Endereçamento de Dados
Porta
– Ex.: in al,80h ;espaço de
in al,dx ; endereçamento = 256
out 90h,al ; espaço de
out dx,al ; endereçamento = 65536
Op_Code Ender. ou DX
![Page 114: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/114.jpg)
Modos de Endereçamento de Dados
Modo de Endereçamento de 32 bitsReg. de Seg.
Reg. de Base
Reg. de Índice
Fator de Escala
Deslocamento
Endereço
*
CS,DS,ES,FS,GS,SS
EAX,EBX,ECX,EDX,EBP,ESI,EDI,ESP
EAX,EBX,ECX,EDX,EBP,ESI,EDI
{1,2,4,8}
Nada, 8 bits, 32 bits
Ex.: MOV EAX,[EBX],[ECX*4+6]
![Page 115: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/115.jpg)
Arquitetura do Pentium
Bus Unit
Page Unit
8kbinstruction
cache
TLB
Branchtargetbuffer
P b I dr u n ee f s cf f t oe e r dt r u ec t.h
Control ROM
C o
n u t nr io tl
8kbdata
cache
TLB
Floatingpoint registers
256
Data bus - 64 bitsAdd. Bus 32 bits
Control bus
Add. Data
32Address bus - 32 bits
Data bus - 64 bits
Add.generateV pipe
Add.generateU pipe
Integerregisterfile
ALUV pipe
ALUU pipe
Shifter
Instruction pointer
Branch target address
32
Floatingpoint unit
Prefetchaddress
![Page 116: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/116.jpg)
Arquitetura do Pentium
Dois pipelines de 5 estágios: U e V
– Estágios
» PF - prefetch» D1 - instruction decode» D2 - address generate» EX - execute, cache, ALU access» WB - writeback
![Page 117: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/117.jpg)
Arquitetura do Pentium
256 bits
P b I dr u n ee f s cf f t oe e r dt r u ec t.h
Prefet.Buffer
V64 bytes
Prefet.Buffer
U64 bytes
256 bits
Decod.D1V
Decod.D1U
![Page 118: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/118.jpg)
Decod.D2V
Decod.D2U
Arquitetura do Pentium
Decod.D1V
Decod.D1U
Ger.End.
V
Ger.End.
U
Para o BTB
Para o BTB
![Page 119: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/119.jpg)
Decod.D2V
Decod.D2U
Arquitetura do Pentium
Decod.D1V
Decod.D1U
Unidade de Microcódigo
ALUV
ALUU
REG
![Page 120: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/120.jpg)
Decod.D2V
Decod.D2U
Arquitetura do Pentium
Decod.D1V
Decod.D1U
Unidade de Microcódigo
Conrole
ADD DIV MUL
FPU
Reg. File
Dados
![Page 121: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/121.jpg)
Arquitetura do Pentium
Execução Super-Escalar– Ambas as instruções devem
ser simples.
– Sem dependência de dados.
– As instruções não podem ter modos de endereçamento imediato e indireto.
– Instruções com prefixo só podem ser executadas no pipelin U.
Não requerem micro-código para serem executadas. Normalmente levam 1 ciclo de clock para serem executadas.
ADD AX,BX (não podem ser executadas
ADD AX,CX em paralelo)
MOV TABLE[SI],7
MOV ES:[DI],AL
![Page 122: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/122.jpg)
Arquitetura do Pentium
Execução Super-EscalarCiclos 1 2 3 4 5
de clockI1 I2 I3 I4 I5 I6 I7 I8 I9 I10
I1 I2 I3 I4 I5 I6 I7 I8
I1 I2 I3 I4 I5 I6
I1 I2 I3 I4
I1 I2
PF
D1
D2
EX
WB
![Page 123: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/123.jpg)
Previsão Dinâmica de Desvio
8kbinstruction
cache
TLB
Branchtargetbuffer
P b I dr u n ee f s cf f t oe e r dt r u ec t.h
256
Instruction pointer
Branch target address
Prefetchaddress
H:11P:T
H:10P:T
H:00P:NT
H:01P:T
NT
T
NTT
NT
T
NT
T
Address Instruction Targ. Add. History Prediction
. . .
![Page 124: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/124.jpg)
Memória Cache
Princípio da Localidade
– Instruções
– Dados
Operação
Processador Cache Memória
MOV CX,1000 SUB AX,AX
Next: ADD AX,[SI] MOV [SI],AX INC SI LOOP Next
![Page 125: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/125.jpg)
Memória Cache
Princípio da Localidade
– Tacc=HitRate Tcache+(1- HitRate) (Tcache+Tmem)
– Tcache=10 ns– Tmem= 70 ns– HitRate= 0,9 Tacc= 17 ns
Processador Cache Memória
![Page 126: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/126.jpg)
Memória Cache
Política de Busca
Usada para decidir quando e quais informações buscar na CACHE
– Demanda
– Pré-busca
![Page 127: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/127.jpg)
Memória Cache
Política de Busca
Usada para decidir quando e quais informações buscar na CACHE
– Demanda
» Busca uma linha i quando esta se faz necessário
– Pré-busca» Busca a linha i+1
quando a linha i for referida
![Page 128: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/128.jpg)
Memória Cache
Política de Escrita
O momento em que uma palavra deve ser alterada na memória principal, após uma escrita, depende da política de escrita.
– Writethrough» Garante consistência dos
dados
» Aumenta o tráfego no barramento
– Writeback» Reduz o tráfego no
barramento
» Necessita de mecanismos para manutenção de concist₨ncia
![Page 129: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/129.jpg)
Memória Cache
Política de Substituição
Define como uma linha da memória CACHE deve ser substituída.
– RAND - Aleatório
– FIFO - First in First Out
– LRU - Least Recently Used
![Page 130: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/130.jpg)
Memória Cache Organização
Mapeamento Direto
– Vantagem
Simplicidade do Hardware
Algoritmo de Substituição ₫ simples
– Desvantagem Não é flexível
Diversos blocos de memória são mapeados na mesma linha da CACHE
20 7 5 Endereço de 32 bits
Tag Linha
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
127
25 = 32 bytes
Número de Linhas27 = 128
![Page 131: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/131.jpg)
Memória Cache Organização
Completamente Associativa
– Vantagem
Flexibilidade
– Desvantagem
Complexidade do Hardware
27 5 Endere₤o de 32 bits
Tag Linha
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
127
25 = 32 bytes
![Page 132: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/132.jpg)
Memória Cache Organização
Associativa por Conjunto (Set Associative)
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
0
1
63
25 = 32 bytes
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
25 = 32 bytes
21 6 5 Endereço de 32 bits
Tag Linha
![Page 133: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/133.jpg)
Memória Cache Organização do Pentium
Two-way-set - associative 128 Conjuntos - 256 linhas (entradas) 32 bytes por linha (64 por conjunto) 8Kb de CACHE de instrução 8Kb de CACHE de dados Triple ported
– Pipeline U– Pipeline V– Opera₤ões de Bus snooping
Estrutura
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
Set 0
Set 1
Set 127
25 = 32 bytes
TAG
TAG
TAG
Dado
Dado
Dado
.
.
.
.
.
.
25 = 32 bytes
![Page 134: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/134.jpg)
Arquitetura do Pentium
Bus Unit
Page Unit
8kbinstruction
cache
TLB
Branchtargetbuffer
P b I dr u n ee f s cf f t oe e r dt r u ec t.h
Control ROM
C o
n u t nr io tl
8kbdata
cache
TLB
Floatingpoint registers
256
Data bus - 64 bitsAdd. Bus 32 bits
Control bus
Add. Data
32Address bus - 32 bits
Data bus - 64 bits
Add.generateV pipe
Add.generateU pipe
Integerregisterfile
ALUV pipe
ALUU pipe
Shifter
Instruction pointer
Branch target address
32
Floatingpoint unit
Prefetchaddress
![Page 135: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/135.jpg)
Memória Cache Translation Lookaside Buffer
16 4 12 Endereço Linear
Tag Linha
Endereço linear
Endereço Físico para Cache
TLB T
T
T
EndEnd
End
.
.
.
.
.
.
0
1
T
T
T
End
End
End
.
.
.
.
.
.
T
T
T
EndEnd
End
.
.
.
.
.
.
0
1
15
T
T
T
End
End
End
.
.
.
.
.
.
20 12 Endereço Físico para Cache
![Page 136: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/136.jpg)
Coerência de Cache em Sistemas Multiprocessadores
Protocolo de coerência de Cache MESI– Modified - a linha corrente
foi modificada (diferente da informação na memória principal) e pertence a uma única cache.
– Exclusive - linha não modificada e exclusiva de uma única cache. Escrevendo-se nesta linha, esta passa para o
estado Modified.
– Shared - linha corrente pertence a mais de uma cache. Ao escrever-se nesta linha, um writethrough é gerado e invalia-se as outras cópias em outras caches.
– Invalid - a linha corrente está vazia. Uma leitura desta linha gera um miss.
![Page 137: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/137.jpg)
Coerência de Cache em Sistemas Multiprocessadores
Barramento
Icache
Icache
Icache
Icache
Dcache
Dcache
Dcache
Dcache
X=7
X=30X=10
P1
P2
p3
p4
![Page 138: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/138.jpg)
Dimensões das Caches
Pentium– Um nível de cache interno.– Cache de dados : 8kb– Cache de instruções: 8kb
Pentium MMX– Um nível de cache interno– Cache de dados: 16kb– Cache de Instruções: 16kb
Pentium Pro– Dois níveis de cache internos.– Cache dados nível 1: 8kb– Cache de instrução nível 1:
8kb– Cache nível 2: 256kb, 512kb,
1MB
![Page 139: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/139.jpg)
Dimensões das Caches
Petium II– Dois níveis de cache internos.– Cache de dados nível 1: 16kb– Cache de instrução nível 1:
16kb– Cache nível 2: 512kb
Petium III– Dois níveis de cache internos.– Cache de dados nível 1: 16kb– Cache de instrução nível 1:
16kb– Cache nível 2: 512kb
![Page 140: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/140.jpg)
Unidade de Ponto Flutuante
PF - pré-busca D1 - decodificação de instrução D2 - geração de endereço EX - leitura de memória e
registradores. Converção do formato de ponto flutuante em formato de memória. Escrita em memória.
X1 - primeiro estágio de execução. Dados da memória são convertidos no formato ponto flutuante. Escreve o operando para os registradores de ponto flutuante.
X2 - segundo estágio de execução. WF - arrendonda o resultado e
escreve nos registradores de ponto flutuante.
ER - sinalização de erro e atualização da palavra de status.
![Page 141: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/141.jpg)
Unidade de Ponto Flutuante
PF D1 D2 EX
X1X2WFER
Bypass
Fluxo deinstruçõese de dados
Pipeline U
Fluxo dedados
ST(0)ST(1)ST(2)ST(3)ST(4)ST(5)ST(6)ST(7)
Registradoresde
Ponto Flutuante
80 bits
![Page 142: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/142.jpg)
Operações de Barramento
M/IO D/C W/R Cache KEN Descrição
0 0 0 1 x Recon. Int.
0 0 1 1 x Ciclo Especial
0 1 0 1 x Leit. I/O
0 1 1 1 x Escr. I/O
1 0 0 1 x Leit. de Código ñ cache
1 0 0 x 1 Leit. de Código ñ cache
1 0 0 0 0 Leit. de Código em Rajada de 32 bytes
1 1 0 1 x Leit. Mem. Acima de 8 bytes ñ cache
1 1 0 x 1 Leit. Mem. Acima de 8 bytes ñ cache
1 1 0 0 0 Leit. Mem em Rajada de 32 bytes
1 1 1 1 x Escr. Mem. Acima de 8 bytes ñ cache
1 1 1 0 x Escrita de 32 bytes - writeback
![Page 143: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/143.jpg)
Opera₤ões de Barramento
Ciclos Especiais
BE7 BE6 BE5 BE4 BE3 BE2 BE1 BE0 Ciclo
1 1 1 1 1 1 1 0 shutdown
1 1 1 1 1 1 0 1 flush cache
1 1 1 1 1 0 1 1 halt
1 1 1 1 0 1 1 1 writeback
1 1 1 0 1 1 1 1 flush ack.
1 1 0 1 1 1 1 1 br. tr. mess
![Page 144: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/144.jpg)
Ciclos de Leitura/Escrita
Clk
ADS
Address
W/R
BRDY
Data
Válido Válido
P/ CPU da CPU
t1 t2 ti t1 t2 ti
![Page 145: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/145.jpg)
Ciclos Burst
O pentium suporta ciclos de leitura e escrita em rajada de 32 bytes. – Cada oito bytes são transferidos a cada ciclo de clock.– O Processador passa o endere₤o inicial, os demais
endere₤o devem ser gerados pelo sistema de memória
1° end. 2 ° end. 3° end. 4° end.
0 8 10 18
8 0 18 10
10 18 0 8
18 10 8 0
![Page 146: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/146.jpg)
Ciclos Burst
Clk
ADS
Address
W/R
BRDY
CACHEKEN
Data
Válido
t1 t2 t2 t2 t2 ti
P/ CPU P/CPUP/ CPU P/ CPU
![Page 147: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/147.jpg)
Operações Locked e BOFF
Lock– Operacões atômicas não podem
ser quebradas em operações menores
– Semáforos– Requerem leitura seguida de
escrita– XCHG– LOCK é ativado indicando que
o ciclo no ciclo corrente o barramento está bloqueado e não pode ser interrompido
BOFF– Este sinal de entrada prover
uma forma para que em sistemas multiprocessados um Pentium possa “tomar conta” do barramento.
– Este terminal(BOFF) ₫ verificado a cada ciclo de clock. Caso o seu valor seja baixo, o barramento ₫ colocado em alta impedância.
![Page 148: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/148.jpg)
Operações Bus Hold e Reconhecimento de Interrupção
Bus Hold– Uma segunda forma para
que o processador “tome conta”do barramento.
– A entrada HOLDé verificada a cada ciclo de clock, caso seja alto, no final do ciclo de barramento, o barramento é colocado em alta impedância.
– A saída HLDA é ativada para indicar que o Pentium está neste estado.
Reconhecimento de Interrupção.– Dois destes ciclos são
gerados em reconhecimento a solicitação de interrupção (INTR).
– M/IO=D/C=W/R =0– CACHE = 1
![Page 149: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/149.jpg)
Reconhecimento de Interrupção
‘148 ‘374
D Qclk
Pentium
vcc
.
.
.
.
.
.
vcc
clr
D0
D7
M/IOD/CW/RADS
INTR
INT0
INT7
A2A1A0
GS
EI
![Page 150: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/150.jpg)
Cache Flush e Shutdown
Cache Flush– Como resposta a uma entrda
ativa no terminal FLUSH o Pentium executa o writeback nas linhas modificadas e as torna inválidas
– BE1 =0
– Quando o writeback é executado o processador executa um cache ack. para informar que na cache foi realizado um flush.
– BE4 =0
Shutdown– Se o processador
detecta um erro de paridade um ciclo shutdown é gerado.
– A execução é suspensa até o processador que ocorrar um NMI, INIT ou RESET
– Cache internas permancem inalteradas
– BE0=0
![Page 151: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/151.jpg)
Halt e Inquire Cycles
Halt
– Ciclo realizado quando da execução de uma instrução HLT
– Similar ao shutdown exceto que a execução só será retomada pelo sinal INTR
– BE2 = 0
Inquire Cycle– Usado para manter a
coerência de cache
– Ao detectar-se (no snooping cycle) um acesso, por outro processador, a uma posição de memória, o processador gera um inquire interno para verificar se esta posição esta na cache interna. Caso esteja, a cache pode ser modificada.
![Page 152: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/152.jpg)
Tipo de Instruções
Transferência de dados
Aritmética
Manipulação de bit
Laços e saltos
Subrotinas e interrupções
Controle
String
![Page 153: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/153.jpg)
Tipo de Instruções
Instruções Monádicas
– inst opr dest
opr dest - operando destino
Instruções Diádicas
– inst opr dest, opr fonte
opr dest - operando destino
opr fonte - operando fonte
![Page 154: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/154.jpg)
Transferência de Dados
Instruções
– MOV movimenta₤₧o– MOVSX ext. sinal– MOVZX ext. c/ zero– PUSH empilhamento– PUSHW/PUSHD imedit./ 32 bits– PUSHA/PUSHAD todos reg/ 32 bits– PUSHF/PUSHFD 16 bits flags/32
bits
– POP desemp.– POPA/POPAD todos reg/32 bits – POPF/POPFD 16 bits flags/32 bits – IN input– OUT output– XCHG permuta– XLAT translate-table– LEA carga de end. efetivo– LDS e similares carga de ponteiro– BSWAP troca– LAHF carga de flags em AH– SAHF arm. de AH nos flags
![Page 155: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/155.jpg)
Transferência de Dados
Sintaxe:
MOV OP_DEST,OP_DEST
EX.: MOV AL,01
MOV AX,[BX+2]
MOV AL,[0400H]
![Page 156: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/156.jpg)
Transfer₨ncia de Dados
Sintaxe:
MOVSX OP_DEST,OP_DEST
EX.: MOVSX AX,AL
![Page 157: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/157.jpg)
Transfer₨ncia de Dados
Sintaxe:
MOV OP_DEST,OP_FONT
EX.: MOVZX AX,AL
![Page 158: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/158.jpg)
Transfer₨ncia de Dados
Sintaxe:
PUSH OP_FONTE
EX.: PUSH BX
![Page 159: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/159.jpg)
Transfer₨ncia de Dados
Sintaxe:
PUSHW/PUSHD OP_FONTE (imedit./ 32 bits)
EX.: PUSHW 34ADh
PUSHD EAX - PUSHD pode ser usado para
empilhar valor de um reg. de 32 bits
![Page 160: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/160.jpg)
Transfer₨ncia de Dados
Sintaxe:
PUSHA/PUSHAD (todos reg/ 32 bits)
EX.: PUSHA
PUSHAD
![Page 161: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/161.jpg)
Transfer₨ncia de Dados
Sintaxe:
PUSHF/PUSHFD 16 bits flags/32 bits
EX.: PUSHF
PUSHFD
![Page 162: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/162.jpg)
Transfer₨ncia de Dados
Sintaxe:
POP OP_DEST
EX.: POP BX
![Page 163: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/163.jpg)
Transfer₨ncia de Dados
Sintaxe:
POPA/POPAD todos reg/32 bits
EX.: POPA
POPAD
![Page 164: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/164.jpg)
Transfer₨ncia de Dados
Sintaxe:
POPF/POPFD 16 bits flags/32 bits
EX.: POPF
POPFD
![Page 165: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/165.jpg)
Transfer₨ncia de Dados
Sintaxe:
IN ACUMULADOR,END/DX input
EX.: IN AL,60H
IN AL,DX
![Page 166: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/166.jpg)
Transfer₨ncia de Dados
Sintaxe:
OUT END/DX,ACUMULADOR output
EX.: OUT DX,AL
OUT 80H,AX
![Page 167: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/167.jpg)
Transfer₨ncia de Dados
Sintaxe:
XCHG OP_DEST,OP_FONTE permuta
EX.: XCHG AL,AH
XCHG AL[BX]
![Page 168: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/168.jpg)
Transfer₨ncia de Dados
Sintaxe:
XLAT translate-table
O registrador BX deve ter o endere₤o inicial da lista.
O valor de AL ₫ o índice.
EX.: MOV AL,3
MOV BX,0400H
XLAT
![Page 169: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/169.jpg)
Transfer₨ncia de Dados
Sintaxe:
LEA OP_DEST,LABEL carga de end.
EX.: LEA BX,LISTA
![Page 170: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/170.jpg)
Transfer₨ncia de Dados
Sintaxe:
LDS OP_DEST,OP_FONTE carga de ponteiro
OP_DEST - registrador
LES,LFS,LGS,LSS - s₧o similares
EX.: LDS BX,[SI]
LES DX,end_lista
![Page 171: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/171.jpg)
Transfer₨ncia de Dados
Sintaxe:
BSWAP OP_DEST - troca (swapping)
- OP_DEST - registrador de 32 bits
EX.: MOV EAX,12345678H
BSWAP EAX
EAX = 78563412H
![Page 172: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/172.jpg)
Transfer₨ncia de Dados
Sintaxe:
LAHF - Carrega AH com flags
EX.: POPF
LAHF
![Page 173: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/173.jpg)
Transfer₨ncia de Dados
Sintaxe:
SAHF - Armazena AH nos flags
EX.: MOV AH,0FFH
SAHF
![Page 174: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/174.jpg)
Aritmética
Instruções
– ADD adição– ADC– INC incremento– SUB subtração– SBB– DEC decremento– CMP comparação – MUL multiplicação– IMUL– DIV divisão– IDIV
– NEG complemento a 2 – CBW mudança de módulo– CWD – DAA ajuste BCD– DAS– AAA ajuste ASCII– AAS– AAM– AAD
![Page 175: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/175.jpg)
Aritm₫tica
Sintaxe:
ADD OP_DEST,OP_DEST - adi₤₧o
EX.: ADD AL,CH
ADD CX,[SI]
ADD DX,4
![Page 176: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/176.jpg)
Aritm₫tica
Sintaxe:
ADC OP_DEST,OP_DEST - adi₤₧o com vai um
EX.: ADC AL,CH
ADC [BX],DX
ADC DX,4
![Page 177: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/177.jpg)
Aritm₫tica
Sintaxe:
INC OP_DEST - Incremento
EX.: INC AL
INC [BX]
INC [0400H]
![Page 178: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/178.jpg)
Aritm₫tica
Sintaxe:
SUB OP_DEST,OP_DEST - Subtra₤₧o
EX.: SUB AL,CH
SUB CX,[0300H]
SUB DX,4
![Page 179: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/179.jpg)
Aritm₫tica
Sintaxe:
SBB OP_DEST,OP_DEST - Subtra₤₧o com vem um
EX.: SBB AL,CH
SBB CX,[0300H]
SBB DX,4
![Page 180: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/180.jpg)
Aritm₫tica
Sintaxe:
DEC OP_DEST - Decremento
EX.: DEC AL
DEC [BX]
DEC [0400H]
![Page 181: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/181.jpg)
Aritm₫tica
Sintaxe:
CMP OP_DEST,OP_DEST - Compara₤₧o
EX.: CMP AL,CH
CMP CX,[0300H]
CMP DX,4
![Page 182: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/182.jpg)
Aritm₫tica
Sintaxe:CMPXCHG OP_DEST, OP_FONTE - compara e permuta
Compara o operando destino com o acumulador e caso o acumulador seja igual ao operando destino, o operando fonte ₫ copiado no destino. Caso sejam diferentes, o valor do acumulador ₫ substituído pelo valor do destino.
EX.: CMPXCHG BL,CL
CMPXCHG CX,[0300H]
CMPXCHG EDX,EBX
10 10 30 10 30 30
AL BL CL AL BL CL
10 20 30
20 20 30
AL BL CL
AL BL CL
![Page 183: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/183.jpg)
Aritmética
Sintaxe:
MUL OP_FONTE - multiplicação
EX.: MUL BL
MUL DX
MUL ECX
![Page 184: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/184.jpg)
Aritmética
Sintaxe:
IMUL OP_FONTE - multiplicação sinalizada
EX.: IMUL BL
IMUL DX
IMUL ECX
![Page 185: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/185.jpg)
Aritmética
Sintaxe:
DIV OP_FONTE - divisão
EX.: DIV BL
DIV DX
DIV ECX
![Page 186: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/186.jpg)
Aritmética
Sintaxe:
IDIV OP_FONTE - divisão sinalizada
EX.: IDIV BL
IDIV DX
IDIV ECX
![Page 187: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/187.jpg)
Aritm₫tica
Sintaxe:
NEG OP-DEST - complemento de dois
EX.: NEG AL
NEG [0200H]
NEG DX
![Page 188: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/188.jpg)
Aritm₫tica
Sintaxe:
CBW - converte byte de AL em palavra etendendo-se o sinal
CWD - converte a palavra de AX em dupla-palavra estendendo-se o sinal (DX:AX)
CWDE - converte a palavra de AX em dupla-palavra estendendo-se o sinal (EAX)
CDQ - converte a dupla-palavra de EAX em quádrupla-palavra estendendo-se o sinal (EDX:EAX)
EX.: CBW CWDE
CWD CDQ
![Page 189: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/189.jpg)
Aritm₫tica
Sintaxe:
DAA - ajuste decimal para adi₤₧o (BCD compactado)
EX.: MOV AL,15H
MOV BL,25H
ADD AL,BL ;AL=3AH
DAA ;AL=40H
![Page 190: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/190.jpg)
Aritm₫tica
Sintaxe:
DAS - ajuste decimal para subtra₤₧o (BCD-compactado)
EX.: MOV AL,10H
MOV BL,02H
SUB AL,BL ;AL=0EH
DAS ;AL=08H
![Page 191: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/191.jpg)
Aritm₫tica
Sintaxe:
AAA - ajuste ASCII para adi₤₧o
EX.: MOV AX,0033H
MOV BL,39H
ADD AL,BL ;AL=6CH
AAA ;AX=0102H
![Page 192: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/192.jpg)
Aritm₫tica
Sintaxe:
AAS - ajuste ASCII para subtra₤₧o
AAM - ajuste ASCII para multiplica₤₧o
AAD - ajuste ASCII para divis₧o
![Page 193: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/193.jpg)
Lógica e Manipulação de Bit
Instruções Lógicas
– NOT
– AND
– OR
– XOR
– TEST
Algumas Instruções Manipulação de bit
– SHL/SAL - desloc. esquerda
– SHR - deslc. direita
– SAR
– ROL - rotação
– ROR
– RCL
– RCR
![Page 194: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/194.jpg)
Lógicas
Sintaxe:
NOT OP-DEST - complemento de um
EX.: NOT AL
NOT [0200H]
NOT DX
![Page 195: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/195.jpg)
Lógicas
Sintaxe:
AND OP_DEST,OP_FONTE - opera₤₧o lógica e
EX.: AND AL,CH
AND CX,[SI]
AND DX,FFFFH
![Page 196: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/196.jpg)
Lógicas
Sintaxe:
OR OP_DEST,OP_FONTE - opera₤₧o lógica ou
EX.: OR AL,00H
OR CX,[SI]
OR DX,FFFFH
![Page 197: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/197.jpg)
Lógicas
Sintaxe:
XOR OP_DEST,OP_FONTE - opera₤₧o lógica ou exclusivo
EX.: XOR AL,CH
XOR CX,[SI]
XOR DX,DX
![Page 198: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/198.jpg)
Lógicas
Sintaxe:
TEST OP_DEST,OP_FONTE - opera₤₧o lógica e
EX.: TEST AL,CH
TEST CX,[SI]
TEST DX,FFFFH
![Page 199: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/199.jpg)
Lógicas
Sintaxe:
SETcc OP_DEST - atribui 01 a operando destino se a condi₤₧o
testada for verdadeira. Caso contrário, atribui-se 00.
EX.: SETZ AL
SETLE AX
SETNC DX
![Page 200: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/200.jpg)
Lógicas
Sintaxe:
BSF/BSR OP_DEST,OP_FONTE - procura pelo 1°bit igual a um no operando fonte a partir do LSB ou MSB. A posi₤₧o encontrada será informada em operando destino.
OP_DEST deve ser REG. de 16 ou 32 bits
OP_FONTE deve ser REG. ou mem de 16 ou 32 bits
EX.: BSF EAX,EBX
![Page 201: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/201.jpg)
Lógicas
Sintaxe:
BT/BTC,BTS,BTR OP_DEST,OP_FONTE - testa, complementa, seta ou reseta um bit do operando destino especificado no opernado fonte.
OP_DEST deve ser REG. de 16 ou 32 bits OP_FONTE deve ser REG. ou mem de 16 ou 32 bits
EX.: BT AX,BX
BTC AX,15
BTS AX,1
BTR AX,0
![Page 202: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/202.jpg)
Laços, Desvios, Subrotinas e Interrupções
Laços e Desvios
– JMP -desvio incondicional
– Jcc - desvio condicional
– JCXZ
– LOOP - laço
– LOOPE
– LOOPNE
Subrotinas e Interrupções
– CALL - subrotinas
– INT - interrupções
– INTO
– RET - retorno– IRET
![Page 203: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/203.jpg)
Controle
– CLC - Limpa CF– STC - Faz CF=1– CMC - Complementa CF– CLD - Limpa DF– STD - Faz DF=1– CLI - Limpa IF– STI - Faz IF=1
![Page 204: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/204.jpg)
Controle
Sintaxe:
HLT - Parada
Para o sistema. O processador fica neste estado at₫ ocorrer um reset ou uma interrup₤₧o NMI ou INTR.
![Page 205: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/205.jpg)
Controle
Sintaxe:
LOCK - Instru₤₧o prefixo
Bloqueia o barramento
EX.: LOCK XCHG
Sintaxe:
NOP - No operation
N₧o executa nada.
![Page 206: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/206.jpg)
Strings
Sintaxe:
REP - Instru₤₧o prefixo
Repete enquanto CX for diferente de zero. Deve ser usada antes das instru₤ões MOVS, STOS, INS e OUTS
EX.: REP MOSVB
![Page 207: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/207.jpg)
Strings
Sintaxe:
REPE/REPZ - Instru₤₧o prefixo
Repete enquanto CX for diferente de zero e ZF = 1. Deve ser usada antes das instru₤ões C,MPS e SCAS.
EX.: REPE CMPSB
![Page 208: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/208.jpg)
Strings
Sintaxe:
REPNE/REPNZ - Instru₤₧o prefixo
Repete enquanto CX for diferente de zero e ZF = 0. Deve ser usada antes das instru₤ões C,MPS e SCAS.
EX.: REPNE SCASW
![Page 209: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/209.jpg)
Strings
Sintaxe:
MOVS/ MOVSB/ MOVSW/ MOVSD - moveMove o elemento apontado por SI no segmento de dados para área
apontada por dI no segmento de extra. DI e SI ser₧o incrementados ou decrementados de 1, 2, 0u 4 dependendo do flag DF e do tipo do dado.
EX.: MOV AX,0300H
MOV ES,AX
XOR DI,DIH
MOV AX,0500H
MOV DS,AX
XOR SI,SIH
MOV CX,5HCLD
MOV AL,4EHREP MOVSB
![Page 210: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/210.jpg)
Strings
Sintaxe:
CMPS/ CMPSB/ CMPSW/ CMPSD - comparaCompara o elemento apontado por DI no segmento extra com o
elemento apontado por SI no segmento de dados. DI e SI ser₧o incrementados ou decrementados de 1, 2, 0u 4 dependendo do flag DF e do tipo do dado.
EX.: MOV AX,0300H
MOV ES,AX
XOR DI,DIH
MOV AX,0500H
MOV DS,AX
XOR SI,SIH
MOV CX,5HCLD
MOV AL,4EHREPE CMPSB
![Page 211: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/211.jpg)
Strings
Sintaxe:
SCAS/ SCASB/ SCASW/ SCASD - scanCompara o elemento apontado por DI no segmento extra com o
conteúdo do acumulador (AL,AX ou EAX). DI será incrementado ou decrementado de 1, 2, 0u 4 dependendo do flag DF e do tipo do dado.
EX.: MOV AX,0300H
MOV ES,AX
MOV DI,6H
MOV CX,6H
STD
MOV AL,4EH
REPNZ SCASB
![Page 212: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/212.jpg)
Strings
Sintaxe:
LODS/ LODSB/ LODSW/ LODSD - carregaCarrega o elemento apontado por SI no segmento de dados no
acumulador (AL,AX ou EAX). SI será incrementado ou decrementado de 1, 2, 0u 4 dependendo do flag DF e do tipo do dado.
EX.: MOV AX,0510H
MOV DS,AX
MOV SI,5H
STD
LODSW
![Page 213: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/213.jpg)
Strings
Sintaxe:
STOS/ STOSB/ STOSW/ STOSD - armazenaArmazena na área apontada por DI no segmento de extra o conteúdo
do acumulador (AL,AX ou EAX). DI será incrementado ou decrementado de 1, 2, 0u 4 dependendo do flag DF e do tipo do dado.
EX.: MOV AX,04A8H
MOV ES,AX
MOV DI,8H
CLD
MOV AL,’M’
REP STOSB
![Page 214: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/214.jpg)
Diretivas do Macro-Assembler
Programa .EXE Programa .COM
– Tamanho: memória total 64 Kbytes– Ponto de Entrada: qualquer ponto offset 100h– Arquivo produzido deve ser convertido
pelo link: executável pelo EXE2BIN – PSP: apontado por DS nos 100h bytes iniciais
e ES do segmento
![Page 215: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/215.jpg)
Formato de um Programa .EXE
S1 SEGMENT STACK ‘STACK’
DW 100 DUP(?)
S1 ENDS
D1 SEGMENT
DEFINIÇÃO DE VARIÁVEIS
D1 ENDS
C1 SEGMENT
ASSUMECS:C1, DS:D1,ES:D1,SS:S1
P1 PROC FAR
MOV AX,D1
MOV DS,AX
MOV ES,AX
CoRPO DO PROGRAMA
MOV AH,4CH
INT 21H
P1 ENDP
R1 PROC NEAR
CORPO DA ROTINA
RET
R1 ENDP
C1 ENDS
END P1
![Page 216: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/216.jpg)
Formato de um Programa .COM
C1 SEGMENT
ASSUMECS:C1, DS:C1,ES:C1,SS:C1
ORG 100H
I: JMP P1
DEFINIÇÃO DE VARIÁVEIS
P1 PROC NEAR
CORPO DO PROGRAMA
MOV AH,4CH
INT 21H
P1 ENDP
R1 PROC
CORPO DA ROTINA
RET
R1 ENDP
C1 ENDS
END
![Page 217: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/217.jpg)
Diretivas do Macro-Assembler
COMMENT - INSERÇÃO DE COMENTÁRIO
– FORMATO: COMMENT * COMENTÁRIO *– EXEMPLO: COMMENT * MEU PRIMEIRO PROGRAMA*
ASSUME - INFORMA AO MONTADOR A FUNÇÃO DE CADA SEGMENTO.– FORMATO: ASSUME REG_SEG:NOME_SEG, ..., REG_SEG:NOME_SEG– EXEMPLO: ASSUME CS:C1,DS:D1,ES:D2,SS:S1
ORG - ESPECIFICA O ENDEREÇO PARA UMA INSTRUÇÃO OU DADO.
– FORMATO: ORG EXPRESSÃO– EXEMPLO: ORG 100H
![Page 218: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/218.jpg)
Diretivas do Macro-Assembler
SEGMENT - DEFINE SEGMENTO
– FORMATO: NOME SEGMENT [ALINHM.][COMB.][CLASSE]
– ALINHAMENTO: Define onde inicia o segemento
BYTE - 1° byte livre
WORD - 1° endereço par livre
DWORD - 1° endereço divisível por 4 livre
PARA - 1° endereço divisível por 16 livre
PAGE - 1° endereço divisível por 256 livre
![Page 219: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/219.jpg)
Diretivas do Macro-Assembler
SEGMENT - DEFINE SEGMENTO
– FORMATO: NOME SEGMENT [ALINHM.][COMB.][CLASSE]– COMBINAÇÃO: Define como combinar segmentos de mesmo nome
PUBLIC - concatena todos os segementos de mesmo nome
de forma a se obter um único segemento
STACK - O mesmo que o tipo PUBLIC. Para segementos
de pilha.
COMMOM - cria um segmento pela superposição de
segmentos com mesmo nome.
AT endereço - define o endereço inicial de um segemento.
Este segmento não contém inicialização de
dados o código. Usado para definir um
segmento em uma área de dados ou código
já existentes na memória.
![Page 220: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/220.jpg)
Diretivas do Macro-Assembler
SEGMENT - DEFINE SEGMENTO
– FORMATO: NOME SEGMENT [ALINHM.][COMB.][CLASSE]
– CLASSE: Define que os segmentos, embora de nomes diferente, mas de mesma
classe, devem ser agrupados na linkedição.
‘CODE’
‘DATA’
‘STACK’
![Page 221: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/221.jpg)
Diretivas do Macro-Assembler
ENDS - FINALIZAÇÃO DE SEGMENTO
– FORMATO: NOME ENDS
– EXEMPLO: INICIO SEGMENT ROT PROC NEAR
P1 PROC FAR ....
... RET
CALL ROT ROT ENDP
...
RET
P1 ENDP INICIO ENDS
![Page 222: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/222.jpg)
Diretivas do Macro-Assembler
END - Finalização do programa
– FORMATO: END nome
nome é o ponto de entrada do programa.
![Page 223: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/223.jpg)
Diretivas do Macro-Assembler
DEFINIÇÃO DE ÁREA DE ARMAZENAMENTO DB - DEFINE COMO BYTE
DW - DEFINE COMO WORD
DD - DEFINE COMO DOUBLE WORD
DQ - DEFINE COMO QUADWORD
DT - DEFINE COMO DEZ BYTES
– FORMATO: NOME DB/DW/DD/DQ/DT VALOR/LISTA DEVALORES– EXEMPLO: X DB 2AH
LISTA DB 30D,43D,74D
Y DW 402BH
Z DB 01001110B
![Page 224: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/224.jpg)
Diretivas do Macro-Assembler
EQU - DEFINE CONSTANTE
– FORMATO: NOME EQU VALOR– EXEMPLO: CONST1 EQU 0
CONST2 EQU 4
CONST3 EQU CONST2 + 3 BYTE/WORD/..../NEAR/FAR PTR - FORÇA EXPRESSÃO A SER DE
UM TIPO BYTE, WORD, ....OU GERAR UM CÓDIGO DO TIPO NEAR OU FAR.– FORMATO:
BYTE/WORD/DWORD/QWORD/TBYTES/NEAR/FAR PTR EXPRESSÃO
EXEMPLO: X DB 02H ROT PROC NEAR
MOV AX,WORD PTR X ....
CALL FAR PTR ROT RET
... ROT ENDP
![Page 225: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/225.jpg)
Diretivas do Macro-Assembler
SHORT - USANDO-SE EM UMA INSTRUÇÃO JMP FAZ COM QUE O MONTADOR GERE UM CÓDIGO SEJA DE APENAS DOIS BYTES. O DESVIO NÃO PODE SER SUPERIOR A -128 OU +127 BYTES.– FORMATO: JMP SHORT NOME
OFFSET - FORNECE O DESLOCAMENTO DE UMA VARIÁVEL OU RÓTULO DENTRO DO SEGMENTO ONDE ESTÁ DEFINIDO.
– FORMATO: OFFSET EXPRESSÃO
– EXEMPLO: MENS DB ‘Bom Dia$
MOV DX,OFFSET MENS SEG - FORNECE O SEGMENTO DE UMA VARIÁVEL OU RÓTULO.
– FORMATO: SEG EXPRESSÃO– EXEMPLO : MOV AX, SEG MENS
![Page 226: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/226.jpg)
Diretivas do Macro-Assembler
ESTRUTURAS - É uma coleção de objetos (dados) os quais podem ser lidos/escritos como um único objeto. Os dados de uma estrutura podem ter diferentes tamanhos e podem acessados simbolicamente.
– FORMATO DA DECLARAÇÃO:
nome struc
declarações
nome ends– FORMATO DA DEFINIÇÃO DA VARIÁVEL
[nome] nome_da_estrutura <[valor_inicial [,valor_inicial]]>
![Page 227: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/227.jpg)
Diretivas do Macro-Assembler
ESTRUTURAS - date STRUC
month db ?
day db ?
year dw ?
date ENDS
DADOS SEGMENT PARA 'DATA'
yesterday date <09,03,2000>
today date <09,04,2000>
tomorrow date <09,05,2000>
anotherday date <>
someotherdays date 20 DUP (<>)
DADOS ENDS
CODIGO SEGMENT PARA 'CODE'
ASSUME CS:CODIGO,DS:DADOS,SS:PILHA
INICIO PROC FAR
MOV AX,DADOS MOV DS,AX MOV AL,yesterday.day MOV AH,today.day MOV DL,tomorrow.day MOV anotherday.day,DL LEA BX,someotherdays MOV [BX].day,dl
![Page 228: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/228.jpg)
Diretivas do Macro-Assembler
MACRO - Possibilita atribuir um nome a um bloco de código e utiliza-lo, através deste nome, no seu programa.
– FORMATO DA DECLARAÇÃO:
nome macro [parâmetro[,parâmetro]]
statements
nome endm
– FORMATO PARA CHAMAR A MACRO
nome [argumento [,argumento]]
![Page 229: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/229.jpg)
Diretivas do Macro-Assembler
MACRO -DADOS SEGMENT PARA 'DATA'
RenataN1 db 06
RenataN2 db 08
Renatatpontos db ?
DADOS ENDS
totalpontos MACRO n1,n2
MOV AL,n1
MOV AH,n2
CLC
ADD AH,AL
ENDM
CODIGO SEGMENT PARA 'CODE' ASSUME CS:CODIGO,DS:DADOS,SS:PILHA
INICIO PROC FAR MOV AX,DADOS MOV DS,AX totalpontos RenataN1,RenataN2 MOV Renatatpontos,AH
MOV AH,4CH INT 21H INICIO ENDP CODIGO ENDS END INICIO
![Page 230: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/230.jpg)
Interrupções O que é uma interrupção?
– É um evento interno ou externo ao processador provocado por um usuário que solicita sua atenção.
Quais os tipos de interrupção?– Interrupções por software
» Instruções INT
– Interrupções por hardware» NMI» IRQ’s conectadas ao pino INTR
– Exception Handlers (Int. Excepcionais)
![Page 231: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/231.jpg)
Arquitetura de Computadores
Interrupções na Arquitetura x86
– Hardware Internas
Externas Mascarável
Não-Mascarável
– Software Sistema Operacional
Usuário
![Page 232: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/232.jpg)
Interrupções
Exemplos de Exception Handlers– Erro irrecuperável de HW;
– Divisão por zero;
– Breakpoint;
– Passo a Passo;
– Overflow;
– Violação dos limites da memória.
![Page 233: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/233.jpg)
Resposta do Processador a uma Interrupção
PUSH FLAGSCLEAR IFCLEAR TFPUSH CSPUSH IPFETCH ISR ADDRESS
POP IPPOP CSPOP FLAGS
INTERRUPTSERVICE
PROCEDURE
PUSH REGISTERS
POP REGISTERSIRET
![Page 234: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/234.jpg)
Vetores de InterrupçãoProcessadores da Família 8086
INT (Hex) IRQ COMMON USES00 - 01 Exeption Handlers -
02 Non-Maskable IRQ Non-Maskable IRQ (Parity Errors)03 - 07 Exeption Handlers -
08 Hardware IRQ0 System Timer09 Hardware IRQ1 Keyboard0A Hardware IRQ2 Redirected0B Hardware IRQ3 Serial Comms. COM2/COM40C Hardware IRQ4 Serial Comms. COM1/COM30D Hardware IRQ5 Reserved / Sound Card0E Hardware IRQ6 Floppy Disk Controller0F Hardware IRQ7 Parallel Comms.
10 - 6F Software Interrups -70 Hardware IRQ8 Real Time Clock71 Hardware IRQ9 Redirected IRQ272 Hardware IRQ10 Reserved73 Hardware IRQ11 Reserved74 Hardware IRQ12 PS/2 Mouse75 Hardware IRQ13 Math's Co-Processor76 Hardware IRQ14 Hard Disk Drive77 Hardware IRQ15 Reserved
78-FF Software Interrups -
![Page 235: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/235.jpg)
Controlador de Interrupção Programável - PIC 8259
Foi projetado para permitir priorização e tratamento de interrupções de dispositivos periféricos, multiplexando vários sinais de interrupção na entrada de interrupção do processador.
![Page 236: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/236.jpg)
Diagrama em Blocos - PIC 8259
![Page 237: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/237.jpg)
Diagrama em Blocos - PIC 8259
Interrupt Request Register (IRR):
Monitora as entradas de interrupção
para verificar as que estão ativas. Se
uma interrupção estiver não mascarada
e sua entrada ativa o bit
correspondente a esta entrada será
setado no IRR.
![Page 238: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/238.jpg)
Diagrama em Blocos - PIC 8259
Priority Resolver:Envia um novo sinal interrupção para
o processador após o reset do bit de maior prioridade do ISR. Se a nova interrupção tiver maior prioridade que a interrupção que está sendo atendida o respectivo bit no ISR será setado e é ativado o circuito que envia um novo sinal de INT para o processador.
![Page 239: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/239.jpg)
Diagrama em Blocos - PIC 8259
Exemplo: ocorrência de interrupçõesPROGRAMAPRINCIPAL
INICIALIZA 8259AIR2, IR4 UNMASK
STI
ROTINAIR4STI ROTINA
IR2STI
EOIRETI
EOIRETI
PROGRAMAPRINCIPAL
INICIALIZA 8259AIR2, IR4 UNMASK
STIROTINA IR4
ROTINA IR2
EOIRETI
EOIRETI
![Page 240: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/240.jpg)
Diagrama em Blocos - PIC 8259
In-Service Register (ISR):
Sinaliza as instruções que estão sendo atendidas pelo processador. Para cada interrupção que estiver sendo atendida um bit correspon-dente será setado neste registrador.
![Page 241: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/241.jpg)
Diagrama em Blocos - PIC 8259
Interrupt Mask Register (MR):
Desabilita (mask) ou habilita (unmask) individualmente entradas de interrupção. Cada bit do registrador corresponde a uma entrada de interrupção, e quando em 1 indica que a interrupção está desabilitada.
![Page 242: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/242.jpg)
Control Logic:– INT: envia o pedido de interrupção para a
entrada INTR do processador;– INTA: recebe dois pulsos de
reconhecimento de interrupção vindos da saída INTA do processador. O primeiro pulso é utilizado no modo cascata e o segundo pulso solicita o byte que indica que tipo de interrupção foi requisitada ao processador.
Diagrama em Blocos - PIC 8259
![Page 243: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/243.jpg)
Etapas de uma Interrupção– É requisitada uma interrupção via uma
das entradas IR’s do PIC, sendo setado o bit correspondente no IRR;
– O PIC ativa a linha INT, que está conectada ao pino INTR do processador;
– Se INTR estiver habilitado o processador conclui a instrução corrente e envia um pulso no pino INTA para o PIC;
– O PIC seta no ISR o bit correspondente à IR ativa de maior prioridade e reseta o respectivo bit no IRR.
![Page 244: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/244.jpg)
– É enviado um segundo pulso no pino INTA para o PIC, durante o qual é enviado, pelo bus de dados, o número do tipo de interrupção solicitada;
– A CPU determina o endereço associado à ISR (rotina de serviço de interrupção), buscando e executando esta ISR;
– Caso esteja configurado o modo automático de fim de interrupção (AEOI) o bit ISR correspondente será resetado ao final do segundo pulso INTA, caso contrário este bit será resetado pelo comando EOI presente na rotina de interrupção.
Etapas de uma Interrupção
![Page 245: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/245.jpg)
Configuração em CascataPIC 8259
![Page 246: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/246.jpg)
Configuração em CascataPIC 8259
Sistema Mestre/Escravo: quando em cascata o PIC 8259 de cujo pino INT está ligado à entrada INTR do processador é chamado de mestre, enquanto os PIC’s cuja saída INT estiver ligada às entradas IR’s do mestre são chamados de escravos.
![Page 247: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/247.jpg)
Configuração em Cascata PIC 8259
Conexões do modo cascata– CAS0/CAS1/CAS2: estes três bits são
utilizados para identificação (ID) dos escravos. Os pinos do mestre são conectados aos correspondentes pinos dos escravos. Para o mestre estes pinos funcionam como saídas e para os escravos como entradas.
– SP/EN: diferencia o mestre dos escravos, sendo mantido em nível 0 para os escravos e em nível 1 para os mestres.
![Page 248: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/248.jpg)
Configuração em Cascata PIC 8259
Etapas de uma interrupção do escravo– Ocorre um pedido de interrupção em uma das
entradas IR do escravo;– Dependendo da prioridade e da habilitação da
interrupção, o escravo envia um sinal INT para a entrada IR do mestre;
– De mesma forma, dependendo da prioridade e da habilitação da interrupção, o mestre envia um sinal INT para a entrada INTR do processador;
![Page 249: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/249.jpg)
Configuração em Cascata PIC 8259
Etapas de uma interrupção do escravo– Estando INTR habilitada, o processador irá
executar a rotina de interrupção e enviará dois pulsos INTA para ambos os PIC’s;
– No primeiro pulso o mestre seleciona o escravo solicitante através dos pinos CAS.
– No segundo pulso o escravo selecionado enviará através das linhas de dados o número do tipo de interrupção solicitada.
![Page 250: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/250.jpg)
Configuração em Cascata PIC 8259
Cuidado ao se trabalhar em cascata!– Quando no mestre se trabalha ao mesmo
tempo com IR’s para escravos e entradas comuns não deve-se usar a IR0 para um escravo, pois quando uma entrada comum for ativada os pinos de CAS ficarão em nível lógico baixo e o escravo que estiver em IR0 será selecionado, causando um erro no sistema.
![Page 251: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/251.jpg)
Configuração em Cascata PIC 8259
Modo totalmente aninhado– Permite que uma interrupção de maior
prioridade de um escravo seja atendida, mesmo que o processador esteja atendendo uma interrupção deste mesmo escravo (ISR em nível alto).
– Para verificar a existência de outra interrupção no mesmo escravo é ressetado o bit ISR do escravo através de um EOI, que é lido em seguida. Caso seja zero é enviado um EOI para o mestre.
![Page 252: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/252.jpg)
Palavra de Controle de Inicialização - ICW1
A70 A6 A5 1 LTIM ADI SNGL IC4
A7 - A5 OF INTERRUPTVECTOR ADDRESS(MCS-80/85 MODE ONLY )
1 = ICW4 NEEDEDO = NO ICW4 NEEDED
1 = SINGLEO = CASCADE MODE
CALL ADDRESS INTERVAL1 = INTERVAL OF 4O = INTERVAL OF 8
1 = LEVEL TRIGGERED MODE0 = EDGE TRIGGERED MODE
A0 D7 D6 D5 D4 D3 D2 D1 D0
![Page 253: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/253.jpg)
Palavra de Controle de Inicialização - ICW2/3
ICW2
ICW3 (MESTRE)
ICW3 (ESCRAVO)
T7 - T3 OF INTERRUPTVECTOR ADDRESS(8086 / 8088 MODE)
T71 T6 T5 T4 T3 A10 A9 A8
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 = IR INPUT SLAVE0 = NO IR INPUT SLAVE
S71 S6 S5 S4 S3 S2 S1 S0
A0 D7 D6 D5 D4 D3 D2 D1 D0
SLAVE ID (000 - 111)
01 0 0 0 0 ID2 ID1 ID0
A0 D7 D6 D5 D4 D3 D2 D1 D0
![Page 254: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/254.jpg)
Palavra de Controle de Inicialização - ICW4
1 = 8086/8086 MODEO = MCS-80/85 MODE
1 = AUTO EOIO = NORMAL EOI
0 X NON BUFFERED MODE 1 0 BUFFERED MODE / SLAVE 1 1 BUFFERED MODE / MASTER
1 = SPECIAL FULLY NESTED MODE0 = NOT SPECIAL FULLY NESTED MODE
A0 D7 D6 D5 D4 D3 D2 D1 D0
01 0 0 SFNM BUF M/S AEOI PM
![Page 255: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/255.jpg)
Diagrama de Fluxo da Inicialização do PIC 8259
ICW1
ICW2
IN CASCADE MODEICW3
ICW4
READY TO ACCEPT INTERRUPT REQUESTS
IS ICW4 NEEDED
YES (SNGL=0)
YES (IC4=1)
NO (SNGL=1)
NO (IC4=0)
![Page 256: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/256.jpg)
Palavra de Controle deOperação - OCW1/2
OCW1
OCW2INTERRUPT MASK1 = MASK SET0 = MASK RESET
M71 M6 M5 M4 M3 M3 M2 M0
A0 D7 D6 D5 D4 D3 D2 D1 D0
IR LEVEL TO BE ACTED UPON(000 - 111)
A0 D7 D6 D5 D4 D3 D2 D1 D0
R0 SL EOI 0 0 L2 L1 L0
0 0 1 NON-SPECIFIC EOI COMMAND 0 1 1 SPECIFIC EOI COMMAND 1 0 1 ROTATE ON NOM-SPECIFIC EOI COMMAND 1 0 0 ROTATE IN AUTO EOI MODE (SET) 0 0 0 ROTATE IN AUTO EOI MODE (CLEAR) 1 1 1 ROTATE ON SPECIFIC EOI COMMAND ** 1 1 0 SET PRIORITY COMMAND **
** L0 - L2 ARE USED
END OF INTERRUPT
AUTO ROTATION
SPECIFIC ROTATION
![Page 257: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/257.jpg)
Palavra de Controle deOperação - OCW3
A0 D7 D6 D5 D4 D3 D2 D1 D0
00 ESMM SMM 0 1 P RR RIS
1 0 READ IRR ON NEXT RD PULSE
1 1 READ ISR ON NEXT RD PULSE
1 = POLL COMMAND0 = NO POLL COMMAND
1 0 RESET SPECIAL MASK 1 1 SET SPECIAL MASK
![Page 258: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/258.jpg)
Programa de Inicializaçãodo PIC 8259
;initialize 8259A
MOV AL, 00010011B ;Edge triggered, single, ICW4
MOV DX, 0FF00H ;point at 8259A control
OUT DX, AL ;send ICW1
MOV AL, 01000000B ;type 64 is first 8259A type
MOV DX, 0FF02H ;point at ICW2 address
OUT DX, AL ;send ICW2
MOV AL, 00000001B ;ICW4, 8086 mode
OUT DX, AL ;send ICW4
MOV AL, 11111010B ;OCW1 to unmask IR0 & IR2
OUT DX, AL ;send OCW1
![Page 259: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/259.jpg)
Arquitetura de Computadores
Interrupções do BIOS
– INT 5h - Print screen » Imprime conteúdo da tela
– INT 10h - Vídeo» Interrupção do BIOS que trata o vídeo» Os serviços são passados através do registrador
AH
![Page 260: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/260.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo
» Especificação do modo
• Chama-se com:
AH = 0
AL = Modo
Modo Resolução Caract.
0h 40×25 tx, preto/branco
1h 40×25 tx, 16 cores
2h 80×25 tx, preto/branco
3h 80×25 tx, 16 cores
4h 320×200 gr, 4 cores
5h 320×200 gr, preto/branco
6h 640×200 gr, 2 cores
..........
12h 640×480 gr, 16 cores
..........
![Page 261: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/261.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Ajusta formato do cursor
• Chama-se com:
AH = 1
CH = linha inicial
CL = linha final
- número de linhas = 7
» Posiciona o cursor
• Chama-se com:
AH = 2
DH = linha
DL = coluna
BH = número da página
![Page 262: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/262.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Ler posição do cursor
• Chama-se com:
AH = 3
BH = número da página
• Recebe-se em:
DH = linha inicial
DL = linha final
CX = tipo do cursor
» Selecionar página
• Chama-se com:
AH = 5
AL = página
Páginas Modos
0-7 0-3 (placas SVGA)
* Modos gráficos
* - depende dos modos suportados por cada placa.
![Page 263: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/263.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Rolar para cima a janela de vídeo
• Chama-se com:
AH = 6
AL = número de linhas a serem roladas (Zero (0) rola todas)
CH = linha do canto superior esquerdo
CL = coluna do canto superior esquerdo
DH = linha do canto inferior direito
DL = coluna do canto inferior direito
BH = atributo a ser usado nas novas linhas
» Rolar para baixo a janela de vídeo• Chama-se com:
AH = 7
AL = número de linhas a serem roladas (Zero (0) rola todas)
CH = linha do canto superior esquerdo
CL = coluna do canto superior esquerdo
DH = linha do canto inferior direito
DL = coluna do canto inferior direito
BH = atributo a ser usado nas novas linhas
![Page 264: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/264.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Ler o caracter e o atributo da
posição do cursor• Chama-se com:
AH = 8
BH = número da página
• Recebe-se em:
AL = caracter
AH = atributo do caracter
» Escreve caracter e atributo
• Chama-se com:
AH = 9
BH = número da página
AL = caracter BL = atributo do
caracterCX = número de repetições
![Page 265: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/265.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Escreve caracter
• Chama-se com:
AH = 10
BH = número da página
AL = caracter CX = número de
repetições
» Escreve um ponto (pixel)
• Chama-se com:
AH = 12
AL = cor do pixel. Caso o bit 7 de AL seja 1, a cor do pixel será o ou-exclusivo com a cor atual. BH = página
CX = coordenada X (coluna)
DX = coordenada Y (linha)
![Page 266: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/266.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Ler um ponto (pixel)
• Chama-se com:
AH = 13
BH = página
CX = coordenada X (coluna)
DX = coordenada Y (linha)• Recebe-se em:
AL = cor do pixel
» Escreve caracter em modo TTY
• Chama-se com:
AH = 14
BH = número da página
AL = caracter BL = cor do 2º plano
* Avança posição do cursor automaticamente.** Aceita caracteres de controle como bell, avanço
de linha, carriage return e backspace.
![Page 267: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/267.jpg)
Arquitetura de Computadores
– INT 10h - Vídeo» Obtém o modo do vídeo
• Chama-se com:
AH = 15• Recebe-se em:
AH = número de colunas da tela
AL = modo
BH = página ativa
» Escreve caracter em modo TTY
• Chama-se com:
AH = 14
BH = número da página
AL = caracter BL = cor do 2º plano
* Avança posição do cursor automaticamente.** Aceita caracteres de controle como bell, avanço
de linha, carriage return e backspace.
![Page 268: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/268.jpg)
Arquitetura de Computadores
– INT 13h - DISCO» Reseta sistema de dico
• Chama-se com:
AH = 00h
AL = número do driver
00 - 7Fh floppy disk
80 - FFh hard disk• Recebe-se em:
CF = 0 sem erro
1 erro
AH = código do erro
» Código do Erro• 00h - sem erro• 01h - comando inválido• 02h - “address mark” não
encontrado• 03h - disco protegido• 04h - setor não encontrado• 05h - falha de reset• 06h - disco removido• 08h - erro de DMA• 09h - erro de limite de DMA• 10h - setor com erro• 20h - falha do controlador• 40h - trilha não encontrada• 80h - time-out
![Page 269: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/269.jpg)
Arquitetura de Computadores
– INT 13h - DISCO» Obtém status
• Chama-se com:
AH = 01h
• Recebe-se em:
AL = código do erro
» Ler/Escreve/Verifica/Formata• Chama-se com:
AH=02h/03h/04h/05hAL= número de setores
CH= número do cilindroCL= número do setor
(1, se AH=5)DH= número da cabeçaDL= número da unidadeES:BX= buffer
• Recebe-se em:CF= 0 sem erro
1 erro AH= código do erro
![Page 270: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/270.jpg)
Arquitetura de Computadores
– INT 13h - DISCO» Se AH=05h (Formatar)
ES:BX = 4 campos de entrada para cada setor byte 0 - número do cilindro
byte 1 - número da cabeça
byte 2 - número do setor
byte 3 - código do tamanho do setor
00h - 128 b/s 01h - 256 b/s 02h - 512 b/s 03h - 1024 b/s
![Page 271: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/271.jpg)
Arquitetura de Computadores
– INT 16h - Teclado» Aguarda a diigitação de um caracter
e o lê• Chama-se com:
AH = 10h Se um caractere ASCII foi digitado
• Recebe-se em AH = código de varredura
AL = código ASCII Se um caractere especial foi digitado
• Recebe-se em AH = código ASCII estendido
AL = 00h
» Verifica se um caracter está pronto
• Chama-se com: AH = 11h
Se um caractere ASCII foi
digitado ZF=0 e AH = código de varredura
AL = código ASCII
Caso contrário, ZF=1
Obs.: Não remove do buffer
![Page 272: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/272.jpg)
Arquitetura de Computadores
– INT 16h - Teclado» Obtêm status do teclado
• Chama-se com: AH = 12h
• Recebe-se emAL = status
01h - shift direito ativo02h - shift esquerdo ativo04h - crtl ativo08h - alt ativo10h - num lock ativo20h - scroll lock ativo40h - caps lock ativo80h - inserção ativa
![Page 273: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/273.jpg)
Arquitetura de Computadores
– INT 17h - Impressora» Imprime caractere
• Chama-se com: AH = 00h
AL = caractere DX = número da impressora
• Recebe-se em
AH = status» Inicializa impressora
• Chama-se com: AH = 01h DX = número da impressora
» Obtêm status da impressora• Chama-se com:
AH = 02h DX = número da impressora
• Recebe-se em
AH = status01h - time-out
08h - erro de I/O 10h - impressora selecionada 20h - sem papel 40h - reconhecimento
80h - impressora desocupada
![Page 274: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/274.jpg)
Arquitetura de Computadores
– INT 19h - Warm Start
– INT 1Ah - Obtém / atualiza tempo / data
» Ler contador do relógio• Chama-se com:AH = 00h • Recebe-se em:
AL = 0, se não se passaram 24h da última leitura
CX = parte de alta-ordem do contador
DX = parte de baixa-ordem do contador
» Atualiza contador do relógio• Chama-se com:AH = 01h
CX = parte de alta-ordem do contador
DX = parte de baixa-ordem do contador
» Ler relógio• Chama-se com:AH = 02h • Recebe-se em:
CH = horas em BCD CL = minutos em BCD DH = segundos em BCD
DL = milesegundos em BCD
![Page 275: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/275.jpg)
Arquitetura de Computadores
– INT 1Ah - Obtém / atualiza tempo / data
» Atualiza relógio
• Chama-se com:AH = 03h
CH = horas em BCD CL = minutos em BCD DH = segundos em BCD DL = milesegundos em
BCD
» Ler data• Chama-se com:AH = 04h • Recebe-se em:
CH = século (19 ou 20) em BCD
CL = ano em BCD DH = mês em BCD
DL = dia em BCD» Atualiza data
• Chama-se com:AH = 05h
CH = século (19 ou 20) em BCD
CL = ano em BCD DH = mês em BCD
DL = dia em BCD
![Page 276: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/276.jpg)
Conexao Prot Board
Vamos aqui mostar como foi implementada a conecção entre o porta Paralela e o Prot Board.
O computador geralmente possui 3 portas: LPT1, LPT2 e LPT3 (alguns possuem LPT4). Cada porta dessas possui 3 endereços: data, status e control. Esses endereços estão numa ordem sequencial. Isso quer dizer que se a porta data tem o endereço 0x038, então o endereço correspondente de status é 0x0379 e o control é 0x037a.
![Page 277: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/277.jpg)
Conexao entre a Porta Paralela e o Prot Board
Endereços de Acesso a Porta PoralelaHoje em dia, os computadores estão basicamente configurados da seguinte maneira:
Printer Data Port Status Control LPT1 0x0378 0x0379 0x037a LPT2 0x0278 0x0279 0x027a LPT3 0x03bc 0x03bd 0x03be
Obs: A porta normalmente utilizada e a LPT1
![Page 278: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/278.jpg)
Conexao entre a Porta Paralela e o Prot Board
Abaixo temos a a função dos pinos no conector DB25:
![Page 279: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/279.jpg)
Conexao entre a Porta Paralela e o Prot Board
Na figura temos a direção dos pinos de acordo com função
![Page 280: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/280.jpg)
Conexao entre a Porta Paralela e o Prot Board
Desta forma utilizamos para a montagem os bits de dados D0 ~ D4 como saída, e como entrada Ack no pino 10, Busy no pino 11, Paper end no pino 12, Slct out no pino 13 e Error no pino 15.
A saídas foram conectadas nas 4 entrada do 2º display de sete segmentos da Placa (que possui decodificador), de acordo com a sequência;D0 -> I0 ; D1 -> I1 etc... A saída D4 não esta sendo utilizada e de D5~D7 não foram conectadas.
![Page 281: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/281.jpg)
Conexao entre a Porta Paralela e o Prot Board
As Entradas estão conectadas as primeiras chaves da placa e ligada também ao 1º display de sete segmentos, não lembro qual foi bit foi utilizado como mais significativo e qual como menos significativo.
Desta forma quando se comuta as chaves de entrada, verifica-se a alteração no valor do 1º display na placa.
O pino 25 do conector estar servindo de com sinal de referência(GND) para a Placa.
Obs: o Lembrando que o sinal de Controle BUSY invertido pelo hardware da Porta Paralela
![Page 282: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/282.jpg)
Arquitetura de Computadores
– Endereços da Porta Paralela
» Porta Reg de Dados Reg de Status Reg de Controle
LPT1 378h 379h 37AhLPT2 278h 279h 27Ah
D7D6D5D4D3D2D1D0
Busy (LI)
#AckPESELECT#ERROR#IRQReservadoReservado
Reservado (Todos são LI)
ReservadoDireção (não conctado)
IRQ ENABLE (não conctado)
# SELECT INPUTINIT#AUTOFEED#STROBE
Lógica Invertida:escrevendo-se 0, tem-se 1 na saída
23456789
1110121315 17
1614 1
![Page 283: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/283.jpg)
Arquitetura de Computadores
– Teste de Presença de Porta
MOV AH,3MOV AL,AH
MOV DX,378H OUT DX,AL XOR AL,AL IN AL,DX CMP AH,AL JNZ PortNotPresent (Verificar o endereço 0040:0008h)
![Page 284: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/284.jpg)
Arquitetura de Computadores
D0 2
BUSY 11
(378h)
(379H)
330
10K
+5V
+5V
![Page 285: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/285.jpg)
Arquitetura de Computadores
– Controle sobre a Porta Paralela .................. MOV AL,01h ;apaga LED
MOV DX,378h OUT DX,ALT: MOV DX,379h IN AL,DX ; lê reg de status
TEST AL,80h ; e verifica se tecla foi
JNZ T1 ; pressionada
MOV AL,00h ; se foi, acende-se o LED
OUT DX,AL CALL DELAY
T1:MOV AL,01h; apaga-se o LED
OUT DX,AL MOV AH,01h ; verifica-se
INT 16h; se uma tecla foi pres-
JNZ T2; sionada
JMP TT2:MOV AH,4CH INT 21h ; fim
![Page 286: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/286.jpg)
Arquitetura de Computadores
– INT 14h - serial (BIOS)
– INT 21h» CONSOLE:SERVIÇOS 01 - 0Ch
» AJUSTE DE INTERRUPÇÃO: 25h,35h
» DATA E HORA: 2Ah-2Dh
» FINALIZAÇÃO DE PROGRAMA: 4Ch,31h
» DIRETÓRIO E ARQUIVO:39h-43h
![Page 287: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/287.jpg)
C com Assembly
/*C com Assembly - Inline -Teste de Presenca de Paralela - */#include <stdio.h>int main(){printf("Teste da Paralela \n");asm mov dx,0x378asm mov al,0xf0asm mov ah,alasm out dx,alasm xor al,alasm mov dx,0x378
asm in al,dx
asm xor al,ah
asm jnz t
printf("LPT1 presente!\n");
t:
return 0;
}
![Page 288: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/288.jpg)
C com Assembly
/*C com Assembly - Inline -
Teste de Presenca de Paralela - */
#include <stdio.h>
extern int xplusy(int x, int y);
int main()
{
int a,b
a=5;
b=7;
printf(“A soma é %d”,xplusy(a,b));
return 0;
.MODEL SMALL
.CODEPUBLIC xplusyxplus PROC NEARPUSH BPMOV BP,SPSUB SP,02MOV AX,[BP+04]ADD AX,[BP+06]MOV [BP-02],AXMOV SP,BPPOP BPRETxplusy ENDP
END
![Page 289: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/289.jpg)
C com Assembly
.MODEL SMALL
.CODEPUBLIC xplusyxplus PROC NEARPUSH BPMOV BP,SPSUB SP,02MOV AX,[BP+04]ADD AX,[BP+06]MOV [BP-02],AXMOV SP,BPPOP BPRETxplusy ENDP
END
.
1004 12 z1006 valor de BP1008 endereço de retorno100A 5 a100C 7 b
Topo da Pilha do Main
![Page 290: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/290.jpg)
C com Assembly
/*C com Assembly - Inline -
Teste de Presenca de Paralela - */
#include <stdio.h>
extern int xplusy(int x, int y);
int main()
{
int a,b
a=5;
b=7;
printf(“A soma é %d”,xplusy(a,b));
return 0;
.MODEL SMALL,C
.CODE
PUBLIC xplusy
xplus PROC NEAR C, x:word,
y:word
LOCAL z:word
MOV AX,x
ADD AX,y
MOV z,AX
RET
xplusy ENDP
END
![Page 291: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/291.jpg)
C com Assembly
/*C com Assembly - Inline -
Teste de Presenca de Paralela - */
#include <stdio.h>
extern int xplusy(int x, int y);
int main()
{
int a,b
a=5;
b=7;
printf(“A soma é %d”,xplusy(a,b));
return 0;
Código gerado para xplusy:PUSH BPMOV BP,SPSUB SP,02MOV AX,[BP+04]ADD AX,[BP+06]MOV [BP-02],AXMOV SP,BPPOP BPRET
![Page 292: Organização de Computadores Paulo Maciel. Arquitetura de Computadores 1 Introdu₤₧o 1 Resumo Histórico 1 Componentes computador 1 Componentes de um processador](https://reader033.vdocuments.mx/reader033/viewer/2022061618/552fc141497959413d8df5b8/html5/thumbnails/292.jpg)
C com Assembly
• bcc -S nome.asm nome.c
- converte arquivo C em assembly
• bc - BorlandC
• tasm - TurboAssembler
• td - TurboDebugger