Arquitetura de Computadores · Ibmec RJ

Cap. 2 — Arquitetura, Organização
e Modelos de Níveis

leitura ~20 min Prof. Clayton J A Silva Rev 2026.2

Objetivos de aprendizagem

  • Distinguir os conceitos de arquitetura e organização de sistemas computacionais
  • Identificar as funções básicas e os elementos típicos dos sistemas computacionais
  • Diferenciar dado de informação, e linguagem de programa
  • Compreender o modelo de máquinas de níveis e os mecanismos de conversão entre camadas
  • Descrever os seis níveis do modelo adotado na disciplina

Arquitetura e Organização

Segundo Stallings, W., o termo arquitetura distingue-se do termo organização: o primeiro relaciona-se aos atributos visíveis ao programador, que influenciam a lógica dos códigos desenvolvidos; o segundo refere-se aos relacionamentos e funções dos elementos constituintes dos sistemas computacionais.

arquitetura vs. organização

Arquitetura — o que é visível ao programador (ex.: conjunto de instruções, formatos de dados, modos de endereçamento).
Organização — como os componentes se relacionam e funcionam internamente (ex.: sinais de controle, interfaces, tecnologia de memória).

Os relacionamentos entre os elementos são as ligações físicas e lógicas estabelecidas entre eles durante uma operação. No domínio da engenharia de requisitos, uma função é uma operação proporcionada por um sistema (ou por seus componentes), que a partir de entradas produz uma ou mais saídas, condicionada por restrições.

2.1.1 Elementos e funções típicos dos sistemas computacionais

A estrutura típica de sistemas computacionais, em uma visão de alto nível, é apresentada na figura abaixo.

CPU processamento e controle Memória armazenamento E/S transferência de dados Elementos de interconexão (barramento)

Fig. 2.1 — Visão geral dos sistemas computacionais: CPU, memória, dispositivos de E/S e elementos de interconexão

As funções básicas que um computador desempenha são:

  1. Processamento de dados
  2. Armazenamento de dados
  3. Transferência de dados
  4. Controle
ElementoFunção
CPUControla a operação do computador e processa os dados — também chamada de processador
MemóriaArmazena os dados na forma de representação binária (bits)
Dispositivos de E/STransferem os dados entre o computador e o ambiente externo
Elementos de interconexãoPermitem a comunicação entre os diversos elementos do computador

2.1.2 Dados, linguagens de computador e informação

Os dados são conjuntos de bits processados pelo computador. Muitas vezes trata-se de forma indistinta as definições de dados e informações — mas essa abordagem desconsidera uma das principais funções do computador: processar dados.

dado vs. informação

O dado é o conjunto bruto de bits, sem valor agregado. A informação é o conjunto de bits que sofre um processamento que lhe agrega valor, visando solucionar um problema. Em outro contexto, a informação pode ser reprocessada — configurando-se novamente como dado, para gerar novo valor agregado a um novo problema.

Dado bits brutos processamento agrega valor Informação resolve um problema a informação pode tornar-se um novo dado, em outro contexto

Fig. 2.2 — Diferença entre dados e informação

TermoConceito
LinguagemSistema de símbolos, sinais ou objetos instituídos como signos — código — que obedece a regras de sintaxe e semântica
ProgramaConjunto de instruções escritas em uma das linguagens entendidas pelas máquinas para processamento de dados
O processamento realizado pelo computador é assegurado pela execução de programas escritos em uma linguagem de programação.

2.1.3 Modelo de máquinas de níveis

Utilizamos a abordagem proposta por Tanenbaum, A. S.: o computador pode ser projetado como um conjunto de camadas ou níveis, um sobre o outro.

A organização de um computador pode ser entendida como um conjunto de máquinas Mi, cada uma com uma linguagem de programação Li, para as quais são escritos os programas. Cada máquina ocupa uma camada ou nível N.

Nível 5 — M5, L5 Nível 4 — M4, L4 Nível 3 — M3, L3 Nível 2 — M2, L2 Nível 1 — M1, L1 Nível 0 — M0, L0 ↑ mais abstrato ↓ mais físico

Fig. 2.3 — Máquina multinível: conjunto de camadas, cada uma com sua linguagem de programação

Cada nível i executa programas que contêm instruções de uma linguagem (Li). Cada instrução de um nível i pode ser convertida em instruções de um nível i-1 (inferior). São necessárias interfaces de conversão: tradutores ou interpretadores.

A distância entre as linguagens de máquinas adjacentes não pode ser muito grande, sob pena de o processo de tradução ou interpretação se tornar muito complexo.
Conversor de códigoCaracterística
TraduçãoInstruções e dados do código da máquina de origem são substituídos pelos equivalentes no código da máquina de destino, onde o programa será executado
InterpretaçãoInstruções e dados da máquina de origem são mantidos conforme o código original, convertendo-se para a linguagem da máquina virtual de destino conforme a necessidade da execução

Máquina de seis níveis

O modelo específico utilizado na disciplina é o da máquina de 6 níveis. Cada nível é descrito genericamente a seguir.

NívelDesignaçãoCaracterísticas
0Lógica digitalMais elementar. Utiliza portas lógicas (gates), combinadas em série e paralelo, para construção de circuitos digitais. Os dados são sinais elétricos, abstrações dos bits
1MicroarquiteturaCircuitos especializados: registradores; Unidade Lógica e Aritmética; barramentos internos (caminho de dados); Unidade de Controle (microprogramas ou circuitos eletrônicos)
2ISA (Instruction Set Architecture)Nível do processador. As instruções são definidas pelo fabricante
3Sistema operacionalPossui instruções próprias e também usa instruções do nível ISA — considerado um nível híbrido
4Linguagem de montagem (assembly)Instruções simbólicas executáveis pelos níveis inferiores (1, 2 e 3), dispensando conhecimento detalhado dos elementos físicos — usa o programa assembler (montador)
5AplicaçõesUsa linguagens de alto nível, convertidas para assembly por programas chamados compiladores

Considerando as camadas acima, define-se os métodos e programas de suporte à conversão dos códigos entre as linguagens:

N5 — Aplicações N4 — Assembly N3 — Sist. Operacional N2 — ISA N1 — Microarquitetura N0 — Lógica digital compilador assembler híbrido (interpretação parcial) microprograma / interpretação circuitos eletrônicos

Fig. 2.4 — Métodos e programas típicos de conversão de códigos no modelo de 6 níveis

Teste seus conhecimentos

? Pergunta 1 de 3

Segundo Stallings, a diferença entre arquitetura e organização está em que:

? Pergunta 2 de 3

A diferença essencial entre dado e informação é:

? Pergunta 3 de 3

No modelo de 6 níveis, qual nível corresponde à lógica digital (portas lógicas)?

← anteriorCap. 1 — Máquina de von Neumann