Funções de um computador Processamento de dados Armazenamento de dados Movimentação de dados Controle
A Máquina de von Neumann Unidade Lógica e Aritmética Memória Principal Equipamentos de entrada e saída Unidade de Controle
O programa passa a ser armazenado na memória do computador juntamente com os dados. As tarefas de controle e de operações aritméticas são separadas. Cria a base da estrutura dos computadores modernos usados até hoje. A proposta foi implementada com a construção do computador IAS no Instituto de Princeton em 1952.
I/O controle armazenamento processamento
Comunicação entre os periféricos I/O Comunicação entre os periféricos controle armazenamento processamento
Armazenamento de dados I/O Armazenamento de dados controle armazenamento processamento
Processamento de dados armazenados I/O Processamento de dados armazenados controle armazenamento processamento
Processamento de dados armazenados e externos I/O Processamento de dados armazenados e externos controle armazenamento processamento
Estrutura Computacional (Global) Centro de armazenagem Centro de processamento Linhas de comunicação Periféricos
Periféricos Computador Linhas de comunicação
Estrutura Computacional (Interno) Unidade de processamento central (CPU): controla as operações do computador e realiza as funções de processamento das informações. Geralmente identificado como o processador. Memória principal: armazena as informações I/O: realiza a transferência de informações entre o interior e o exterior Interconexões: mecanismos de troca de informações entre a CPU a memória principal e o I/O
Sistema de Interconexão Computador I/O Sistema de Interconexão Memória principal CPU
Estrutura de uma CPU Unidades de Controle: responsável pelo controle da CPU Unidade aritmética e lógica (ALU): realiza as operações de processamento Registradores: possibilita a armazenagem interna na CPU Interconexões: realiza a comunicação entre as unidades da CPU
CPU Registradores Interconexão interna Unidade de controle ALU
O processador busca uma instrução de cada vez da memória e a executa O processador busca uma instrução de cada vez da memória e a executa. Algumas instruções requerem várias operações. O processamento de uma instrução é chamado de ciclo de instrução ou de execução (execute cycle). O processo de busca de instruções na memória é chamado de ciclo de busca (fetch cycle).
Execução de um programa: início Ciclo de busca Busca da instrução Ciclo de instrução Execução da instrução parada
Componentes de um computador PC IR I/O AR MBR MAR I/O BR CPU instruções memória dados PC - program counter IR - instruction register MAR - memory address register MBR - memory buffer register buffers I/O I/O AR - I/O address register I/O BR - I/O buffer register
memória CPU I/O PC IR I/O AR MBR MAR I/O BR No início de um ciclo de instrução, o processador busca uma instrução na memória e incrementa o valor armazenado em PC. instruções A instrução é armazenada em IR. A instrução é interpretada e a ação é realizada. memória dados Tipos de ações: processador - memória ou vice-versa processador - I/O ou vice-versa processamento de dados controle (mudança na seqüência de execução) buffers I/O
Exemplo: Execução de um programa que soma dois números armazenados em duas posições da memória e armazena o resultado na segunda posição. São necessários três ciclos de busca e três de execução.
memória PC 302 301 300 300 1940 301 5941 302 2941 940 0003 941 0002 1940 = 0001100101000000 0005 IR AC 1940 5941 2941 0003 0005 Notação hexadecimal: CPU 0000=0 1000=8 0001=1 1001=9 0010=2 1010=A 0011=3 1011=B 0100=4 1100=C 0101=5 1101=D 0110=6 1110=E 0111=7 1111=F 3 16 opcode endereço magnitude Instruções: 0001 - Load AC from Memory 0010 - Store AC to Memory 0101 - Add AC from Memory Instruções em hexa: 1 - Load AC from Memory 2 - Store AC to Memory 5 - Add AC from Memory
Interrupções: São mecanismos que possibilitam que outros módulos, tais como unidades de I/O ou de memória, possam interromper a seqüência de eventos sendo executada pelo processador, de forma a melhorar o desempenho.
Execução de um programa que realiza chamadas de escrita intercaladas com processamento 1 1 - seqüência de instruções não envolve I/O início Programa de I/O 2 2 - seqüência de instruções não envolve I/O Comando de I/O escrita fim 3 3 - seqüência de instruções não envolve I/O escrita processador em espera processador em espera escrita
Execução de um programa: início interrupção habilitada Verificação da ocorrência de interrupções. Programa suspenso. Ciclo de interrupção Ciclo de busca Busca da instrução Ciclo de instrução Execução da instrução interrupção desabilitada parada