Escolar Documentos
Profissional Documentos
Cultura Documentos
Computadores I
Ano lectivo 2008/2009
Hervé Paulino
DI-FCT/U L
Apoio à disciplina
Funcionamento e método de avaliação
Enquadramento e objectivos
Apoio à disciplina
Docentes:
Teóricas: Hervé Paulino (herve@di.fct.unl.pt)
Práticas: Rui Marques (rfm@di.fct.unl.pt)
Livro:
Computer Organization and Design: The
Hardware/Software Interface, D. A. Patterson, J. L.
Hennessy
ou outros …
The Essentials of Computer Organization and Architecture,
Linda Null, Julia Lobur
Essentials of Computer Architecture, Douglas E. Comer
Práticas
Fazer programas e experimentar, ilustrar os conceitos,
compreender melhor…
Testes
avaliam ambas as componentes
aplicações
linguagens
ASC 2 bibliotecas
(interface do sistema) sistema de
operação SO 2ºciclo
ASC 1 (implementação)
(arquitectura do computador) computador
Linguagens de programação
Abstracções das linguagens e bibliotecas
Sistemas de operação
Abstracções do sistema e suas funcionalidades
Arquitectura do computador
Componentes e suas interacções
Hardware
Será (x + y) + z = x + (y + z)?
int’s: Sim... (em princípio ☺)
float’s:
(1020 + (-1020)) + 3,14 3,14
1020 + (-1020 + 3,14) 3,14 ??
Memórias
Nível L0: Registos mais rápidas,
3 níveis de
pequenas e
cache. Podem Nível L1: Cache L1 on-chip
caras (por
ser mais ou
Nível L2: Cache L2 on-chip MByte)
menos
Nível L3: Cache L3 off-chip
Memórias
Nível L4: Memória principal mais lentas,
maiores e
Nível L5: Discos locais
baratas (por
Nível L6: Dispositivos remotos MByte)
CPU chip
L1 Register file
cache
(SRAM) ALU
Cache bus System bus Memory bus
Main
L2 cache Memory
Bus interface memory
(SRAM) bridge
(DRAM)
main
main (){
(){
long
long int
int a[2];
a[2];
double
double dd == 3.14;
3.14;
a[2]
a[2] == 1073741824;
1073741824; /*/* Referencia
Referencia “out
“out of
of bound”
bound” */
*/
printf("d
printf("d == %.15g\n",
%.15g\n", d);
d);
exit(0);
exit(0);
}}
Possíveis resultados:
140
120
ijk
100
ikj
jik
80
jki
kij
60
kji
40
20
saídas
Hierarquia das unidades de memória
Arquitecturas alternativas
Programação em C