1 introdução à programação com 100 notas de aula 03 ufop – iceb – decom prof. marcelo luiz...
TRANSCRIPT
1
Introdução à Programação
COM 100
Notas de Aula 03
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
2
Memória Principal
manipulação de dados. utiliza-se strings de bits para representação da informação. a memória é usualmente dividida em unidades de tamanho uniforme, as quais contém a seqüência de bits.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
3
Memória Principal Palavra de Memória: é uma seqüência de bits tratada como uma unidade de informação. uma unidade de memória é denotada por um único número, chamado endereço da memória. a memória é uma coleção, de comprimento padrão, de palavras que podem ser endereçadas.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
4
Memória Principal a maioria dos processadores atuais utilizam uma palavra de memória cujo tamanho é um byte (8 bits) isto significa que o padrão para processar e transferir dados, é baseado em 8 bits. Como trabalhar com palavras maiores ?
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
5
Memória Principal
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
n-1n-1
n-2n-2
n-3n-3
33
22
11
00m-1m-1 m-2m-2 22 11 00
n endereços
m bits
Palavra de Memória
6
Memória Principal por razões técnicas, a memória é fabricada, atualmente, para conter quantidades de bytes medidos em potências de 2. 2^10 bytes = 1024 bytes = 1 kilobyte = 1 K = KB. milhares de kilobytes 1 MEGABYTE (1 bilhão de bytes) = 1G = 1Gibabyte
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
7
Memória Principal
milhares de gibabytes (1 trilhão de bytes) = 1 TERABYTE.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
8
Tipos mais Importantes RAM – Ramdom Access Memory. Permite o acesso a qualquer unidade (célula de memória). ROM – Read Only Memory – Memória Somente para a leitura. leitura da memória = consultar um conteúdo. escrita na memória = armazenar um conteúdo.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
9
Tipos mais Importantes a escrita é uma operação que apaga o conteúdo anteriormente armazenado na memória. RAM – é uma memória volátil, pois requer-se uma quantidade de energia para manter os dados armazenados. também são denominadas DRAM – Dynamic RAM.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
10
Tipos mais Importantes SIMM – single in-line memory. DIMM – dual in-line memory. quando se desliga o computador, os dados são perdidos (volátil). Por esta razão, é importante ter um dispositivo de memória secundária para copiar os dados e programas (BACKUP).
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
11
Memórias
a memória principal é projetada para prover para o processador, o acesso aos dados e aos programas. busca-se no projeto o acesso mais rápido possível.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
12
Fatores que Determinam a Velocidade de Transferência – memória CPU
1) O dispositivo de memória (chip) possui uma taxa de transferência de dados.
As DRAM típicas: 80 nanosegundos = 80 * 10^-9 s = 80 bilionésimos de segundo.
Isto significa que seu tempo de resposta pode ser tão rápido quando 80 * 10^-9
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
13
Fatores que Determinam a Velocidade de Transferência – memória CPU
Aqui o tempo de resposta significa: o atraso entre o recebimento de um endereço para a memória e enviar o dado de volta a CPU; ou o atraso para o armazenamento de um dado novo na memória.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
14
Fatores que Determinam a Velocidade de Transferência – memória CPU
2) A velocidade total do sistema de computação, ou seja, as transferências de memória são sincronizadas à velocidade de operação da CPU.
Por exemplo, um chip de memória rápida fica sub-utilizado em um sistema cuja velocidade não o suporta, e vice-versa.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
15
Fatores que Determinam a Velocidade de Transferência – memória CPU
3) A largura do BUS, ou a quantidade de dados que podem ser transferidas entre a CPU e a memória de uma só vez.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
16
ROM
a ROM também é de acesso aleatório, mas: não permite operações de escrita; não é volátil; usualmente armazena instruções patenteadas, que o fabricante as escreve, para funções básicas do sistema (inicializar o PC, E/S, etc.).
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
17
Mais Detalhes da CPU
Registradores: unidades de memória que auxiliam a CPU na execução dos cálculos. MAR: Memory Address Register MDR: Memory Data Register PC: Programa Counter IR: Instruction Register GR: General Registers
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
18
Diagrama Funcional de uma CPU
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
19
O Ciclo Instrução-Execução
1) Busca da Instrução. O ciclo anterior deixou o endereço da próxima instrução, a ser executada, armazenada no registrador PC. A unidade de controle sinaliza para que uma cópia do endereço seja enviada para o MAR, através do BUS da CPU.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
20
O Ciclo Instrução-Execução
2) O valor do endereço no PC é então incrementado, para denotar a locação da memória principal que contém a próxima instrução. Isto é a preparação para o próximo ciclo.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
21
O Ciclo Instrução-Execução
3) A instrução, cujo endereço está armazenado no MAR, é agora copiada no MDR, através do BUS. O MDR serve como armazenamento temporário para tais transferências a partir da RAM.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
22
O Ciclo Instrução-Execução
4) Decodificação da Instrução. A instrução é copiada do MDR para o IR, através do BUS da CPU. No IR a instrução é decodificada. O IR possui circuitos especiais que quebram a instrução em componentes com significados.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
23
O Ciclo Instrução-Execução
5) Executando a Instrução. Após a decodificação da instrução, no IR, a unidade de controle envia sinais apropriados para iniciar a execução. Esta execução é usualmente realizada na ALU, a qual também pode empregar um ou mais registradores gerais (GR).
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
24
O Ciclo Instrução-Execução
6) Uma vez completada a execução da instrução, a CPU retorna ao passo 1 e repete todo o processo.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
25
O Sistema de Clock
todo o ciclo instrução-execução é gerenciado pelo ritmo do sistema de clock. cada estágio tomo um certo número de ciclos de clock, e o sistema utiliza seu ciclo de clock para assegurar que todos o seus componentes estão seqüenciados corretamente.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
26
O Sistema de Clock
clock: medido em megahertz (MHz). uma instrução de máquina pode tomar vários ciclos de clockj para se completar. um processador pode executar em média, milhões de instruções por segundo.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
27
Linguagem de Máquina ouConjunto de Instruções
Conjunto de Instruções: é o conjunto de operações embutidas de um modelo particular de computador ou máquina. Linguagem de Máquina: um conjunto particular de códigos que implementam todas as operações contidas no conjunto de instruções.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
28
Linguagem de Máquina ouConjunto de Instruções
Linguagem de Máquina: é específica para um processador. um programa escrito para um processador, não pode ser executado por outro processador, a não ser que o programa seja traduzido para a linguagem de máquina do novo processador.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
29
Operações Típicas de um Processador
Operações de Movimentação de Dados. transferir dados da memória para a CPU (e vice-versa). transferências da memória para a memória. executar as operações de entrada e saída.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
30
Operações Típicas de um Processador
Operações Lógicas e Aritméticas. adição, subtração, multiplicação e divisão numérica. comparação de quantidades: >, <, =, , , , etc. operações em bits: shift, rotate, comparações, conversões, etc.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
31
Operações Típicas de um Processador Operações para Controle de Programas. iniciar a execução do programa. parar a execução do programa. pular automaticamente para outras instruções do programa. testar um item de dado para decidir para qual instrução fazer o desvio.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
32
Conclusões
Os computadores trabalham com instruções simples e elementares. estas instruções são implementadas em circuitos eletrônicos, para executarem de forma rápida e precisa.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
33
Conclusões
uma instrução de alto nível, freqüentemente é decomposta em milhares, ou milhões, de instruções de máquina (baixo nível) para ser posteriormente executada.
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
34
Exercícios
1. Descreva a principal contribuição de John von Neumann para o desenvolvimento dos computadores modernos.
2. Identifique e explique as características do modelo de arquitetura de von Neumann.
3. Por que o conceito de programa armazenado é importante para a computação de propósito geral ?
4. Descreva o ciclo de von Neumann – Instrução-Execução.
5. Defina e explique a utilização da CPU, ALU, unidade de controle, BUS, RAM, ROM, memória principal e memória secundária.
6. Descreva a estrutura geral da memória principal.
7. Qual a função do sistema de clock ?
8. O que é uma Linguagem de Máquina ?
UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
1 Introdução à Programação COM 100 Notas de Aula 02 UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red
Pesquisa em Memória Primária - Hashing David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP