Conceitos básicos Flashcards

1
Q

Qual é a organização da arquitetura de von Neumann?

A

Entrada - Processador - Saída

Memória principal conectada ao processador

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qual é a organização da arquitetura de Harvard?

A

Entrada - Processador - Saída

Memória dividida em instruções (programa) e dados. Cada uma sendo independente em termos de barramento e ligação ao processador.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Quais são as funções básicas de um computador?

A

Processamento de dados

Armazenamento de dados

Transferência de dados

Controle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quais as características da arquitetura de processador CISC?

A

Grande quantidade de instruções, com múltiplos modos de endereçamento.

As instruções são completas, eficientes e possuem largura variável.

Instruções requerem múltiplos ciclos de relógio para completar a execução.

Criação de novas instruções quase não tem custo.

Uso de microcódigo.

Poucos registradores.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quais as características da arquitetura RISC?

A

Poucas instruções e todas possuem a mesma largura.

Execução otimizada de chamada de funções.

Menor quantidade de modos de endereçamento.

Uso intenso de pipelining, pois é mais fácil implementar o paralelismo quando se tem instruções de mesmo tamanho.

Execução rápida de cada instrução (uma por ciclo de relógio).

Processadores RISC não requerem microcódigos (sobra mais espaço no chip).

Menos acesso à memória principal

Maior quantidade de registradores.

MAIS BARATOS por serem mais simples.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Para que serve um compilador?

A

Serve para traduzir uma linguagem de programação de alto nível (Python) para uma linguagem de baixo nível (Assembly).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quais são as fases existentes em uma compilação?

A

Análise e Síntese, divididas em 3 partes cada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Como é dividida a fase de Análise?

A

Analisador léxico: tem como principal função a fragmentação do programa fonte em trechos completos e com identidade
própria (tokens). Ex.: “if”, “else”, “=”, “+”.

Analisador sintático: cuida exclusivamente da forma das sentenças da linguagem.

Analisador semântico: busca captar o significado das ações a serem tomadas no código fonte. É como uma interpretação de texto que gera uma linguagem intermediária.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Como é dividida a fase de Síntese?

A

Gerador de código intermediário: é uma representação intermediária de um programa, que serve como ponte entre as duas fases maiores (Análise e Síntese).

Otimizador de código: otimiza tempo, espaço e consumo energético.

Gerador de código: converte as instruções de código intermediário em instruções da arquitetura. Gera o programa alvo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Para que serve um Montador (assembler)?

A

Ele é o responsável pela tradução de código em linguagem Assembly para código objeto (binário).

OBS.: Dependendo da implementação, o conceito de montador pode estar integrado ao compilador, ou seja, o compilador “faz tudo”, tendo como entrada um código fonte e entregando como resultado final o código objeto.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Para que serve o ligador (linker)?

A

Ele combina todos os arquivos objeto em tempo de compilação, gerando o programa executável em linguagem de máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Para que serve o interpretador?

A

Trata-se de um programa que “traduz instantaneamente” o código de programação de alto nível em código de máquina sem criar um arquivo executável do programa traduzido. Ou seja, a tradução acontece instrução a instrução, o que obviamente é mais lento, se comparado com a compilação.

OBS.: já não faz mais parte da compilação. Existe a diferença entre compilação e interpretação.

Compilação envolve:

Pré-processador

Compilador
(às vezes tratados como um só = compilador)
Assembler

Linker

How well did you know this?
1
Not at all
2
3
4
5
Perfectly