Logo Passei Direto
Buscar

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

+
Introdução à Ciência da 
Computação
Heitor S. Ramos
+
Conceitos de Hardware e Software
 Um computador é constituído por um conjunto de 
componentes interligados, composto por processadores, 
memória, registradores, terminais, impressoras, discos, além
de outros dispositivos físicos. 
+
A CPU
 A Unidade Central de Processamento (UCP ou CPU, em
inglês), ou processador, tem como função principal unificar
todo o sistema, controlando as funções realizadas por cada
unidade funcional. Ela também é responsável pela execução
de todos os programas do sistema, que obrigatoriamente
deverão estar armazenados em memória principal.
 Composta por dois componentes básicos:
 Unidade de controle (UC): responsável por controlar as 
atividades de todos os componentes do computador
 Unidade aritimética (ULA): responsável pela realização de 
operações lógicas (testes e comparações) e aritméticas (somas e
subtrações)
+
A CPU
 A especificação da velocidade de processamento de uma
CPU é determinada pelo número de instruções executadas
por unidade de tempo
 Será que essa comparação é justa?
 Como você compararia processadores?
 Clock
 É um dispositivo localizado na CPU que gera pulsos elétricos
síncronos em um determinado intervalo de tempo (medido em
Hz)
 Dá para comparar 2 CPUs através do clock?
+
Registradores
 São dispositivos de alta velocidade, localizados na CPU para
armazenamento temporário de dados. O número de 
registradores varia em função da arquitetura de cada
processaodor
 Registradores que merecem destaque:
 Registrador temporário de dados (MBR)
 Registrador de endereçamento à memória (MAR)
 Registrador de instruções (IR)
 Registrador de armazenamento temporário de instruçòes (IBR)
 Contador de Programa (PC)
+
Exemplo de execução
 0001 – carregar AC a 
partir do endereço de 
memória especificado
 0010 – armazenar o
valor contido em AC 
no endereço de 
memória especificado
 0101 – acrescentar ao
valor contido em AC o
valor contido no 
endereço de memória
especificado
+
Registradores
+
Memória Principal
 Memória de armazenamento de instruções e dados
 Composta por unidades chamadas de células
 O bit é a unidade básica de memória (0 ou 1)
 Tipicamente uma célula é composta por 8bits
+
Ciclos de leitura e gravação
 Leitura
 A CPU armazena no MAR o
endereço da célula a ser 
lida
 A CPU gera um sinal de 
controle para a memória
principal, indicando que
uma operação de leitura
deve ser realizada
 O conteúdo da(s) célula(s) 
identificada(s) pelo
endereço contido no MAR é
transferido para o MBR
 Escrita
 A CPU armazena no MAR o
endereço da célula que será
gravada
 A CPU armazena no MBR a 
informação que deverá ser 
gravada
 A CPU gera um sinal de 
controle para a memória
principal indicando que uma
operação de gravação deve
ser realizada
 A informaçao contida no MBR 
é transferida para a célula de 
memória endereçada pelo
MAR
+
Memória Cache
 É uma memória volátil de alta velocidade. O tempo de 
acesso a um dado nela contido é muito menor que o da
memória principal
+
Memória secundária
 É um meio permanente de armazenamento de programas e
dados. Enquanto a memória principal precisa estar sempre
energizada para manter informações, a memória secundária
não precisa de alimentação.
 O acesso é, geralmente lento.
+
Dispositivos de Entrada/Saída
 Utilizados para permitir a comunicação entre o computador e
o mundo externo
 Podem ser utilizados como memória secundária: pendrive, 
disquete (alguém sabe o que é isso?), DVD, CD, Disco 
externo
 Também podem ser utilizados para comunicação homem-
máquina (teclados, mouses, trackpads, etc..)
+
Barramento
 A CPU, a memória principal e os dispositivos de E/S são
interligados através de linhas de comunicação denominadas
barramentos, barras ou vias. Um barramento é um conjnto de 
fios paralelos onde trafegam informações como dados, 
endereços ou sinais de controle.
+
Pipelining
 Conceito que se asemelha a uma linha de montagem, onde
uma tarefa é dividida em uma sequência de subtarefas
+
Sistema 
Operacional
Inicialização do Sistema
 A ativiação do sistema (boot) é realizada por um programa
localizado em uma posição específica do disco (boot block), 
geralmente o primeiro bloco.
 O procedimento de ativação varia em função do 
equipamento.
Disco
Memória Principal
+
Arquiteturas RISC e CISC
 RISC (reduced instruction set computer) é um processador
que possui poucas instruções de máquina, em geral bem
simples, que são executadas diretamente pelo hardware. Em
geral essas instruções não acessam memória principal, 
trabalham diretamente com registradores. Isso facilita a 
implementação do pipeline e aumenta a velocidade da
execução
 CISC (complex instruction set computer) são processadores
com instruções complexas que são interpretadas por
microprogramas. O número de registradores é pequeno e
qualquer instrução pode referenciar a memória principal
+
Software
 Dá utilidade ao hardware 
+
Sistema Operacional
 Conjunto de rotinas executado pelo processador, ou seja, um 
programa como outro qualquer.
 Sua principal função é controlar o funcionamento do 
computador, como um gerente dos diversos recursos
disponíveis no sistema
 Principais funcionalidades:
 Facilidade de acesso ao recursos do sistema
 Compartilhamento de recursos de forma organizada e protegida
+
Sistema Operacional
 Gerenciamento de processos
 Comunicação entre processos
 Gerência do processador
 Gerência de memória
 Sistemas de arquivos
 Gerência de dispositivos
+
Sistema Operacional
+
Tradutor
 Tradutor: Traduzem os programas escritos em linguagens de 
mais alto nível para programas que o hardware pode
entender.
 Pode ser:
 Montador: utilitário repsonsável por gerar, apartir de um 
programa escrito em linguagem de montagem (assembly), um 
programa em linguagem de máquina não executável (módulo
objeto)
 Compilador: utilitário responsável por gerar, a partir de um 
programa escrito em uma linguagem de alto nível, um 
programa em linguagem de máquina não executável
+
Tradutor
+
Interpretador
 Tradutor que não gera código objeto. A partir de um 
programa fonte, o interpretador traduz cada instrução e a 
executa em seguida
 Problema de desempenho pois toda execução é precedida
de uma interpretação
 A vantagem é permitir a implementação de dados 
dinâmicos.
+
Linker
 Utilitário responsável por gerar, a partir de um ou mais
módulos objeto, um único programa executável. Suas funções
básicas são resolver todas as referências simbólicas
existentes entre os módulos e reservar memória para
executar os programas.
 Para resolver as referências simbólicas o linker também
pode pesquisar em bibliotecas do sistema ou do próprio
usuário.
 Bibliotecas são arquivos que contém diversos módulos
objetos e/ou definição de símbolos
+
Loader
 Utilitário responsável por colocar fisicamente na memória
um programa para execução. 
 Loader absoluto: sempre aloca o programa no mesmo lugar da
memória
 Loader relocável: o programa pode ser carregado em qualquer
posição da memória
+
Depurador
 Utilitário que permite ao usuário controlar toda a execução
de um programa a fim de detectar erros
 Acompanha a execução de um programa, instrução a instrução
 Possibilita a alteração e visualização do conteúdo de variáveis
 Implementa pontos de parada dentro de um programa
 Especifica que
toda vez que o conteúdo de uma variável for 
modificado, o programa envie uma mensagem
+
Linguagem de Controle
 Também denominada linguagem de commando, é a forma 
mais direta de um usuário se comunicar com um sistema
operacional. Esta linguagem é oferecida por cada Sistema 
operacional para que, através de commandos simples, o 
usuário possa ter acesso a rotinas específicas do sistema.
+
Linguagem de Máquina
 Linguagem de programação entendida pelo processador. 
Cada processador possui um conjunto único de instruções
de máquina, definido pelo fabricante. As instruções
especificam detalhes como registradores, modos de 
endereçamento e tipos de dados, por exemplo.
 O programa em linguagem de máquina pode ser
diretamente executado pela CPU. Um programa escrito em
linguagem de máquina não pode ser executado em outra
máquina diferente pois o conjunto de instruções de uma
máquina é uma característica específica de cada
processador.
MZÀ�$Pÿv�èŠÿ]Ë3ÀP¸�F� ë�ƒF��¸�< uè2Àëä�Àt�Bª Àu�C†à2Àùã�¬I,
"t��"<\u�€<"u�¬I�öÕ•é�îY�Ê.Ž�t�‰�”�C�Û�Û‹ô‹ì+ërâ‹å‰.
–�Œ��˜ã�‰v¸�vüÿv� ÿv�•�èÅ�ƒÄ�ÿvþÿvü•�èüêYY‹V�‹F�ë�Rÿvþÿvü•�è
WíƒÄ�‹å]ËU‹ìƒìHVW‹~�‹F�‰Fþ�Àu ´�Í!´3À镊�‹˜ØŠ‡Ïn
+
Microprogramação
 Um programa em linguagem de máquina é 
executado diretamente pelo hardware em
processadores de arquitetura RISC, porém em
máquinas CISC isso não acontece. Neste caso, 
entre os níveis de linguagem de máquina e o 
hardware ainda existe a microprogramação
 Neste caso, o código exectuável é interpretado
por microprogramas durante sua execução, 
gerando microinstruções que são executadas pelo
hardware. Para cada instrução existe um 
microprograma associado
Aplicativos
Utilitários
Sistema Operacional
Linguagem de 
máquina
Microprogramação
Dispositivos Físicos

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?