SACOCHEIO.COM - comercialização de CD, DVD, SOFTWARE, CURSOS MULTIMÉDIA, VÍDEOS, etc., em PORTUGAL...   
   Inicio » Catálogo » Livros » 307 Minha Conta  |  Suas Compras  |  FINALIZAR COMPRA   
Categorias
Apple
cursos CD
Entretenimento
Livros
Oportunidades
VOIP
Windows

Todos os Produtos
clique aqui
para ver uma lista compacta de todos os nossos produtos!

ARQUITECTURA DE COMPUTADORES
ARQUITECTURA DE COMPUTADORES


IMAGE_BUTTON_SOLD_OUT
PREÇO: 35.54EUR
depois de encomendar todos os
produtos que deseja, deve
clicar em FINALIZAR A ENCOMENDA




DESCRIÇÃO

A melhor forma de optimizar o aproveitamento das capacidades de um computador é compreender os princípios básicos do seu funcionamento. Este livro descreve as técnicas subjacentes às várias arquitecturas de computador, desde os pequenos microcontroladores até aos grandes servidores, passando pelos computadores pessoais (PC). O utilizador ficará a perceber, por exemplo, porque é que duplicar a frequência de relógio de um processador não reduz para metade o tempo de execução dos programas e porque é que às vezes o computador parece parar, com a luz de acesso ao disco activa. O gestor de sistemas informáticos ficará com uma noção mais concreta do impacto da arquitectura dos seus servidores no desempenho dos programas e de quais são os pontos de estrangulamento no desempenho do sistema. Este livro está orientado ao auto-estudo e experimentação. Inclui 74 guiões de laboratório, com base num simulador, que o leitor pode executar quando quiser, ao seu próprio ritmo, de forma e experimentar na prática os conceitos e técnicas que aprendeu. O livro baseia-se num processador pedagógico, PEPE, especialmente concebido para este efeito, suportando as características necessárias em qualquer processador mas sem as complicações dos processadores comerciais. Os seus destinatários são essencialmente estudantes de nível secundário e universitário de nível introdutório, gestores de sistemas informáticos e utilizadores de computadores em geral que pretendam perceber melhor o funcionamento dos computadores e o impacte, em termos de funcionalidade e desempenho, que o hardware tem no software.

PRINCIPAIS TÓPICOS

O livro aborda os seguintes temas:

- Como construir computadores com simples portas lógicas;
- Como é que com apenas dois símbolos (0 e 1) é possível dominar o mundo;
- Conjunto de instruções e programação em linguagem assembly;
- Como é que os programas conseguem ser executados por um computador;
- Equilíbrio harmonioso entre as várias componentes de um computador;
- Como é que se projecta um computador;
- Microprogramação, processamento em estágios (pipelining), caches e memória virtual;
- Suporte para os sistemas operativos (processos).

PÚBLICO ALVO

Os seus destinatários são essencialmente estudantes de nível secundário e universitário de nível introdutório, gestores de sistemas informáticos e utilizadores de computadores em geral que pretendam perceber melhor o funcionamento dos computadores e o impacte, em termos de funcionalidade e desempenho, que o hardware tem no software.

OS AUTORES

José Delgado
Professor Associado do Departamento de Engenharia Informática do Instituto Superior Técnico, lecciona há mais de 20 anos na área de arquitectura de computadores. É actualmente regente da cadeira de Arquitectura de Computadores e Coordenador da Licenciatura em Engenharia Informática e Computadores, no pólo do Taguspark.

Carlos Ribeiro
Professor Auxiliar do Departamento de Engenharia Informática do Instituto Superior Técnico, onde lecciona desde 1993 nas áreas de Arquitectura de Computadores e de Sistemas Operativos. É actualmente regente das cadeiras da área de Segurança.

ÍNDICE

1 - Introdução ao mundo dos computadores
1.1 O computador como ferramenta
1.2 A importância dos computadores
1.3 Processamento da informação
1.4 Estrutura básica de um computador
1.5 O mundo com apenas dois símbolos
1.6 Interacção pessoa-computador
1.7 A gestão de um computador
1.8 A evolução dos computadores
1.9 Perspectivas de evolução futura
1.10 Conclusões
2 - O mundo binário
2.1 Circuitos electrónicos analógicos
2.2 Circuitos electrónicos digitais
2.2.1 Funcionamento básico
2.2.2 Diagramas temporais
2.2.3 Portas lógicas
2.3 Álgebra de Boole
2.4 Funções lógicas
2.5 Circuitos combinatórios
2.5.1 Síntese de circuitos combinatórios
2.5.2 Multiplexers
2.5.3 Descodificadores
2.5.4 ROMs
2.6 Circuitos Sequenciais
2.6.1 Elementos bi-estáveis
2.6.1.1 Trinco SR
2.6.1.2 Trinco D
2.6.1.3 Báscula D
2.6.2 Registos
2.6.3 Portas lógicas de três estados (tristate)
2.6.4 Banco de registos
2.6.5 Contadores
2.6.6 Registos de deslocamento
2.6.7 Máquinas de estados
2.6.7.1 Modelo das máquinas de estados
2.6.7.2 Diagramas de estados
2.6.7.3 Máquinas de estados sintetizadas
2.6.7.4 Máquinas de estados microprogramadas
2.7 Representação de números
2.7.1 Números em base 10 (decimais) e 2 (binários)
2.7.2 Números em base 16 (hexadecimais)
2.7.3 Potências de 2
2.7.4 Quantos bits para representar um número?
2.7.5 Representação de números negativos
2.7.6 Representação de números em complemento para 2
2.7.7 Extensão do número de bits de um número
2.8 Operações aritméticas
2.8.1 Soma de dois números binários
2.8.2 Subtracção de dois números binários
2.8.3 Excesso
2.8.4 Multiplicação de dois números binários
2.8.5 Divisão de dois números binários
2.9 Conclusões
2.10 Exercícios
3 - O meu primeiro Computador
3.1 Componentes básicos de um computador
3.2 RAM – a memória para guardar informação
3.3 O processador (PEPE-8)
3.3.1 Unidade de dados
3.3.1.1 Registo na unidade de dados
3.3.1.2 Unidade aritmética e lógica (ALU)
3.3.1.3 Funcionamento da unidade de dados
3.3.2 Unidade de controlo
3.3.2.1 Sinais de controlo
3.3.2.2 Contador de Programa (PC)
3.3.2.3 Um programa simples
3.3.2.4 Constantes no programa
3.3.2.5 Saltos no programa
3.3.2.6 Funcionamento detalhado do programa
3.3.3 O processador (PEPE-8) e as memórias
3.3.3.1 Processador (PEPE-8)
3.3.3.2 Memória de dados
3.3.3.3 Memória de instruções
3.4 Programação em baixo nível de um computador
3.4.1 Instruções em vez de sinais de controlo
3.4.2 Linguagem assembly
3.4.3 Implementação das instruções
3.4.4 Programação em linguagem assembly
3.4.5 Programação do PEPE-8 em assembly: contagem de bits
3.5 Periféricos
3.5.1 Estrutura do hardware
3.5.2 Programação com periféricos
3.5.2.1 Uso de periféricos de saída
3.5.2.2 Uso de periféricos de entrada
3.6 Soluções específicas ou genéricas?
3.7 Conclusões
3.8 Exercícios
4 - Arquitectura básica de um processador
4.1 Banco de registos
4.2 Endereços de dados e de instruções
4.2.1 Memórias de dados e de instruções separadas: caches
4.2.2 Espaço de endereçamento e mapa de endereços
4.3 Impacte da largura das instruções
4.4 Endereçamento de byte e de palavra
4.5 Codificação das instruções
4.6 Registos
4.7 Bits de estado
4.8 Conjunto de instruções
4.9 Instruções de salto
4.10 Instruções de transferência de dados
4.10.1 Combinações de operandos
4.10.2 Transferências entre registos
4.10.3 Transferência de uma constante para um registo
4.10.4 Transferências entre um registo e a memória
4.10.4.1 Endereços constantes e em registos
4.10.4.2 Modos de acesso à memória em 16 bits
4.10.4.3 Acesso à memória em 16 bits com índice variável
4.10.4.4 Acesso à memória em 16 bits sem índice
4.10.4.5 Acesso à memória em 16 bits com índice constante
4.10.4.6 Instruções de acesso à memória em 16 bits
4.10.4.7 Acesso à memória em 8 bits
4.10.4.8 Acesso à memória em 8 bits e 16 bits
4.10.5 Transferências para memória de uma constante ou memória
4.11 Instruções aritméticas
4.11.1 Instruções aritméticas mais simples
4.11.1.1 Soma e excesso: série de Fibonacci
4.11.1.2 Soma e transporte: números grandes
4.11.2 Multiplicação e divisão
4.12 Instruções Lógicas
4.12.1 Funcionalidade das instruções lógicas
4.12.2 Expressões booleanas
4.12.3 Instruções de manipulação de um só bit
4.12.4 Operações lógicas com máscaras
4.12.4.1 Funcionamento das máscaras
4.12.4.2 Máscaras AND
4.12.4.3 Máscaras OR
4.12.4.4 Máscaras XOR
4.13 Instruções de deslocamento
4.13.1 Instruções de deslocamento linear
4.13.2 Instruções de deslocamento circular (rotações)
4.14 Modos de endereçamento
4.15 Conclusões
4.16 Exercícios
5 - Programação de um computador
5.1 Um problema simples
5.1.1 Modo de actuação de um ser humano
5.1.2 Modo de actuação de um computador
5.2 Modelação do problema com fluxogramas
5.3 Programação em alto nível
5.4 Mapeamento da programação de alto nível em linguagem assembly
5.5 Dados, declarações e directivas
5.5.1 Constantes simbólicas e a directiva QUE
5.5.2 Variáveis
5.5.2.1 Tipos das variáveis
5.5.2.2 Acesso a variáveis de tipos de dados estruturados
5.5.2.3 Directivas WORD, TABLE e STRING
5.5.3 A directiva PLACE
5.5.4 Apontadores
5.6 Instruções
5.6.1 Atribuição e expressões
5.6.2 Decisão
5.6.2.1 Decisão simples
5.6.2.2 Decisão múltipla
5.6.3 Iteração
5.7 Rotinas
5.7.1 Estruturação do código
5.7.1.1 Funções nas linguagens de alto nível
5.7.1.2 Rotinas em linguagem assembly
5.7.1.3 Variante com apontadores
5.7.2 Mecanismo de chamada e retorno
5.7.2.1 Endereço de retorno
5.7.2.2 Chamada de rotinas com endereço de retorno em registo
5.7.2.3 Chamada de rotinas com endereço de retorno na memória (pilha)
5.7.2.4 Qual dos mecanismos de chamada de rotinas se deve usar?
5.7.2.5 Variantes do funcionamento da pilha
5.7.3 Outras utilizações da pilha em rotinas
5.7.3.1 Guarda de registos nas rotinas
5.7.3.2 Variáveis locais
5.7.3.3 Passagem de parâmetros e do resultado
5.7.3.4 Contextos de chamada das rotinas
5.7.3.5 Recursividade
5.8 Gestão dos dados
5.8.1 Quando os registos não chegam
5.8.2 Cálculo de expressões
5.8.3 Execução de instruções imbricadas
5.8.4 Tabelas
5.8.4.1 Tabelas de uma só dimensão
5.8.4.2 Tabelas multidimensionais
5.8.4.3 Tabelas de apontadores
5.8.5 Estruturas de dados dinâmicas (montão)
5.8.6 Listas ligadas
5.9 Desenvolvimento de programas
5.9.1 Ciclo de desenvolvimento
5.9.2 Programação em alto nível ou em linguagem assembly?
5.9.3 Desenvolvimento em linguagem assembly
5.9.4 Ambientes de desenvolvimento
5.9.4.1 Computador alvo e hospedeiro
5.9.4.2 Sistemas embebidos
5.10 Conclusões
5.11 Exercícios
6 - O computador completo
6.1 Interligação dos componentes de um computador
6.1.1 Barramentos
6.1.2 Operações de leitura e escrita
6.1.3 Descodificação de endereços (de palavra)
6.1.3.1 Selecção de dispositivo a aceder
6.1.3.2 Implementação do mapa de endereços
6.1.3.3 Descodificação parcial dos endereços
6.1.3.4 Descodificação de mapas de endereços irregulares
6.1.3.5 Descodificação de endereços programável
6.1.4 Descodificação de endereços (de byte)
6.1.5 Impacte do endereçamento de byte
6.1.5.1 Organização da memória em bytes
6.1.5.2 Endereçamento little-endian e big-endian
6.1.5.3 Alinhamento dos acessos
6.1.6 Ciclos de acesso à memória/periféricos
6.1.6.1 Ligação ao barramento de dados
6.1.6.2 Ciclos de leitura e escrita
6.1.6.3 Temporizações no acesso aos dispositivos
6.1.6.4 Acesso a dispositivos lentos
6.2 Excepções
6.2.1 Princípios básicos
6.2.2 Interrupções
6.2.2.1 Pinos de interrupção
6.2.2.2 Controlo do atendimento de interrupções
6.2.2.3 Comportamento das interrupções
6.2.2.4 Mecanismo básico de atendimento de interrupções
6.2.2.5 Programação com interrupções
6.2.2.6 Controlador de interrupções
6.2.3 Outras excepções
6.2.3.1 Invocação explícita e retorno de uma excepção
6.2.3.2 Excepções predefinidas
6.3 Tipos de periféricos
6.3.1 O que é um periférico?
6.3.2 Periféricos de memória de massa
6.3.3 Periféricos gráficos
6.3.4 Periféricos de comunicação
6.3.4.1 Princípios básicos
6.3.4.2 Comunicação paralela
6.3.4.3 Comunicação série
6.4 Arquitectura do sistema de periféricos
6.4.1 Barramentos hierárquicos
6.4.2 Modos de transferência de dados
6.4.2.1 Transferência por teste (polling)
6.4.2.2 Transferência por interrupções
6.4.2.3 Transferência por acesso directo à memória (DMA)
6.4.2.4 Transferência por processador de entradas/saídas
6.5 Exemplos de computadores completos
6.5.1 Classes de computadores
6.5.2 O PC
6.5.2.1 Arquitectura original
6.5.2.2 Evolução nos processadores
6.5.2.3 Evolução nas memórias
6.5.2.4 Evolução nos periféricos
6.5.2.5 Evolução nos barramentos
6.5.3 O microcontrolador
6.5.3.1 Características básicas
6.5.3.2 CREPE: um microcontrolador baseado no PEPE
6.6 Avaliação de desempenho dos computadores
6.6.1 O que é o desempenho
6.6.2 Programas de avaliação (benchmarks)
6.6.3 A lei de Amdahl
6.6.4 Avaliação do desempenho do processador
6.6.5 Avaliação do desempenho da memória
6.6.6 O impacte do compilador
6.6.7 A filosofia RISC
6.6.8 Avaliação do desempenho dos periféricos
6.7 Conclusões
6.8 Exercícios
7 - O processador em detalhe
7.1 Diagrama de blocos geral
7.2 Núcleo do processador
7.2.1 Caminho de dados
7.2.1.1 Funcionamento geral
7.2.1.2 Banco de registos
7.2.1.3 Gerador de constantes
7.2.1.4 Unidade aritmética e lógica (ALU)
7.2.2 Unidade de excepções
7.2.3 Unidade de controlo
7.2.4 Microprogramação
7.2.4.1 Circuito simples microprogramado
7.2.4.2 Microprogramação no PEPE
7.3 Processamento em estágios
7.3.1 Princípios de funcionamento
7.3.2 Cadeias de estágios
7.3.3 Implementação das cadeias de estágios
7.3.3.1 Cadeia de estágios de instruções
7.3.3.2 Cadeia de estágios de microinstruções
7.3.4 Excepções com processamento em estágios
7.3.5 Dependências de dados
7.3.6 Dependências de controlo
7.4 Interface de memória
7.5 Caches
7.5.1 Princípios de funcionamento das caches
7.5.2 Organização das caches
7.5.2.1 Princípios da organização
7.5.2.2 Mapeamento directo
7.5.2.3 Mapeamento associativo
7.5.2.4 Mapeamento associativo por conjuntos
7.5.3 Políticas de substituição de blocos
7.5.4 Políticas de escrita nas caches
7.5.5 Evolução do subsistema de caches
7.5.6 Casos em que não se quer cache
7.5.7 Caches no PEPE
7.6 Memória virtual
7.6.1 Hierarquia de memórias
7.6.2 Princípios de funcionamento da memória virtual
7.6.3 Tradução de endereços virtuais para físicos
7.6.4 Gestão das páginas
7.6.5 A TLB e o seu papel na tradução de endereços
7.6.6 Integração da memória virtual e das caches
7.6.7 Memória virtual no PEPE
7.7 Suporte para Processos
7.7.1 Modelos de programação e de execução
7.7.2 Multiprogramação
7.7.3 Interacção entre processos
7.7.3.1 Sincronização de baixo nível
7.7.3.2 Sincronização com semáforos
7.7.3.3 Comunicação
7.7.4 Programação cooperativa
7.7.5 Protecção
7.7.6 Gestores de periféricos
7.8 Conclusões
7.9 Exercícios
Apêndice A - Manual de programador do PEPE
A.1 Pinos do módulo PEPE
A.2 Registos
A.2.1 Registos principais
A.2.2 Registos auxiliares
A.2.2.1 Configuração do núcleo
A.2.2.2 Configuração das caches
A.2.2.3 Configuração da memória virtual
A.3 Excepções
A.4 Conjunto de instruções
A.5 Programação do PEPE
Apêndice B - Manual de programador do CREPE
B.1 Pinos do módulo CREPE
B.2 Registos auxiliares
B.3 Funcionamento dos Periféricos
B.3.1 Portos de entrada/saída
B.3.2 Temporizadores
B.3.3 UARTs
B.3.4 Informação sobre o estado dos periféricos
B.4 Excepções
B.5 Exemplo de utilização
Apêndice C - Introdução ao simulador (SIMAC)
C.1 Desenho de circuitos
C.2 Simulação de circuitos
Apêndice D - Computação em vírgula flutuante
D.1 Representação em vírgula flutuante
D.2 A norma IEEE 754
D.3 Operações aritméticas em vírgula flutuante
Apêndice E - Codificação de caracteres em ASCII
Bibliografia
Índice Remissivo


enviar esta página a um amigo



IMAGE_BUTTON_SOLD_OUT
PREÇO: 35.54EUR
depois de encomendar todos os
produtos que deseja, deve
clicar em FINALIZAR A ENCOMENDA


$DESCONTO ESPECIAL
ARQUITECTURA DE COMPUTADORES + HARDWARE PARA PCS e PERIFÉRICOS CURSO COMPLETO

35.54EUR

24.95EUR
compre estes produtos
juntos por
58.39EUR

Economize 2.10EUR

(os descontos só ficam visíveis
durante a finalização da compra)




Actualmente não há comentários sobre este artigo.
Fazer Pergunta ou Comentário

Suas Compras mais
0 artigos

Pesquisa Rápida
 

Pesquisa Avançada

A não perder
Redes de Computadores - Curso Completo
Redes de Computadores - Curso Completo
25.95EUR
Indique a um amigo
 
Informe um amigo deste artigo.
Os Segredos do Adsense
Os Segredos e Dicas do Adsense - Recomendamos esse curso em vídeo, em português, a todos os que possuem sites na net e desejem ganhar dinheiro com este site, pela colocação de anúncios do Google Adsense.

MacOSX Dashboard
Se está a correr o MacOS X Tiger ou Leopard, clique aqui e faça download do widget SacoCheio para o Dashboard do Mac OS X e fique sempre a par dos 30 mais recentes produtos acrescentados à nossa loja!









FEEDS RSS 2.0: (completa) & (resumida)
FEEDS ATOM 1.0: (completa) & (resumida)





Quem Somos (credibilidade) - Política de Privacidade - Condições de Uso - Envios & Devoluções - Contactos


Nenhuma parte deste site poderá ser copiada de nenhuma forma,
publicada ou distribuída, sem a prévia autorização do autor.
© 2005-2010 por Magno Urbano

Todos os Direitos Reservados
Lisboa - Portugal