Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

DISCIPLINA: ARQUITETURA DE COMPUTADORES CÓDIGO: 126102
CARGA HORÁRIA: 90 h CRÉDITOS: 6
OBJETIVOS DA DISCIPLINA
Ao final do estudo da disciplina, o aluno será capaz de identificar e analisar as arquiteturas de forma 
qualitativa os seus impactos sobre o desempenho do sistema, projetar estruturas utilizando portas e 
circuitos lógicos, entender os componentes de um sistema computacional, buscando, ao final, compreender 
os princípios da constituição das arquiteturas convencionais e não convencionais.
DESCRIÇÃO DO PROGRAMA
1 - Fundamentos da Arquitetura e Representação de Dados no Sistema Operacional
Ao final da Unidade I, o aluno será capaz de descrever os principais componentes da arquitetura de um 
computador sequencial, e fazer conversão de base.
Módulos
Arquiteturas básicas de computadores
Níveis e máquinas virtuais
Notação posicional
2 - Funcionamento dos Circuitos Combinacionais e Sequenciais
Ao final da Unidade II, o aluno será capaz de definir e identificar os circuitos combinacionais e 
sequenciais.
Módulos
Sistemas Digitais
Circuitos Lógicos
Circuito Combinacional
Circuito Sequencial
3 - Funcionamento e Componentes Básicos
Ao final da Unidade III, o aluno será capa de identificar os principais elementos da memória, da UCP e
dos dispositivos de entrada/saída.
Módulos
Armazenamento de Informações
Memória
UCP – Unidade Central de Processamento
Dispositivos de Entrada e Saída e Barramentos
4 - Arquiteturas Convencionais e Não-Convencionais
Ao final da Unidade IV, o aluno será capaz de conhecer e classificar uma máquina que segue a 
arquitetura tradicional de von Neumann de uma máquina não convencional.
Módulos
Máquinas sequenciais, máquinas RISC e CISC
Máquinas paralelas
Ambiente Distribuído de Alto Desempenho - Fundamentos básicos
Processadores de Rede, Dispositivos de Interconexão e Protocolos Leves
CRITÉRIOS DE AVALIAÇÃO
Os alunos serão avaliados por meio de:
• Provas mensais;
• Participação no fórum via Internet;
• Outras atividades a critério do professor.
BIBLIOGRAFIA
• HENNESSY, John L., PATTERSON, David A. Arquitetura de Computadores - Uma Abordagem
Quantitativa - 5ª Ed. 2014
• HENNESSY, John L.,PATTERSON, David A. Organização e Projeto de Computadores - 4 ª Ed. 2014
• MONTEIRO, Mario A. Introdução a Organização de Computadores - 5ª edição - 2007
• STALLINGS, William. Arquitetura e Organização de Computadores - 8ª Ed.
• TANENBAUM, Andrew S. Organização Estruturada de computadores - 6ª edição
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
1 
UNIDADE 1 – FUNDAMENTOS DA ARQUITETURA E REPRESENTAÇÃO DE DADOS NO 
SISTEMA OPERACIONAL 
MÓDULO 1 – ARQUITETURAS BÁSICAS DE COMPUTADORES 
 
01 
1 - CONCEITO DE ARQUITETURA DE COMPUTADORES 
Prezado(a) aluno(a) estamos começando nosso estudo sobre Arquitetura e Organização de 
Computadores (AOC) e nesse módulo veremos o conceito de Arquitetura de Computadores, faremos 
uma viagem no tempo para entender a evolução dos computadores através dos séculos (Histórico) e 
finalizaremos fazendo uma breve descrição dos principais componentes de um computador. 
Vamos começar? 
O estudo da matéria Arquitetura de Computadores é de suma importância para o entendimento dos 
aspectos da evolução tecnológica na área, de como é feita a montagem dos componentes de um 
computador, provendo assim uma visão e fundamentação teórica para que os profissionais da área 
tenham um desempenho melhor nas atividades da TI (Tecnologia da Informação). Alguns exemplos de 
projetos que exigem o conhecimento da Arquitetura de Computadores: projetos de redes de 
computadores, suporte e desenvolvimento de aplicações, automação de estabelecimentos comerciais, 
implantação de sistemas informatizados e outros. 
Vamos então ver algumas definições de autores, estudiosos e profissionais da área da TI (Tecnologia da 
Informação) sobre o que seja um computador (máquina), quais são seus componentes, e com base nisso 
começaremos o entendimento do que seja arquitetura e como é a organização de um computador. 
Seguem abaixo algumas definições: 
02 
Tanenbaum define como Arquitetura de Computadores o estudo que trata do funcionamento e 
também do comportamento de um sistema computacional (computador). 
 
Provavelmente você deve estar pensando: computador tem comportamento? Vamos esclarecer o que 
venha ser este “comportamento”. Quando falamos em comportamento estamos fazendo referência à 
forma como os componentes do computador interagem entre si. 
Quando perguntamos para um profissional da programação de software (programador), como ele 
visualiza um sistema computacional, provavelmente ele dirá que o mais importante é: plataforma 32 ou 
64 bits, frequência do clock etc. Isso acontece porque, para programar, não é primordial saber como é a 
estrutura interna, a parte que não é “visível” aos nossos olhos para o programador (exemplo: frequência 
do relógio ou tamanho da memória física). 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
2 
Tanenbaum 
 
Andrew Stuart "Andy" Tanenbaum é o chefe do Departamento de sistemas de computação, na 
Universidade Vrije, Amsterdã nos Países Baixos. Ele é o autor do MINIX, um sistema operacional 
baseado no Unix com propósito educacional, e bastante conhecido por seus livros sobre ciência da 
computação. 
 
03 
Aproveitando a abordagem anterior em que falamos sobre os programadores, vamos também entender 
outro conceito, conhecido como níveis na arquitetura de computadores (programação de baixo e alto 
nível). A ideia que está por trás deste conceito é que existem muitos níveis por meio dos quais o 
computador pode ser “visualizado”. 
Para tornar mais fácil o entendimento do conceito de nível, usaremos o seguinte exemplo: imagine uma 
sequência numérica em ordem crescente, começando de 0 até 5. Utilizando esse exemplo para fazer 
uma analogia com os níveis na Arquitetura de Computadores, podemos dizer que o nível “mais alto” 
seria o número “5”, local onde são executados os programas (softwares). 
 
Continuando com o exemplo da sequência numérica, podemos dizer que “0” seria o nível “mais baixo”, 
é nível da programação em linguagem de máquina (assembly), ou o funcionamento e programação dos 
registradores (componente do processador). 
04 
No intuito de reforçar o conceito de níveis na arquitetura de computadores, vamos utilizar como 
exemplo um carro de Fórmula 1. 
Vamos supor que você tenha a oportunidade de pilotar um carro de Fórmula 1. Ao entrar e sentar no 
“cockpit” você observa o volante e os vários instrumentos disponíveis no painel. Logo depois você sai 
para pista de corrida e sente a velocidade do carro. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
3 
Nesse estágio, em que você observa o painel e 
instrumentos, seria comparado com o nível mais alto na 
arquitetura de computadores, pois durante o tempo em 
que você “curtiu a velocidade” e todos os recursos 
disponíveis, provavelmente não ficou preocupado como o 
funcionamento do motor e dos outros componentes, uma 
vez que esta é uma preocupação dos mecânicos e 
engenheiros. 
O nível do “motor e componentes” é comparado com o 
nível mais baixo nos “níveis de arquitetura de computadores”. 
Em suma, a linguagem de baixo nível (assembly) ou linguagem de máquina é usada pelos engenheiros 
de hardware para criar instruções que permitam o melhor aproveitamento dos recursos de hardware 
(processador, memória e etc.). 
 
05 
A linguagem de alto nível está relacionada aos aplicativos, softwares e utilitários que não se preocupam 
com os recursosde hardware existente em um computador. Seguindo a comparação com o carro de 
Fórmula 1, seria o nosso nível, em que estamos preocupados apenas em utilizar o carro de Fórmula 1 e 
não nos preocupamos com o motor e outros dispositivos. 
Vale destacar que este conceito não está relacionado a uma linguagem ser “melhor” ou “superior” pelo 
fato de ser de alto nível e o outro ser ruim por ser de baixo nível. Observe a figura abaixo para visualizar 
que, no nível “mais alto”, estão os aplicativos e utilitários e no nível “mais baixo” está a linguagem de 
máquina, microprogramação e os dispositivos físicos. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
4 
 
 
06 
Para compreender melhor e profundar seus conhecimentos sobre os níveis de máquina, assista ao vídeo 
a seguir. 
https://www.youtube.com/watch?v=xFzwnXyt09Q 
 
07 
Quando olhamos para um computador, o que nos parece é que é uma máquina formada por um 
conjunto de partes eletromecânicas e eletrônicas, que possuem a capacidade de armazenar, coletar, 
fornecer informações e manipular dados, tudo isso de forma automatizada. Também conseguimos 
visualizar o gabinete do computador e seus periféricos, isso é o que chamamos de hardware, que é uma 
palavra em inglês para nomear tudo aquilo que compõe fisicamente uma máquina (computador). 
Quando fazemos uma pesquisa na internet sobre "arquitetura de computadores", descobrimos que esta 
expressão foi pela primeira vez utilizada pelos pesquisadores da IBM, Lyle R. Johnson, Muhammad 
Usman Khan e Frederick P. Brooks, Jr. Estes pesquisadores, em 1959, trabalhavam no departamento de 
organização de máquinas da IBM. 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
5 
O pesquisador Johnson teve a iniciativa de fazer um relatório de 
pesquisa sobre o supercomputador, conhecido por Strech, que foi 
desenvolvido pela IBM para atender a um pedido do laboratório 
Nacional de Los Alamos (Los Alamos Scientific Laboratory). 
Johnson, durante a confecção do relatório da pesquisa, chegou ao 
nível de detalhar formatos, tipos de instruções, parâmetros 
de hardware e as melhorias de velocidade de processamento. Ele 
então chegou à conclusão que havia detalhado a arquitetura do 
sistema. 
Logo depois, outro pesquisador do Strech, chamado Brooks, ao 
iniciar o segundo capítulo do livro chamado “Planning a Computer 
System: Project Stretch”, no ano de 1962, definiu, mesmo com 
limitações tecnológicas e econômicas: 
"Arquitetura de computadores é a arte de determinar as necessidades do usuário de uma determinada 
estrutura”. 
 
Brooks queria dizer que as empresas, ao desenvolverem seus computadores, precisam estar atentas às 
necessidades dos usuários. Não basta criar um computador com “aparência bonita” é necessário que 
tenha componentes com qualidade e que sejam eficientes. 
Brooks veio a desempenhar um papel no desenvolvimento do IBM System/360 que foi uma linha de 
computadores cuja "arquitetura" ganhou uma nova expressão, considerando sobretudo "o que o 
usuário precisa saber". 
IBM 
 
É a sigla de International Business Machines, que significa Máquinas de Negócio Internacionais, e é uma 
empresa americana que trabalha com produtos voltados para a área de informática, como 
computadores, hardwares e softwares. A IBM é uma das maiores empresas da área de TI (Tecnologia 
da Informação) no mundo, e foi fundada em 1888. 
 
Strech 
 
O IBM 7030, também conhecido por Strech, foi o primeiro supercomputador lançado na segunda 
geração, desenvolvido pela IBM. Seu tamanho era bem reduzido comparado com máquinas como o 
ENIAC, podendo ocupar somente uma sala comum. Ele era utilizado por grandes companhias, custando 
em torno de 13 milhões de dólares na época. 
 
08 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
6 
Outra maneira interessante para o entendimento do que seja arquitetura e organização é fazer uma 
separação dos conceitos. Essa divisão significa entender o que vem a ser o conceito de arquitetura e em 
seguida o que é organização. 
Ao falarmos de arquitetura de um computador torna-se importante entender que estamos fazendo 
referência à aplicação teórica do que foi desenhado pelo fabricante do computador. 
 
Seria algo semelhante a um engenheiro que faz um desenho de um avião e especifica na teoria como 
será seu funcionamento. Similarmente, os fabricantes de computadores fazem um projeto, planejam 
como será o “comportamento” da máquina e especificam como determinada instrução (linha de código) 
será executada. Um usuário mais avançado, como por exemplo, um programador de software, estará 
atento ao desempenho do computador, pois isso irá impactar diretamente na execução do programa 
que ele está desenvolvendo. 
 
09 
Vamos agora falar da organização. Podemos dizer que é a estrutura e organização do hardware, ou seja, 
faz referência a como é o funcionamento interno da máquina (computador), as unidades operacionais e 
suas conexões que implementam as especificações de sua arquitetura, ou seja, como serão as 
características da arquitetura implementada. 
Ao falarmos em organização estamos fazendo referência à decisão e definição de como será 
implementada uma instrução (linha de código) por uma unidade específica de multiplicação. 
 
Podemos usar como exemplo a chamada “família” de processadores Intel x86. Esses processadores 
compartilham a mesma arquitetura básica ou o mesmo “comportamento” básico. Entretanto, a 
organização é diferente entre uma versão e outra. Sendo assim, um processador intel x86 core 2 
duo tem a mesma arquitetura básica que o Intel core i7, mas em matéria de execução e performance 
são diferentes. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
7 
A tecnologia está sempre em evolução, mas essa evolução é sempre um aperfeiçoamento do que já 
estava sendo utilizado. 
10 
2 - HISTÓRIA DA EVOLUÇÃO DOS COMPUTADORES 
Um pouco de história da evolução dos computadores ao olharmos para o passado possamos entender o 
presente e o que ainda estará por vir. 
Caro estudante, a compreensão do processo evolutivo dos computadores e por consequência da 
tecnologia no decorrer dos anos, mostra o quanto as máquinas contribuíram com as mudanças na 
história das civilizações. 
O ábaco, considerado a primeira calculadora conhecida, é um instrumento que foi e é ainda utilizado 
para cálculo. Alguns historiadores falam que o ábaco foi inventado, há mais de 5.000 anos, na 
Mesopotâmia, e depois os romanos e chineses foram os responsáveis pelo seu aperfeiçoamento. Com 
este instrumento é possível efetuar operações matemáticas básicas e principalmente os chineses o 
utilizam até hoje. 
 
11 
O francês Blaise Pascal, que viveu no século XVII, foi o responsável pela construção da 
primeira calculadora mecânica capaz de efetuar somas e subtrações. Entretanto, há historiadores que 
contestam quem foi o responsável pela construção da primeira máquina de calcular mecânica. Durante 
vários anos nada era sabido sobre uma máquina criada por Wilhelm Schickard, que viveu entre o século 
XVI e XVII, a referida máquina subtraía, multiplicava e dividia. Ela foi perdida durante a Guerra dos Trinta 
Anos. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
8 
 
 
12 
No século XIX, aproximadamente no ano de 1801, o inventor Joseph Marie Jacquard criou o que veio a 
serconhecido como o tear programável mecânico que era dotado de uma leitora de cartões 
perfurados, os quais representavam certos modelos usados nos desenhos do tecido. Em virtude do 
sucesso desse evento e por funcionar de maneira eficiente o tear veio causar desemprego em virtude da 
automação. 
 
Tear programável de Joseph Marie Jacquard 
13 
Charles Babbage, que viveu no século XIX, ano de 1822, criou o que veio a ser chamado de computador 
analítico. Essa máquina dispunha de um dispositivo de entrada (semelhante ao tear de Jacquard) para a 
leitura de cartões perfurados com determinados dados e instruções. Estes dados seriam números e as 
instruções seria o que deveria ser feito com estes dados. O computador analítico dispunha de um 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
9 
dispositivo de memória para guardar os dados (números). Esta “memória” ganhou o nome de armazém. 
Este “armazém” utilizava um banco com 1000 registradores com capacidade de armazenar um número 
de 50 dígitos. 
 
O computador analítico 
Também havia um dispositivo para imprimir os resultados obtidos. Babbage teve a notável ajuda da filha 
de Lord Byron, a matemática Ada Augusta Byron. Ada, que também era condessa, foi a responsável pelo 
desenvolvimento de uma série de instruções e por isso é considerada a primeira programadora do 
mundo. Charles Babbage é chamado de o “precursor do computador” e a condessa Ada é considerada a 
precursora do desenvolvimento de software. 
14 
Herman Hollerith (1860-1929) também se inspirou nos cartões de Jacquard para criar uma máquina para 
acumular e classificar informações – a tabuladora de censo. 
 
Tabuladora de censo 
Em 1941, Konrad Zuse (Alemanha) criou o primeiro computador digital, automático, programável, de 
propósito geral, completamente funcional (eletromecânico). 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
10 
0 
15 
Com a participação de Alan Turing, matemático e cientista da computação britânico, foi desenvolvido na 
Inglaterra no período de 1939 a 1943 (2ª guerra mundial) o Colossus criado com a intenção de quebrar o 
código da máquina de criptografia alemã conhecida com Enigma. 
 
Colossus Enigma 
 
16 
Em 1944 na Universidade de Harvard – EUA, o engenheiro Howard Aiken foi um pioneiro da 
computação, sendo o principal responsável pelo desenvolvimento do computador conhecido como 
Harvard Mark I, patrocinado pela IBM. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
11 
 
Harvard Mark I 
17 
Acompanhe, na linha do tempo, outros acontecimentos importantes sobre a evolução dos 
computadores: 
 
No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira versão "oficial" do núcleo (kernel) do 
que veio a ser chamado de Linux, versão 0.02. Depois o kernel Linux foi utilizado no projeto capitaneado 
por Richard Stallman e passou a chamar GNU/Linux, junção do núcleo do sistema operacional (Kernel 
Linux) com a interface gráfica do projeto GNU (GNOME). 
GNOME (acrônimo para GNU Network Object Model Environment) é um projeto de software livre 
abrangendo o Ambiente de Trabalho GNOME, para os usuários, e a Plataforma de Desenvolvimento 
GNOME, para os desenvolvedores. O projeto dá ênfase especial a usabilidade, acessibilidade e 
internacionalização. 
 
1946 
 
Em 1946 os cientistas norte-americanos Jonh Eckert e John Mauchly, ambos da Electronic Control 
Company, criaram o ENIAC (Electrical Numerical Integrator and Calculator). O ENIAC é considerado o 
primeiro computador digital eletrônico de grande escala. Uma das destinações deste computador foi 
para cálculos de trajetórias durante a Segunda Guerra Mundial. 
 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
12 
1949 
 
Em 1949 John Von Neumann participa da criação do computador EDSAC (Eletronic Delay Storage 
Automatic Calculator), primeiro a utilizar fita magnética. Foi também, um dos primeiros computadores 
fabricados na Inglaterra. 
 
1956 
 
A IBM inova no mercado em 1956 com a criação do IBM 305 RAMAC (Random Access Method of 
Accounting and Control ou método de acesso aleatório para contabilidade e controle), sendo o 
primeiro a utilizar disco rígido magnético. 
 
1964 
 
Em 1964, a IBM (International Business Machines empresa americana) lançou o IBM System/360 
(S/360) que se constitui numa família de mainframes, que foi a primeira família de computadores a 
fazer uma distinção clara entre a arquitetura e a implementação, permitindo que a IBM lançasse um 
conjunto de projetos compatíveis em várias faixas de preço. 
 
1972 
 
Em 1972 é lançado pela Intel o microprocessador 8008, considerado o primeiro microprocessador de 8 
bits. 
 
1976 
 
No ano de 1976 é lançado o Apple I, computador pessoal simples, desenhado por Steve Wozniak para 
uso próprio. Steve Jobs teve a ideia de comercializar este computador. 
 
1977 
 
Em 1977 é lançado o Apple II. Este equipamento tinha processador MOS Technology 6502, clock de 1 
MHz, 4kb de memória RAM. 
 
1984 
 
Em 1984 surge o Macintosh ou MAC, que é considerado o primeiro computador pessoal a popularizar a 
interface gráfica GUI (Graphical User Interface). 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
13 
1985 
 
Em 1985, Bill Gates, cria o sistema operacional windows 1.0, sendo uma interface do DOS. 
 
18 
Alguns estudiosos da área costumam classificar os computadores (máquinas) por geração. Esta 
classificação especifica determinadas características das máquinas naquele período (anos), tudo 
relacionado à história da evolução dos computadores. Vejamos: 
 
1ª geração 
 
As máquinas que são chamadas de Primeira Geração, período de 1930 a 1958, tinham por base a 
utilização de relés e válvulas eletrônicas para a realização de cálculos automaticamente, eram os 
computadores de primeira geração. 
 
2ª geração 
 
Os computadores de Segunda Geração, período de 1955 a 1965, tiveram com mola propulsora a 
invenção do transistor no ano de 1948, sendo assim, o mundo dos computadores foi tomado por uma 
onda de novos projetos que deram origem, na década de 1960 a empresas que em nossos dias são 
reconhecidas mundialmente. Exemplo: IBM. 
 
3ª geração 
 
Computadores da chamada Terceira Geração, período de 1965 a 1980, têm por característica a 
substituição dos transistores pela tecnologia dos circuitos integrados (transistores / componentes 
eletrônicos miniaturizados e montados numa única pastilha de silício = chip). No ano de 1961 os 
circuitos integrados tiveram sua inserção no mercado por meio da empresa americana “Fairchild 
Semicondutor” e também pela empresa americana “Texas Instruments”, ambas estavam localizadas no 
famoso e conhecido “Vale do Silício” que está situado na região de Palo Alto e Stanford, no estado da 
Califórnia, nos Estados Unidos. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
14 
 
4ª geração 
 
Computadores chamados da Quarta Geração, período de 1980 a 1984, caracterizam-se pelo que foi 
chamado de LSI (Large Scale of Integration), que foi a integração em larga de escala, chegando a 
combinar até 65 mil componentes em apenas um chip (pastilha de silício). 
 
5ª geração 
 
A chamada Quinta Geração, período de 1984 a 1990, tem como característica o uso de “Integrated 
Circuit Very LargeScale Integration” (ICVLSI), em uma tradução simples seria "Circuitos Integrados em 
Escala Maior de Integração". Os famosos chips começam a ter seu tamanho diminuído e tornando 
possível a criação de computadores cada vez menores (compactos). 
 
6ª geração 
 
Os computadores da chamada Sexta Geração, a partir de 1990, são os chamados computadores da “Era 
da computação quântica”. Já existem protótipos mais ainda não é viável economicamente falando. O 
chamado CQ (Computador Quântico) utiliza as propriedades quânticas da matéria. De uma forma mais 
simples, podemos dizer que a computação quântica é a aplicação das teorias e propriedades da 
mecânica quântica ao computador. Em teoria, os computadores quânticos são muito mais rápidos do 
que os Desktops (PCs – Computador Pessoal ) atuais, inclusive há limitadores na física quântica. Um CQ 
pode ser formado por fótons, nêutrons, prótons, elétrons e pósitrons. Em suma, em virtude de poder 
ser formado por partículas tão pequenas, é também possível imaginar que os processadores dos CQ, 
poderão ter bem pequenos. 
 
19 
Para distrair um pouco e aproveitar para recordar como ocorreu a história da evolução da computação, 
assista aos dois vídeos a seguir. Eles tratam da importância dos computadores em nossa sociedade. 
Vamos lá? 
 
Evolução da Informática Dos primeiros computadores à internet 
https://www.youtube.com/watch?v=SLsqeUPW-fs 
Historia do computador em minutos 
https://www.youtube.com/watch?v=F3qWg1JBPZg 
20 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
15 
3 - OS COMPONENTES DO COMPUTADOR 
Muito bem! Vamos agora começar a fazer uma descrição básica dos componentes de um computador. 
Podemos dizer de maneira simples que um computador é constituído por 3 elementos básicos que são: 
microprocessador (CPU ou UCP), memória e dispositivos de entrada e saída (E/S). 
 
Quando falamos em memória é necessário haver a divisão em dois grupos, as memórias voláteis e as 
não voláteis ou também chamadas de armazenamento permanente. As memórias voláteis, ou memória 
RAM (Random Access Memory), necessitam de energia elétrica para manter as informações 
armazenadas. Quando desligamos o computador, as informações importantes são armazenadas nos 
dispositivos de memória não voláteis (como o disco rígido ou HD - Hard Drive). Os dispositivos de 
memória volátil são mais caros e de menor capacidade, porém são muito mais rápidos, tornando 
possível ao computador realizar o processamento de forma mais eficiente. 
21 
O computador é uma máquina poderosa de armazenamento de informações. Todo programa, pagina a 
qual se está navegando na internet ou algum arquivo que foi aberto, ficará registrado de alguma 
maneira, em um local do computador. Assim como em nós, usuários, a memória é uma das funções do 
sistema mais desenvolvida. 
O que você provavelmente ainda não sabe é que a RAM é apenas um componente de uma série de 
outros que também são responsáveis por armazenar informações digitais sem perdê-las. Alguns desses 
componentes você irá observar que são muito utilizados no cotidiano da informática, até por usuários 
menos experientes. Alguns nomes são: memória cache, ROM, HD, BIOS. Cada uma possui um papel 
específico e um momento certo para ser utilizada. 
Para entender um pouco melhor como é o funcionamento do seu PC, valerá a pena conhecer como é 
feito o caminho percorrido pelos dados e em quais memórias (volátil ou não) eles poderão ser 
armazenados no intuito de facilitar o trabalho do processador. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
16 
Você imagina como é intensa o troca e fluxo de informações no processador e memória? Pois é! O fluxo 
é realmente grande é muito intenso, mesmo quando você não está utilizando com tanta intensidade. 
Muitos dados “passam” pelo processador, que necessita rapidamente ficar “livre” deles para poder 
receber outros dados e não ficar sobrecarregado. A CPU dispõe de diferentes memórias, sempre 
trabalhando para trafegar os dados da maneira mais rápida possível, em um processo que ocorre em 
ciclos e que pode ser resumido da seguinte maneira: 
 
22 
Fazendo uma explicação básica sobre a UCP ou CPU, chamada de Unidade Central de Processamento ou 
simplesmente processador, podemos dizer que: 
A CPU é a responsável em tornar possível a utilização (execução) dos programas que atenderão as 
tarefas que o usuário necessita. 
 
Por meio de vários cálculos e consultas a dados, caberá à CPU tornar possível a utilização, por exemplo, 
do navegar Internet Explorer, Firefox, Chrome ou etc. Contudo, caso você deseje abrir novamente o 
mesmo programa? O que você notará? Será que é mais rápido do que foi na primeira vez? Sim, será 
mais rápido, sabe por quê? Isto ocorre em virtude de toda a informação está distribuída em “memórias” 
espalhadas pelo hardware, sendo que cada uma possui características e especificidades diferentes. 
Uma dessas “memórias” é o CACHE. Ele é um tipo de memória importante no processador, cabe ao 
CACHE, em virtude de estar fisicamente próxima ao processador, ser mais rápido, guardar as 
informações temporárias que precisam ser processadas de maneira mais eficiente. Apesar da eficiência, 
o cache tem pequena capacidade de armazenamento, não excedendo KBs ou MBs. Atualmente a 
memória cache de um modelo básico de notebook é de aproximadamente 3Mb. Em virtude disso, sua 
principal função é guardar os resultados das operações do processador, que são fornecidos à medida do 
seu funcionamento. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
17 
 
23 
O cache é dividido em níveis, de acordo com sua capacidade e proximidade com a CPU. Os dados do 
nível 1 (cache L1) são menores, porém de fácil acesso e até mesmo atingindo o dobro da velocidade da 
memória principal (MP). No nível 2 (cache L2) não há tanta rapidez, mas a transmissão ainda não é 
comprometida. As demais camadas seguem o mesmo princípio. 
Todas elas estão em uso constante, mas nem sempre se encarregam de todo o armazenamento. Além 
de tudo isso, não é possível aumentar o tamanho da memória cache sem a substituição do processador. 
A memória RAM, também chamada de memória de acesso aleatório, torna possível que possamos 
acessar os dados de forma não sequencial, além de ser relativamente rápida, cabe a ela guardar algumas 
informações do sistema operacional, de softwares em uso e os processos em atividade, uma quantidade 
de dados muito maior do que o cache poderia armazenar. 
Quando você está jogando, por exemplo, cabe a RAM ser a responsável por acessar as texturas, 
animações e outros dados contidos para que o game rode (funcione) sem problemas. 
A memória RAM e a memória CACHE necessitam de energia (elétrica) para manterem o 
armazenamento, sendo assim, é possível dizer que seu “ponto negativo” é ser volátil, pois quando o 
computador é desligado as informações armazenadas são perdidas. 
 
Mesmo seu computador tendo uma capacidade razoável de memória RAM, isto não será suficiente se 
você utilizar seu computador para determinada atividade que exija muito processamento. Dependendo 
da situação, para a máquina não travar, ela buscará outras alternativas. Os dados que devem 
permanecer no sistema de qualquer maneira precisam de uma memória que não seja volátil, mas que 
consiga suportar um alto fluxo de informações. É aí que entra outra parte vital e importante do 
computador, o popular HD (disco rígido). 
24 
Armazenar memórias temporárias acaba sendo um trabalho para o HD em último caso, mesmo não 
sendo essaa sua principal função. Em formato de memória virtual (junção da MP e espaço em disco), ele 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
18 
executa e registra os dados de forma mecânica, diferente do método eletrônico das demais (cache e 
RAM), tornando esse processo mais lento. 
O HD é um “tipo de memória” em que estão guardados os arquivos que não são perdidos a cada boot 
(inicialização), como músicas e fotos. Eles são acessados com frequência pelo usuário, mas não pedem 
uma velocidade de leitura tão absurda como os processos do sistema. 
 
Segundo o Terry’s Computer Tips (site sobre TI – Tecnologia da Informação – página na língua Inglesa), 
para efeito de comparação, acessar um dado a partir do disco rígido leva cerca de 0,013 segundos, 
enquanto o mesmo dado a partir da RAM chega em 0,000.000.01 segundos. Para compensar, o HD 
possui a maior capacidade entre as memórias citadas anteriormente. 
Então fique alerta ao perceber que seu computador está utilizando o HD (disco rígido) para armazenar 
memória (swaping ou paginação). Isto é um indicativo que seu PC já está saturado de arquivos, fazendo 
com que a máquina apresente lentidão e travamentos com certa regularidade. 
25 
4 - DISPOSITIVOS DE ENTRADA E DE SAÍDA 
Agora iremos falar dos chamados dispositivos de entrada e saída que são os responsáveis por tornar 
possível a interação com o usuário ou com outras máquinas, por exemplo: teclado, mouse, monitor, 
modem, impressora, webcam, dispositivos USB etc. 
Os dispositivos de entrada e saída (E/S) ou input/output (I /O) são também chamados de periféricos. Eles 
tornam possível uma melhor interação do processador com o homem, possibilitando a entrada e saída 
ou apenas a saída de dados. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
19 
 
 
Há dispositivos que funcionam tanto para entrada como para saída de dados, por exemplo, o modem e 
o pendrive. Outro exemplo de dispositivo que funciona tanto para entrada como para saída de dados 
(dispositivo híbrido) é placa de rede do computador. 
A comunicação dos dispositivos de E/S é estabelecido por meio de uma via de comunicação, conhecida 
como: barramento. 
26 
Você já deve estar acostumado ao uso destes dispositivos, mas com o intuito de padronização do 
conceito iremos estudar que os principais dispositivos de entrada e saída de informações. Os 
dispositivos mais conhecidos de entrada são: teclado, mouse, drive de CD / DVD-ROM, pen drive, 
scanner, microfone, joystick, câmera filmadora, câmera digital, tela sensível ao toque, mesa gráfica, 
caneta ótica e outros. Os principais dispositivos de saída de informações são: monitor de vídeo, drive de 
CD-ROM, caixa de som, impressora, sensores movimento, temperatura etc. e óculos (para realidade 
virtual). 
No que tange os principais dispositivos que possuem a característica de ser tanto de entrada como de 
saída de informações, podemos exemplificar como: modem, drive de disquete, gravador de CD / DVD, 
placa de rede e disco rígido. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
20 
 
Organização Funcional de um Computador 
27 
Dando continuidade ao nosso estudo, vamos fazer conhecer alguns componentes de um computador 
que geralmente não são muito comentados. Estes componentes são: gabinete, fonte, placa-mãe, BIOS, 
clock, barramento, placa de extensão, chipset, MOS. 
O chamado gabinete e o receptáculo, que contêm na sua parte interna a fonte, placa mãe, dispositivos 
de armazenamento, placas de expansão, memória etc. Existem vários modelos de desenho e tamanhos 
diferentes. Há a exigência de terem o tamanho adequado para serem compatíveis com determinados 
tipos de fonte e com as placas mãe. 
Atualmente a maioria das “fontes” são bivolts (110 ou 220 volts) e os modelos mais conhecidos são AT e 
ATX. 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
21 
28 
A placa-mãe (motherboard) tem este nome por ser um componente físico (hardware) muito importante 
em um computador. 
A placa-mãe é quem coordena toda a comunicação entre os seus componentes (filhos). É na placa-mãe 
que o processador, memória, placa de rede, chipset, slots e etc. estão fisicamente conectados. 
 
Também é na placa-mãe que fica o barramento onde trafega os dados entre a CPU e os periféricos. Ao 
adquirirmos uma placa-mãe precisamos estar atentos a qual arquitetura ela foi desenvolvida para 
também sabermos quais e a compatibilidade dos componentes (Chipset, BIOS, Barramentos, Slots) 
adquiridos. 
Na placa-mãe há um cristal piezoelétrico (ou um circuito integrado) que é o responsável por gerar os 
sinais de sincronismo e determinar a velocidade de processamento. O cristal, conhecido como CLOCK, 
fornece um pulso de alta precisão cuja frequência irá depender do uso do processador. Quanto mais 
rápido o clock, mais instruções uma CPU pode executar por segundo. A velocidade de clock e expressada 
em megahertz (MHz), 1MHz é igual a 1 milhão de ciclos por segundo. 
 
O barramento também está localizado na placa-mãe. 
Cabe ao barramento ser o “caminho” por onde trafega toda comunicação entre os componentes, 
tornando possível a conexão e transporte dos dados entre os componentes que necessitam desta 
comunicação. 
 
Exemplo de componentes da placa-mãe: CPU, memória, placas de expansão, dispositivos de E/S e etc. O 
processador também estabelece comunicação com a memória principal por meio do barramento. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
22 
29 
Cabe às placas de extensão tornar possível o acréscimo de novos recursos ao computador. Elas são 
conectadas à placa-mãe por meio dosslots (termo em inglês para designar ranhura, fenda, conector, 
encaixe ou espaço.). Exemplos: placas de som, placa de vídeo, placa de rede etc. 
O chip denominado CMOS é composto por um relógio eletrônico e memória 64 bytes de memória RAM, 
e nesta memória que estão armazenadas as informações relativas à configuração do hardware do 
computador. 
O BIOS (Basic Input/Output System) é um pequeno programa armazenado em um chip de memória da 
placa de UCP. Ele é responsável por “despertar” o computador, sendo assim, ao ligar o computador o 
BIOS entra em ação, faz uma contagem e verifica a memória RAM, inicializa dispositivos, e 
principalmente, dá início ao processo de boot. 
Boot é a operação de passagem do sistema operacional do disco rígido (HD) onde fica armazenado para 
a memória do computador. 
 
Cabe ao chamado “chipset” ser o responsável pela gerência do funcionamento da placa-mãe. Ele faz o 
controle de memória cache, da memória RAM, do buffer de dados, da interface com a CPU etc.). 
 
É responsável, também, pelas informações necessárias ao reconhecimento de hardware (armazenadas 
na sua memória ROM). 
30 
Vamos aproveitar e assistir a este vídeo para reforçar o entendimento acerca dos dispositivos de 
entrada e saída (I/O). 
A interface homem-computador 
https://www.youtube.com/watch?v=UZ14m_yVmO4 
 
31 
RESUMO 
Durante o estudo deste módulo tivemos a oportunidade de entender que a arquitetura de 
computadores trata do funcionamento e também do comportamento de um sistema computacional 
(computador). Fica evidente a importância deste estudo para sua formação técnica. Vimos que 
atualmente as empresas, ao desenharem o projeto da Arquitetura de seus computadores, preocupam-
se em entenderas necessidades do seu público alvo. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
23 
É interessante destacar que, ao estudarmos a história da evolução dos computadores, estaremos 
entendendo a importância dos primeiros estudiosos do assunto. Graças às pesquisas destes obstinados 
pesquisadores é que podemos usufruir de tamanha evolução e também podemos traçar uma 
perspectiva do que o futuro nos reserva. 
Vimos também que um sistema computacional é agrupado em 3 subsistemas básicos, conhecidos 
como unidades operacionais, que são a CPU, memória e periféricos. Vimos que um sistema 
computacional é um conjunto de circuitos eletrônicos conectados, constituído por processadores, 
registradores, memórias, dispositivos de entrada e saída. Cada componente tem sua importância e 
função na arquitetura de computadores e cabe a esses dispositivos a manipulação dos dados 
digitalmente, proporcionando de maneira confiável a transmissão e representação dos dados. 
UNIDADE 1 – FUNDAMENTOS DA ARQUITETURA E REPRESENTAÇÃO DE DADOS NO 
SISTEMA OPERACIONAL 
MÓDULO 2 – NÍVEIS E MÁQUINAS VIRTUAIS 
01 
1 - REPRESENTAÇÃO DAS INFORMAÇÕES: O BIT, O BYTE E A PALAVRA 
Durante o estudo deste módulo, teremos a oportunidade de entender como é feita a representação das 
informações, o que é bit, o byte e a palavra, aprenderemos a identificar e a entender o que são os níveis 
de máquina e falaremos também sobre máquinas virtuais e sua classificação. 
Cabe uma ressalva importante ao iniciarmos este módulo. Você deve estar lembrado de que no início do 
nosso estudo falamos sobre o entendimento do conceito de níveis na arquitetura de computadores 
(programação de baixo e alto nível). A ideia que está por trás deste conceito é que existem muitos níveis 
nos quais o computador pode ser “visualizado”. 
Vamos relembrar o seguinte exemplo: imagine uma sequência numérica em ordem crescente, 
começando de 0 até 5. Utilizando este exemplo para fazer uma analogia com os NÍVEIS na Arquitetura 
de Computadores, podemos dizer que o nível “mais alto” seria o número “5”, local onde são executados 
os programas (softwares). Continuando com o exemplo, a sequência numérica, podemos dizer que “0” 
seria o nível “mais baixo”, é nível da programação em linguagem de máquina (assembly), ou o 
funcionamento e programação dos registradores (componente do processador). 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
24 
 
02 
No intuito de reforçar o conceito de “níveis na arquitetura de computadores” vamos utilizar como 
exemplo um carro de Fórmula 1. Vamos supor que você tenha a oportunidade de pilotar um carro de 
Fórmula 1. Ao entrar e sentar no “cockpit” você observa o volante e os vários instrumentos disponíveis 
no painel. Logo depois você sai para pista de corrida e sente a velocidade do carro. 
 
Neste nível em que você utiliza o carro e observa o painel e 
instrumentos, seria comparado com o nível mais alto na 
arquitetura de computadores, pois durante o tempo em 
que você “curtiu a velocidade” e todos os recursos 
disponíveis, provavelmente não ficou preocupado com o 
funcionamento do motor e dos outros componentes, que é 
uma preocupação dos mecânicos e engenheiros. O nível 
mais alto seria, então, o nosso nível, em que estamos 
preocupados apenas em utilizar o carro de Fórmula 1 e não 
nos preocupamos com o motor e outros dispositivos. 
 
O nível do “motor e componentes” é comparado com o 
nível mais baixo nos “níveis de arquitetura de 
computadores”. Em suma, a linguagem de baixo nível 
(assembly) ou linguagem de máquina é aquela utilizada 
pelos engenheiros de hardware para criar instruções que 
permitam o melhor aproveitamento dos recursos de 
hardware (processador, memória e etc.). Os engenheiros 
de hardware podem ser comparados aos engenheiros e 
mecânicos de um carro de Fórmula 1. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
25 
Quando falamos em programação de alto nível (aplicativos) estamos falando dos softwares 
desenvolvidos por programadores. Esse nível está relacionado aos aplicativos, softwares e utilitários que 
não se preocupam com os recursos de hardware existentes em um computador. 
03 
Vale ressaltar que este conceito de nível não está relacionado a uma linguagem ser melhor ou superior 
pelo fato de ser de alto nível e o outro ser ruim por ser de baixo nível. Observe a figura abaixo que no 
nível “mais alto” estão os aplicativos e utilitários e no nível “mais baixo” está a linguagem de máquina, 
microprogramação e os dispositivos físicos. 
 
O entendimento do conceito de “níveis” na 
arquitetura de computadores ajudará na 
compreensão que no “nível mais baixo” os 
componentes trocam informações utilizando bits e 
bytes. Quando digitamos “www.google.com” no 
nosso navegador (browser), que está no nível mais 
alto, transforma esta informação em “bits e bytes”, 
passa por vários níveis até chegar ao nível mais baixo 
e ser transformado em sinais elétricos e enviado via 
placa de rede e assim por diante. 
 
 
Toda informação que será introduzida em um computador (sejam dados que serão processados ou 
instruções de um programa) necessita ser entendida pela máquina, para que possa interpretá-la e 
processá-la. Quando você lê esta aula, as informações apresentadas em forma de caracteres são 
entendidas pelo leitor porque ele conhece o formato e o significado dos símbolos que representam os 
caracteres alfabéticos, os numéricos (algarismos) e os sinais de pontuação ou matemáticos (+, -, X, /, >, 
<, = etc.). 
Para que seu computador pudesse representar eletricamente todos os símbolos utilizados na linguagem 
humana, seriam necessários mais de 100 diferentes valores de voltagem (ou corrente). Tal máquina 
seria invedável economicamente e certamente seria difícil de ser construída para fins comerciais. 
 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
26 
Saiba + 
 
O computador ou um sistema computacional, sendo formado por circuitos eletrônicos interligados, 
troca e armazena informações (dados) internamente sob a forma eletrônica (sinais elétricos). Esta troca 
de informações é feita por alteração no valor de voltagem ou de corrente que está passando no 
barramento (linhas de comunicação que tornam possível a interligação entre os dispositivos de um 
sistema de computação). Cabe fazer uma ressalva quanto ao HD (disco rígido), pois ele armazena 
informações sobre a forma magnética ou CD/DVD/BlueRay que armazena informações sob forma ótica. 
 
 
04 
 
Considerando a necessidade de ser mais simples e confiável, optou-se em projetar um circuito capaz de 
gerar e manipular o menor número possível de valores distintos. Então surgiu o que é chamado de 
“máquina binária”, isto é, capaz de entender apenas dois valores diferentes: 0 e 1. 
Com base nesta base binária fica muito mais simples o emprego da lógica booleana (SIM/NÃO, 
ABERTO/FECHADO, ACIMA/ABAIXO, LIGADO/DESLIGADO). Dessa maneira, os computadores digitais são 
totalmente binários. Toda informação introduzida em um computador é convertida para a forma 
binária, por meio do emprego de um código qualquer de armazenamento, como será visto mais adiante. 
 
 
05 
A menor unidade de informação armazenável em um computador ou sistema computacional é o 
algarismo binário ou dígito binário, conhecido como bit (inglês= binary digit). 
O bit pode ter, então, somente dois valores: 0 ou 1. Isto quer dizer,que ele é representado 
numericamente somente pelo numeral 1 ou numeral 0. 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
27 
Consequentemente, em virtude de ter possibilidades tão limitadas, o bit pouco pode representar 
isoladamente; em virtude disso, as informações manipuladas por um computador são codificadas em 
grupos ordenados de bits, de modo a terem um significado útil. O menor grupo ordenado de bits 
representando uma informação útil e compreensível para nós, seres humanos, é o byte (leia-se "baite"). 
Coube a IBM a primeira definição para “byte”. Segundo a IBM, “byte” é um grupo ordenado de bits, que 
tem por função facilitar e tornar mais eficiente a manipulação interna (computador). Um byte é definido 
como um grupo ordenado de 8 bits, tratados de forma individual, como unidade de armazenamento e 
transferência. 
Em virtude dos principais códigos de representação de caracteres utilizarem grupos de oito bits por 
“caractere”, os conceitos de byte ecaractere passam a ser semelhantes e as palavras, praticamente 
sinônimas. 
Costumeiramente, no mercado atual, as memórias são construídas com a capacidade de acessar, 
armazenar e recuperar informações byte a byte. 
Como vimos anteriormente, os computadores são binários e, por consequência, todas as indicações 
numéricas referem-se a potências de 2. 
Para facilitar a representação, adotaram-se letras para corresponder a determinados valores, por 
exemplo, a letra “K” é a representação de 1.024 unidades (décima potência de 2 ou 210=1024) e a letra 
“M” (Mega) representa o valor de 1.048.576 unidades (valor igual a 1.024 x 1.024 ou 210 x210=220). 
 
06 
Quando falamos que determinada máquina tem capacidade de 64 Kbytes (pronuncia-se "sessenta e 
quatro k baites") estamos fazendo referência a um valor de 64 x 1.024 = 65.536 bytes, enquanto 2M 
bytes (pronuncia-se "dois mega baites") corresponde a 2 x 1.024 x 1.024 = 1.048.576 bytes. 
Com a evolução constante e o aumento vertiginoso da capacidade dos dispositivos de armazenamento 
dos computadores, criou-se um terceiro elemento para abreviar valores mais elevados: trata-se do giga, 
que é representado pela letra “G”. Ele representa um valor igual a 1.024 mega ou 1.048.576 K ou 
230=210x210x210=1.073.741.824 unidades. Atualmente, já é possível ouvir o termo “terá”, para a 
representação de um valor igual a 240 ou 1.024 G. Há também o termo “peta” que é representado pela 
expressão 250 ou 1.024 teras. Enfim, a evolução não para e provavelmente em um futuro próximo, 
estaremos utilizando outras abreviaturas. 
Dessa maneira, os valores que são utilizados em computação para indicar capacidade de memória são 
normalmente compostos de um número (sempre entre 0 e 999) e umas das abreviaturas citadas. Além 
do bit e do byte, há outro conceito, também importante, a palavra. Ela (palavra) está relacionada com o 
armazenamento e a transferência de informações entre MP (Memória Principal) e UCP e especialmente 
relacionado ao processamento de dados pela CPU. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
28 
Primeiramente, poderemos dizer que a “palavra” é a forma de chamar um conjunto de bits capaz de 
representar uma informação. Consequentemente, uma “palavra” está associada ao tipo de interação 
entre a memória principal (MP) e o processador (CPU). 
 
Sendo assim, a CPU processa instrução por instrução (cada uma estaria associada a uma palavra), 
armazena ou recupera número a número (cada um estaria associado a uma palavra), e assim por diante. 
Entretanto, alguns fabricantes diferem quanto ao conceito de palavra. Para as empresas IBM e DIGITAL 
o tamanho dos registradores internos da CPU igual ao da palavra, mas para a empresa Control Data, a 
palavra tem características mais abrangentes. 
Palavra (inglês: word) 
 
É a unidade natural de informação usada pelos computadores. É uma sequência de bits com tamanho 
fixo e que é processado em conjunto em uma determinada máquina. O número de bits em uma palavra 
(tamanho / comprimento da palavra) é uma característica preponderante da arquitetura de um 
computador. Esta característica ecoa em vários aspectos de sua estrutura, da sua operação e na 
indicação da unidade de transferência entre a UCP e MP (memória principal). 
 
 
07 
No que se refere à unidade de armazenamento, considera-se mais importante a quantidade de bits que 
são recuperados em um acesso, em geral de tamanho igual a um byte. Esse valor de bits é pequeno 
demais para representar um número ou uma instrução de máquina e, então, não pode ser aceitável 
para o tamanho de uma palavra. 
Geralmente, são utilizados dois valores diferentes: um relacionado à unidade de armazenamento, o 
“byte”, e outro para indicar a unidade de transferência e processamento, a “palavra”. 
A UCP faz o processamento de valores representados por uma quantidade de “bits” igual à da “palavra”, 
sendo um indicando da capacidade de processamento do sistema. A empresa americana IBM, por 
exemplo, define a “palavra” para alguns de seus computadores como tendo um valor igual a 32 bits (4 
bytes), enquanto a unidade de armazenamento é o byte. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
29 
 
Atualmente, a maioria dos computadores utiliza a “palavra” com 64 bits, inclusive os 
supercomputadores que já se utilizam deste tamanho de palavra há mais tempo. 
08 
2 - ARQUIVOS E REGISTROS 
Agora vamos começar a conceituar o que são arquivos e registros. Para isso é preciso entender que 
todo processamento em um computador consiste, como já mencionado, na manipulação de dados 
segundo um conjunto de instruções que são, geralmente, chamados de programas. 
Para tornar possível individualizar grupos diferentes de informações, os sistemas operacionais 
(programas que controlam o armazenamento e recuperação dessas informações para entrada, saída ou 
guarda em memória secundária) estruturam esses grupos de dados sob uma forma denominada 
arquivo. 
Um arquivo de informações (ou dados) é um conjunto formado por dados (ou informações) de um 
mesmo tipo ou para uma mesma aplicação. Por exemplo, podemos ter um arquivo de alunos de uma 
turma (contendo informações sobre cada aluno individualmente), ou um arquivo contendo as instruções 
de um programa. Cada arquivo é constituído por itens individuais de informação (cada aluno, no nosso 
exemplo) chamados registros. 
Assim, um arquivo de uma turma de 70 alunos possui um total de 70 registros; um arquivo com 
informações sobre 7 mil empregados de uma organização possui 7 mil registros. 
Para entendermos melhor o conceito de armazenamento e recuperação de informações sob a forma de 
arquivos, podemos fazer uma analogia com um sistema semelhante, porém manual. Vamos supor que a 
empresa XYZ, fabricante de calçados, tenha um total de 500 empregados. Esta empresa precisa 
manipular diariamente um estoque de material de consumo com cerca de 9212 itens e que, por incrível 
que possa parecer, ainda não possui um sistema que automatize todo este controle, que não utilize um 
sistema informatizado. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
30 
 
09 
Vamos continuar a utilizar o exemplo da empresa XYZ. Tomaremos como exemplo a gerência de 
recursos humanos. No RH estão seguintes informações sobre os funcionários: 
 
Agora vamos ver como seria a gerência de material. No caso da empresa XYZ o controle dos itens do 
estoque de material são semelhantes ao do RH, sendo que,há uma ficha para cada item de estoque, 
contendo as informações pertinentes a cada um e estas fichas são armazenadas em pequenas caixas 
metálicas, chamadas arquivos portáteis. 
10 
Muito bem, agora vamos fazer uma analogia entre formulários, pastas, gavetas e etc. No exemplo da 
empresa XYZ, o armário de aço e a caixa metálica constituem arquivos, com função semelhante aos 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
31 
arquivos de dados em uma máquina (computador), sendo que, cada pasta ou ficha constitui um registro, 
respectivamente, do funcionário ou do material de estoque. 
 
A maneira de como é estruturado o armazenamento e recuperação de informações no HD de um 
computador é projetada conforme o conceito de arquivos e registros. Isso ocorre no HD em virtude do 
sistema operacional poder guardar informações em grupos para ter maior eficiência na transferência 
para a MP. 
11 
3 - REPRESENTAÇÃO DE DADOS: OS CÓDIGOS ASCII, EBCDIC E UNICÓDIGO 
(UNICODE) 
Até agora estávamos estudando como o computador utiliza byts, bytes e palavras. Agora vamos 
entender que há determinados códigos que são responsáveis em fazer a representação de dados. 
Sabemos que um caractere é a unidade básica de armazenamento na maioria dos sistemas 
computacionais. O armazenamento de caracteres (letras, números e outros símbolos) é possível por 
meio de codificação onde, por convenção, certos conjuntos de bits representam determinados 
caracteres. 
Há três códigos mais conhecidos para a representação de caracteres, são eles: 
• ASCII (American Standard Code for Information Interchange), 
• EBCDIC (Extended Binary Coded Decimal Interchange Code) e 
• UNICÓDIGO (unicode). 
Veremos cada um desses tipos de códigos a seguir. 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
32 
 
12 
O ASCII (American Standard Code for Information Interchange), que em uma tradução para português 
significa "Código Padrão Americano para o Intercâmbio de Informação", é uma codificação de caracteres 
de sete bits baseada no alfabeto inglês. 
Cada sequência de códigos na tabela ASCII corresponde a um caractere, no geral são representados 
pelos 8 bits (equivalente a um byte), sendo que o oitavo bit (da direita para a esquerda) serve como um 
bit de paridade. O bit de paridade é utilizado para detecção de algum tipo de erro. 
 
Para facilitar o entendimento, vamos supor que houve o envio do bit “10110”, sendo que o primeiro “1” 
como o bit de paridade, porém o receptor recebe o seguinte código: “00110”, ou seja, o circuito de 
verificação de paridade percebe que há dois “1”, isto é par, então é detectado o erro. Não segredo 
algum sendo fácil de entender o bit de paridade. Esta técnica consiste em adicionar, pelo transmissor, 
um bit de redundância ou também chamado de bit de paridade. Este bit é inserido logo após ou antes 
da sequência de bits enviados. A regra é a seguinte: a) Será o bit “1” quando for impar o número de 
vezes que apareceu o “1”, exemplo: 1101101 paridade = 1 . b) Na aparição do bit “1” em quantidade par 
de vezes será adicionado 0, exemplo: 010101010, paridade = 0. 
Os códigos ASCII começaram seu desenvolvimento a partir do ano de 1960, e a maioria das codificações 
de caracteres atuais tem por herança esta base. 
A codificação faz a definição de 128 caracteres, preenchendo completamente os sete bits disponíveis 
nas (27=128) sequências possíveis. Dessas codificações, o total de trinta e três não são passíveis de 
serem imprimidas, como caracteres de controle atualmente não utilizáveis para edição de texto, porém 
amplamente utilizados em dispositivos de comunicação, que afetam o processamento do texto. Veja a 
tabela abaixo com exemplo: 
 
13 
A codificação conhecida como EBCDIC (Extended Binary Coded Decimal Interchange Code) é uma 
codificação que utiliza 8 bits de caracteres, que tem descendência direta do código chamado de BCD, 
que possui 6 bits. Foi criada pela empresa IBM no ano de 1960 e utilizado no computador IBM/360. 
Como consequência desta descendência, o código EBCDIC pode até ser modificado para 6 bit e dar 
origem a um código BCD. Esta iniciativa representa uma normalização, pois na década de 1960, o 
governo americano havia normalizado o ASCII. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
33 
No EBCDIC é feita pela primeira vez a utilização de 8 bits (1 byte) para a codificação de um determinado 
estado, tornado possível a codificação de 256 diferentes estados. Observe a tabela abaixo e veja como 
seria a representação em ASCII e ABCDIC das letras A e Z: 
 
14 
Na codificação chamada de UNICÓDIGO (ou Unicode), são utilizados dois bytes para a representação de 
mais de 65.000 caracteres ou símbolos. O UNICODE permite fazer o intercâmbio de dados e programas 
em línguas diferentes. 
 
15 
4 - MÁQUINAS VIRTUAIS 
Vamos agora começar o estudo sobre o que são as chamadas “máquinas virtuais”. Em virtude da 
constante evolução da TI (Tecnologia da Informação) está proporcionando, cada vez mais surgem 
opções de plataformas diferentes para computadores. Cada uma destas plataformas apresenta 
características próprias e peculiaridades de funcionamento que impossibilitam migrar arquivos 
executáveis (programas) de uma plataforma para outra. Um exemplo seria que determinados softwares 
funcionam apenas em determinadas plataformas, exemplo: plataforma Microsoft Windows, plataforma 
GNU/Linux ou na plataforma IOS da Apple. Sendo assim, caso código fonte de um programa, escrito em 
qualquer linguagem de programação, é necessário compilá-lo para determinada plataforma, pois o 
código executável deve ser compatível com determinada plataforma. 
Muito bem, esta necessidade de gerar arquivos executáveis para cada plataforma deu origem à ideia de 
criar uma ferramenta que tenha a capacidade de separar o desenvolvimento do programa com a sua 
execução em determinada plataforma ou sistema operacional ou computador. A solução para essa ideia 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
34 
é a utilização do que é chamado de “máquina virtual”. Agora o que é uma máquina virtual? Para 
respondermos o que é uma máquina virtual é necessário o entendimento do que seja uma máquina 
real. Sabemos que você entende que sua máquina ou mesmo o computador que você utiliza são reais, 
mas no caso de nosso estudo vamos aprender que conceitualmente há uma diferenciação entre 
máquina real e virtual. 
16 
Um computador é uma máquina constituída de dois componentes principais dispostos 
hierarquicamente conforme expresso na figura abaixo. 
 
A partir deste escopo, observando a figura acima, a máquina virtual parte da ideia de acrescentar mais 
uma camada acima do sistema operacional e da CPU, de tal forma que os programas serão executados 
independentes da plataforma existente. Sendo assim, ao invés de um código fonte ser compilado em 
separado para cada plataforma que desejamos trabalhar, agora ele será compilado somente uma vez 
para a máquina virtual. Caberá a ela tratar a comunicação com as camadas inferiores, fazendo o 
programa ser executado, possibilitando a portabilidade de programas entre diferentes plataformas. 
Sistema Operacional 
 
A camada superior é o Sistema Operacional. Sistema Operacional é o software responsável pela 
gerência da memória, por coordenar o acesso aos periféricos e também administra todos os processos 
que serão executados em uma máquina, sendo a interfaceentre um programa e a CPU. Exemplo de 
sistemas operacionais: Android, Microsoft Windows, GNU/Linux e IOS da Apple. O sistema operacional, 
bem como, a UCP, exige que os programas a serem instalados, sigam suas especificações para serem 
executados. 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
35 
 
CPU 
 
A camada inferior é o centro da parte física do computador e corresponde à CPU (Unidade Central de 
Processamento). Como já estudamos anteriormente, cabe a CPU ser a responsável pela realização de 
todas as operações que um programa necessite executar. Algo importante de ser observado é a 
característica de sua arquitetura, isto é, a especificação e implementação de um conjunto de instruções 
que serão suportadas por tal componente. Sendo assim, para que determinado arquivo seja executável 
em uma determinada UCP, há necessidade de representar o código fonte que o originou através de 
instruções codificadas para ter o funcionamento correto. A codificação das instruções também faz 
parte do projeto da arquitetura da CPU e determina o que cada sequência de bits irá representar. 
 
17 
Sendo assim, para a implementação de uma máquina virtual é necessária a criação de uma 
infraestrutura básica, para a simulação de máquina real, independente da plataforma usada. Mas para 
que esse uso multiplataforma seja atendido, torna-se necessário delimitar cuidadosamente o 
funcionamento da máquina virtual, evitando e protegendo o hardware de operações perigosas, como 
por exemplo, acesso a regiões protegidas da memória. 
Em primeiro lugar é necessário especificar um conjunto de instruções que determinem como os 
programas serão executados. Esse conjunto de instruções é determinado e codificado da mesma 
maneira que se faz para uma UCP. Desse conjunto de instruções surgirá a necessidade de implementar 
compiladores que gerem códigos com essas instruções a partir dos códigos fonte do programa, porém, 
estes compiladores extrapolam as fronteiras exigidas para uma máquina virtual e estão vinculados às 
linguagens de programação que usufruirão desta máquina virtual, o que indica que ela não está 
vinculada a uma ououtra linguagem de programação. 
Consequentemente, ao compilarmos determinado programa, que tem por destino uma máquina virtual, 
será obtido um arquivo com a sequência de instruções suportadas pela máquina virtual. Este arquivo é 
chamado de bytecode. O bytecode, por sua vez, será tratado pela máquina virtual como se fosse um 
arquivo executável, usando áreas de memória do mesmo modo que ocorre em uma execução. 
Entretanto, ao invés da execução, a máquina virtual transformará as suas instruções em instruções 
suportadas pela arquitetura da máquina real. Será nesse momento que a máquina virtual tratará as 
peculiaridades da plataforma em que está trabalhando e é por isso que existe uma máquina virtual para 
cada plataforma. 
18 
A transformação dos bytecodes em instruções reais é feita de modo interpretado, isto é, da mesma 
maneira que ocorre com linguagens interpretadas. Os bytecodes são lidos em uma sequência e, de 
forma isolada, associados a uma instrução real. Finalmente, tendo o que pode ser chamado de o 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
36 
“verdadeiro arquivo executável”, o programa passa para o SO (Sistema Operacional) em que ocorre o 
processo normal de uma máquina real. 
Para facilitar este processo observe a figura abaixo. Nesta figura vemos um programa (software) feito 
em “.java”, logo depois utilizando um compilador (compiler), que é o programa responsável em traduzir 
o código fonte de uma linguagem de programação de alto nível (java) para uma linguagem de 
programação de baixo nível (linguagem que o computador entende). O compilador cria o “.class” que 
será utilizado pelo JVM (Máquina Virtual Java). O JVM irá criar um ambiente virtual multiplataforma, isto 
é, poderá funcionar (rodar) em qualquer sistema operacional (Windows, GNU/Linux, MacOs). 
 
19 
Atualmente, o conceito de máquina virtual está ganhando novas fronteiras e mercados, com isso, uma 
alternativa que está sendo muito interessante é sua implementação é em hardware, no formato de 
microchips, por exemplo, o UltraJAVA. 
Destaca-se uma nova tendência, o uso de máquina virtual em celulares e em PDAs, tornando possível o 
reuso de aplicativos de PCs (computadores pessoais – desktops – laptops – notebooks), como ocorre 
com os jogos feitos em Java, e que estão sendo portados para celulares. Você já deve ter utilizado algum 
jogo para celular, não é? O jogo “Angry Birds” foi inicialmente feito para os IPhones, mas atualmente foi 
portado (compilado) para diversas plataformas, podendo ser jogado no Android, por exemplo. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
37 
 
20 
5 - VIRTUALIZAÇÃO DE MÁQUINAS 
Vamos agora falar do que venha a ser virtualização de máquinas. Há softwares de mercado como o 
VirtualBox da empresa americana Sun Microsystems, o VMWare da empresa também chamada 
VMware.Inc e outros que possibilitam a criação de uma máquina virtual por meio de um software que 
emula um ambiente computacional, tornando possível a instalação de um sistema operacional ou 
programa. 
A virtualização de máquinas, portanto, é o nome dado ao processo de criação de uma máquina, criada 
por meio de um software, que executa programas como se fosse um computador real. 
 
De maneira sucinta e simples, podemos falar que virtualização de máquina funciona como ter um 
“computador dentro do outro (computador)”. Parece estranho dizer “computador dentro do outro”, 
mas o software de virtualização (VMWare, VirtualBox) cria um ambiente de sistema computacional que 
torna possível instalar “um computador dentro do outro”. 
O software de virtualização cria todo o ambiente básico de um sistema computacional (memória, 
processador e dispositivos de entrada e saída) tornando possível a instalação do sistema operacional 
que você desejar. 
21 
Para facilitar o entendimento do conceito de máquina virtual, observe a figura abaixo. Note que há uma 
máquina real (física) que é composta por memória, processador e dispositivos de entrada e saída 
(sistema computacional) e também pelo sistema operacional. Na máquina real está instalado o software 
de virtualização (VMWare, VirtualBox). O software de virtualização, tendo por base o sistema 
computacional da máquina real, criará o ambiente (sistema computacional) que tornará possível a 
instalação de outro sistema operacional. Veja que na figura há duas “máquinas virtuais” e na base delas 
está o software de virtualização, que é o responsável em interagir com o sistema operacional 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
38 
“hospedeiro” e utilizar o recurso de hardware disponível. Em suma, podemos ver na figura abaixo uma 
representação do conceito “computador dentro do outro”. 
 
Mas como isso pode ser feito? Como funciona? Hoje em dia, criar uma máquina virtual é algo muito 
simples. Para isso, é necessária apenas a instalação de um programa específico no seu computador, da 
mesma maneira que você já instalou outro qualquer. Será por meio desse programa (software) que você 
poderá criar os componentes básicos para o funcionamento de uma máquina real, exemplo: um HD 
(disco rígido) virtual, memória RAM virtual, placa de rede virtual. Tudo isso tornará possível executar um 
sistema operacional inteiro a partir dele. 
22 
A virtualização de máquinas é extremamenteútil nas tarefas do dia a dia, pois torna possível ao usuário 
executar (rodar) e testar outros sistemas operacionais, tendo acesso a todos os softwares que 
necessita. Você poderia utilizar um software, por exemplo o VirtualBox, para fazer um test-drive de 
um novo sistema operacional, sem necessidade de reinstalar seu computador, evitando diversos 
transtornos. 
Durante a virtualização de máquina você irá determinar o quanto será alocado de memória RAM, 
emulando um ambiente de computação física, quais serão as especificações de CPU, memória, disco 
rígido, rede e outros recursos de hardware. Tudo isso será gerenciado pelosoftware de 
virtualização, em uma camada chamada “camada de virtualização”, que faz a tradução das solicitações 
da máquina virtual para o hardware presente na máquina real. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
39 
As máquinas virtuais tornam possível a instalação dos mesmos programas que você utiliza em seu 
computador, esses programas entendem que estão sendo executados diretamente 
no hardware físico, e não dentro de uma simulação. Peço que observe a figura abaixo para entender 
como e onde a máquina virtual ou virtualização de máquina intermedia a comunicação com a máquina 
real. 
 
23 
RESUMO 
Durante o estudo deste módulo, tivemos a oportunidade de entender como é feita a representação das 
informações. Entendemos que toda informação que é introduzida em um computador (sejam dados ou 
instruções de um programa) necessita ser entendida pela máquina, para que possa interpretá-la e 
processá-la. Estudamos que a menor unidade de informação armazenável em um computador ou 
sistema computacional é o algarismo binário ou dígito binário, conhecido como bit (inglês= binary digit). 
Entendemos que um byte é definido como um grupo ordenado de 8 bits, tratados de forma individual, 
como unidade de armazenamento e transferência. Compreendemos que “palavra” está relacionada com 
o armazenamento e a transferência de informações entre MP (Memória Principal) e UCP e 
especialmente relacionado ao processamento de dados pela CPU. Vimos a importância do 
entendimento de “níveis de máquina” em virtude que neste módulo falarmos do nível “mais baixo” que 
é como é feita a representação dos dados. Também estudamos que virtualização de máquina é o nome 
dado ao processo de criação de uma máquina, criada por meio de um software, que executa programas 
como se fosse um computador real. 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
40 
UNIDADE 1 – FUNDAMENTOS DA ARQUITETURA E REPRESENTAÇÃO DE DADOS NO 
SISTEMA OPERACIONAL 
MÓDULO 3 – NOTAÇÃO POSICIONAL 
 
01 
1 - SISTEMA DE NUMERAÇÃO DECIMAL, BINÁRIO E HEXADECIMAL. 
Nesse módulo iremos estudar os Sistemas de Numeração, os conceitos, as bases de numeração, número 
e numeral. Necessidade de representação em outras bases de numeração. Sistemas Decimal, binário, 
octal e hexadecimal. Conversão entre bases: da base 10 para uma base qualquer; de uma base qualquer 
para base 10. 
Desde que as primeiras civilizações buscando formas de perpetuar conhecimento por meio da escrita, o 
ser humano vem adotando maneiras e métodos específicos para representar números, possibilitando, 
com eles, contar objetos e efetuar operações aritméticas (soma, subtração, multiplicação, etc.). A forma 
mais empregada de representação numérica é a chamada notação posicional. Nela, os algarismos 
componentes de um número assumem valores diferentes, dependendo de sua posição relativa no 
número. O valor total do número é a soma dos valores relativos de cada algarismo. Desse modo, é a 
posição do algarismo ou dígito que determina seu valor. 
A formação de números e as operações com eles efetuadas dependem, nos sistemas posicionais, da 
quantidade de algarismos diferentes disponíveis no referido sistema. Há muito tempo, nós do mundo 
ocidental, adotamos um sistema de numeração que possui dez diferentes algarismos - 0, 1, 2, 3, 4, 5, 6, 
7, 8, 9 - e, por essa razão, foi chamado de sistema decimal. A quantidade de algarismos disponíveis em 
um dado sistema de numeração é chamada de base; a base serve para contarmos grandezas maiores, 
indicando a noção de grupamento. O sistema de dez algarismos, acima mencionado, tem base 10; um 
outro sistema que possua apenas dois algarismos diferentes (0 e 1) é de base 2, o que possui 16 
algarismos diferentes é o de base 16, e assim por diante. 
02 
Generalizando, num sistema qualquer de numeração posicional, um número N é expresso da seguinte 
forma: 
N = (d n-1 dn-2d n-3 .... d1 d0 )b 
 
onde: 
d indica cada algarismo do número; 
n-1, n-2, 1, 0 índice, indicam a posição de cada algarismo; 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
41 
b indica a base de numeração; 
n indica o número de dígitos inteiros. 
O valor do número pod e ser obtido do seguinte somatório: 
N=d n-1 X b n-1 + d n-2 Xb n-2 +.... + d1Xb1+d0Xb0 
Agora vamos utilizar como exemplo o número 3748, estando na base 10, podemos representar da 
seguinte forma: 
N = 3748 
onde: 
N 4 (quatro dígitos inteiros). 
Utilizando a fórmula indicada acima: 
d n-1 =3 ou d3 =3 / d2 =7 / d1 =4 / d0 =8 
ou obtendo seu valor de acordo com a fórmula mostrada acima: 
N=3X103 + 7X102 + 4X101 + 8X100 
= 3000 + 700 + 40 + 8 = 374810 
03 
O sistema de numeração é uma forma sistêmica (metódica, coerente) de utilização de numerais 
(conjuntos de um ou mais algarismos) para a representação dos números. Como vimos anteriormente, o 
sistema numérico mais conhecido é o decimal, chamado de “base 10”. Entretanto, existem outros 
sistemas numéricos, são eles: 
- Binário (base 2) 
- Octal (base 8) 
- Hexadecimal (base 16) 
A figura abaixo representa um número na base binária (base 2). 
 
04 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
42 
Após esta pequena introdução sobre o que venha a ser a notação posicional e bases numéricas, 
gostaríamos que você respondesse a seguinte pergunta: 
Em sua opinião, qual o sistema numérico utilizado nos computadores? 
 
Vamos aproveitar que você está indo muito bem e vamos fazer outra pergunta: 
Por que é utilizado o sistema binário e não o decimal nos computadores, pois diariamente utilizamos o 
sistema decimal? 
 
Caso você pare para pensar um pouco e veja que ao juntarmos os dedos da mão direita e esquerda 
teremos dez dedos, o que torna mais fácil o ensino das operações básicas da matemática. Todos nós já 
recorremos às nossas mãos para fazer contas, não é mesmo? 
 
 
05 
2 - SISTEMAS NUMÉRICOS BASE 10 
Como falamos anteriormente e com o intuito de reforçar o conceito, quando dizemos Sistema Numérico 
base 10 é quando utilizamos 10 algarismos (símbolos) para representar qualquer quantidade (0 a 9). 
Exemplo: 
0 1 2 3 4 5 6 7 8 9 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
43 
Matematicamente falando, quando usamos a base é 10, entendemos que para cada posição à esquerda, 
o peso será 10 vezes maior do que a posição à direita. Para entendermos melhor veja este exemplo 
abaixo: 
(5248)10 = 5 x 103 + 2 x 102 + 4 x 101 + 8 x 100 
Você pode notar que o número 5 é o que está mais à esquerda, na casa decimal milhar, contando a 
partir do número 8, temos três casas. Com o intuito de facilitar o entendimento colocamos desta forma: 
5 x 103 
Para os números 2,4 e 8 segue-se o mesmo raciocínio. 
06 
Base 2 
A base do sistema binário é 2 e, consequentemente, qualquer número, quando representado nesse 
sistema, consiste exclusivamente em dígitos 0 e 1. O termo dígito binário é chamado bit, contração do 
termo inglês binary digit. 
Por exemplo, o número binário 11011 possui cinco dígitos, ou algarismos binários. Diz-se que o referido 
número é constituído de 5 bits. Ao falarmos do Sistema numérico base 2, sistema usado pelos 
computadores, observamos que este sistema utiliza somente dois algarismos para representar qualquer 
quantidade. A origem do nome é por ser apenas dois, então se chama binário. São eles: 
0 1 
 
Aproveitamos a base 2 para falarmos também do termo bit. Este termo vem das palavras binary 
digit (01001)2 
07 
Base 16 
Em bases de valor superior a 10, usam-se letras do alfabeto para a representação de algarismos maiores 
que 9. Uma dessas bases é especialmente importante em computação; trata-se da base 16 ou 
hexadecimal, por ser de valor múltiplo de 2 (como a base 8). 
O sistema hexadecimal, também chamado de sistema de base 16 é utilizado nos projetos 
computacionais (hardware e software), também utilizado por ser mais próximo da base 10, é de fácil 
conversão para sistema binário. Como próprio nome diz, ele é composto por 16 símbolos, representados 
da seguinte forma: 
0 1 2 3 4 5 6 7 8 9 A B C D E F 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
44 
 
Nessa base, os “algarismos” A, B, C, D, E e F representam, respectivamente, os valores (da base 10): 10, 
11, 12, 13, 14 e 15. 
0 1 2 3 4 5 6 7 8 9 A B C D E F 
 
10 11 12 13 14 15 
 
 
Um número nessa base é representado na forma da expressão: 
(1A7B)16 
O seu valor na base 10 será obtido usando-se a expressão: 
1X163 + 10X162 + 7X161+11X160 = 4096 + 2560 + 112 + 11 = 677910 
Observemos que na fórmula foram usados os valores 10 (para o algarismo A) e 11 (para o algarismo B) 
para multiplicar as potências de 16. Por isso, obtivemos o valor do número na base 10. 
08 
Em outras palavras, utilizamos valores e regras de aritmética da base 10 e, por isso, o resultado 
encontrado é um valor decimal. A tabela abaixo mostra a representação de números nas bases 2, 8, 10 e 
16. 
 
09 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
45 
3 - CONVERSÃO DE BASES 
Uma vez entendido como representar números em notação posicional, e como esta notação é aplicável 
em qualquer base inteira, podemos exercitar a conversão de números de uma base para outra. 
Interessa-nos, principalmente, verificar o processo de conversão entre bases múltiplas de 2, e entre 
estas e a base 10, e vice-versa. 
Conversão entre Bases Potência de 2 
• Entre as Bases 2 e 8 
Em virtude do numeral oito ser igual ao numeral dois elevado a três (8 = 23), um número binário (base 2) 
pode ser facilmente convertido para o seu valor equivalente na base 8 (octal). Se o número binário for 
inteiro, basta dividi-lo, da direita para a esquerda, em grupos de 3 bits (o último grupo não sendo 
múltiplo de 3, preenche-se com zeros à esquerda – exemplo 2). Então, para cada grupo, acha-se o 
algarismo octal equivalente. A conversão de números da base 8 para a 2 é realizada de forma 
semelhante, no sentido inverso; substitui-se cada algarismo octal pelos seus 3 bits correspondentes. 
Preste atenção nos seguintes exemplos: 
 
10 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
46 
• Conversão entre as Bases 2 e 16 
O procedimento de conversão entre números binários e hexadecimais (base 16) é idêntico ao da 
conversão entre as bases 2 e 8, exceto que, neste caso, a relação é 16 = 24. 
Desse modo, um algarismo hexadecimal é representado por 4 bits; converte-se um número binário em 
hexadecimal, dividindo-se este número em grupos de 4 bits da direita para a esquerda. A conversão de 
hexadecimal para binário é obtida substituindo-se o algarismo hexadecimal pelos 4 bits 
correspondentes. Caso o último bit não tenha o total de 4 bits, preenche-se com zeros à esquerda. 
Observe a seguinte tabela para auxiliar na resolução e compreensão dos exercícios abaixo: 
 
27 26 25 24 23 22 21 20 
128 64 32 16 8 4 2 1 
 
Preste atenção nos seguintes exemplos: 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
47 
 
Resolução do exemplo 1 
Observando da esquerda para a direita, temos (0010). O bit que 
está “ligado”, o bit 1, está na posição do 21 , que é igual = 2 // por 
isso a resposta é 2. No segundo, (1101), temos o 1º, o 2º e o 4º 
bit ligado, então somando 23 + 22 + 20 temos o número 13, que 
corresponde na tabela hexadecimal a D. No terceiro, (1011), 
temos o 1º, o 3º e o 4º bit ligado, então somando 23 + 21 + 
20 temos o número 11, que corresponde na tabela hexadecimal a 
B. 
 
 
 
 
(0010) (1101) (1011) 
23 22 21 20 23 22 21 20 23 22 21 20 
11 
4 - CONVERSÃO DE NÚMEROS DE UMA BASE B PARA A BASE 10 
A conversão de um número, representado em uma base B qualquer, para seu correspondente valor na 
base l0 é realizada empregando-se a fórmula. A melhor maneira de compreender o processo de 
conversão consiste na realização de alguns exemplos práticos, onde se indica, detalhadamente, a 
aplicação da referida fórmula. 
Os exemplos apresentados referem-se apenas a números inteiros. 
1) (101101)2 = ( )10 
Substituindo, na expressão, as letras pelos valores do exemplo, teremos: 
b = 2 (a base origem do número a ser convertido) 
n = 6 (6 algarismos); 
n - 1 = 5 (expoente do W produto mais à esquerda) 
d1 =1 
1º produto: dn-1 X bn-1 = 1 X 25 
Os demais produtos seguem a sequenciada expressão, resultando em: 
(1 X 25) + (0 X 24) + (1 X 23) + (1 X 22) + (O X 21) + (1 X 20) 
= 32 + O + 8 + 4 + O + 1 = (45)10 
Exemplo 2 
Exemplo 3 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
48 
Exemplo 4 
 
Exemplo 2 
 
(27)8= ( )10 
 
Da mesma maneira, substitui-se na 
expressão: 
b=8 
n=2 
n-1=1 
dn-1=2 
 
Valor total: 
2X81 + 7X80 = 16+7=(23)10 
 
Exemplo 3 
 
(2A5)16 = ( )10 
2 X162 + 10 X 161 +5 X160 
= 512 + 160 + 5 
= (677)10 
Observação: Lembre-se que A 
representa 10 em hexadecimal. 
 
 
Exemplo 4 
 
(6734)8= ( )10 
6 X 83 + 7 X 82 + 3 X 81 + 4 X 80 
= 3072 + 448 + 24 + 4 = (3548)10 
 
 
12 
5 - CONVERSÕES DE NÚMEROS DECIMAIS PARA UMA BASE B 
A conversão de números, representados na base 10, para seus valores equivalentes em uma base B 
qualquer é efetuada através de um processo inverso ao do subitem anterior (base B para base 10). 
A conversão é obtida dividindo-se o número decimal pelo valor da base desejada; o resto encontrado é 
o algarismo menos significativo do valor na base B (mais à direita). Em seguida, divide-se o quociente 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
49 
encontrado pela base B; o resto é o outro algarismo (à esquerda); e assim, sucessivamente, vão-se 
dividindo os quocientes pelo valor da base até se obter quociente de valor zero. Em cada divisão, o resto 
encontrado é um algarismo significativo do número na nova base; o primeiro resto encontrado é o valor 
do algarismo menos significativo e o último resto será o algarismo mais significativo (mais à esquerda). 
Na realidade, o algoritmo de conversão podeser definido com vários critérios de parada, tais como: 
a) Enquanto quociente for diferente de zero: 
 - dividir dividendo por divisor 
 - extrair resto como algarismo e colocá-lo à esquerda do anterior 
 - repetir 
b) Quando quociente for igual a zero, parar. 
c) Enquanto dividendo for maior que divisor: 
 - dividir dividendo por divisor 
 - extrair resto como algarismo e colocá-lo à esquerda do anterior 
 - repetir 
Usar o dividendo (que agora é menor que o divisor) como último algarismo à esquerda (algarismo mais 
significativo). 
Exemplo 
Exemplo 
 
(3964)10= ( )8 
3964/8 = 495 => resto 0 = 4 
(algarismo menos significativo) 
 495/8 = 61 => resto =7 
 61/8 = 7 => resto2 =5 
 7/8 = O => resto3 = 7 (algarismo 
mais significativo) 
O número é, então, (7574)8 
 
 
13 
Exercício 02: 
(2293)10 = ( )8 
O resultado será: 4365 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
50 
 
 
Veja a figura abaixo para compreender melhor essa conversão: 
 
 
14 
Exercício 03: 
(217)10 = ( )2 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
51 
 
O resultado será: 11011001 
Veja a figura abaixo para entender esta conversão: 
 
 
15 
Para ajudar na compreensão de conversão de base, assista ao vídeo a seguir. 
1° Aula de Eletrônica Digital - Bases Numéricas - Conversão de Bases 
https://www.youtube.com/watch?v=IoD6Br_cggc 
16 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
52 
RESUMO 
Durante o estudo deste módulo tivemos a oportunidade de conhecer o que são os sistemas de 
numeração decimal. Vimos que nós, do mundo ocidental, adotamos um sistema de numeração que 
possui dez diferentes algarismos - 0, 1, 2 , 3, 4, 5, 6, 7, 8, 9 - e, por essa razão, foi chamado de sistema 
decimal. O sistema de numeração é uma forma sistêmica (metódica, coerente) de utilização de 
numerais (conjuntos de um ou mais algarismos) para a representação dos números. Como vimos 
anteriormente, o sistema numérico mais conhecido é o decimal, chamado de “base 10”. Contudo, há 
outros sistemas numéricos, como o binário (base 2), Octal (base 8) e o Hexadecimal (base 16). 
Finalmente, uma vez que entendemos como é a representação dos números, fizemos vários exercícios 
sobre a conversão de números de uma base para outra com o intuito de fixar o entendimento do 
assunto. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
53 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102 – Arquitetura de Computadores | Unidade 01 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
54 
 
 
 
 
 
 
 
 
 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
1 
UNIDADE 2 – FUNCIONAMENTO DOS CIRCUITOS COMBINACIONAIS E SEQUENCIAIS 
MÓDULO 1 – SISTEMAS DIGITAIS 
01 
INTRODUÇÃO 
Durante o estudo deste módulo você terá oportunidade de entender o que seja sistema para ficar mais 
simples a compreensão do que sejam sistemas digitais. Os sistemas digitais modernos possuem diversos 
níveis de complexidade. Estes componentes podem ser uma simples chave de liga e desliga até sistemas 
computacionais completos. Estudaremos também a importância do cientista inglês George Boole e do 
matemático americano Shannon na utilização da álgebra booleana para demonstrar as propriedades dos 
circuitos elétricos. 
1. CONCEITO DE SISTEMA 
Para compreendermos melhor o que são circuitos combinacionais e sequenciais é interessante 
começarmos pelo entendimento do que venha a ser sistema. Trata-se de um conceito aparentemente 
simples, porém, é um dos mais abrangentes e complexos de compreender. Mas não se assuste, vamos 
trabalhar juntos no entendimento deste conceito. Vamos lá? 
Você provavelmente já vivenciou a seguinte situação: uma pessoa verifica que seu aparelho celular está 
tendo problemas de “falta de sinal” e não consegue efetuar ligações. A pessoa entra em contato com a 
operadora de telefonia celular e após determinado tempo recebe como resposta que “foi verificado 
problema no sistema e assim que o sistema estiver em funcionamento o sinal será restabelecido”. Você 
também já deve ter ouvido a seguinte expressão: “a culpa de tudo isso é este “sistema de transporte” 
ultrapassado e que não funciona...” Enfim, o que não falta são exemplos do uso da palavra sistema. 
 
 
A origem da palavra sistema é do grego “sietemiun”, que significa formar conjunto. Um 
sistema pode ser definido como um conjunto de elementos que se relacionam e interagem 
com o objetivo de desempenhar determinada função. 
 
02 
No caso do mundo da computação, os componentes de um sistema computacional estão 
interconectados, de modo a formar um todo organizado, sendo assim, cada elemento desempenha 
determinada função e deve atingir uma meta geral. 
Um sistema deve ter sua função bem definida e esta definição é que irá identificar as funcionalidades de 
seus componentes. Uma das muitas funções de um computador é transformar as informações que você 
acessa na Internet e torná-las possíveis de serem entendidas, pois por trás das imagens há uma 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
2 
infinidade de bits e bytes, códigos, programas etc. Sendo assim, é possível identificar dois aspectos 
básicos em qualquer sistema: 
• sua estrutura e 
• seu comportamento. 
A estrutura é reflexo dos componentes e a maneira como estão interconectados, já o comportamento é 
reflexo da funcionalidade do sistema. 
Nos sistemas em que há vários componentes, uma das características será a complexidade das inter-
relações, então é por isso que são chamados de sistemas complexos. Em projetos que adotam os 
chamados sistemas complexos, a identificação da ordem ou regularidade é de suma importância, o que 
exige uma abordagem sistemática e estruturada. Em virtude de qual aspecto está sendo identificado, a 
representação que deve ser utilizada terá um nível de abstração adequada. As representações mais 
comuns utilizadas são de três tipos: 
 
 
• a comportamental, 
• a estruturada e 
• a física. 
03 
No caso da representação comportamental, a identificação do sistema é feita como uma “caixa preta” 
(difícil de saber o que contém seu interior) e se concentra na especificação do comportamento por meio 
de uma função com valores de entrada e de tempo (ver figura 01 abaixo). 
Fazendo um resumo, uma representação comportamental mostra como é o funcionamento, mas não 
mostra como é feita a implementação de determinado sistema (caixa preta), definindo apenas as saídas 
da “caixa preta” para qualquer tipo de combinação de valores de entrada, mas não descreve como é a 
construção ou projeto do sistema conforme certos componentes. 
 
04 
Já no caso da representação estrutural há uma definição da “caixa preta” como o conjunto de seus 
componentes e suas respectivas interconexões. Oposto da representação comportamental, a 
representação estrutural se atém às especificações e à implementação do sistema sem fazer referência 
à sua funcionalidade. Você pode observar isso na figura 02. 
102 – Arquitetura decomputadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
3 
 
Fica explícito que na maioria das vezes a funcionalidade pode ser obtida a partir dos componentes 
interconectados. Contudo, derivar a funcionalidade de um sistema desta forma é muito complicado, 
principalmente se o sistema possui um número grande de componentes. 
05 
A representação física de uma “caixa preta” especifica suas características, mostrando suas dimensões e 
a localização de cada componente e a conexão existente na descrição estrutural do sistema. No entanto 
a representação estrutural oferece a conectividade do sistema, somente a representação física faz a 
descrição precisa das relações espaciais dos vários componentes. Sendo assim, a representação física é 
utilizada para fazer a descrição do sistema logo após sua fabricação, especificando quais serão suas 
dimensões, peso, consumo de energia elétrica e as posições de cada dispositivo de entrada ou saída. 
Uma maneira simples e natural para representação da estrutura de um sistema é utilizando-se de 
diagramas de bloco. No diagrama de bloco os componentes podem ser representados por retângulos, 
chamados blocos, e as conexões que são representadas por linhas que interligam os blocos. A figura 03 
mostra um exemplo de diagrama do Arduíno (hardware de prototipagem eletrônica). 
 
06 
A maneira como é feito o projeto de sistemas, principalmente relacionado a sistemas digitais e em 
particular a produtos eletrônicos em geral, tem por base sempre ao menos três fases, cada uma tendo 
como norte uma das representações de projeto: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
4 
 
Ao pararmos para pensar sobre o que vimos até agora quanto a sistemas e representações, entendemos 
que em qualquer projeto é possível montar ou criar algo quando seguimos estes passos (projeto) que 
utilizam diferentes tipos e níveis de abstração. Em determinado nível de abstração são representados 
apenas determinados detalhes. Geralmente, os detalhes identificados em uma dada fase do projeto 
dependem do quanto é complexo o sistema. Podemos usar o seguinte exemplo: é muito difícil ou quase 
impossível fazer um projeto de um microprocessador fazendo uso apenas das portas lógicas básicas. 
Geralmente, o projeto começa utilizando blocos básicos no nível lógico. Logo depois, estes blocos serão 
interconectados para comporem um sistema mais complexo. Esta seria uma maneira viável para 
projetar um microprocessador. 
07 
2- SISTEMAS DIGITAIS 
Vamos agora começar nosso estudo sobre sistemas digitais. Nosso objetivo é fazer uma pequena 
introdução sobre o que é um sistema digital. Daremos uma especial atenção aos componentes que são 
básicos para este sistema. 
 
Podemos definir um sistema digital como aquele que é formado por um 
conjunto de componentes interconectados que processam informações em 
forma digital ou discreta. 
Na maioria dos sistemas digitais, os componentes básicos utilizados são dispositivos eletrônicos 
chamados circuitos integrados (CIs). As conexões entre estes componentes eletrônicos são ligações 
físicas por meio das quais as informações digitais são transmitidas. 
Os sistemas digitais modernos abrangem diversos níveis de complexidade. Os componentes utilizados 
para construir um sistema digital são compostos desde o componente do tipo chave “liga/desliga” e vai 
até um sistema computacional completo. 
A quantidade de componentes que compõe um sistema digital pode variar de apenas um até vários 
componentes. Você já deve ter chegado à conclusão que quanto maior a quantidade de componentes 
necessários à implementação de um sistema digital, maior será sua complexidade, consequentemente, 
mais difícil de compreender como é seu funcionamento e de como fazer seu projeto. Tudo isso 
evidencia a importância do uso de níveis de abstração no processo de projeto de sistemas digitais. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
5 
08 
Você provavelmente deve estar perguntando: o que são níveis de abstração? Vamos juntos entender 
este conceito. 
Comecemos pelo conceito da palavra abstração. Há vários conceitos e definições para abstração, no 
dicionário, abstração significa: “ideias desvinculadas da realidade” ou “isolar mentalmente para 
considerar à parte um elemento de representação que não é dado separadamente na realidade”. 
 
Abstração tem sua origem do latim abstractio, que significa uma forma de 
mentalmente isolar em um conceito determinado elemento à exclusão de 
outros do todo. 
Um engenheiro, ao fazer a planta para construção de uma casa, utiliza certos símbolos, desenhos e 
traçados que representam paredes, quartos, janelas, canos, pilares, vigas e etc. Esta planta da obra é 
uma abstração do que será a casa ao final da construção. 
Você também pode pesquisar na Internet e encontrar sites que mostram os componentes de um motor 
automobilístico e como é a interação de seus componentes, com base nestas informações podemos 
imaginar (abstrair) como seriam estes componentes interagindo durante o funcionamento real do 
motor. 
 
09 
Um nível de abstração, ou de granularidade, é caracterizado pelo tipo de objetos utilizados na 
representação. Geralmente, é possível identificar 4 diferentes tipos de objetos em um produto 
eletrônico: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
6 
• registradores, 
• processadores, 
• portas e 
• transistores. 
Na tabela abaixo é possível observar os níveis de abstração. 
 
Conforme podemos observar na tabela acima, os principais componentes no nível de transistores são 
transistores, resistores e capacitores, que, ao serem combinados, formam os circuitos analógicos e 
digitais para realizar e exercer determinada funcionalidade. Esta funcionalidade é geralmente 
representada por um conjunto de equações diferenciais ou por determinado tipo de relacionamento 
entre corrente e tensão. Representar fisicamente estes circuitos, chamados células, consiste da 
composição ao nível de transistores e das conexões que os conectam. 
10 
Os componentes principais do nível de portas são os flip-flops e as portas lógicas. 
 
 
Portas lógicas são circuitos especializados que fazem uso de operações booleanas, exemplo: 
OR e AND. 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
7 
 
Um flip-flop é um elemento básico de memória que tem a capacidade de 
armazenamento de 1 bit de informação, consequentemente ele pode assumir 
um valor falso ou desligado (0) ou verdadeiro ou ligado (1). 
As portas e flip-flops são células digitais que, ao serem grupadas, formam módulos ou unidades 
aritméticas e de memória. 
Os módulos são utilizados na composição básica ao nível de registradores. Utilizando-se de equações 
booleanas e Finite State Machines - FSMs (diagramas de máquinas de estados finitas) é possível 
descrever o comportamento de cada módulo. 
11 
Os registradores têm por seus principais componentes as unidades de memória e aritméticas, tais 
como: multiplicadores, comparadores, somadores, contadores, filas, registradores, bancos de 
registradores e etc. Cada um destes componentes é um módulo, que possui dimensões padronizadas ou 
fixas, tendo um atraso de propagação e um conjunto fixo de posições para as saídas e entradas do 
módulo. 
 
Estes componentes do nível de registradores são montados e interconectados em microcircuitos,que 
geralmente são usados como componentes básicos no nível de abstração descrito na tabela. De maneira 
geral, os microcircuitos mencionados são exemplificados por diagramas de FSMs ou tabelas de estados, 
fluxogramas e conjuntos de instruções. 
12 
O nível de processador pode ser considerado como o nível mais alto de abstração apresentado na 
tabela 01. Os componentes básicos são: memórias, processadores, controladores e interfaces, e os 
chamados: Application Specific Integrated Circuits - ASICs (Circuitos de Aplicação Específica). 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
8 
De maneira geral, os componentes expostos acima são montados em uma placa de circuito impresso e 
conectados com fios que são impressos na placa. 
A maneira de como será o comportamento de sistemas compostos destes componentes do nível de 
processadores é normalmente feita por meio de linguagem natural, uma especificação executável 
utilizando-se de Hardware Description Language – HDL – linguagem de descrição de hardware, ou um 
programa ou algoritmo feito em uma linguagem de programação, como, por exemplo: assembly 
(notação legível feito por seres humanos para o código de máquina). 
13 
A representação estrutural comumente utilizada para sistemas digitais é o diagrama de blocos. 
Dependendo do nível de abstração, cada bloco irá representar os objetos correspondentes ao nível de 
uma porta lógica quando relacionado ao nível de abstração de portas; registradores, somadores quando 
relacionado ao nível de registradores; controladores e ASICs quando relacionado ao nível de 
processador. As interconexões são representações da comunicação entre os objetos. 
 
A figura 04 é um exemplo de um diagrama de blocos, que representa uma ULA (Unidade Lógica e 
Aritmética) e também os registradores para a entrada e saída. Eles são componentes que constituem 
partes essenciais de qualquer tipo de sistema computacional. 
14 
Você deve ter observado que, em um diagrama de blocos, não há preocupação quanto ao detalhamento 
dos componentes, mas apenas uma ideia generalizada da estrutura como um todo. Cada bloco poderá 
até ser mostrado em um nível maior de detalhamento por meio de outro diagrama de blocos ou em um 
diagrama esquemático. Isto demonstra a natureza hierárquica que há em qualquer tipo de projeto de 
sistema. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
9 
 
Para exemplificar o que falamos no parágrafo acima, podemos observar na figura 05, uma 
representação de um diagrama de blocos com um nível de detalhamento maior da ULA (Unidade Lógica 
e Aritmética). Você já havia observado na Figura 04 um diagrama de blocos que representa a ULA de 
uma maneira menos detalhada. 
15 
Na figura abaixo, figura 06, continuamos a detalhar ainda mais, 
vendo com detalhes como é um somador completo, que é um dos 
blocos que representa um dos componentes da ULA. 
 
Contudo, para a representação do comportamento de sistemas digitais no nível de portas lógicas, torna-
se necessária a utilização de tabelas verdades e equações booleanas. No nível de registradores, utiliza-
se de determinados tipos de linguagem para a descrição de como ocorrem as transferências de dados 
entre os registradores. Com o objetivo de possibilitar uma simulação do sistema no nível de 
processador, geralmente utilizamos as chamadas linguagens procedurais. Estas linguagens fazem uma 
descrição dos algoritmos na forma de programas executáveis. 
16 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
10 
Vamos agora usar uma descrição algorítmica. O algoritmo abaixo foi criado tendo por base o diagrama 
de blocos que representa a estrutura da ULA conforme a figura 4: 
 
Este pequeno algoritmo mostra que o valor de (controle) irá determinar se a ULA realizará uma soma ou 
uma subtração. 
17 
3. TIPOS DE DADOS E REPRESENTAÇÃO DE DADOS 
Anteriormente, falamos sobre notação posicional em que estudamos os sistemas de numeração e 
conversão de bases. Quando falamos em tipos de dados, o objetivo é entender que nos sistemas digitais 
a codificação mais utilizada é a binária. 
Os dados encontrados nos atuais computadores, que são sistemas digitais, são classificados em uma das 
seguintes categorias: 
 
• Números utilizados em cálculos matemáticos; 
• Letras do alfabeto, utilizadas para processar dados; 
• Os chamados símbolos discretos, que são utilizados para vários propósitos. 
Você estudou anteriormente que nos sistemas computacionais os dados são representados em formato 
binário porque este formato facilita a criação dos projetos de circuitos eletrônicos, pois há apenas duas 
condições possíveis, as quais foram convencionadas para serem interpretadas como os valores 0 e 1 de 
um dígito binário (bit). Tais circuitos eletrônicos são projetados para realizar um repertório de 
operações necessárias que são disponibilizadas nos computadores. 
18 
4. ÁLGEBRA BOOLEANA E CIRCUITOS LÓGICOS 
Você observou nos parágrafos anteriores que falamos sobre operações e lógica booleana. Para 
entendermos este conceito vamos começar falando sobre o conceito conhecido como: álgebra 
booleana. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
11 
 
Podemos definir como álgebra booleana o conjunto de operadores e um 
conjunto de axiomas (verdades inquestionáveis universalmente válidas), que 
são assumidos verdadeiros sem precisar de prova. 
 
 
George Boole (1815-1864) 
 
No ano de 1854, o matemático inglês George Boole 
introduziu uma maneira sistemática e formal que até 
hoje é usada para o tratamento sistemático da lógica, 
conhecida como álgebra de Boole ou álgebra booleana. 
Com o passar dos anos, quase um século depois, outro 
cientista e matemático, o norte-americano Claude 
Elwood Shannon, teve a ideia de usar o sistema 
matemático de George Boole para analisar e projetar 
circuitos. Shannon utilizou a álgebra boolena para fazer a 
demonstração das propriedades dos circuitos elétricos 
de chaveamento com dois valores. 
19 
Oposto ao que conhecemos na matemática de nosso dia a dia, também conhecida como a álgebra 
ordinária dos reais, as variáveis podem assumir valores no intervalo (-8;+8) – infinito ao + infinito, 
entretanto, as variáveis booleanas só podem assumir um número finito de valores. Em especial, na 
álgebra booleana de dois valores, cada variável pode assumir um dentre dois valores possíveis, os quais 
podem ser denotados por falso ou verdadeiro (F,V), ligado ou desligado ou zero/um (0,1). Neste nosso 
estudo iremos utilizar a notação de zero e um [0,1], que utilizaremos também no estudo da eletrônica 
digital ou circuitos digitais. 
Em virtude do pequeno valor (finito) que cada variável pode assumir, a opção de estados que uma 
função booleana assume também será limitado (finito), consequentemente se torna fácil descrever 
completamente as funções booleanas com o uso de tabelas. Em virtude deste detalhe, uma tabela que 
descreva uma função booleana é chamada de tabela verdade. 
Ao estudarmos a álgebra booleana é importante entender que existem três funções básicas ou 
operações. São elas: 
• operação “OU”, 
• operação “E” e 
• complementação. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
12 
Todas as funções booleanas podem ser representadas por meio destas operações básicas. 
Tabela verdade 
Éna tabela verdade que podemos listar todas as combinações de valores que as variáveis de entrada 
podem vir a assumir e os correspondentes valores da função, que serão as saídas. 
 
 
20 
4. 1 - OPERAÇÃO OU (ADIÇÃO LÓGICA) 
Uma definição para a operação “OU”, que também é chamada de adição lógica, é: 
 
A operação “OU” resulta “1” se pelo menos uma das variáveis de entrada 
valer “1”. 
Você viu nos parágrafos anteriores que uma variável booleana ou vale “1” ou vale “0”, e como o 
resultado de uma operação qualquer pode ser visto como (ou atribuído a) uma variável booleana, basta 
que definamos quando a operação vale 1. Automaticamente, a operação resultará 0 no restante dos 
casos. Sendo assim, pode-se concluir que a operação “OU” resulta “0” apenas quando todas as variáveis 
de entrada tiverem o valor “0”. 
Para representar a operação “OU” podemos usar o símbolo da adição algébrica dos números reais, o 
símbolo “+”. Entretanto, em virtude de estarmos trabalhando com variáveis booleanas, sabemos que 
não é uma adição algébrica, mas na verdade uma adição lógica. 
Observe a figura abaixo, que lista as possibilidades de combinações entre dois valores booleanos (0/1) e 
os correspondentes resultados para a operação “OU”. 
Preste muita atenção: a figura abaixo é a representação de uma operação booleana de adição lógica, 
pois na álgebra matemática (número reais) 1+1=2 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
13 
21 
Nas equações, geralmente não escrevemos todas as possibilidades de valores. Apenas convencionamos 
que uma letra (ou uma letra com um índice) irá designar uma variável booleana. Sendo assim, já 
sabemos que aquela variável poderá assumir ou o valor “0” (zero) ou o valor “1” (um). 
Consequentemente, supondo que vamos demonstrar o comportamento da equação “A OU B” (entende-
se como: A + B), poderíamos reproduzir o resultado por meio da tabela verdade abaixo: 
 
Vamos agora acrescentar mais uma variável. Não se preocupe, pois da mesma maneira, podemos 
simular o comportamento da equação “A OU B OU C” por meio de uma tabela verdade. Outra maneira 
de representar a mesma equação seria: A+B+C (entende-se como: A OU BOU C). Como na equação há 
apenas o símbolo “+”, trata-se de uma operação “OU” com três variáveis. Consequentemente aplica-se 
diretamente a definição da operação OU. Vamos relembrar esta definição? Então vamos: o resultado 
será “1” (um) se pelo menos uma das variáveis de entrada valer “1” (um). Observe a tabela verdade 
abaixo: 
 
22 
Torna-se importante frisar que, em virtude do fato de haver somente um operador na equação, pode-se 
fazer também uma avaliação da equação dividindo-a em pares. Para melhorar o entendimento vamos 
supor que primeiramente vamos achar o resultado de A+B, para então operar os valores resultantes 
com os respectivos valores de C. Esta propriedade é conhecida como associativa. A ordem das variáveis 
não é importante em virtude da propriedade comutativa, sendo assim a ordem em que são avaliadas as 
variáveis A, B e C é irrelevante. Estas propriedades são visualizadas pela tabela verdade abaixo. Nesta 
tabela, os parêntesis servem para indicar as subexpressões que já foram avaliadas na coluna 
imediatamente à esquerda. 
Você deve ter observado que os valores das colunas referentes às expressões A+B+C, (A+B)+C e (B+C)+A 
são os mesmos (na mesma ordem). 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
14 
 
Propriedade associativa 
 
Quer dizer que, ao associarmos algumas parcelas, o total fica inalterado. No conjunto dos números 
naturais, a adição éassociativa, isto é, é possível associar as parcelas de quaisquer modos, ou seja, 
com três números naturais, somando o primeiro com o segundo e ao resultado obtido somarmos um 
terceiro, obteremos um resultado que é igual à soma do primeiro com a soma do segundo e do 
terceiro. 
 
Exemplo: 
 
(2 + 3 ) + 4 = 2 + ( 3 + 4 ) = 9 
 
Propriedade comutativa 
 
Quer dizer que a ordem das parcelas não altera a soma. No conjunto dos números naturais, a adição 
é comutativa, pois a ordem das parcelas não altera a soma, ou seja, somando a primeira parcela com 
a segunda parcela, teremos o mesmo resultado que somando a segunda parcela com a primeira 
parcela. 
 
Exemplo: 
2 + 6 = 6 + 2 = 8 
 
23 
4.2 - OPERAÇÕES “E” (MULTIPLICAÇÃO LÓGICA) 
Seguiremos o mesmo raciocínio que utilizamos para a operação lógica OU. Veremos que na 
multiplicação lógica o operador é a letra “E”. 
 
A operação “E” é definida como operação que resulta “0” (zero) se pelo 
menos uma das variáveis de entrada tiver o valor de “0” (zero). 
Podemos deduzir pela definição que o resultado da operação E será 1 (um) se, e somente se todas as 
entradas tiverem o valor de 1 (um). 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
15 
O símbolo usualmente utilizado na operação E é “.”, porém outra notação que alguns autores utilizam 
é “^”. Vamos, na tabela abaixo, listar as possibilidades de combinações entre dois valores booleanos e 
os respectivos resultados da operação E: 
 
24 
Também como a operação OU, a operação E só pode ser definida ao menos por duas variáveis. 
Consequentemente, o operador “.” (E) é também binário. No intuito de mostrar o comportamento da 
equação A . B (pode-se ler como: A e B), observe a tabela verdade abaixo: 
 
Conforme fizemos anteriormente, vamos verificar qual seria o resultado da equação A . B . C (pode-se 
ler como: A e B e C) utilizando de forma direta a definição da operação “E” que diz: o resultado 
será 0 (zero) se pelo menos uma das variáveis de entrada valer 0 (zero). 
 
25 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
16 
Você deve estar lembrado que falamos sobre as propriedades associativa e comutativa. Pois é, na 
operação E também valem estas propriedades. Sendo assim, a equação A . B . C pode ser analisada 
tomando-se as variáveis aos pares, sem necessidade de ordem. 
Observe a tabela verdade abaixo e verifique os resultados: 
 
26 
4.3 - COMPLEMENTAÇÃO (OU NEGAÇÃO, OU INVERSÃO) 
Dando continuidade ao estudo das operações booleanas, vamos agora estudar a operação chamada 
de Complementação. 
 
A operação de complementação consiste em que seu resultado é 
simplesmente o valor complementar ao que a variável apresenta. 
Em virtude desta condição, uma variável booleana pode assumir um entre somente dois valores, o valor 
complementar será “1” (um) se a variável valer “0” (zero) e será “0” (zero) se a variável tiver o valor de 
“1” (um). 
Você irá observar que os símbolos utilizados para a representação da operação complementação sobre 
uma variável booleana, exemplo a variável “A”, pode ser: A , ~A e A' (lê-se A negado). Para nosso estudo, 
iremos utilizar: A. Veja a tabela abaixo para entender o resultado da operação complementação: 
 
Você deve ter notado que diferentemente das operações “OU” e “E”, a operação de complementação 
só pode ser definida sobre uma variável, ou sobre o resultado de uma expressão. Neste caso, o operador 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
17 
da operação de complementação é chamado de: unário. Veja a tabela abaixo para compreender melhor 
o que falamos: 
 
27 
5 - AVALIAÇÕES DE EXPRESSÕES BOOLEANAS 
Conforme observamos uma equação qualquer, que descreve uma função booleana, entendemos que oobjetivo é compreender com detalhes como esta função se comporta para qualquer combinação de 
entrada das variáveis. O comportamento de uma função pode ser observado em sua tabela verdade e 
isto é conhecido como expressão, que descreve a função considerada ou avaliação da função. 
Resumindo, deseja-se achar a tabela verdade para a função booleana. 
 
Uma tabela verdade, como o próprio nome informa, é formada basicamente 
por um conjunto de colunas, nas quais são listadas todas as combinações 
possíveis entre as variáveis de entrada (à esquerda) e o resultado da função 
(à direita). 
É possível, também, criar colunas intermediárias, onde serão listados os resultados de subexpressões 
contidas na expressão principal. Tudo isso tem por objetivo facilitar a avaliação, principalmente no caso 
de equações muito complexas, que possuem muitas variáveis. 
 
Seguindo o mesmo raciocínio, expressões que estão entre parêntesis têm 
precedência sobre operadores E e OU que estejam no mesmo patamar. 
 
No caso da operação de complementação, esta deve ser avaliada tão logo seja 
possível. Caso a complementação seja aplicada sobre uma subexpressão inteira, é 
necessário que se avalie primeiramente a subexpressão para, para apenas depois, 
inverter o seu resultado. 
 
28 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
18 
Você pode calcular o número de combinações que as variáveis de entrada podem assumir por meio do 
seguinte cálculo 2n. Nesse cálculo, o “n” representa o número de variáveis de entrada. Para criar uma 
tabela verdade tendo por base uma equação booleana é preciso observar 3 passos: 
 
29 
Vamos agora usar como exemplo a seguinte expressão W = X + Y . Z . Nesta expressão, a variável W 
representa a função booleana. Essa variável depende das variáveis que estão à direita do sinal = (igual), 
sendo assim, irá depender de X, Y e Z. Então, serão três as variáveis de entrada. 
Podemos então deduzir que o total de combinações entre 3 variáveis será 23=8. Por consequência, a 
tabela verdade para W deverá ter 3 colunas à esquerda e 8 linhas. Seguindo o que mencionamos acima, 
vamos criar uma coluna, e nela listar os valores para Z. Logo depois, começamos a avaliação 
propriamente dita, partindo do nível mais interno de parêntesis. Em virtude de não haver parêntesis na 
expressão, iremos começar resolvendo as subexpressões que envolvem a operação “E”. Na fórmula que 
estamos utilizando há somente uma subexpressão: X . Y. Em virtude disso, vamos criar uma coluna para 
X . Y , e nela colocaremos os resultados para este produto. 
Ao final, utilizam-se os resultados de X . Y, listados na coluna anterior, para operar o OU com a 
variável X. Observe os passos descritos na tabela verdade abaixo e veja que os parêntesis em torno do 
produto X . Y indicam apenas que este termo já passou por avaliação e que no passo referente a esta 
coluna, tomaram-se apenas os valores previamente encontrados. 
 
30 
RESUMO 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
19 
Durante o estudo deste módulo tivemos oportunidade de estudar e entender que sistema pode ser 
definido como um conjunto de elementos que se relacionam e interagem com objetivo de desempenhar 
determinada função. Vimos que um sistema digital é formado por um conjunto de componentes 
interconectados que processam informações em forma digital ou discreta. Entendemos que em 
oposição ao que conhecemos na matemática de nosso dia a dia, também conhecida como a álgebra 
ordinária dos reais, as variáveis podem assumir valores no intervalo (-∞;+∞), entretanto as variáveis 
booleanas só podem assumir um número finito de valores, podendo ser 0 ou 1. Ao final vimos que na 
álgebra booleana há três funções básicas ou operações, elas são: operação “OU”, operação “E” e 
Complementação. Todas as funções booleanas podem ser representadas por meio destas operações 
básicas. 
UNIDADE 2 – FUNCIONAMENTO DOS CIRCUITOS COMBINACIONAIS E SEQUENCIAIS 
MÓDULO 2 – CIRCUITOS LÓGICOS 
01 
1 - PORTAS LÓGICAS 
Neste módulo iremos compreender que uma função booleana pode ser representada de forma gráfica, 
onde cada operador está associado a um símbolo específico (portas lógicas), tornando possível o 
imediato reconhecimento visual. Você terá oportunidade de entender que um circuito lógico tem por 
característica ser composto pelas portas lógicas relacionadas às operações realizadas sobre as variáveis 
de entrada. Então, os resultados das operações são conduzidos por meio de fios que representamos 
com a utilização de linhas simples. Faremos uma passagem pelos conceitos, leis e propriedades da 
álgebra booleana para podermos fundamentar nosso conhecimento. Ao final, veremos como, a partir de 
uma expressão booleana, podemos criar circuitos lógicos. Então vamos começar? 
Durante nosso estudo sobre função booleana entendemos que ela pode ser representada por uma 
equação ou também pode ser detalhada pela tabela verdade. 
 
Todavia uma função booleana também pode ter sua representação feita de 
forma gráfica, onde cada operador está associado a determinado símbolo 
específico, tornando possível o imediato reconhecimento visual. Estes 
símbolos são conhecidos como portas lógicas. 
 
Na verdade, muito além do que apenas símbolos de operadores lógicos, as portas lógicas representam 
recursos físicos, sendo assim, circuitos eletrônicos, com capacidade de realizar as operações lógicas. Na 
eletrônica trabalhamos apenas com dois estados, a qual é denominada eletrônica digital, o nível lógico 0 
(zero) está associado normalmente à ausência de tensão (0 volt) enquanto o nível lógico 1 está 
associado à presença de tensão (de maneira geral é de 5 volts). Durante nosso estudo abordaremos 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
20 
alguns pontos do vasto mundo da álgebra booleana, compreendendo que as portas lógicas representam 
também circuitos eletrônicos que, de alguma maneira, realizam as funções booleanas simbolizadas 
 
 
Consequentemente, chamaremos de circuito lógico ao conjunto de portas 
lógicas e respectivas conexões que simbolizam uma equação booleana. 
02 
1.1 - Porta OU 
O símbolo da porta OU pode ser visualizado na figura abaixo. Da mesma forma que na porta E, as 
entradas são colocadas à esquerda e a saída, à direita. 
Note, ao observar a figura abaixo, que há duas e três entradas e apenas uma saída. Observe também 
que deverá haver no mínimo duas entradas, contudo haverá somente uma saída. 
Você deve estar lembrado do operador lógico E, então, o funcionamento da porta E segue esta mesma 
definição operação. 
 
03 
1.2 - PORTA E 
O símbolo da porta E é mostrado na figura abaixo. À esquerda estão dispostas as entradas (conforme já 
falamos, no mínimo duas e à direita, apenas uma saída. 
Podemos dizer que as linhas que conduzem as variáveis de entrada e saída simbolizam os fios que 
transportam os sinais elétricos associados às variáveis. 
O comportamento da porta E segue estritamente o que estudamos anteriormente sobre a tabela 
verdade. 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
21 
04 
1.3 - INVERSOR (NEGADOR OU PORTA INVERSORA) 
Relembrando o que estudamos, a porta que simboliza a operação complementação é chamada 
de inversor (negador ou porta inversora). 
Em virtude de a operação complementação ser apenas possível de realização sobre uma variável por vez 
ou sobre o resultado de umasubexpressão, consequentemente, o inversor só possui uma entrada e, 
claro, apenas uma saída. Então, se houver necessidade de complementar uma expressão, o primeiro 
passo será obter-se o seu resultado, para apenas então aplicar a complementação. 
O símbolo do inversor é mostrado na figura abaixo. 
 
05 
2 - EXEMPLO DE CIRCUITO LÓGICO 
Nosso objetivo até o momento é obtermos conhecimento suficiente para que, ao observar uma equação 
booleana qualquer, tenhamos capacidade de desenhar a implementação do circuito lógico. Vamos lá? 
Um circuito lógico tem por característica ser composto pelas portas lógicas relacionadas às operações 
realizadas sobre as variáveis de entrada. Então, os resultados das operações são conduzidos por meio de 
fios que representamos com a utilização de linhas simples. 
Os passos que devemos seguir para fazermos um desenho do circuito lógico tendo por base uma 
equação são similares aos usados na avaliação da expressão. Vamos usar como exemplo a equação (W= 
X + Y . Ž). O primeiro passo é identificar quais são as variáveis independentes, que neste exemplo são X, 
Y e Z. Para cada variável iremos traçar uma linha (observando que será da esquerda para a direita), estas 
linhas irão representar os fios que conduzem os sinais elétricos (valores). Logo depois vamos desenhar 
as portas necessárias para representar cada uma das subexpressões. Observe que há regras para a 
ordem tomada para a avaliação, que é: 
1o parêntesis (dos mais internos para os mais externos); 
2º operações E; 
3º operações OU. 
Na figura abaixo podemos ver o desenho do circuito lógico para a equação: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
22 
 
 
06 
3 - LEIS FUNDAMENTAIS E PROPRIEDADES DA ÁLGEBRA BOOLEANA 
Você já deve estar acostumado á seguinte expressão: “para tudo há regras ou leis”. Pois é, no mundo da 
álgebra booleana não é diferente, as leis da álgebra booleana tratam dos valores que uma variável pode 
assumir (espaço booleano) e as operações elementares deste espaço. As propriedades são deduzidas 
tendo por base as definições das operações. 
Vamos tomar como exemplo duas variáveis booleanas. Chamaremos de A e B. Vamos definir o espaço 
booleano tendo por base a figura abaixo: 
 
As operações elementares deste espaço são operação OU, operação E e complementação. 
As propriedades da álgebra booleana são as seguintes: 
 
07 
3.1 - TEOREMAS DE DE MORGAN 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
23 
Veremos agora dois teoremas do lógico e matemático britânico Augustus De Morgan que viveu no 
século XIX. Pedimos que você não fique assustado com as proposições dos teoremas, pois 
aparentemente eles são complexos, mas são base para o entendimento dos circuitos lógicos. 
Veremos que Augustus De Morgan diz em seu primeiro teorema que a complementação de um produto 
(lógico) equivale à soma (lógica) das negações de cada variável do referido produto. Tendo por base a 
Figura 01 vista anteriormente, observe como seria em forma de equação: 
 
No segundo teorema de De Morgan observamos que é chamado de dual (espelho ou contrário) do 
primeiro, sendo assim, ele diz que a complementação de uma soma (lógica) equivale ao produto das 
negações individuais das variáveis. Tendo por base a Figura 02 vista anteriormente, veja como seria em 
forma de equação: 
 
Particularizando os teoremas de De Morgan para duas variáveis. Tendo por base a Figura 03 e 04 vistas 
anteriormente, veja como seria em forma de equação: 
 
08 
3.2 - DERIVAÇÃO DE EXPRESSÕES BOOLEANAS 
Tendo por base uma função booleana, conforme sua tabela verdade, derivar uma expressão booleana 
para esta função é encontrar descrição por meio de uma equação. Então, entendemos que a derivação 
de expressões booleanas é o problema inverso da avaliação de uma expressão booleana, conforme 
vimos anteriormente. 
Existem basicamente duas maneiras para descrever uma função booleana: 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
24 
Toda e qualquer função booleana pode ser descrita tendo por base a soma de produtos ou por meio de 
produto de somas. Em virtude das funções booleanas só poderem assumir dois valores (0 ou 1), basta 
utilizar um dos dois métodos para encontrarmos uma equação para uma função. 
09 
3.3 - DERIVAÇÃO DE EXPRESSÕES USANDO SOMA DE PRODUTOS (SDP) 
Tendo por base uma função booleana que possui “n” variáveis ou “n” entradas, consequentemente 
poderá haver 2n (dois elevado a n) possibilidades de combinações de valores. Chamamos essas 
possibilidades de valores que as variáveis podem assumir, juntamente com os respectivos valores da 
função, de “espaço da função”. A cada combinação de entradas podemos associar um determinado 
termo produto, no qual todas as variáveis da função estarão presentes, e que é composto da seguinte 
maneira: 
• caso a variável correspondente tiver o valor 0 (zero), ela irá aparecer “negada”; 
• se a variável tiver o valor 1 (um), ela deve aparecer como “não negada”. 
Veja a tabela abaixo, na qual é possível observar os termos de produto associados a cada combinação de 
entradas para uma função booleana de três variáveis (A, B, C). 
 
Cada termo produto construído conforme a regra 
falada anteriormente é chamado 
de mintermo (também pode ser chamado 
de minitermo). 
Observe que, para determinado dado mintermo, 
caso substituirmos os valores das variáveis 
associadas, obteremos o valor 1 (um). Entretanto, 
se substituirmos nesse mesmo mintermo por 
qualquer outra combinação de valores, iremos 
obter o valor 0 (zero). 
Dessa maneira, caso queiramos encontrar a 
equação para uma função tendo por base sua 
tabela verdade, basta utilizar um “OU” entre os 
mintermos associados aos números um da função 
(conhecidos como: mintermos 1). 
10 
Tendo por base a tabela verdade abaixo, vamos encontrar a equação em soma de produtos (SdP) para a 
função: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
25 
 
Temos que F é uma função das variáveis A, B e C. Observamos que os valores para A, B e C quando F=1 
são (0,1,0), (0,1,1), (1,0,1) e (1,1,0). Agora os “mintermos” (mintermos 1) associados a essas condições 
são respectivamente: 
 
Então, a equação em soma de produtos para F será o OU entre estes produtos. Observe a figura abaixo: 
 
Tendo por objetivo simplificar a notação, o símbolo da operação E poderá ficar oculto. Desta maneira, a 
equação vista anteriormente ficaria mais enxuta e ser escrita da seguinte forma: 
 
11 
3.4 - DERIVAÇÃO DE EXPRESSÕES USANDO PRODUTO DE SOMAS (PDS) 
Agora vamos ver que o método de derivação usando produto de somas é o dual (oposto) do método de 
derivação em soma de produtos. Sendo que em cada combinação das variáveis de entrada de uma 
função é possível fazer associação a um termo soma, no qual todas as variáveis da função estão 
presentes e que é formado da seguinte maneira: 
• caso uma variável correspondente tenha o valor de 1 (um), ela deve aparecer como: “negada”; 
• caso a variável tenha o valor 0 (zero), ela deve aparecer como: “não negada”. 
A tabela abaixo faz uma lista dos termos soma associados a cada combinação de entradas para uma 
função booleana quando utilizamos 3 variáveis (A, B, C). 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
26 
 
Cada termo soma efetuado tendo por basea regra 
anteriormente falada é chamado 
de: maxtermo(maxitermo). 
Observe que, para um dado maxtermo, caso 
façamos a subtração dos valores das variáveis 
associadas, iremos obter o valor “0” (zero). Todavia, 
caso façamos a substituição nesse mesmo 
maxtermo com qualquer tipo de combinação de 
valores, iremos obter o valor 1 (um). 
Dessa maneira, caso queiramos encontrar a 
equação para uma função tendo por base a 
respectiva tabela verdade, basta utilizar um “E” 
entre os maxtermos associados aos valores zero da 
função que também podemos chamar de: 
maxtermos 0 (zero). 
12 
Por meio da tabela verdade abaixo iremos encontrar a equação em produto de somas (PdS) para a 
função F: 
 
Vamos utilizar a mesma função do exemplo anterior, para que possamos fazer comparações entre os 
dois métodos de derivação. Os valores das variáveis de entrada A,B,C para os quais F=0 são (0,0,0), 
(0,0,1), (1,0,0) e (1,1,1). Os maxtermos (maxtermos zero) associados a essas condições são 
respectivamente: 
 
Por consequência, a equação em produto de somas para F será o “E” entre estas somas: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
27 
 
 
 
13 
3.5 - FORMAS CANÔNICAS, PADRÃO E NÃO-PADRÃO 
Você deve ter observado que as representações em soma de produtos e em produto de somas seguem 
um padrão, por isso elas são chamadas de: formas padrão. 
A soma de produtos e o produto de somas que estudamos nos parágrafos anteriores apresentam ainda 
uma característica peculiar: todas as variáveis da função estão presentes em cada termo soma e em 
cada termo produto. Em virtude desta característica, essas formas são chamadas de: canônicas. 
Muito mais do que foi visto nas representações mostradas nos parágrafos anteriores, há representações 
alternativas e também mais enxutas para as expressões canônicas. Caso façamos associação para cada 
combinação das variáveis de entrada e ao seu equivalente em decimal, cada mintermo pode ser 
representado por mi, onde i é o decimal associado. De forma parecida, cada maxtermo pode ser 
representado por Mi, onde i é o decimal associado. Na tabela abaixo temos uma listagem de todos os 
mintermos e maxtermos tendo por base uma função com três variáveis: A, B , C). 
 
14 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
28 
Retornando à função F que utilizamos como exemplo nos parágrafos anteriores, podemos refazer a 
expressão em soma de produtos, na forma canônica, como o seguinte: 
 
Podemos deixar esta expressão mais enxuta usando o símbolo de somatório (∑); vamos lá: 
 
Uma expressão em produto de somas, na forma canônica, podemos reescrever da seguinte forma: 
 
Podemos, também, deixar esta expressão mais enxuta utilizando o símbolo de produto (∏); vamos lá: 
 
Você deve ter notado que mesmo as representações canônicas sendo práticas, elas são pouco úteis 
quando o assunto é a implementação de circuitos digitais. O número de portas lógicas e conexões de um 
circuito lógico depende diretamente do número de operações booleanas (E, inversão, OU) contidas na 
expressão associada. Sendo assim, é mais prático a redução do número de operações contidas numa 
função, de tal maneira poder implementar utilizando circuitos lógicos mais simples, e por consequência, 
de custo mais reduzido. 
 
 
A diminuição da quantidade de operações é alcançada por meio da eliminação de 
literais da expressão, utilizando as propriedades da álgebra booleana descritas nos 
parágrafos anteriores. Podemos dizer que um “literal” pode ser uma “variável negada” 
ou uma “variável não negada”. Chamamos de simplificação o processo de redução de 
literais ou de redução de operações, equivalentemente. 
 
15 
Vamos agora usar exemplos para entendermos os passos básicos para a simplificação algébrica (literal) 
de expressões booleanas. Vamos utilizar uma expressão canônica, em soma de produtos, para uma dada 
função F: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
29 
 
A primeira observação que precisamos fazer é a identificação dos pares de “mintermos” que se 
diferenciam por apenas um literal, a fim de aplicar a propriedade (14). Os mintermos A C B e ABC , por 
exemplo, possuem os mesmos literais, exceto pela variável C: no primeiro, o literal é C , enquanto no 
segundo, o literal é C. Então, conforme a expressão abaixo que exemplifica que a propriedade 
Distributiva diz “da multiplicação em relação à adição”: 
 
Tendo por base esta propriedade podemos fatorar esses dois mintermos, tendo como resultado a 
expressão abaixo: 
 
Então pela propriedade Distributiva temos que C + C= 1 . Então, substituindo na expressão acima, 
obtemos: 
 
Pela propriedade da multiplicação lógica onde A . 1 = A podemos substituir e obtemos: 
 
Então, por meio da manipulação algébrica, iremos obter uma expressão em soma de produtos mais 
enxuta em comparação à mesma expressão em soma de produtos na forma canônica, em virtude da 
redução do número de operações e também de literais. 
Os símbolos utilizados para representar a operação complementação sobre uma variável Booleana A é o 
“-“ na parte superior da letra, exemplo: Ž. 
Observe a equação: 
 
Diferente do que é possível ver na equação acima, poderá haver situações que um mintermo ser . 
Neste caso ele poderia ser agrupado com o mintermo ABC, pois os dois possuem os mesmos literais, 
exceto pela variável A (A no primeiro e A no segundo). É muito natural que os passos que foram 
seguidos seriam os mesmos falados anteriormente. Sendo assim, a equação resultante seria um pouco 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
30 
diferente, mas com a mesma quantidade de operações, sendo, por conseguinte, da mesma 
complexidade. Realmente, a melhor maneira seria se fosse possível agrupar o mintermo A C B com o 
mintermo ABC e ao mesmo tempo com o mintermo ABC . Por sorte, a propriedade “Da adição lógica” da 
álgebra booleana diz que (A + A = A); então o “OU” entre duas ou mais variáveis booleanas iguais é igual 
a própria variável booleana. Saiba + 
Fazendo uma ampliação desta propriedade, podemos falar que o “OU” entre duas ou mais funções 
(também os produtos) booleanas iguais é equivalente à própria função booleana. Desta maneira, 
podemos expandir o mintermo para: 
 
Esta manipulação algébrica é decorrente da propriedade “adição lógica” da álgebra booleana que afirma 
que (A + A = A). 
Saiba + 
Os símbolos utilizados para representar a operação de complementação sobre uma variável Booleana é 
o “ ¯ “ na parte superior da letra, por exemplo: E. Na explicação desta equação é possível entender que 
ABC e ACB são diferentes, pois possuem os mesmos literais que é a letra “A” (um “literal” pode ser uma 
“variável negada” ou uma “variável não negada”). O traço na parte superior é o indicativo. 
 
 
16 
Utilizando novamente a expressão: 
 
Também utilizando a expressão: 
 
Observando as duas expressões acima e por meio da propriedade “adição lógica” da álgebra booleana 
que afirma que (A + A = A), Consequentemente, notamos que as expressões acima são equivalentes, 
embora o mintermo apareça duplicado. E pelo fato de aparecer duas vezes, pode-se usar uma 
cópia de para simplificar com e outra para simplificar com . 
Para obter a simplificação vamos utilizar a propriedade Distributiva (da multiplicação em relação à 
adição) onde “A . (B + C) = A . B + A . C” então: 
102 – Arquiteturade computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
31 
 
Vamos simplificar utilizando a propriedade da multiplicação lógica onde “A . 1 = A” 
 
17 
Agora ao final vamos utilizar a propriedade da “adição lógica” da álgebra booleana que afirma que (A + 
A = A): 
 
Observe que o mintermo não pôde ser agrupado com outro mintermo. Veja também que 
utilizamos das simplificações possíveis, uma vez que foram agrupados e simplificados todos os pares de 
mintermos que se diferenciam de somente uma variável. Consequentemente, a última expressão acima 
é uma mostra da máxima simplificação possível sob a forma de soma de produtos. É em virtude disso 
que esta expressão é chamada de equação mínima em soma de produtos da função F. 
Ao voltarmos a falar sobre a expressão que foi simplificada: 
 
Dizemos que esta equação foi apenas simplificada, isto difere e ao mesmo tempo evidencia que toda 
equação mínima é simplificada, contudo, nem toda equação que foi simplificada é necessariamente 
mínima. 
18 
4. CIRCUITOS LÓGICOS PARA FORMAS PADRÃO E NÃO-PADRÃO 
Durante o desenvolvimento do estudo deste módulo, vimos as regras gerais para se realizar o desenho 
de circuitos lógicos. Neste parágrafo iremos ver as seguintes regras que devem ser observadas, com o 
intuito de facilitar a compreensão do desenho: 
• variáveis de entrada precisam ser identificadas de modo preferencial à esquerda, ao lado aos 
respectivos fios; 
• na equação os inversores devem ser inseridos para as variáveis que aparecem negadas; 
• conforme a ordem de avaliação os operadores as portas que implementam as operações booleanas 
devem aparecer na equação posicionados da esquerda para a direita. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
32 
No caso de equações canônica ou simplificada, ou chamadas de soma de produtos, há um primeiro nível 
(desprezando possíveis inversores), provido somente por portas “E”, sendo cada porta “E” uma 
implementação dos produtos da equação. Existe ainda um segundo nível, composto por uma 
porta “OU”, responsável pela “soma” lógica dos produtos. 
19 
Tendo por base a equação abaixo, vamos criar um possível circuito lógico. 
 
Vamos agora ver como seria o circuito lógico tendo por base a equação acima, veja que em todas as 
interseções de fios em que há ligação física, deve também haver um ponto (com tamanho razoável), 
como se fosse uma “solda”. Então, quando não existe o referido ponto na interseção de fios, significa 
que estes fios estão “eletricamente isolados”. Vamos ver: 
 
Circuito Lógico 01 
O circuito pode também ser desenhado por meio de uma notação simplificada para os inversores das 
entradas. Para isso, ao invés de fazer um desenho de um inversor para cada variável que aparece 
negada na equação, é colocado um círculo junto a cada entrada de cada porta na qual há uma variável 
negada. Podemos ver que a aplicação desse procedimento para o circuito da figura acima terá como 
resultado o seguinte desenho: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
33 
 
Circuito Lógico 02 
No caso das equações que possuem a forma produto de somas, também conhecida como canônica ou 
simplificada, vemos que o primeiro nível será constituído por portas OU, sendo que cada porta 
responsável por uma das “somas” lógicas da equação. Continuando e chegando ao segundo nível, 
vemos que é constituído por uma porta E, que irá realizar o produto lógico das parcelas. 
20 
Tomemos por base a expressão lógica abaixo: 
 
Esta equação irá gerar o seguinte circuito lógico: 
 
Circuito Lógico 03 
Em virtude da constatação de apresentarem apenas dois níveis de portas ou dois níveis lógicos, circuitos 
para equações que são representadas nas formas padrão, canônicas ou simplificadas, são chamados 
de: circuitos em dois níveis ou lógica a dois níveis. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
34 
 
21 
Vamos observar a seguinte equação, que é a fórmula mínima para o circuito lógico abaixo: 
 
Esta equação servirá para criar o seguinte circuito lógico: 
 
Circuito Lógico 04 
Observe que este circuito é de menor complexidade que os circuitos que vimos anteriormente. A 
complexidade relativa de um circuito lógico é calculada ao somarmos o número de entradas das portas. 
Nos circuitos que vimos anteriormente notamos a presença de quatro portas de três entradas e uma 
porta de quatro entradas. Consequentemente, a complexidade relativa será: 4x3+1x4=16. No circuito da 
figura acima visualizamos duas portas de duas entradas e duas portas de três entradas. Então podemos 
dizer que a complexidade relativa será 2x2+2x3=10. Fica evidente que o circuito da figura acima possui 
menor complexidade em relação aos circuitos vistos anteriormente. 
22 
Os circuitos para formas fatoradas são vistos como o caso mais generalista. Geralmente, as formas 
fatoradas nos levam a circuitos em que o número de níveis lógicos é maior do que 2. Em virtude disso, 
os circuitos lógicos para formas fatoradas são chamados de circuitos multinível ou também lógica 
multinível. 
Estudamos, anteriormente, que às vezes uma forma fatorada apresenta um menor número de 
operações em relação à respectiva forma padrão. Quando isso ocorre, o circuito associado à forma 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
35 
fatorada também terá menor complexidade relativa. Contudo, caso não haja redução no número de 
operações, mesmo assim é possível que o circuito para a forma fatorada tenha menor complexidade 
relativa, pois o conceito de complexidade relativa inclui também o número de entradas de cada porta. 
Sendo assim, a forma mais segura e objetiva de saber se o circuito associado à forma fatorada possui 
menor complexidade ou não é fazer um desenho e somar o número de entradas. 
 
Circuito Lógico 05 
 
Circuito Lógico 06 
A figura acima mostra o circuito para a seguinte equação: 
 
Observe que o número de operações booleanas desta equação é quatro. Entretanto, a complexidade do 
circuito da forma fatorada é 3x2+1x3=9, consequentemente é menor do que a complexidade do circuito 
2.5. 
23 
RESUMO 
Neste módulo tivemos a oportunidade de verificar a importância das portas lógicas e sua utilidade. 
Conhecemos as Leis Fundamentais e Propriedades da Álgebra booleana e com este conhecimento 
entendemos a importância da teoria para a fundamentação do conhecimento. Tivemos a oportunidade 
de, por meio de equações booleanas, criarmos um Circuito Lógico e vermos a complexidade da 
interação dos componentes de um sistema computacional. 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
36 
UNIDADE 2 – FUNCIONAMENTO DOS CIRCUITOS COMBINACIONAIS E SEQUENCIAIS 
MÓDULO 3 – CIRCUITO COMBINACIONAL 
01 
1- TIPOS DE CIRCUITOS 
Neste módulo teremos a oportunidade de estudar o que são os circuitos sequencial e combinacional. 
Você compreenderá que a partir de um circuito combinacional podemos criar uma tabela de condição e 
notação. Ao final falaremos sobre circuitos combinacionais de interconexão que têm a responsabilidade 
pelas operações lógicas e aritméticas em um sistema digital (computador). 
Como já falamos nos módulos anteriores, nos sistemas digitais, os circuitos lógicos podem ser de dois 
tipos: 
• circuitos sequenciais e 
• circuitos combinacionais.Os componentes de um circuito sequencial são: 
• circuito combinacional e 
• elementos de memória. 
Estão conectadas somente ao circuito combinacional as entradas e as saídas do circuito sequencial. 
Os elementos de memória são circuitos com capacidade de armazenamento de informação 
codificada em binário. 
Interessante observar que algumas das saídas do circuito combinacional são entradas para os elementos 
de memória, recebendo o nome de: variáveis do próximo estado. 
Consequentemente, as saídas dos elementos de memória constituem parte das entradas para o circuito 
combinacional e recebem o nome de: variáveis do estado atual. 
As ligações ou conexões entre o circuito combinacional e os elementos de memória são geralmente 
chamados de laço de realimentação, em virtude da saída de um bloco ser a entrada para o outro e vice-
versa. 
02 
A informação guardada nos elementos de memória em um determinado instante evidencia em que 
estado está o circuito sequencial. O circuito sequencial recebe informação de forma binária das entradas 
que, juntamente com a informação do estado atual, vão determinar os valores das saídas e os valores 
do próximo estado. Sendo assim, fica explícito que as saídas de um circuito sequencial não dependem 
apenas das entradas, dependem também do estado atual, guardado nos elementos de memória. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
37 
Podemos dizer o mesmo sobre as variáveis de próximo estado. Em função deste comportamento 
sequencial, um circuito sequencial é especificado pela sequência temporária de entradas, saídas e 
estados internos. 
Observe a figura abaixo que mostra um circuito sequencial. 
 
Circuito Sequencial 
03 
Um circuito combinacional constitui-se por um conjunto de portas lógicas, as quais determinam os 
valores das saídas diretamente tendo por base os valores atuais das entradas. 
Podemos dizer que no circuito combinacional é realizada uma operação de processamento da 
informação, que poderá ser detalhada utilizando-se um conjunto de equações booleanas (0 ou 1 / V ou 
F / Sim ou Não / Y ou N). No caso, cada maneira de combinar os valores de entrada poderá ser vista 
como um resultado diferente e cada grupo de valores de saída representam o resultado da operação. 
Podermos observar, na figura abaixo, um diagrama de blocos (ilustrativo) de um circuito combinacional. 
 
04 
Para fazermos uma análise de um circuito combinacional é preciso entendê-lo e determinar qual será o 
seu comportamento. Consequentemente, tendo por base um diagrama qualquer de um determinado 
circuito, procura-se encontrar equações que podem descrever suas saídas. Conseguindo encontrá-las 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
38 
(equações), poderemos conseguir uma “tabela verdade”, caso venha ter necessidade. Será de suma 
importância checar se o circuito é combinacional e não sequencial. 
 
Diagrama genérico de um circuito sequencial segundo o modelo de Mealy 
05 
Uma maneira eficiente para conseguir determinar as equações que descrevem as saídas de um circuito 
combinacional será possível observar abaixo: 
1. Nomear as variáveis associadas a cada saída de cada porta do circuito, exceto aquelas saídas que já 
possuem um nome (exemplo: as saídas do circuito); 
2. Tendo como orientação a esquerda, e seguindo uma ordem de precedência determinada pelas 
ligações, escolher as equações associadas a cada variável, até que as equações de todas as saídas 
tenham sido encontradas. 
Conseguindo determinar as equações das saídas, a montagem da tabela verdade será direta, havendo 
uma coluna para cada saída. 
Vamos reforçar o conceito do que é um circuito combinacional? 
Então podemos dizer que um circuito combinacional é todo circuito cuja saída tem 
dependência direta das várias combinações das variáveis de entrada. 
Por meio do estudo desses circuitos, iremos conseguir entender o funcionamento de circuitos 
somadores, somadores completos, subtratores, codificadores, decodificadores, circuitos que executam 
prioridades, dentre outros circuitos que são utilizados na arquitetura (construção) de computadores ou 
sistemas digitais. 
Para construir um circuito, como já falamos anteriormente, é necessário conhecer sua expressão 
característica. 
Uma maneira eficiente de construir a expressão de um problema consiste em 
construir a tabela verdade para cada situação do problema para, em seguida, 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
39 
obter a expressão. 
Observe a figura abaixo e veja uma sequência para construção de uma expressão. 
 
 
Variável 
 
Em um programa de computador, uma variável é um objeto (uma posição, geralmente localizada na 
memória) capaz de armazenar e representar um determinado valor ou uma expressão. 
 
06 
O que você acha de fazermos um exemplo utilizando duas variáveis para melhor compreender como 
funciona um circuito? Então vamos observar a figura abaixo para iniciarmos: 
 
Iremos utilizar a figura acima, que representa um cruzamento de ruas em uma cidade, para melhor 
compreender o funcionamento de um circuito combinacional. Nesta cidade, há a necessidade de 
instalação de semáforos automatizados para controle do fluxo dos carros nas ruas A e B. Na figura acima 
vemos a representação do cruzamento das ruas A e B, cada rua com o seu respectivo semáforo. A rua 
“B” tem o semáforo 2 e a rua A, que é preferencial, tem o semáforo 1. As seguintes características 
devem ser observadas para automatização dos semáforos: 
1- Quando houver carros trafegando somente na rua B, o semáforo 2 deverá permanecer “verde” para 
os carros trafegarem livremente. 
2- Da mesma maneira, quando houver carros trafegando somente na rua A, o semáforo 1 deverá 
permanecer “verde”. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
40 
3- Quando houver carros trafegando em ambas as ruas, o semáforo da rua A deve ficar “verde”, pois é a 
rua preferencial. 
07 
2- TABELA CONDIÇÃO/NOTAÇÃO 
Tendo por base as características apresentadas para automatizar os semáforos, então iremos criar um 
circuito lógico para solucionar esta situação, mas antes de mais nada, iremos criar uma expressão. 
Contudo, vamos visualizar a figura abaixo (Tabela Condição/Notação) para entendermos as condições e 
então estabelecermos uma notação. 
 
Observe na figura anterior (Tabela Condição/Notação), na qual para cada condição há uma notação. 
Veja que a lógica booleana está sendo usada. Exemplo: existência de carro na rua A, então a variável A 
receberá o valor 1, A = 1. Inexistindo carro na rua A, então a variável A receberá = 0. Relembrando: 0 e 1, 
podemos utilizar o numeral “1” para indicar que está ligado, e numeral “0” para indicar que está 
desligado. 
08 
Tendo por referência o que estudamos até agora, vamos montar uma tabela verdade com cada 
situação, podemos assim analisar cada situação. Veja na figura abaixo que começamos com a situação O 
(zero). Vamos lá. 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
41 
Observando a figura acima, vamos iniciar com a situação 0. Conforme falamos no início, esta situação 
representa que não há veículos nas ruas (A=0 e B=0). Desta forma, não é importante qual sinal 
permaneça aceso. Nestas situações, também chamadas de irrelevantes, utiliza-se o símbolo Ø para 
indicar que as variáveis podemassumir tanto o valor “0” ou o valor “1”. 
 
Observando a situação 1, notamos que a variável B recebeu o valor 1 (B=1). Esta situação representa a 
presença de veículos na rua B e que não há veículos na Rua A. Então, conforme a regra estabelecida, é 
preciso acender o sinal verde do semáforo 2 para a rua B. Note, também, que R1 está ligado (1) 
indicando que o sinal vermelho do semáforo 2 (rua A) está aceso (ligado) na para quem trafega na Rua 
A. Lembre-se de também observar a figura (Tabela Condição/Notação) para relembrar a dinâmica do 
tráfego. 
09 
Veja a situação 2. 
 
Note a representação da presença de veículos na rua A (A=1) e a inexistência de veículos na Rua B (B=0). 
Então, torna-se necessário acender o sinal verde na rua A e o sinal vermelho no semáforo 2 (Rua B). 
 
Observando a situação 3, verificamos a representação da presença de veículos em ambas as ruas. Nesta 
situação, o sinal verde para a rua A deve permanecer aceso, pois ela é preferencial. Consequentemente, 
na rua B o semáforo estará vermelho (sinal vermelho). 
10 
Observe a situação 0. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
42 
 
Há saídas que convencionamos chamar de “irrelevantes”, uma vez que não importa qual sinal 
permanece aceso, então, pode-se omitir o que estiver com o símbolo Ø, e deixar a tabela apenas com os 
0 e 1. Então, é possível entender o porquê do sinal 2 permanecer aceso no verde. Veja a tabela verdade 
abaixo com os valores preenchidos. 
 
Durante a construção das tabelas verdade, tomemos por base a situação 0, com saídas irrelevantes, em 
que é indiferente qual sinal permanece aceso. Consequentemente, é possível adotar que o verde do 
sinal 2 (semáforo 2 da rua B) permaneça aceso. 
Então, vamos escrever uma tabela verdade com novos valores preenchidos para a situação 0, 
lembrando que cada saída, G1, R1, G2, R2 terá um circuito independente. Veja, a seguir, como fica. 
11 
Iniciando pela escrita da expressão de G1, em quais situações G1 acende? 
 
Antes de iniciarmos, é importante consultar a tabela verdade. 
Iniciando pela escrita da expressão de G1, em quais situações G1 acende? 
Resposta: nas situações 2 OU 3 
Veja resolução da situação 2 
Veja resolução da situação 3 
Como se tem G1=1 na Situação 2 OU (OR) Situação 3, uma porta OU contendo as expressões tanto da 
situação 2 quanto da situação 3 resultará no valor 1 nesses casos, que representa a situação referente 
ao verde aceso do semáforo 1, consequentemente a expressão seria a seguinte: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
43 
 
G1 = + A.B 
 
Tabela verdade 
 
Lembre-se de que, em qualquer bloco (porta ou função) lógico somente dois estados (0 ou 1) são 
permitidos em suas entradas e saídas. Vale a pena rever aqui algumas formas de representação de 
blocos: 
E (AND) 
OU (OR) 
NÃO (NOT) 
NÃO E (NAND) 
NÃO OU (NOR) 
OU EXCLUSIVO (XOR) 
 
 
 
 
Resolução da situação 2 
 
Na situação 2 o preenchimento da equação é: 
Quando G1=1 quando A = 1 e B = 0, ou seja, A = 1 E = 1 
Usando uma porta E, é possível escrever G1=1 quando A . =1 
 
 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
44 
Resolução da situação 3 
Na situação 3 seria: 
Quando G1=1 (verde do sinal 1 aceso) quando A = 1 e B = 1 
Portanto, G1=1 quando A.B =1 
 
 
12 
Agora, em quais situações R1 (vermelho do sinal 1 aceso) acende? 
Resposta: nas situações 0 OU 1 
Veja resolução da situação 0 
Veja resolução da situação 1 
Como se tem R1=1 na situação 0 OU situação 1, uma porta contendo as expressões tanto da situação 0 
quanto da situação 1 resultará no valor 1 nesses casos, que representa a situação referente ao vermelho 
aceso do semáforo 1 
 
 
 
Escreva as expressões quando 
• G2 = 1 
• R2 = 1 
G2 = 1 nas situações 0 OU 1 
• Situação 0: = 1 
• Situação 1: = 1 
Portanto: 
 
 
R2= 1 nas situações 2 OU 3 
• Situação 2: = 1 
• Situação 3: = 1 
Portanto: 
 
 
 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
45 
 
 
 
Veja resolução da situação 0 
 
Situação 0: 
R1=1 quando A = 0 e B = 0, ou seja, = 1 e = 1 
Usando uma porta E, é possível escrever R1=1 
quando . =1 
 
 
Resolução da situação 1 
 
Situação 1: 
R1=1 quando A = 0 e B = 1 
Portanto, R1=1 quando .B =1 
 
 
13 
Com o intuito de ilustração, veja abaixo uma representação das equações e do circuito lógico. 
 
14 
3- Circuito combinacional 
Dando continuidade ao nosso estudo sobre arquitetura de organização de computadores, veremos o 
que é um circuito combinacional. Cabe ressaltar que o autor Willian Stallings chama circuito 
combinacional de circuitos combinatórios. Também teremos a oportunidade de estudar os tipos de 
circuitos combinacionais e o que seja o projeto de um multiplicador e de um decodificador. Vamos 
começar nosso estudo. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
46 
No livro Arquitetura e Organização de Computadores, o autor Willian Stallings define que: 
 
Um circuito combinatório consiste em uma interconexão de portas 
lógicas (ou circuitos lógicos, dispositivos que operam um ou mais sinais 
lógicos de entrada para produzir uma e somente uma saída, dependente da 
função implementada no circuito). 
Portas lógicas são geralmente usadas em circuitos eletrônicos, em virtude das situações que os sinais 
deste tipo de circuito apresentem para presença de sinal o valor "1"; e a ausência de sinal "0". As 
situações chamadas de "Verdade" e/ou "Falso" são estudadas na lógica de Boole (lógica matemática), 
que é a origem do nome destas portas. 
A maneira de como é o comportamento das portas lógicas é conhecido pela tabela verdade, que 
apresenta os estados lógicos das entradas e das saídas. Desta forma, como em uma porta simples, a 
alteração de sinais de entrada é quase imediatamente seguida pela alteração correspondente no sinal 
de saída, apenas com retardo devido à transmissão de sinais por meio das portas do circuito. 
Portas lógicas 
 
As portas lógicas são circuitos eletrônicos que operam com um ou mais sinais de entrada de forma a 
produzir um sinal de saída. Uma vez que computador digital processa informações como um conjunto 
de sinais elétricos que podem ser considerados para representar valores binários onde um 
determinado valor pode ser interpretado como zero ou um. 
 
15 
Em termos gerais, um circuito combinatório consiste de n entradas binárias em m saídas binárias. Assim 
como uma porta, um circuito combinatório pode ser definido de três formas: 
 
No início da eletrônica, para ter uma solução para os problemas, utilizavam-se os sistemas analógicos. 
Com a evolução da tecnologia, os problemas passaram a ser resolvidos pela eletrônica digital. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
47 
Na eletrônica digital, os sistemas (computadores pessoais, processadores, codificadores, 
decodificadores etc.) empregam um grupo pequeno de circuitos lógicos básicos, que são conhecidos 
como portas (e, ou, não e flip-flop). Com a utilização adequada dessas portas tem-se a possibilidade de 
implementação das expressões geradas pela álgebra booleana. 
Sistemas analógicos 
 
Dispositivos que manipulam quantidadesfísicas sob a forma analógica. Nestes sistemas, as 
quantidades variam continuamente dentro de uma faixa de valores. Exemplo de equipamentos 
analógico: videocassete. 
 
16 
Vale lembrar que, na álgebra de Boole ou Booleana, existem apenas dois estados (valores ou símbolos) 
que são permitidos, sendo o estado 0 (zero) e o estado 1 (um). 
 
Sendo assim, na álgebra de Boole ou booleana, se representarmos por 0 uma situação, a situação 
contrária é representada por 1 e assim por diante. 
Consequentemente, em qualquer bloco (porta ou função) lógico somente esses dois estados (0 ou 1) 
são permitidos em suas entradas e saídas. Vale a pena rever aqui algumas formas de representação de 
blocos: 
E (AND) 
OU (OR) 
NÃO (NOT) 
NÃO E (NAND) 
NÃO OU (NOR) 
OU EXCLUSIVO (XOR) 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
48 
 
Tabela Verdade 
17 
Para fixar bem esse assunto e compreender melhor o conceito de portas lógicas e tabela verdade, 
assista ao vídeo a seguir. 
https://www.youtube.com/watch?v=17JHVZuK36A 
18 
4- CIRCUITOS COMBINACIONAIS DE INTERCONEXÃO 
Os circuitos combinacionais têm a responsabilidade pelas operações lógicas e aritméticas em um 
sistema digital (computador). Estes circuitos fazem muito mais que apenas operações lógicas e 
aritméticas, há ainda outras funções necessárias para a realização de ligações entre os diversos 
operadores. Dentre essas funções há: 
• a multiplexação e 
• a decodificação. 
Os responsáveis por realizar essas operações são denominados multiplexadores e decodificadores, 
respectivamente, e são também circuitos combinacionais. 
4.1 - DECODIFICADORES 
 
Um decodificador é um circuito combinacional usado para ativar ou habilitar 
um (e somente um) dentre mcomponentes. Assume-se que cada componente 
tem um índice entre 0 e m-1, representado por um endereço em binário. Um 
decodificador n : m (lê-se n por m ) possui n entradas e m saídas, com m ≤ 2n. 
 
19 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
49 
No caso de um decodificador 3:8 (n =3 : m =8), serão 8 saídas, onde cada saída pode ser vista como um 
diferente endereço. Para ativar uma dentre 8 saídas, são necessárias 3 variáveis de entrada (por isso 
3:8). Cada arranjo das variáveis de entrada seleciona uma e apenas uma dentre as 8 saídas, de tal 
maneira que cada saída apenas será selecionada por um dos 8 arranjos. Desta maneira, é presumido 
que se associe a cada saída um índice decimal que represente o arranjo de entradas responsável pela 
sua ativação. 
Tendo por base a ativação em lógica direta, sendo assim, uma saída está ativada quando seu valor é 1, 
então uma tabela verdade para um decodificador 3:8 poderia ser conforme a figura abaixo: 
 
Observe que uma saída terá o valor 1 para um determinado arranjo das variáveis de entrada. Para cada 
combinação de entrada só é ativada uma dentre todas as 8 saídas. O circuito de um decodificador 3:8 
terá, portanto, 8 saídas, sendo cada saída um dentre os 8 termos possíveis para uma função Booleana 
de 3 variáveis. 
20 
Um decodificador pode vir a possuir uma entrada de enable (habilitação). Esta entrada tem a função de 
habilitar ou desabilitar seu funcionamento. Assim, se esta entrada tiver o valor 0, nenhuma saída estará 
ativada, independente dos valores das demais entradas. Caso a entrada de habilitação tiver o valor 1, o 
decodificador estará ativando uma das saídas. 
Na figura abaixo há uma tabela verdade de um decodificador 2:4: 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
50 
Como pode ser visto nas primeiras 4 linhas, o sinal de habilitação (E) vale zero, o que desativa as saídas, 
independentemente dos valores das demais entradas (A1e A0). 
21 
Poderemos escrever novamente esta tabela de uma maneira mais enxuta, escrevendo em uma linha 
que, quando E=0, os valores das entradas A1 e A0 não interessam (=don’t cares de entrada): 
 
Figura A 
 
 
 
 
Figura B 
Nas figuras acima, observamos na figura A uma tabela para esse decodificador e na figura B visualiza-se 
uma possível implementação (circuito lógico). 
22 
Resumo 
Neste módulo tivemos a oportunidade de estudarmos juntos a importância do entendimento do que 
seja um circuito sequencial e um circuito combinacional. Vimos que em especial o circuito 
combinacional é constituído por um conjunto de portas lógicas, as quais determinam os valores das 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
51 
saídas diretamente tendo por base os valores atuais das entradas. Você compreendeu, ao relembrar da 
importância da lógica booleana, que é a partir de um circuito combinacional que podemos criar uma 
tabela de condição e de notação. 
UNIDADE 2 – FUNCIONAMENTO DOS CIRCUITOS COMBINACIONAIS E SEQUENCIAIS 
MÓDULO 3 – CIRCUITO SEQUENCIAL 
01 
1 - CIRCUITO SEQUENCIAL 
Dando continuidade ao nosso estudo sobre arquitetura de organização de computadores, neste módulo 
vamos entender o que é um circuito sequencial, conhecer os principais tipos de circuitos sequenciais e o 
circuito equivalente a partir de uma expressão lógica. Também durante o estudo deste módulo iremos 
definir o que seja circuito sequencial, quais os tipos de flip-flops e entendermos o que é uma memória. 
Para começarmos a definir um circuito sequencial, precisamos relembrar que os circuitos combinatórios 
implementam as funções básicas de um computador digital. Contudo, exceto no caso especial da ROM, 
eles não disponibilizam informação de estado ou memória, elementos também essenciais para a 
operação de um computador digital. Para esse fim, utiliza-se uma forma mais complexa de circuito 
lógico digital, conhecido por circuito sequencial. 
A saída corrente de um circuito sequencial tem dependência não somente da entrada corrente, também 
tem de valores anteriores da entrada. Outra maneira, e normalmente mais útil, de visualizar esses 
circuitos é que a saída corrente de um circuito sequencial depende da entrada corrente e do estado do 
circuito. 
 
Isso quer dizer que, para se obter o próximo estado do sistema (circuito sequencial), é necessário 
lembrar-se do estado atual (em outros termos, o caminho que me leva à sala depende do lugar na casa 
onde estou). Significa que o sistema necessita possuir memorizar o estado atual para alcançar o estado 
seguinte. A lição disso é que o circuito sequencial necessita de elementos de memória. 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
52 
ROM 
 
Read-Only Memory (ROM), que em português quer dizer “Memória de Apenas Leitura”. 
Basicamente, a função da memória ROM é oferecer dados apenas para leitura. Normalmente, a ROM 
é utilizada para armazenar firmwares, pequenos softwares que funcionam apenas no hardware para 
o qual foram desenvolvidos e que controlam as funções mais básicas do dispositivo. Na ROM de uma 
calculadora, por exemplo, podemos encontrar as rotinas matemáticas básicas. No caso de celulares, 
o normal é que as ROMs carreguem o sistema operacional e os softwares básicos do dispositivo. 
 
02 
Dentre os tipos mais conhecidos de circuito sequencial, iniciaremos pela forma mais básica, que é o flip-
flop. Há uma variedade de flip-flops, todos compartilhando duas características: 
1- O flip-flop é um dispositivo biestável. Existe em 1 de 2 estados estáveis e, 
na falta de sinal de entrada,permanece nesse estado. Portanto, o flip-
flop funciona similarmente a uma memória de 1 bit. 
2- O flip-flop tem duas saídas, que geralmente possuem valor complementar 
uma da outra. Essas saídas são normalmente rotuladas de: Q e 
 
No intuito de exemplificar, é possível visualizar na 
figura uma configuração comumente reconhecida 
como flip-flop S-R ou latch S-R. Este circuito possui 
duas entradas, S (Set -) e R (Reset), e duas saídas, Q 
e , e consiste de duas portas NOR (NÃO OR), 
conectadas de forma que a saída retorna como 
entrada para a outra. 
Inicialmente, observe por que esse circuito é 
biestável, ou seja, tem dois estados. Imaginemos 
que tanto R quanto S tenha valor zero (0) e 
que Q também tenha o valor zero (0). 
 
 
As entradas da porta NOR inferior são Q=0 e S=0. Portanto, a saída =1 isto tem o significado que as 
entradas para a porta NOR superior são =1 e R=0, o que terá como saída Q = 0. Desta maneira, o 
estado do circuito é coerente internamente, e permanece estável desde que S = R = 0. Um raciocínio 
análogo mostra que o estado Q = 1, = 0 também é estável, para R = S =0. 
 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
53 
Flip-flop 
 
Um flip-flop é um circuito básico que armazena um bit de informação. 
 
03 
Agora vamos abordar a memória. Antes de qualquer coisa é preciso entender que a maioria dos 
dispositivos ou circuitos possuem dois estados estáveis, chamados de biestável. Uma lâmpada pode 
estar ligada ou desligada, dependendo da posição do interruptor. Determinado circuito poderá fazer uso 
de um componente que armazene (memória) sobre o estado que se encontra (ligado ou desligado), 
permanecendo em um estado definido até que alguém ou algo mude este estado. Quando um sinal de 
entrada é aplicado num dispositivo, a saída muda em resposta à entrada. Quando o sinal de entrada é 
retirado, a saída volta ao seu estado original. Este dispositivo não mostra a propriedade de memória, em 
virtude de sua saída voltar ao estado anterior. 
Há dispositivos e circuitos digitais que possuem memória. Esta característica faz que, ao receberem 
determinado sinal de entrada, esta informação fique guardada na memória. A saída desta informação da 
memória poderá mudar seu estado ou não, podendo inclusive permanecer o valor da entrada mesmo 
após a entrada ter sido retirada. 
 
Sendo assim, chama-se de memória a propriedade de reter sua resposta a 
uma entrada momentânea. Consequentemente, memória é todo dispositivo 
que mantém indefinidamente uma informação ao longo do tempo. 
Ao mencionar dispositivos com capacidade de memória, lembramos geralmente da mente humana e 
dos processadores digitais, entretanto, há vários tipos de memória. Pode parecer estranho e 
provavelmente você já sabe, mas os livros, fotos, CDs e DVDs de música são também dispositivos de 
memória. Até coisas simplórias podem ter a função de memória. Alguns historiadores dizem que o 
famoso Einstein usava uma caneta no bolso do lado esquerdo ou direito para poder lembrar se já havia 
ou não almoçado. 
04 
Nos sistemas digitais que têm por base a lógica combinacional, os estados de suas saídas são 
dependentes apenas dos estados presentes (agora) das entradas, logo, estes sistemas não conseguem 
lidar com a variável tempo e perceber sequências de eventos, portanto, não têm capacidade de resolver 
qualquer problema que envolva a noção de tempo. 
Usaremos como exemplo um controle automático de enchimento de uma caixa de descarga (caixa 
acoplada ao vaso sanitário). O objetivo é que o sistema controle a válvula de entrada V a partir de dois 
sensores de nível de água A e B, como no esquema a seguir. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
54 
 
Um circuito de lógica sequencial possui elementos de armazenamento e as saídas não são dependentes 
apenas das entradas presentes no momento. Elas dependem também de valores armazenados. Sendo 
assim, pode ser visto como uma parte puramente combinatória juntamente com uma memória. 
 
Ao conjunto formado pelo bloco combinacional e também com mais um dispositivo de 
memória é o que chamaremos de lógica sequencial. 
Nesta lógica, os estados presentes das saídas não são dependentes apenas dos estados das entradas, 
mas são também dependentes dos estados anteriores do próprio sistema (memória). 
Uma solução para o problema da caixa de descarga é usarmos um dispositivo de memória com a 
capacidade de guardar um bit, que é a definição funcional de flip-flop. 
05 
2- SISTEMAS DIGITAIS 
Os sistemas digitais estão divididos em duas classes: 
• sistemas combinacionais e 
• sistemas sequenciais. 
Como já estudamos anteriormente, nos sistemas combinacionais, uma saída no tempo t depende 
somente da entrada no tempo t. Sendo assim, o sistema não possui memória em virtude da saída não 
depender de entradas anteriores. Consequentemente, a saída depende unicamente das variáveis de 
entrada. 
Para melhorar o entendimento, usaremos como exemplo um cadeado que utiliza números (códigos), 
geralmente utilizado para prender bicicletas no bicicletário. Este tipo de cadeado poderá ser aberto num 
dado tempo X quando a sequência numérica (código) do cadeado for colocado nas entradas em X, sem 
considerar a história das entradas. Caso o código utilizado seja 802, por exemplo, o cadeado somente 
será aberto quando a referida combinação for colocada nas entradas, independentemente da ordem 
adotada na colocação dos dígitos do código. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
55 
Nos sistemas sequenciais, uma saída no tempo X depende da entrada no tempo X e será bem possível 
que também haja dependência da entrada no tempo anterior a X. A saída tem dependência das 
variáveis de entrada e/ou de seus estados anteriores guardados. 
06 
Outro exemplo interessante é o sistema de discagem telefônica. Um número utilizado por um usuário 
quando for discado será feito em um determinado momento X, caso sejam atendidas as seguintes 
condições: 
a) os números discados antes do instante X devem seguir uma sequência conforme o número 
do usuário; 
b) o número discado no instante X, isto é, o último a ser discado, corresponde ao último dígito 
do número do usuário; 
c) todos os números devem estar na memória e estarem disponíveis na mesma ordem da 
discagem no instante X. 
Ao obter o efeito memória (buffer realimentado) precisamos entender que construtivamente, um flip-
flop pode ser descrito como um inversor realimentado por outro inversor, conforme pode ser observado 
na figura abaixo. 
 
Ao olharmos para a figura acima, podemos perceber que uma vez determinado um dos estados lógicos à 
entrada D, o estado da saída Q se manterá de forma sem definição. 
Como poderíamos mudar o estado de Q sem provocar uma contradição com o estado de Q? Vejamos a 
seguir. 
07 
Para mudar o estado de Q sem que provoque uma contradição com o estado de Q, a solução é adicionar 
terminais de entrada, trocando os inversores por portas lógicas Não-E. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
56 
 
Sendo assim, podemos levar (Q = 1) impondo 0 em S (set) e levar (Q = 0) impondo 0 em R (reset), 
armazenando o estado que desejamos no flip-flop. Entretanto, o flip-flop necessita de aperfeiçoamento 
para atender à definição lógica de flip-flop, que é um dispositivo com duas saídas complementares Q e 
Q, com duas entradas S e R que operamde acordo com a tabela abaixo. 
 
08 
3- CIRCUITOS ELETRÔNICOS 
Numa breve explicação sobre circuito eletrônico podemos dizer que uma de suas características é ser 
biestável em virtude de possuir dois estados estáveis, isto é, sua saída é 0 (nível lógico 0) ou 1 (nível 
lógico 1). Assim, este dispositivo pode ser usado para armazenar um dígito binário (bit). 
Para melhorar o entendimento dos conceitos que iremos estudar, vamos inicialmente falar sobre Latch, 
que é a forma mais básica de se implementar um circuito lógico de memória. Latch significa, em 
português, trinco, ferrolho. 
O Latch é um circuito sequencial biestável assíncrono (muda de estado sem 
necessidade de sincronismo), sendo assim, é um circuito constituído por 
portas lógicas, podendo armazenar um bit de informação, onde as saídas em 
determinado momento dependem dos valores de entrada. 
Latches controlados D e RS são controlados ou ativados pelo nível lógico do sinal de controle. O 
significado é que enquanto houver o sinal de controle ativando o latch, eventuais mudanças nas 
entradas D ou R e S serão detectadas pelo latch e por consequência irá mudar de estado. Essa 
característica não é bem-vinda na construção de circuitos sequenciais síncronos, isto é devido ao fato 
de, nestes circuitos, qualquer mudança de estado deve acontecer de forma sincronizada conforme o 
sinal do clock (relógio). 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
57 
 
Os flip-flops são circuitos que têm por referência os latches, porém sua ativação é feita pela transição do 
sinal de controle. Esta característica faz que um flip-flop se mantenha ativado apenas durante um 
pequeno intervalo de tempo, após a ocorrência de uma transição do sinal de controle. Sendo assim, 
uma provável troca de estado só deve ocorrer durante esse pequeno intervalo de tempo em que o flip-
flop está ativado. O flip-flop mantém o último estado adquirido entre duas transições sucessivas do 
mesmo tipo (ou subida ou descida) do sinal de controle. 
 
09 
Já falamos anteriormente sobre flip-flops, mas está faltando uma definição formal do que venha a ser. 
Um flip-flop é um elemento de circuito que pode apresentar em seu 
funcionamento apenas dois estados estáveis. Aplicando um sinal de entrada 
poderá haver a mudança de um estado para outro e desta forma pode-se 
conhecer o respectivo estado do sinal em que se encontrava. 
Exemplo: um sinal é aplicado podendo ser 0 ou 1, caso o estado estivesse 0 ao aplicar o sinal 1 haveria 
mudança de estado e vice-versa. Sendo assim, este circuito é considerado como uma célula básica de 
memória da lógica sequencial capaz de guardar um bit. 
 
Na tabela acima vemos os possíveis estados do flip-flop. Vale lembrar que ele armazena apenas 1 bit e 
que este armazenamento obedece a regras de estabilidade, conforme estudamos nos parágrafos 
anteriores. Veja no quadro abaixo uma demonstração do S (set), R(reset) e o Q que é a saída. 
10 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
58 
Existem vários tipos de flip-flop, tais como: FLIP-FLOP SR BÁSICO, FLIP-FLOP JK, FLIP-FLOP JK Mestre-
Escravo, FLIP-FLOP JK Mestre-Escravo com terminais de programa, FLIP-FLOP T e FLIP-FLOP D. 
Neste momento iremos falar especificamente do FLIP-FLOP SR BÁSICO. Ele possui duas entradas, 
definidas como Set e Reset e duas saídas Q e Q. Estas saídas somente podem permanecer com valores 
lógicos complementares. 
 
11 
4- MEMÓRIAS 
As memórias são dispositivos semicondutores que guardam informações na forma binária. Estas 
informações são constituídas de números, letras, caracteres diversos, comandos, operações, endereços 
e etc. Os bits das informações podem ser acessados no momento de leitura ou gravação/substituição, 
ou no procedimento de escrita ou armazenamento. 
 
As memórias semicondutoras são utilizadas como memória principal (interna) 
ou memória de trabalho de uma máquina (computador), pois mantêm 
comunicação constante com a unidade central de processamento (CPU) à 
medida que um programa de instruções está em execução. 
 
 
Outra maneira de armazenar no computador é pela memória 
auxiliar (externa) ou memória de massa ou memória secundária, que trabalha 
em uma velocidade inferior a memória principal e armazena programas e 
dados que não estão sendo usados a todo o momento pela CPU ou UCP. 
Para evitar troca excessiva de informações e instruções, esta memória transfere as informações para a 
memória principal apenas quando for necessário ou solicitado no processamento. 
12 
Uma memória guarda ou acessa as informações digitais em lugares denominados localidades, mediante 
o uso de um endereço (endereçamento). Para acessar estas localidades, um bloco possui uma série de 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
59 
terminais de entradas de endereços que são ligados a um conjunto de fios denominado barra de 
endereços (inglês= addres bus). Para a entrada e saída dos dados, da mesma forma, o bloco possui uma 
série de terminais ligados à barra de dados (inglês= data bus). O bloco ainda possui terminais de 
controle ligados à barra de controle (inglês= control bus). 
 
A barra de dados é bidirecional, sendo assim, pode ser utilizada tanto como entrada como para saída de 
dados, onde um dos terminais da barra de controle irá definir o sentido. As memórias são especificadas 
pela notação N x M, onde N indica o número de localidades de memória (palavras) e M indica o número 
de bits da informação armazenada por localidade. O número de bits que podem compor uma palavra 
varia de computador para computador, estando na faixa de 4 bits até 36 bits, geralmente. Uma dada 
"pastilha" de memória guardará um dado número de palavras de tantos bits por palavra. Tomemos por 
exemplo uma pastilha de memória popular que a capacidade de armazenar 1024 palavras de 4 bits 
cada, totalizando 4096 bits (4K), que é a tamanho total de memória. 
13 
A maneira como é organizada uma pastilha de memória é por meio do estabelecimento de como é 
constituída por um grupo de registradores, onde cada registrador armazena uma palavra. A "largura" de 
cada registrador é o número de bits por palavra. O número de registradores é o número de palavras 
guardadas na memória. Valores comuns para o número de palavras por pastilha são 64, 256, 512,1024, 
2048 e 4096. 
A maioria deles são de base dois (potências inteiras de 2). Os valores mais comuns para o tamanho da 
palavra são 1, 4 e 8. Também há a possibilidade de obtenção de outros tamanhos para as palavras, ao se 
combinar várias pastilhas de memória. 
As informações que estão em cada registrador estarão sujeitas a duas operações que são 
possíveis: escrita e leitura. 
 
A leitura é o processo de obtenção da palavra que está guardada no 
registrador e remetê-la para outra localização, onde poderá ser utilizada. 
As informações que estão guardadas no registrador não serão modificadas pela operação de leitura. 
 
A escrita é o processo de por uma nova palavra em um determinado 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
60 
registrador. 
Fica evidente que a operação de escrita remove a palavra que estava previamente guardada no 
registrador. Contudo, não são todas as pastilhas de memória que possuem a propriedade de ter o seu 
conteúdo escrito. 
Palavra 
 
Palavra (inglês: word) é a unidade natural de informação usada pelo computadores. É uma sequência 
de bits comtamanho fixo e que é processado em conjunto em uma determinada máquina. O número 
de bits em uma palavra (tamanho / comprimento da palavra) é uma característica preponderante da 
arquitetura de um computador. Esta característica ecoa em vários aspectos de sua estrutura, da sua 
operação e na indicação da unidade de transferência entre a UCP e MP (memória principal). 
 
14 
Com todas as diferenças existentes na implementação de cada um dos tipos de memória e mesmo com 
toda evolução computacional, ainda permanecem da mesma forma a implementação e os princípios 
básicos de operação da memória. Particularmente em cada sistema há certo conjunto de tipos 
diferentes de entrada e saída para a realização das seguintes funções: 
a. Eleger o endereço que está sendo utilizado em determinada operação de leitura ou escrita; 
b. Escolher a operação que deverá ser realizada, leitura ou escrita; 
c. Ofertar os dados de entrada para a realização da operação de escrita; 
d. Estabilizar e manter as informações de saída da memória que são resultado de determinada operação 
de leitura, durante determinado tempo; 
e. Desativar (ou Ativar) a memória, de maneira a torná-la (ou não) em condições de responder ao 
endereço na entrada e ao comando de leitura/escrita. 
As memórias podem ser classificadas quanto: 
• à forma de acesso, 
• à volatilidade, 
• ao tipo de armazenamento, 
• capacidade de armazenamento e 
• à tecnologia. 
Veremos cada um desses tipos a seguir. 
15 
4.1– FORMA DE ACESSO. 
As maneiras de acessar uma locação de memória podem ser de dois tipos: acesso sequencial ou 
aleatório. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
61 
 
16 
4.2- VOLATILIDADE 
Quando falamos que é algo é volátil, geralmente, estamos dizendo que é algo que evapora com 
facilidade. Outras vezes podemos também entender, usando o sentido figurado, que é algo volúvel, ou 
seja, instável ou inconstante. Quando falamos em volátil uma substância geralmente lembrada é o éter, 
que evapora com muita facilidade. 
As memórias voláteis também possuem esta característica, pois quando é 
interrompida sua alimentação (corrente elétrica – computador é desligado) as 
informações armazenadas são perdidas. O exemplo da área da TI são as 
memórias RAM. 
Há as memórias que não são voláteis. Elas possuem a propriedade de mesmo sem alimentação 
permanecerem e manterem as informações que estão armazenadas. O exemplo utilizado da área da TI 
são as memórias ROM, PROM, EPROM. 
 
17 
4.3- TIPO DE ARMAZENAMENTO 
Quanto ao tipo de armazenamento, as memórias podem ser: 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
62 
 
18 
4.4- CAPACIDADE DE ARMAZENAMENTO 
Quando falamos em capacidade de armazenamento estamos fazendo 
referência ao número total de bits ou palavras que a memória pode guardar 
(armazenar). 
 
Veja o exemplo: quando lemos, em uma especificação de memória, a seguinte nomenclatura: 1.024 x 8, 
podemos entender que a numeração de 1.014 corresponde à capacidade de armazenamento de 1.024 
palavras. O número 8 indica que cada palavra terá 8 bits, tudo isso totaliza 8.192 bits. 
19 
4.5– Quanto à tecnologia 
Quando falamos em tecnologia devemos entender o significado desta palavra. 
Tecnologia vem do grego (do grego ΤεΧνη — "técnica, arte, ofício" e λογια — 
"estudo", ou seja, “técnica + estudo") e está relacionada a tudo que envolve 
conhecimento científico e técnico e sua aplicação na transformação de 
ferramentas, de processos e nos materiais criados e utilizados a partir deste 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
63 
conhecimento. 
 
As memórias são construídas com tecnologia que pode utilizar: 
• semicondutor bipolar, 
• semicondutor de óxido metálico (MOS) 
• ou semicondutor de óxido complementar (CMOS). 
As memórias do tipo bipolares são encontradas nos circuitos TTL padrão, e no Schottkye ECL. As 
memórias que são do tipo MOS, e utilizam o canal N, são as mais utilizadas em virtude de apresentarem 
grande densidade e serem de custo baixo. Contudo, as memórias CMOS têm por características serem 
mais lentas em comparação com as NMOS e bipolares, entretanto, possuem a vantagem de 
economizarem no consumo de energia e serem imunes a ruídos. 
Quando falamos em ruído, geralmente, estamos falando de barulho, som alto, poluição sonora ou 
aquela música que seu vizinho insiste em escutar no último volume. Contudo, quando falamos em 
ruídos na TI, estamos fazendo referência a todo sinal elétrico que, ao propagar-se por um meio de 
transmissão, pode sofrer algum tipo de alteração ou degradação. Sendo assim, as distorções de fase ou 
"ruídos" são perturbações de natureza aleatória, causadas por agentes externos ao sistema. 
Ruído 
 
São distorções de fase ou perturbações de natureza aleatória provocadas por agentes externos ao 
sistema e que podem causar perturbação ou degradação do sinal elétrico, interferindo em sua 
transmissão. 
 
20 
4.6 Memória flash 
Você já deve ter ouvido falar em memória FLASH. 
 
A memória Flash é um tipo particular de EEPROM (Memória Somente de 
Leitura Programável e Apagável Eletricamente). Podemos dizer que é um chip 
de memória de computador que mesmo sem uma fonte de energia mantém 
as informações armazenadas. 
A memória flash é geralmente utilizada em aparelhos eletrônicos portáteis, por exemplo: aparelhos de 
MP3, smartphones, câmeras digitais e pendrives. 
102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
64 
As memórias flash são assim chamadas em virtude de possuírem tempos curtos para serem apagadas e 
escritas. A maioria destas memórias apaga um bloco em poucos microssegundos. Contudo, também são 
encontradas atualmente algumas que permitem apagar dados por setor. 
Na tabela abaixo é possível verificar as vantagens e desvantagens dentre os vários tipos de memórias 
semicondutoras não voláteis. À proporção em que há o aumento da flexibilidade para apagar e 
programar, também há o aumento da complexidade e o aumento proporcional do custo do dispositivo. 
 
 
Microssegundo 
 
Microssegundo (mS) é um múltiplo do segundo, uma unidade de tempo, com o prefixo pelos padrões 
base multiplicador micro (µ), igual a 0,000001 segundo. 
 
21 
No intuito de incentivar a leitura e mostrar o quanto a eletrônica e os circuitos elétricos permeiam nosso 
dia a dia, visite a página da UNICAMP, onde é possível ler uma aula dos professores Zuben e Attux, os 
quais, numa aula de Introdução à Computação Natural, falam sobre a associação da biologia sintética 
com a eletrônica, comentam sobre a semelhança entre a interação de enzimas, fatores de transcrição e 
DNA, e circuitos elétricos, criando um interdisciplinaridade entre a computação e a biologia. 
Estes estudos nos levam também à nova área chamada nanotecnologia. 
 
A nanotecnologia visa produzir objetos e dispositivos na escala atômica 
(referida como escala nano) a partir dos átomos. 
Fernando Rebouças, em um artigo escrito para o sítio da Infoescola, diz que por meio da organização de 
átomos, a nanotecnologia é uma ciência que possibilita a capacidade de criar objetos em diferentes 
“microescalas” em sistema de planejamento em engenharia molecular. Esta área científica será 
responsável pela nova revolução industrial avançada. A nanotecnologia está presente na medicina, 
eletrônica, ciência da computação, física, química, biologia e engenharia.102 – Arquitetura de computadores | Unidade 02 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
65 
Assista a este vídeo sobre as 10 tecnologias de 2013: 
http://olhardigital.uol.com.br/embed/10-tecnologias-que-devem-crescer-em-
2013/33130 
22 
RESUMO 
Durante o estudo deste módulo compreendemos o que é um circuito sequencial e conhecemos os 
principais tipos de circuitos sequenciais e que a partir de uma expressão lógica conseguimos chegar a 
um circuito equivalente. Relembramos que, em um circuito combinacional, a saída depende apenas de 
uma combinação das entradas, enquanto que em um circuito sequencial, a saída depende, além de uma 
combinação das entradas, de uma combinação das variáveis de estado do sistema, ou seja, de variáveis 
que identifiquem o estado em que o sistema se encontrava. 
Vimos os tipos básicos de flip-flops e pudemos entender que as memórias são dispositivos 
semicondutores, que guardam informações na forma binária. Estas informações são constituídas de 
números, letras, caracteres diversos, comandos, operações, endereços e etc. Os bits das informações 
podem ser acessados no momento de leitura ou gravação/substituição, ou no procedimento de escrita 
ou armazenamento. 
Vimos que para aprender o que é um circuito sequencial, precisamos relembrar o que são os circuitos 
combinatórios. A esses circuitos cabe implementarem as funções básicas de um computador digital. 
Todavia, exceto no caso especial da ROM, eles (circuitos combinatórios) não disponibilizam informação 
de estado ou memória, elementos essenciais para a operação de um computador digital. Para esse fim, 
utiliza-se uma forma mais complexa de circuito lógico digital, que vimos que é o circuito sequencial. 
 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
1 
UNIDADE 3 – FUNCIONAMENTO E COMPONENTES BÁSICOS 
MÓDULO 1 – ARMAZENAMENTO DE INFORMAÇÕES 
01 
1- CIRCUITOS DE ARMAZENAMENTO 
Circuito de armazenamento é a parte dos circuitos digitais que se responsabiliza pelo armazenamento 
de informações. 
Quando falamos em circuitos de armazenamento precisamos entender que, nos sistemas digitais, em 
especial os computadores, as informações são representadas por meio de conjuntos de binários 
chamados de “PALAVRAS”. Atualmente, nos computadores, geralmente a PALAVRA tem o tamanho de 
32, 64 ou 128 bits. Entretanto, tempos atrás, as estações de trabalho (computadores) usavam apenas 8 
e 16 bits. 
É natural que um sistema digital seja projetado para trabalhar utilizando determinado tamanho de 
palavra, sendo assim, deve ter os recursos de hardware que suportem simultaneamente armazenar e 
processar conjunto de “n” bits (lembre-se: “n” corresponde ao tamanho da palavra). 
No desenvolver do estudo deste módulo, veremos os circuitos digitais responsáveis pelo 
armazenamento de informação, sendo eles os registradores e as memórias ROM e RAM. Dentre estes 
circuitos, há aqueles construídos de tal forma que conseguem manipular a informação armazenada. 
Dentre as operações possíveis, estão os deslocamentos (à direita e à esquerda), o incremento e o 
decremento. 
 
Incremento e decremento 
São operações aritméticas. Sendo que o incremento – aumenta “um” no operando (contador) e 
decremento – diminui “um” no operando. Um exemplo de operação de incremento seria: k = k + 1. 
Seguindo o mesmo raciocínio, o decremento é: K = K – 1. No desenvolvimento de programas para 
computadores é muito usado incremento e decremento nas estruturas de repetição na variável de 
controle. Um exemplo relacionado a manipulação de informações nos circuitos de armazenamento, 
podemos imaginar um circuito contador (Contadores digitais são circuitos implementados a partir de 
flip-flops) que possui uma conexão específica para cada flip-flop vizinho, de tal forma que os flip-flop de 
maior ordem é o responsável pela ordem de “incremento” de seu vizinho de menor ordem. 
 
02 
2 – REGISTRADORES 
O registrador é um circuito digital que tem em sua formação “n” flip-flops, que de forma simultânea, 
consegue armazenar (de forma independente) “n” bits. 
 
O registrador é considerado um elemento básico de armazenamento em um processador, podendo 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
2 
variar de três até chegar a algumas dezenas. A localização de registradores dentro do processador tem 
por intuito acelerar o processamento, pois a manipulação dos dados acontece próximo dos recursos de 
processamento, reduzindo a necessidade de acessar a memória principal. 
Os registradores são circuitos digitais capazes de armazenar e deslocar informações binárias, e são 
tipicamente usados como um dispositivo de armazenamento temporário. São empregados na execução 
de programas de computadores, disponibilizando um local para armazenar dados. Na maioria dos 
computadores modernos, quando da execução das instruções de um programa, os dados são movidos 
da memória principal para os registradores. Então, as instruções que utilizam estes dados são 
executadas pelo processador e, finalmente, os dados são movidos de volta para a memória principal. 
O termo utilizado para armazenar dados em um registrador é carregar, embora as palavras escrever e 
armazenar também sejam usadas. A ação oposta a carregar um registrador é conhecida como ler os 
conteúdos de um registrador. A leitura consiste simplesmente em se conectar às saídas do registrador. 
Assim percebe-se que a leitura não está sincronizada com o relógio, além disso, não remove os bits do 
registrador nem os modifica de nenhum modo. 
03 
A figura abaixo mostra um registrador de quatro bits, com carga paralela, utilizando flip-flops. A letra D 
representa os flip-flops. 
 
Figura 01 
Observe a imagem acima e veja que cada flip-flop é o responsável por armazenar um bit, observando 
a notação posicional, e cada bit possui um caminho independente do restante, tanto na entrada como 
na saída. É por este motivo que o registrador é chamado de carga paralela. Continuando a observação 
da figura, vemos que o flip-flop, que tem por índice 3, armazena o bit mais significativo de uma palavra 
de quatro bits. O índice 0 (zero) armazena o bit menos significativo. 
Podemos dizer que um registrador tem um funcionamento similar a uma barreira. Vemos na Figura 01 
que os dados que estão nas entradas D0, D1, D1 e D3 serão somente copiados caso o sinal CK (relógio) 
passe por uma borda ascendente. As cópias dos valores feitas na passagem de uma borda ascendente 
ficarão armazenadas nos flip-flops até que haja uma ocorrência da próxima borda ascendente. Desta 
forma o registrador fica imune a uma possível mudança indesejada dos sinais. Estes sinais são 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
3 
representados por D0, D1, D2 e D3. É na saída Q onde está o valor armazenado em um flip-flop 
qualquer. Diante desta característica que um dado que estiver armazenado no registrador poderá ser 
consultado por outro hardware em qualquer momento, mas, para isso acontecer, é necessário haver um 
caminho, um conjunto de fios, algo físico que estabeleça comunicação entre a saída do registrador e a 
entrada do outro dispositivo. O outro dispositivo, por exemplo, pode ser um somador/subtrator. 
Carga paralela 
É a carga simultânea de todos os bits, por meio da sincronização feita pelo clock (Nos circuitos digitais 
síncronos, o clock é um sinal usado para coordenar as ações de dois ou mais circuitos eletrônicos). 
 
Notação posicional 
É um modo de representação numérica naqual o valor de cada algarismo depende da sua posição 
relativa na composição do número. 
 
04 
No registrador exemplificado na Figura 01 há uma deficiência importante: toda vez que o sinal de 
relógio CK passar por uma borda ascendente, os valores das entradas D0, D1, D2 e D3 serão copiados, 
mesmo não sendo o objetivo desejado. Contudo, cabe à Unidade de Controle coordenar e ordenar os 
sinais dos circuitos de um computador. Na verdade, o sinal de CK (relógio) tem por função determinar o 
momento no qual uma ordem deverá ser obedecida. Sendo assim, um registrador de uma máquina 
(computador) deve possuir os recursos necessários para a realização da carga do dado quando o relógio 
passar pela borda ativa apenas se o sinal de “load” (carga) estiver ligado. Na figura abaixo é possível 
observar um registrador de quatro bits com sinal de carga e carga paralela. 
 
Figura 02 
05 
Os desenhos mais complexos de circuitos utilizam preferencialmente o símbolo utilizado na figura 
abaixo (Figura 03). Isso é feito para facilitar a compreensão e evitando a complexidade de um esquema 
complet o de um circuito. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
4 
A figura abaixo simboliza um registrador de 4 bits. Ele possui uma carga paralela e sinal de carga (o sinal 
de carga é possível visualizar observando a figura 02 e também a figura 03). O sinal de carga é a 
representação da passagem de corrente (carga), que no caso da memória é um dado (parte de uma 
informação). 
Cabe relembrar a importância do conceito de clock (relógio): é ele o responsável de zelar para que os 
microprocessadores trabalhem em um rígido padrão de tempo. Cabe ao clock gerar pulsos (sinais) em 
intervalos regulares. A cada sinal (pulso) uma ou mais instruções internas são realizadas. O nome deste 
registrador é “Reg”. 
 
Figura 03 
06 
• Registrador com Carga Paralela 
Na figura abaixo vemos a forma de onda da saída Q para o circuito à esquerda da figura. Este exemplo 
ilustra como é o funcionamento do circuito associado a um bit de determinado registrador de carga 
paralela que também está com sinal de carga. 
 
Figura 04 
07 
• Registradores de Deslocamento (shift registers) 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
5 
O deslocamento de bits é uma operação importante na aritmética binária. Essa operação é basicamente 
o deslocamento do conteúdo de um flip-flop para o seu adjacente. O sentido da operação pode ser da 
esquerda para a direita, que é chamado deslocamento à direita. Caso o sentido da operação seja da 
direita para a esquerda é chamado de deslocamento à esquerda. 
 
A importância das operações de deslocamento dos bits está no fato destas viabilizarem, entre outras, a 
realização de um grande número de operações lógicas e aritmética sem um sistema digital. 
08 
Na Figura 05 vemos um registrador de deslocamento à direita de 4 bits. Notamos que existe uma ligação 
entre a saída de cada flip-flop e a entrada do vizinho à direita. Este registrador não possui sinal de carga. 
Contudo, geralmente, este sinal existe. 
 
Figura 05 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
6 
09 
Na Figura 06 temos um registrador de “deslocamento à esquerda” que apresenta uma ligação entre a 
saída de cada flip-flop e a entrada do flip-flop logo a sua esquerda. Observe que a entrada serial está 
conectada ao flip-flop à direita que armazena o bit menos significativo. 
Você pode ver na Figura 06 um exemplo de um registrador de deslocamento à esquerda de 4 bits 
com reset assíncrono. 
 
Figura 06 
Reset assíncrono 
Quando um flip-flop inicia suas atividades o valor de “Q” não é conhecido, podendo ter o valor 1 (um) 
ou valor 0 (zero). Valor 1 ativo (enable); valor 0 desativado (disable). Desta forma os flip-flops precisam 
ter uma forma de determinar o valor inicial de sua saída Q. Esta forma é o reset. O sinal de iniciação é 
chamado de sinal de reset podendo iniciar com valor um (1) ou zero (0), podendo ser síncrono ou 
assíncrono. O reset síncrono depende do clock sendo acionado quando o sinal do clock é quem inicia o 
processo. O reset assíncrono não depende do relógio (clock) sendo acionado quando estiver ativo. 
 
10 
• Registrador de deslocamento com sinal de carga paralela 
O que torna um registrador com grau de utilidade alto é que além de possibilitar a carga paralela através 
de sinal de carga, também possibilita deslocamentos tanto à direita como à esquerda. Tudo isso se torna 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
7 
possível em virtude de na entrada de cada flip-flop haver um seletor com a capacidade de selecionar de 
onde vem o dado a ser armazenado no flip-flop corrente. Este corrente pode vir de uma fonte externa 
(carga paralela), vindo da direita, da esquerda, quando do deslocamento ou do próprio flip-flop, quando 
mantido o conteúdo inalterado. 
Um exemplo deste tipo de registrador pode ser observado na figura abaixo. Este registrador é chamado 
“registrador-deslocador” de quatro bits com reset assíncrono e sinal de carga. 
 
Figura 07 
11 
Este tipo de registrador é chamado também de shift-register e as seguintes operações são possíveis com 
ele: 
1- Carga paralela; 
2- Mantém seu conteúdo; 
3- Zera o conteúdo (clear=1) 
4- Desloca à esquerda e à direita 
O seu funcionamento acontece da seguinte maneira: caso o sinal “clear” for igual a um (1), e 
Q3=Q2=Q1=Q0=0 . Caso estas condições não sejam atendidas, haverá a necessidade de utilizar a 
seguinte tabela verdade: 
 
Tabela Verdade 01 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
8 
12 
• Registrador Contador Assíncrono 
Um registrador que faz contagem utilizando binário é chamado incrementador ou contador. Isso 
acontece por meio do sinal de relógio, então, a cada sinal, o conteúdo do registrador é incrementado de 
um valor (unidade). Um exemplo seria um registrador contador de 4 bits que pode contar de 0 (0000) 
até 15 (1111). 
 
Figura 08 
Na figura acima podemos ver um circuito e traçar a forma da onda de Q. Um circuito que tem como 
função ser contador de mais bits necessita ter conexão entre cada flip-flop vizinho, de tal maneira que 
cada flip-flop de ordem maior será o responsável pela ordenação do incremento de seu vizinho de 
ordem menor. 
13 
3- MEMÓRIAS 
Vimos nos parágrafos anteriores como é feita a construção de alguns tipos de registradores. Os 
registradores são muito rápidos, mas em contrapartida possuem capacidade reduzida de 
armazenamento. Por exemplo, um registrador armazena somente uma palavra por vez. 
Contudo, geralmente, nos sistemas digitais e em especial nas máquinas (computadores), uma 
quantidade grande de palavras necessita ser armazenada. Para atingir este objetivo de armazenamento, 
passa a ser prioridade que um sistema digital tenha um conjunto específico de circuitos que sejam 
adequados para armazenarem simultaneamente um grande volume de palavras. O nome dado aos 
circuitos que executam este armazenamento é memória. 
Quanto ao seu funcionamento, a memória pode admitir apenas consulta no modo leitura ao seu 
conteúdo ou também poderá permitir o modo leitura e escrita (modificação). 
Há memórias que são chamadas de ROMs (Read-Only Memories) em virtude de ser apenas para 
leitura. Todavia, as memórias chamadas RAMs (Rondom-Access Memories) permitem leitura e escrita. 
102 – Arquitetura de Computadores| Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
9 
 
Você deve ter chegado à conclusão de que a memória é a responsável por armazenar os dados com os 
quais o processador irá trabalhar. 
Os conteúdos das ROMs podem ser gravados (escritos) durante a fabricação ou até mesmo pelo usuário, 
que poderia ser o fabricante do computador. 
É importante salientar que: 
Uma característica principal da memória ROM é 
que os dados uma vez gravados não poderão ser 
modificados e possuem apenas permissão de 
leitura. 
As memórias RAM possuem circuitos que têm por 
característica a capacidade de armazenar as 
informações binárias que podem ser modificadas 
por inúmeras vezes. 
 
14 
Memória RAM 
Vamos agora estudar como é a estrutura física ou os circuitos que compõem as memórias Random-
Access Memory (RAM). 
A memória RAM tem como organização uma matriz de 2n linhas com m bits armazenados em cada linha, 
totalizando 2n x m bits. Geralmente, n está entre 16 e 32, podendo ser m enquanto for 1, 4,8, 16 ou 32. 
A figura abaixo (Figura 09) mostra como é essa organização matricial. Observe que há 2n linhas, 
chamadas também de posições. A cada posição há uma associação com um endereço que começa pelo 
endereço zero (0). Então, será preciso n bits para ocorrer a decodificação de 2n endereços existentes. 
Ilustração: refazer ou formatar a imagem, tornando os dados mais nítidos. 
 
Figura 09 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
10 
Na Figura 09 é possível observar como é a organização de uma memória RAM e suas linhas e endereços. 
15 
Vamos supor que uma empresa irá fabricar apenas um circuito integrado (CHIP) em uma memória RAM 
com capacidade de armazenamento2n x m bits, conforme a organização que vimos anteriormente. A 
figura abaixo (Figura 10) é uma representação do chip que falamos agora. Este chip precisar ter “n” 
entradas de endereço (Na-1, ... , A1,A0), de tal maneira que seja possível selecionar uma e apenas uma 
dentre todas as 2n posições que há na matriz. Este chip poderá também conter “m” entradas (In-1 , ... , I1, 
I0), e “m” saídas (On-1 , ... , O1, O0 ), de tal maneira que seja possível a leitura/consulta do conteúdo de 
uma das 2n linhas ou a gravação/escrita de uma informação nova em uma das 2nlinhas da matriz. 
Em virtude de haver duas operações possíveis, leitura e escrita, sobre o conteúdo da matriz, é 
perfeitamente normal existir uma entrada de seleção da operação. Este tipo de entrada chamará RWS 
(Read/Write Select). 
 
Figura 10 
Em suma, há a necessidade de haver um sinal de habilitação do chip (CS-Chip Select). Para exemplificar, 
se o CS for igual a zero (CS=0) é porque o chip está desativado. O mesmo seria se o CS for igual a um 
(CS=1), é por que o chip está realizando uma operação determinada pelo valor da entrada RWS. 
16 
Na Figura 10 (copiada abaixo) podemos ver as representações gráficas possíveis para um chip de 
memória RAM. 
Um sinal de habilitação do chip, CS, tem como serventia para o caso de haver necessidade de mais de 
um chip para implementar a memória do computador. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
11 
Observe novamente a Figura 10 (a), que é um exemplo de quando o quantitativo de bits que precisam 
ser armazenados em cada posição de memória “m” for pequeno, o chip RAM poderá ter entradas 
separadas das saídas. Contudo, o comum é que um mesmo conjunto de pinos do chip sirva tanto como 
entrada ou saída, situação que pode ser visualizada na figura 10 (b). Neste caso a utilidade vai depender 
da operação que será realizada, que é selecionada através do pino RWS. Na verdade, o detalhe é 
justamente este, pois o uso compartilhado irá reduzir a quantidade de pinos no chip, vindo a baratear 
seu custo. 
 
Figura 10 
17 
Olhando pelo lado estrutural, uma memória RAM tem sua organização feita semelhante a uma matriz 
de elementos básicos de memória,buffers de entrada/saída e decodificador de endereços. Conforme é 
possível observar na figura 11, uma CM (célula de memória) pode ser representada por meio de 
símbolo, sendo constituída por um latch D controlado cuja entrada está ligada à saída e a saída ligada à 
entrada de um buffer. 
O buffer, também chamado driver, pode exercer duas funções: 
 
1. reforçar o sinal lógico, em virtude da necessidade de quando há muitas portas conectadas a 
uma mesma saída ou quando o sinal vai percorrer um fio com grande extensão, 
2. ou também exercer a função de uma chave eletrônica que isola fisicamente a saída da entrada, 
isto é, irá servir para disciplinar o acesso de vários sinais a um mesmo fio ou barramento. 
 
Entendido o que é buffer na memória e voltando à figura 11, quando o sinal de seleção de linha é = 1, o 
bit armazenado no latch passará pelo buffer, permanecendo disponível na “saída” da célula. Caso o sinal 
de habilitação de escrita valha também 1, o valor presente na “entrada” será mantido no latch. O sinal 
de “habilitação de escrita” serve como controle para o latch. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
12 
 
Figura 11 
18 
A Figura 12 é uma representação da memória RAM por meio de um diagrama de blocos. Trata-se de um 
exemplo de memória RAM (4X4), formada por dezesseis CMs. Para cada acesso à memória, o 
decodificador de endereços ativa o sinal de seleção de linha associado ao endereço aplicado às suas 
entradas, o que ativa todos os CMs da linha escolhida. Assim, caso RWS seja igual a zero (0) e CS igual a 
um (1), os bits que estão armazenados na linha escolhida passarão pelos buffers de saída das respectivas 
CMs e também pelos buffers de entrada e saída do chip. 
 
Figura 12 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
13 
19 
A maneira como é organizada a memória RAM impacta em restrições no tempo das operações de leitura 
e escrita. Por exemplo, como o caminho crítico da entrada a saída passa pelo decodificador, as entradas 
de endereço necessitam estar estáveis antes de qualquer outro sinal ou sinais. Isso quer dizer que, 
durante o ciclo de leitura mostrado na figura 13abaixo, as entradas de endereço deverão ser fornecidas 
em t0, seguidas por CS em t1. Sendo assim, os dados da memória estarão disponíveis apenas em t2. 
O atraso t2 – t0 é chamado memory-access time (tempo de acesso à memória), enquanto que o tempo 
t2-t1 é chamado output-enable time (tempo de habilitação da saída). Observe que depois de os valores 
das entradas de endereço terem sido alterados em t3, os dados continuam disponíveis até t5. O 
intervalo t5 – t3 é chamado output-hold time (tempo de manutenção da saída). O intervalo t5 – t4 é 
chamado de output-disable time (tempo de desabilitação da saída). 
 
Figura 13 
Em virtude de o caminho entre as entradas de endereço e as saídas ser maior do que o caminho entre 
CS até as saídas, o tempo de acessoaponta a validade dos dados sempre que o endereço e CS forem 
aplicados ao mesmo tempo. Em contrapartida, caso o endereço e CS não sejam mais válidos (CS igual a 
zero), o tempo de desabilitação especificará a validade dos dados. 
20 
A Figura 14 é possível ver as restrições temporais para a situação de um ciclo de escrita em uma 
memória RAM. Nesta figura observa-se por premissa que CS e RWS foram aplicados, ao mesmo tempo, 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
14 
no instante t1. Em virtude de atraso entre o endereço e a saídaser maior do que o atraso entre CS ou 
RWS e a saída, o endereço deve ser aplicado um tempo antes, que neste caso, seria em t0. 
 
O atraso t1– t0é chamado de address setup time (tempo de preparação do endereço). Em virtude de 
cada CM ser feito a partir de um latch D controlado com CS exercendo a função de controle, cada bit do 
dado na borda de descida de CS (t3) será armazenado no correspondente latch. Contudo, é preciso que o 
dado já esteja estável um período antes e logo depois da borda de descida de CS para garantir a referida 
escrita. Observe a figura e veja que os tempos são descritos como data setup time (tempo de 
preparação do dado) e data hold time(tempo de manutenção do dado), sendo chamados 
respectivamente como: t3– t2 e t4– t3. 
Cabe salientar que CS ou RWS devem ter duração igual ou superior ao intervalo de tempo t3– t1, que é 
chamado de write-pulse width(duração do pulso de escrita). Também é importante saber que o 
endereço deve estar válido durante um tempo após a borda de descida de RWS ou CS. Este intervalo de 
tempo é denominado address-hold time (tempo de manutenção do endereço), que pode ser 
demonstrado na imagem como t5– t3. 
21 
Nós vimos aqui a CM representada pela composição de um latch D e duas portas, entretanto, muitos 
fabricantes utilizam estruturas menos complexas e também com poucos transistores. A maneira como é 
feita a implementação de CMs é que determina a classificação da memória RAM 
em estática e dinâmica. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
15 
 
22 
RESUMO 
 
Neste módulo estudamos os circuitos digitais responsáveis pelo armazenamento de informação, sendo 
eles os registradores e as memórias ROM e RAM. Vimos que o registrador é um circuito digital que tem 
em sua formação “n” flip-flops, que de forma simultânea, consegue armazenar (de forma independente) 
“n” bits. Vimos também como funcionam os registradores com carga paralela, os registradores de 
deslocamento, o registrador de deslocamento com sinal de carga paralela e o registrador contador 
assíncrono. As memórias ROM possuem organização semelhante às memórias RAM. Entretanto, a CM 
de uma ROM é muito mais simples, geralmente constituída por apenas um transistor ou diodo, que 
exerce a função para conceder acesso ao zero (=0V) lógico ou ao um (1) lógico (5V a 1,5V, conforme a 
tecnologia). As memórias ROM, nos computadores, tem por função o armazenamento das 
configurações básicas que não são alteradas. Um exemplo são as rotinas de entrada e saída que 
constituem a BIOS dos computadores. 
UNIDADE 3 – OBJETIVO DA ANÁLISE DAS DEMONSTRAÇÕES FINANCEIRAS 
MÓDULO 2 – CONCEITO DE ANÁLISE E DEMONSTRAÇÕES FINANCEIRAS 
OBRIGATÓRIAS 
01 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
16 
1 - CARACTERÍSTICAS DOS SISTEMAS DE MEMÓRIAS DOS COMPUTADORES 
Durante a leitura e estudo deste módulo você terá a oportunidade de entender as características dos 
sistemas de memória dos computadores. Dentre estas características, iremos destacar: localização, 
capacidade, unidade de transferência e método de acesso. 
Veremos também a forma hierárquica da organização da memória no computador, esta característica é 
em virtude de como é a sequência de utilização e acesso à memória. Entenderemos o que é memória 
RAM e ROM e as respectivas diferenças entre elas. E para finalizar veremos como é simples o cálculo da 
capacidade da MP (Memória Principal). 
Então vamos começar? 
02 
Para o adequado e eficaz funcionamento da manipulação das informações (instruções de um programa 
e dados) de e para a memória de um computador, constata-se a necessidade de se ter, em um mesmo 
computador, diferentes tipos de memória. Para determinadas atividades, por exemplo, é essencial que a 
transferência de informações seja a mais rápida possível. É o caso das atividades realizadas 
internamente no processador central, onde a velocidade é primordial, porém a quantidade de bits a ser 
manipulada é muito pequena (em geral, corresponde à quantidade de bits necessária para representar 
um único valor - um único dado). 
O conceito de memória é aparentemente simples, pode-se até dizer que é aquele componente que 
apresenta maior variedade de tipos, tecnologia, organizações, desempenhos e custos, entre todos os 
elementos de um sistema de computador ou sistema computacional. 
Devido à grande variedade de tipos de memória, não é possível implementar um sistema de 
computação com uma única memória, pois nenhuma das tecnologias de memória existentes satisfaz de 
maneira ótima todos os requisitos de armazenamento de dados em computadores. 
Na realidade, há muitas memórias no computador, as quais se interligam de forma bem estruturada, 
constituindo um sistema em si, parte do sistema global de computação, podendo ser 
denominado subsistema de memória. 
Esse subsistema é projetado de modo que seus componentes sejam organizados hierarquicamente, ou 
seja, um sistema computacional típico é equipado com uma hierarquia de subsistemas de memória, 
algumas internas (diretamente acessíveis pelo processador) e outras externas (acessíveis pelo 
processador por meio de um módulo de E/S - entrada / saída). 
03 
Os sistemas de memória de computadores podem ser facilmente compreendidos por meio de sua 
classificação, de acordo com suas características fundamentais. Estas características podem ser 
visualizadas na tabela abaixo: 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
17 
 
Estudaremos com mais detalhes cada uma dessas características a seguir. 
04 
• Localização 
O termo localização é utilizado para diferenciar se a memória é do tipo interna ou externa à máquina. 
No geral a memória interna é popularmente conhecida como a MP (memória principal), mas há outros 
tipos de memória interna. O processador necessita de uma memória local própria, formada por 
registradores. Consequentemente, conforme iremos estudar, a unidade de controle do processador 
também poderá ter sua memória interna própria. Outro exemplo de memória interna é a memória 
cache. 
A memória principal: também chamada de primária ou real, é o local em que estão armazenados 
as instruções e dados. É um dispositivo de armazenamento que mantêm os dados (informações) 
de maneira temporária dos serviços que estão em processamento no processador. É na MP que os 
dados ficam disponíveis para transferência para equipamentos de saída. A MP é desde o início da 
computação a memória básica de um sistema de computação. Em suma, é na MP onde o 
programa que será executado é armazenado para o processador faça a busca de instrução por 
instrução. 
A memória externa são todos os dispositivos de armazenamento, também conhecidos como 
periféricos. Exemplo:HD Externo. Estes periféricos são acessíveis ao processador (UCP) por meio de 
controladores de E/S (entrada e saída). 
A memória secundária também pode ser chamada de memória externa e “não-volátil”. O termo “não- -
volátil” significa que esta mantém as informações armazenadas mesmo após o desligamento do 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
18 
computador. Para facilitar o entendimento, usaremos o HD (Disco rígido) como exemplo de MS 
(memória secundária). É no HD que geralmente estão armazenados os programas (navegadores, jogos, 
leitores de PDF, leitores de texto etc.) e também os arquivos pessoais dos usuários. Contudo, em 
determinadas situações, o sistema operacional utilizará o HD como uma extensão da memória principal. 
Essa açãotem o intuito de evitar que haja travamentos do sistema. Em suma, quando falamos que o HD 
é um exemplo de memória secundária, estamos fazendo referência ao fato de os discos também 
desempenharem a função de ser uma extensão da memória principal, sendo uma segunda memória, 
caso não haja espaço suficiente na MP. 
05 
• Capacidade 
Quando você resolve adquirir um notebook ou outro modelo qualquer de computador, uma das 
características que provavelmente é observada é a capacidade da memória. Você pode escutar do 
vendedor que o computador “vem com a capacidade de 4GB de RAM”. Mas o que é capacidade de 
memória? 
Capacidade de memória é o número total de bits que o dispositivo é capaz de armazenar. Pode ser 
expresso de várias formas: 2048 bits; 2kb ou 256 Bytes. 
Por exemplo: computador da marca XXX vem equipado com 4GB (gigabytes) de memória. Na memória 
interna, a capacidade é geralmente especificada em razão das palavras ou dos bytes (1 byte= 8 bits). Os 
tamanhos mais usados para palavras são geralmente 8, 16, 32 ou 64 bits. No caso da memória externa, a 
capacidade é tipicamente expressa em bytes. 
• Unidade de transferência 
Um conceito que está relacionado ao assunto é a unidade de transferência de dados (UTD). Na 
memória interna, a UTD é proporcional ao número de linhas de dados do módulo de memória. 
Geralmente o número de linhas é igual ao tamanho da palavra. 
Para entender bem, veja estes três conceitos relacionados à memória interna: 
Unidade endereçável 
Em vários sistemas, a unidade endereçável de dados é a palavra. Contudo, outros sistemas 
permitem endereçamento de bytes. Em ambos os casos, a relação entre o tamanho em bits A de 
um determinado endereço e o número de unidades endereçáveis, onde N é 2ª = N . 
 
Palavra 
É naturalmente a unidade de organização de uma memória. O tamanho de uma palavra é 
geralmente igual ao número de bits usados para a representação de um número inteiro e ao 
tamanho de uma instrução. Entretanto, há várias exceções. Um exemplo que vale a pena 
mencionar foi o primeiro supercomputador da história, o Cray 1, que teve seu lançamento no ano 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
19 
de 1976, criado pelo norte-americano Seymour Cray. No CRAY 1 uma palavra tinha 64 bits, porém 
a representação de números inteiros utilizava 24 bits. Outro exemplo foi a arquitetura VAX 
(Virtual Address eXtension), que foi uma família de minicomputadores de 32 bits, fabricado pela 
Digital (Digital Equipment Corporation) no ano de 1978. No VAX uma palavra tem 32 bits e há uma 
grande variedade de tamanhos das instruções, representados como múltiplos de byte. 
 
Unidade de transferência 
A unidade de transferência de dados da MP é o número de bits que podem ser escritos ou lidos de 
cada vez. Não há necessidade de ser igual a uma palavra ou à unidade endereçável de dados. No 
caso das memórias externas, as transferências são em unidades maiores que uma palavra, estas 
unidades são chamadas de blocos. 
 
06 
• Método de acesso 
O método de acesso aos dados é uma das maneiras de diferenciar os tipos de memória. Iremos destacar 
o acesso aleatório. 
No acesso aleatório, cada posição de memória endereçável possui um mecanismo único de 
endereçamento a ela fisicamente conectado. O tempo de acesso a uma determinada posição é 
constante e não depende da sequência de acessos anteriores. 
Dessa forma, qualquer posição será selecionada aleatoriamente, sendo acessada e endereçada 
diretamente. A MP, bem como algumas memórias cache, são exemplos de dispositivos de memória de 
acesso aleatório. 
• Desempenho 
A partir da visão do usuário, as características que mais se destacam em relação à memória são seu 
desempenho e sua capacidade. Há parâmetros que são usados para mensurar este desempenho, são 
eles: 
Tempo de ciclo de memória 
Conceito aplicável em especial a memórias de acesso aleatório e compreende no tempo de acesso 
e o tempo adicional antes que um segundo acesso seja iniciado. Esse tempo a mais poderá ser 
necessário para que haja o desaparecimento de transientes nas linhas de sinais ou para a 
regeneração dos dados, caso a leitura seja para subscrever o conteúdo. 
 
Tempo de acesso 
Em uma memória de acesso aleatório, é o tempo despendido para haver uma operação de escrita 
ou de leitura. Também é o tempo passado desde o instante em que um endereço é apresentado à 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
20 
memória até o momento estão disponíveis para utilização ou armazenados. 
 
07 
• Tecnologias 
Várias tecnologias estão sendo usadas para fabricar memórias para computadores. Geralmente as 
memórias mais usadas são: 
• as memórias de semicondutor ou memórias semicondutoras, 
• memórias de superfície magnética (discos e fitas magnéticas), 
• as memórias ópticas e 
• magneto-óptico. 
• Características físicas 
As características físicas de armazenamento são de suma importância. Em uma memória volátil há perda 
de dados quando a energia é desligada. Na memória não-volátil, a partir do momento que os dados são 
gravados, permanecem disponíveis após o desligamento do computador. As memórias de semicondutor 
podem ser não-voláteis como voláteis. As memórias de superfície magnética (HD) são não-voláteis. 
• Organização 
A organização de memória é o arranjo físico dos bits para formar PALAVRAS. 
 
A organização é um aspecto que deve ser observado no projeto de memórias de acesso aleatório. 
Geralmente é fornecido como sendo o número de posições de memória versus o número de bits por 
posição como, por exemplo, 2kB, ou seja, 2x1024 Bytes ou 2048x8bits. 
Memórias Semicondutoras 
São memórias produzidas com componentes de estado sólido e dividem-se em dois tipos básicos: 
RAM (Random Access Memory) e ROM (Read Only Memory). 
 
Discos e fitas magnéticas 
Pode parecer incrível, mas as fitas magnéticas e os discos ópticos são os principais representantes 
para armazenamento de dados. Ousamos dizer que, provavelmente, é o suporte de dados mais 
antigos e ainda muito utilizados em sistemas computacionais, embora tenha havido várias 
evoluções desde sua criação na década de 1950. 
Taxa de transferência 
É a medida na qual os dados podem ser transferidos de ou para a unidade de memória. Na 
memória de acesso aleatório, é expressa da seguinte forma: 1/(tempo de ciclo) = 1 /Tc. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
21 
 
08 
2 - HIERARQUIA DE MEMÓRIA 
Nos computadores a memória é organizada de forma hierárquica. Esta hierarquia começa pela 
proximidade física ao processador. Vamos fazer uma analogia com uma pirâmide. 
Ao imaginarmos uma pirâmide, podemos visualizar que o nível mais alto (topo da pirâmide) é composto 
de registradores do processador, estão próximos fisicamente ao processador. Logo depois, do topo para 
baixo, há níveis de memória cache, que são chamados de caches L1, L2, L3 e L4. 
 
Mantendo a sequência, de cima para baixo, há a chamada memória principal, que geralmente utiliza 
módulos de memória dinâmica de acesso aleatório (DynamicRandom-Access Memory – DRAM). Essas 
memórias são chamadas de memórias internas ao sistema de computação. 
Memórias ópticas 
São memórias que utilizam a polarização e refração da luz. Os CDs gravam informações em duas 
dimensões, mas já experimentos que são capazes de armazenar em cinco dimensões. Um exemplo 
prático do uso de CD e DVD são os que armazenam informações e programas, sendo utilizados na 
instalação de programas no computador. 
Memória volátil 
São memórias que perdem o conteúdo retido quando deixam de seralimentadas (RAM). 
Memória não-volátil 
São memórias que retêm a informação mesmo quando não estão alimentadas (ROM). Dentre as 
memórias não-voláteis, sobressaem-se as memórias permanentes de computadores, que retêm 
programas de BIOS, SETUP e DIAGNÓSTICO,fabricadas pelos AWARD, PHOENIX, AMI etc. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
22 
Esta estrutura hierárquica continua com a memória externa, na qual o nível subsequente é tipicamente 
composto por um HD fixo (disco rígido fixo), e com os níveis abaixo constituídos de meios removíveis, 
tais como discos ópticos, memória flash e fitas magnéticas. 
09 
Conforme vamos descendo pela hierarquia da memória, há também uma diminuição do custo por bit, 
isto é, a capacidade de memória vai aumentando, mas o tempo de acesso torna-se mais lento. Em 
virtude disso, você há de convir que o ideal é a utilização de apenas memórias mais rápidas; contudo, 
estas memórias são muito caras. Sendo assim, para manter um equilíbrio entre custo e o benefício, o 
tempo de acesso sofre diminuição em favor do custo mais baixo, e por consequência, utilizando 
memórias que são mais lentas. 
Fica evidente que diante desta situação criaram-se artifícios para facilitar e aumentar a performance. 
Uma das ideias foi organizar os dados e também os programas na memória de tal forma que as palavras 
de memória mais requisitadas sejam localizadas e encontradas de forma mais rápida. 
Geralmente, os acessos futuros à memória principal pelo processador sejam posições recentemente 
usadas na memória. Sendo assim, a memória cache mantém uma cópia das palavras da memória usadas 
recentemente. Isto agiliza o processo, pois as palavras que serão requisitadas pelo processador 
provavelmente estarão armazenadas na memória cache. 
10 
As limitações de um projeto de memória são possíveis de resumir em três itens: 
• quanto ao custo, 
• quanto à velocidade e 
• quanto à capacidade de armazenamento. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
23 
 
11 
Uma gama de tecnologias é empregada na implementação de sistemas de memória, mas o mais 
importante nesta implementação é observar as seguintes relações: 
- capacidade maior com um custo por bit menor; 
- capacidade maior com um tempo de acesso menor. 
- tempo de acesso mais rápido com o custo por bit maior; 
Observamos que o projetista de um sistema de memória precisa estar atento que a tecnologia 
empregada forneça grande capacidade de armazenamento de dados, com desempenho melhor e com 
tempo de acesso menor. Uma maneira para ajudar os projetistas foi empregar uma hierarquia de 
memórias, conforme já vimos. Para ajudar no entendimento desta hierarquia, observe a figura abaixo e, 
tomando como referência o topo da pirâmide, à medida que descemos há as seguintes relações: o custo 
por bit diminui, a capacidade aumenta, o tempo de acesso aumenta e a frequência de acesso à memória 
pelo processador diminui. 
Desta forma, as memórias menores e mais caras, porém, mais rápidas são combinadas com memórias 
maiores e mais baratas e também mais lentas. O grande segredo desta estrutura é a diminuição da 
frequência de acessos. Isto é em virtude dos registradores, memória cache e MP serem 100.000 vezes 
mais rápidas que as memórias (secundárias) que são os discos (HD). 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
24 
 
12 
Uma memória importante, mais cara e menor, é a memória FLASH, que é constituída de registradores 
internos do processador. Geralmente um processador possui várias centenas de registradores internos. 
O personagem principal das memórias internas é a MP (memória principal). Cada posição da MP possui 
endereço único. A maioria das instruções de máquina faz referência a um ou mais endereços da MP. 
Geralmente a MP é combinada com uma memória cache menor e de velocidade maior. A maioria de nós 
(usuários) e até mesmo usuários avançados (desenvolvedores de software) não prestamos atenção à 
memória cache. Mesmo passando despercebida a memória cache desempenha o papel importante de 
ser a responsável pela organização da movimentação de dados entre os registradores do processador e 
a MP, com o intuito de melhorar a performance. 
Observando a hierarquia, os registradores, memória cache e MP são os tipos de memória voláteis que 
utilizam a tecnologia de semicondutores. Este uso de 3 níveis de memória explora o fato de existir uma 
gama de tipos de memória de semicondutor que possuem diferenças no custo e na velocidade. 
Para o armazenamento de dados de forma permanente são usados dispositivos externos de 
armazenamento de massa, dentre os mais conhecidos temos: 
• os HD (Hard Disc - discos rígidos), 
• discos SSD (Solid State Drive) - são parecidos com os HDs, entretanto, os SSDs não utilizam 
discos magnéticos ou cabeças de leitura, mas gravação por chips de memória flash (NAND) não 
volátil, similar aos usados em pendrives.), 
• mídia removíveis (HD externo, pendrives, cartões SD), 
• fitas e dispositivos ópticos (CD-ROM, DVD, Blue Ray). 
13 
Há também a possibilidade de utilizar parte da MP como área de armazenamento temporário de dados 
que depois serão gravados em disco. Essa técnica é chamada de cache de disco, que tem por objetivo 
melhorar o desempenho do sistema fazendo operações de escrita em disco de forma agrupada ou invés 
de fazer transferências de pequenas quantidades de dados. Outra maneira é que alguns dados a serem 
escritos em disco podem ser referenciados outra vez pelo programa e antes que aconteça uma nova 
transferência de dados da cache para esse disco. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
25 
Nos primórdios da computação, quando dos primeiros computadores, a tecnologia mais utilizada na 
época para fabricação da MP de acesso aleatório era utilizando um grupo de anéis de material 
ferromagnético, chamados de núcleos. Desde o seu aparecimento, as memórias que utilizam a 
tecnologia da microeletrônica são muito mais superiores às memórias de núcleo magnético. Nos dias 
atuais, o uso de pastilhas de semicondutores para a MP é muito difundido. Observe a figura abaixo 
sobre os tipos de memória de semicondutor: 
 
Na figura acima o tipo de memória de semicondutor mais conhecida é a memória de acesso 
aleatório (RAM - Random Access Memory). A RAM tem uma particular característica de possibilitar a 
leitura e gravação (escrita) de dados sejam de maneira fácil e rápida. Esta gravação e leitura são 
realizadas por meio de sinais elétricos. 
14 
3 - MEMÓRIA RAM 
Como já foi mencionado anteriormente, a memória RAM é volátil em virtude de necessitar de 
fornecimento de energia constante, pois caso seja interrompido este fornecimento, será perdido 
os dados. Consequentemente, a memória RAM é utilizada para armazenamento temporário de 
dados. 
 
A tecnologia da memória RAM é dividida em dinâmica e estática. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
26 
 
Tanto a memória RAM dinâmica quanto a RAM estática têm por característica serem voláteis. O 
posicionamento de uma memória dinâmica é muito simples e, por consequência, tem o tamanho menor 
em relação à memória estática. A RAM dinâmica tem células menores que implicam em mais células por 
unidade de área, isto a torna mais densa e também mais barata do que a RAM estática. Contudo, ela 
requer um circuito de regeneração. Sendo assim, no caso de memórias de grande capacidade, o custo 
fixodo circuito de regeneração será compensado pelo menor custo das células da RAM dinâmica. 
Consequentemente, as RAM dinâmicas têm mais vantagem no quesito capacidade maior. Um detalhe 
importante a ser frisado é que as memórias estáticas são geralmente mais rápidas que as dinâmicas. 
15 
4 - MEMÓRIA ROM 
Contrastando com a memória RAM, há a memória chamada de “apenas de leitura” (Read-Only Memory 
– ROM). O nome nos remete que a ROM contém mantêm os dados e que eles não devem ser alterados. 
Embora ela permita ler seus dados, em contrapartida, ela não permite altera-los. A ROM tem sua 
importância destacada na microprogramação, nas bibliotecas de sub-rotinas, programas do sistema e 
tabelas de funções. Caso a capacidade de memória necessária for pequena, a vantagem da utilização de 
uma memória ROM é que os programas ou dados estão permanentemente armazenados na PM, não 
necessitando serem carregados a partir de um dispositivo de armazenamento secundário. 
Uma alternativa de menor custo para ROM é a PROM (programmable ROM), isto geralmente ocorre 
quando é necessário um pequeno número de memórias ROM com dado conteúdo de memória. Como 
pode ser evidenciado pelo nome “programmable”, a PROM é similar à memória ROM, e a PROM 
também é não-volátil, sendo que os dados podem ser gravados, mas apenas uma única vez. A gravação 
em uma memória PROM é feita eletricamente e geralmente é feita pelo usuário ou pelo fornecedor, 
após a fabricação da pastilha original. 
Variações principalmente da memória apenas de leitura, são mais úteis em aplicações que exigem 
armazenamento não-volátil e há uma certa frequência de operações de leitura em relação às operações 
de escrita. Existem três maneiras mais comuns de MP de leitura, que são: 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
27 
• memória flash, 
• EEPROM e 
• EPROM. 
Memória flash 
A memória FLASH é outro tipo de memória de semicondutor que tem este nome em virtude da 
velocidade com que pode ser programada. A memória FLASH foi criada na década de 80, mostra 
características intermediárias entre a EEPROM e a EPROM, tanto na funcionalidade como no custo. 
Similarmente a EEPROM ela utiliza a tecnologia de apagamento elétrico dos dados, podendo em 
poucos segundos ter seu conteúdo apagado completamente. Também é possível apagar alguns 
blocos de memória e não a pastilha inteira. 
 
 
EEPROM 
A EEPROM (memória apenas de leitura programável e apagável eletricamente) os dados podem 
ser gravados sem que seja necessário apagar todo o seu conteúdo atual. Esta memória combina a 
vantagem da flexibilidade com a não volatilidade em virtude de poder ser diretamente atualizada, 
por meio das linhas de dados e de endereço usuais e do barramento de controle. 
 
EPROM 
EPROM (memória programável apenas de leitura) pode ser subscrita (apagada) por um processo 
ótico em que os dados podem ser gravados e lidos eletricamente. Todavia, antes de qualquer 
operação de escrita, todas as células de memória devem ser apagadas, voltando a ter o valor 
inicial. 
 
16 
5 - CÁLCULO DA CAPACIDADE DE UMA MEMÓRIA PRINCIPAL 
Para calcular a capacidade de uma MP (Memória Principal) precisamos entender que as memórias RAM 
são organizadas em células, que podem conter parte de um dado ou o dado completo. A mensuração 
(medida) utilizada para sua capacidade é o bit (Kbit, Mbit etc.) ou em quantidade de células 
diretamente. Em virtude de cada célula conter, no máximo, um determinado dado, e cada célula é 
identificada por umendereço, o mais importante componente para a determinação da capacidade 
máxima de memória de um sistema é a quantidade de células (ou endereços) suportada por um 
sistema. Na maioria dos sistemas são usadas células de 1 Byte (8 bits), no dia a dia usamos geralmente 
em bytes, por exemplo, compra-se um computador com 4 megabytes de memória. Outro exemplo: 
dizemos que um computador tem um pente de memória de 128 MB – 128 MegaBytes. No último 
exemplo, estamos dizendo é o número de células. 
Para realizar conversões, é necessário lembrar que: 
2Kbytes = 2 x 1024 x 8 bits = 2 x 210 x 23 = 214 bits. 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
28 
Nas células são armazenados bits, então para determinada célula de M bits, podemos ter 2M diferentes 
símbolos. E uma célula com capacidade de 8 bits, podemos ter até 256 símbolos, que vão de 00000000 
até 11111111. 
Caso determinada memória principal possua N endereços e E é a quantidade de bits que o compõe cada 
um dos N endereços, consequentemente N = 2E. Essa memória principal terá, por consequência, a 
capacidade de armazenar T igual a N x M = 2E x M. 
Então podemos resumir que para calcular o total de bits de uma memória principal é igual a N x M. 
Então: 
N = 2E, então, MP = 2Ex M. 
 
17 
RESUMO 
 
Estudamos neste módulo que a localização, capacidade, unidade de transferência e método de acesso 
são características dos sistemas de memória dos computadores. Vimos que há uma hierarquia no acesso 
à memória conforme a sua proximidade física ao processador. Entendemos que a forma hierárquica da 
organização da memória no computador é em virtude de como é a sequência de utilização e acesso à 
memória. Por proximidade o processador acessa primeiro a memória cache, depois a Memória Principal 
(MP) e depois a memória secundária. Esta é a maneira básica do uso dos recursos de memória em um 
computador. 
Várias tecnologias são empregadas na implementação de um sistema de memória. É interessante 
observar que o mais importante nesta implementação é conseguir uma capacidade de armazenamento 
maior com um custo por bit menor. Isto é, uma memória principal (MP) com maior capacidade e com 
um custo baixo (mais barata). Entretanto, ao compararmos com uma memória secundária (exemplo: 
HD) com a MP é fácil notar a diferença de capacidade de armazenamento, mas o acesso ao HD é muito 
mais lento do que o acesso a MP. 
Vimos que há a memória RAM e ROM e as respectivas diferenças entre elas. No caso da memória RAM 
ela é dividida em dinâmica e estática em virtude da tecnologia utilizada. Uma RAM dinâmica é 
constituída por células que armazenam dados com a carga de capacitores. Contrastando com a memória 
RAM, há a memória chamada de “apenas de leitura” (ROM). O nome nos remete que a ROM contém e 
mantêm os dados e que eles não devem ser alterados. Embora ela permita ler seus dados, em 
contrapartida, ela não permite alterá-los. A ROM tem sua importância destacada na microprogramação, 
nas bibliotecas de sub-rotinas, programas do sistema e tabelas de funções. 
E por fim, vimos que para calcular a capacidade de uma MP precisamos entender que as memórias RAM 
são organizadas em células, que podem conter parte de um dado ou o dado completo. A mensuração 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
29 
(medida) utilizada para sua capacidade é o bit (Kbit, Mbit etc.) ou em quantidade de células 
diretamente. 
UNIDADE 3 – FUNCIONAMENTO E COMPONENTES BÁSICOS 
MÓDULO 3 – UCP – UNIDADE CENTRAL DE PROCESSAMENTO 
01 
1- ESTRUTURA INTERNA E FUNCIONAMENTO DO PROCESSADOR (CPU) 
Prezados estudantes, até o momento, já vimos algumas informações sobre o que é um processador. 
Estudamos também que há uma interação muito grande entre a UCP – unidade central de 
processamento ou CPU (processador), memória e dispositivos de entrada e saída. Neste módulo iremos 
nos aprofundar um pouco mais. Vamos observar a estrutura interna e o funcionamento da UCP. Ao final 
entenderemos que a UCP é composta pela unidade de controle, dos registradores, da unidadearitmética e lógica, da unidade de execução de instruções e das interconexões entre esses 
componentes. 
Geralmente quando o assunto é processador, a comparação clássica é que ele é o cérebro do 
computador e, embora seja uma comparação interessante e didática, esta definição está um pouco 
distante do que seja realmente o funcionamento de um processador. 
Agora, quando falamos do processador como componente eletrônico, dizemos que ele é um tipo 
especializado de microchip (circuito eletrônico miniaturizado). Destacamos que ele é composto por três 
componentes principais, que são: 
• a ULA – unidade lógica aritmética, 
• a UC – unidade de controle e 
• os Registradores. 
Veremos, oportunamente, cada um desses componentes. 
02 
As atividades realizadas pela CPU podem ser divididas em duas grandes categorias funcionais: 
função processamento e função controle. 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
30 
Dentre as várias tarefas importantes da CPU destacam-se as seguintes: 
• buscar na memória a instrução a ser executada; 
• interpretar que operação a instrução está explicitando; 
• buscar os dados onde estiverem armazenados; 
• executar efetivamente a operação com os dados e armazenar o resultado no local definido 
pela instrução; 
• reiniciar o processo, buscando a próxima instrução. 
Em suma, o processador é um poderoso dispositivo que realiza cálculos. As tarefas da CPU 
consistem, então, em: 
• endereçar, 
• acelerar, 
• preparar dados ou resolver conforme a aplicação ou as demandas. 
 
03 
Para ajudar na compreensão sobre processador, assista a este vídeo disponível no YouTube, que trata 
das características e funções do processador. O vídeo é muito interessante e vale a pena investir alguns 
minutos assistindo. 
https://www.youtube.com/watch?v=IfOIB4-pn1k 
04 
2 - COMPONENTES DO PROCESSADOR 
O processador é formado por um conjunto de componentes, sendo que cada um tem um papel 
específico no processamento de um dado, uma informação, um programa e etc. 
 
Enfim, é este conjunto de componentes que chamamos de processador ou UCP. Sendo assim, o papel 
principal do processador é tornar possível a execução dos programas. A seguir veremos cada um desses 
componentes. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
31 
05 
• ULA - Unidade Lógica Aritmética 
A ULA – unidade lógica aritmética, também chamada de ALU (Arithmetic Logic Unit), é o dispositivo 
principal da função processamento. 
A ULA é a responsável principal por realizar as operações matemáticas e booleanas. Tem por 
incumbência, como o próprio nome já deixa claro, realizar as operações matemáticas requisitadas 
durante o processamento (execução) de um programa. 
 
Quando falamos a sigla ULA parece que estamos fazendo referência à dança havaiana HULA, mas ULA 
(Unidade Lógica e Aritmética), como o próprio nome sugere e também já falamos, é o componente 
responsável em realizar as operações aritméticas e lógicas sobre os dados. Até poderíamos nos arriscar 
a usar o exemplo da dança havaiana HULA, para efeito de memorização, já que a ULA é a responsável 
pela “dança das operações aritméticas e lógicas dos dados” no processador. Todos os componentes de 
uma máquina (computador), como: registradores, unidade de controle, dispositivos de entrada e saída 
(E/S) e memória, enfim, todos eles têm como principal serventia trazer os dados para serem 
processados pela ULA e receber os resultados. Podemos, então, afirmar que a ULA é o núcleo ou a 
essência de uma máquina (computador). 
Assim como todos os demais componentes eletrônicos de um computador, a ULA tem como base 
dispositivos lógicos digitais simples, os quais têm capacidade de armazenar dígitos binários e efetuar 
operações simples de lógica booleana. 
06 
Observe a figura e veja como a ULA está conectada com o restante do processador e outros 
componentes do computador. 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
32 
Tanto os dados fornecidos à ULA, bem como o resultado de uma operação, são armazenados nos 
registradores. Esses registradores são áreas de armazenamento temporário dentro do processador, 
conectadas à ULA por meio de caminhos de sinais (barramento). A ULA pode também ativar flags (bits 
especiais) que indicam o resultado de uma operação. 
Caso haja uma operação que exceda a capacidade de armazenamento de um registrador, isso é indicado 
atribuindo o valor 1 ao bit de overflow (estouro de memória). Cabe à unidade de controle o 
fornecimento de sinais para fazer o controle da ULA e também pela transferência de dados entre a ULA 
e os registradores. 
Overflow 
É um estouro de memória, ou seja, condição que ocorre quando os dados resultantes do 
processamento ou de entrada necessitam de mais bits do que os que foram fornecidos no 
hardware ou no software para armazenamento de dados. 
 
07 
• UC - Unidade de controle 
A unidade de controle é o dispositivo mais complexo da CPU. 
A UC é responsável pelo controle das atividades de todos os componentes da máquina 
(computador). 
 
Um exemplo seria o controle da gravação de um dado no HD (Disco Rígido), outro exemplo seria uma 
determinada busca de instrução da memória principal. 
Além de possuir a lógica necessária para realizar a movimentação de dados e instruções de e para a 
CPU, a unidade de controle, como o próprio nome sugere, controla a ação da ULA. Os sinais de controle 
emitidos pela UC ocorrem em vários instantes durante o período de realização de um ciclo de instrução 
e, de modo geral, todos possuem uma duração fixa e igual, originada em um gerador de sinais 
comumente conhecido como relógio (clock). 
Clock 
É o dispositivo gerador de pulsos cuja duração é chamada de ciclo. A quantidade de vezes em que 
este pulso básico se repete em um segundo define a unidade de medida do relógio, denominada 
frequência, a qual também usamos para definir velocidade na CPU. 
 
08 
• Registradores 
Este componente do processador tem por característica ser veloz, localizado fisicamente próximo à UCP, 
tem por função principal guardar parte das informações que estão na memória principal. Ele funciona 
como uma memória interna de alta performance ou alto desempenho. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
33 
Os registradores funcionam como pequenas unidades de memória, implementadas na CPU, com as 
seguintes características: 
 
Além dos registradores de dados, a CPU possui sempre outros registradores com funções específicas ou 
que funcionam para a área de controle, os quais não participam diretamente da função processamento. 
Os registradores mais conhecidos são o contador de programa (PC) e o registrador de instrução (IR). De 
maneira resumida, cabe ao contador de programa sinalizar qual será a próxima instrução (programa) a 
ser executada e ao registrador de instrução cabe a execução de fato da instrução (programa). 
09 
3 - MAIS SOBRE A UCP: MEMÓRIA CACHE, MMU, HERTZ, EVOLUÇÃO 
Memória cache 
No módulo sobre memória vimos os vários tipos de memórias e suas características. Neste momento, 
iremos dar destaque para a memória cache. Você deve lembrar que ela é a responsável pelo 
armazenamento das instruções dentro do processador. Quando diante de determinada quantidade de 
dados que a CPU possa vir a ter que processar, será no cache que serão alocadas as informações que 
estão sendo constantemente requisitadas. Esta estratégiade armazenar o que está “sendo 
constantemente requisitado” tem por objetivo agilizar o processamento ao armazenar no processador 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
34 
os dados que estarão rapidamente acessíveis. Esta técnica evita e torna desnecessário percorrer o HD 
ou a RAM para buscar este tipo de informação. 
MMU (Memory Management Unit) 
Este dispositivo é o responsável em transformar as instruções lógicas (virtuais) em endereços físicos na 
memória RAM (memória principal). A MMU registra onde está localizada cada informação do sistema 
tornando possível ao processador saber onde buscar os dados e instruções na memória. A MMU é a 
coordenadora do funcionamento da memória, tornando possível o processador ser rápido ao agilizar o 
acesso à memória RAM. 
10 
Comparar processadores era algo que há um tempo atrás ficava restrito a computadores, mas com a 
popularização de smartphones e tablets esse cenário mudou. O processador é o coração do smartphone 
e é o responsável por fazer tudo funcionar. É preciso prestar atenção no número dos núcleos (cores) e 
no clock (quantos GHz) dele para avaliar o seu desempenho. Quanto mais núcleos e mais velocidade, 
melhor o desempenho do smartphone. 
Assim como em um computador, o processador é responsável pela velocidade de execução de tarefas 
(jogos, vídeos, câmeras, etc.) e aliado à memória e a outros fatores, garante a eficiência e a usabilidade 
do aparelho. 
Assista a um vídeo que fala um pouco sobre o funcionamento do processador de um smartphone. 
http://olhardigital.uol.com.br/embed/saiba-como-funciona-o-processasdor-de-seu-smartphone/35102 
11 
O que é HERTZ? 
Durante o tempo que você investiu ao assistir o vídeo anterior deve ter notado que a palavra HERTZ foi 
mencionada algumas vezes. Provavelmente deve ter observado que “que o equipamento XYZ tem mais 
ou menos Hertz”. 
Você conseguiu entender o que significa um processador ter tantos Hertz? 
Então vamos entender! 
Veja que interessante esta especificação de um fabricante a respeito de um processador (UCP): 
3ª Geração do Processador Intel® Core™ i3-3217U (1.8GHz, 3Mb Cache, Placa de vídeo Intel HD 
Graphics Integrada). 
 
Veja que foi destacado em negrito o 1.8GHz para destacar que, caso você não tenha compreendido o 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
35 
significa Hertz (Hz), entenda que é o quanto um processador troca dados com o sistema. Utilizando o 
exemplo acima: Processador Intel® Core™ i3-3217U 1.8GHz . Notamos que ele oferece 1.8GHz, isto quer 
dizer que ele é capaz de realizar 1,8 bilhões de ciclos por segundo. 
Há um componente fundamental para medir estes ciclos e orientar o fluxo de troca de informações no 
processador, este componente é o circuito clock, que estabelece os critérios de velocidade do 
processador. 
12 
Evolução dos processadores 
Para você compreender a evolução dos processadores nos dias atuais, empresas fabricantes de 
processadores como Intel e AMD (AdvancedMicro Devices) estão investindo em processadores 
chamados APUs (Accelerated Processing Unit), que numa tradução direta significa: Unidade de 
Processamento Acelerada. 
O diferencial em relação aos processadores normais é que as APUs trazem, no mesmo conjunto, CPU e 
GPU (Unidade de ProcessamentoGráfico ou Graphics Processing Unit), oferecendo uma velocidade 
muito maior de processamento gráfico. Mesmo as APUs trazendo o vídeo integrado, esta solução é 
diferente do modelo anterior de chips gráficos onboard (onboard, tradução “na placa”, 
consequentemente, quando você ouvir dizer que um computador é “onboard”, significa que a placa-
mãe (motherboard / mainboard) responsável por conectar e interligar todos os componentes do 
computador) tem um ou mais dispositivos integrados, os quais podem incluir uma placa de rede, vídeo, 
som, vídeo e etc. 
 
Uma das maiores vantagens é a velocidade de comunicação entre CPU e GPU, aumentando 
significativamente o tempo de resposta e, em consequência, otimizando todo o sistema. 
13 
Assista ao vídeo da AMD, disponível na página do Youtube, e veja o que é APUs - Accelerated Processing 
Unit. 
https://www.youtube.com/watch?v=Fd-TNIhcmbg 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
36 
14 
4 -INSTRUÇÕES DE MÁQUINA 
Bom, até agora estávamos fazendo uma introdução do que venha ser uma UCP ou CPU, seus 
componentes e algumas características. Todavia, precisamos nos aprofundar e falar sobre o que são 
instruções de máquina. 
Um computador pode executar tarefas complicadas e sucessivas se for “instruído” sobre o que fazer e 
em que sequência isso deve ser jeito. Os seres humanos, ao receberem uma instrução do tipo “trazer a 
pasta do funcionário Pedro”, são capazes de localizar o arquivo onde estão as pastas de todos os 
funcionários – geralmente por ordem alfabética – e encontrar a pasta, trazendo-a a quem solicitou. 
Nessa tarefa, o nosso cérebro realizou uma série de ações intermediárias para que a instrução fosse 
concluída com sucesso. Entretanto, se a mesma instrução fosse dada a uma máquina e ela não tivesse 
qualquer orientação prévia registrada, jamais conseguiria localizar e trazer a pasta solicitada. Para a 
máquina, é necessário que a instrução seja detalhada em pequenos passos e numa linguagem própria, 
visto que ela é programada para ser capaz de entender só dessa forma, ou seja, em pequenas 
operações. No exemplo, a máquina deveria receber um conjunto de instruções específicas para ela, as 
chamadas instruções de máquina. 
O conjunto de instruções da máquina constitui o limite em que o projetista e o programador de 
computadores visualizam em um mesmo computador. Na visão do projetista, o conjunto de instruções 
de máquina fornece os requisitos funcionais para a CPU. Caso uma pessoa resolva utilizar a linguagem 
de máquina (Assembly) para programar, o primeiro passo será entender e conhecer sobre a estrutura de 
memória, sobre o conjunto de registradores da CPU, funcionamento da ULA e os tipos de dados 
disponíveis diretamente na máquina. 
A operação de uma CPU é determinada pelas instruções que ela executa, chamadas de instruções 
do computador ou instruções de máquina. A coletânea de diversas e diferentes instruções capazes 
de serem executas pela CPU é chamada de conjunto de instruções da CPU. 
 
15 
Internamente, cada instrução de uma máquina (computador) é representada como uma sequência de 
bits. Uma instrução é dividida em campos, correspondentes aos elementos da instrução. A CPU deve ser 
capaz de extrair os dados dos vários campos da instrução e efetuar a operação requerida. 
Torna-se difícil para um desenvolvedor de software (programador) lidar com representações binárias de 
instruções de máquina. Consequentemente, tornou-se usual a prática de usar uma representação 
simbólica para instruções de máquina. 
Os códigos de operação são representados por abreviações, que indicam a operação a ser efetuada. 
Veja na tabela abaixo um exemplo: 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
37 
 
Veja um exemplo em que os operandos são representados de maneira simbólica: 
ADD W, Z 
 
A instrução acima significa adicionar o valor contido na posição Z com o conteúdo do registrador W. 
Neste caso, Z é um endereço de uma posição de memória e W indica um registrador específico. 
Podemos notar que a operação é feita sobre o conteúdo da posição de memória, e não sobre seu 
endereço.Operando 
Em matemática, um operando é uma das entradas (argumentos) de um operador. Por exemplo, 
em 3 + 6 = 9, 
+ é o operador e 3 e 6 são os operandos. Em código de máquina é bem parecido. Um operando é 
um valor (um argumento) no qual a instrução opera. O operando pode ser um registrador, um 
endereço de memória, uma constante literal, ou um rótulo. Um exemplo simples na arquitetura PC 
é: 
MOV DS, AX 
em que o valor no operando registrador AX deve ser movido (MOV) para o registrador DS. 
Dependendo da instrução, pode haver zero, um, dois ou mais operandos. 
 
16 
Consequentemente, há a possibilidade de se escrever um programa utilizando-se linguagem de máquina 
de maneira simbólica. Cada código de operação simbólico tem um correspondente em representação 
binária, e cabe ao programador especificar qual o endereço de cada operando simbólico. O 
programador, por exemplo, pode especificar que Q = 8212 e E = 8213. Uma entrada simbólica pode ser 
“traduzida”, por meio de um programa, códigos de operações e referências em operandos na forma 
binária, tendo como resultado instruções de máquinas binárias. 
Atualmente, é muito difícil encontrar programadores que gostem de utilizar (programar) utilizando 
linguagem de máquina. A grande parte dos programas é escrita em linguagem chamadas de alto 
nível (java, pyton, shell script). Mesmo assim, a linguagem de máquina simbólica ainda permanece 
sendo uma ferramenta muito útil para a descrição de instruções de máquina. 
Um computador (estação de trabalho) deve possuir um conjunto de instruções que possibilita ao 
usuário criar qualquer tarefa de processamento de dados. Um programa qualquer que utiliza linguagem 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
38 
de alto nível pode ser traduzido para uma linguagem de máquina, para que depois possa ser executado. 
Em consequência, o conjunto de instruções de máquina deve ser capaz de expressar qualquer comando 
de uma linguagem de alto nível. 
Operando 
Genericamente vários tipos de operandos que podem ser referenciados em uma instrução de 
máquina: 
• Operandos implícitos: são aqueles que, embora não explicitados na área de operandos da 
instrução, serão utilizados no seu processamento. 
• Operandos imediatos: são aqueles cujo valor faz parte da instrução; 
• Operandos indiretos: são aqueles onde a referência contida na instrução aponta para o local 
onde o valor do operando está armazenado. 
 
17 
A seguir iremos relacionar os tipos de instruções de máquina: 
• Movimentação de dados: instruções de memória; 
• Processamento de dados: instruções aritméticas e lógicas; 
• Armazenamento de dados: instruções de memória; 
• Controle: instruções de desvio e de teste. 
 
Instruções aritméticas proporcionam capacidade computacional para processar dados numéricos. 
As instruções booleanas operam sobre bits de uma PALAVRA; disponibilizam, então, uma capacidade 
para processar todo tipo de dado que o usuário desejar. Essas operações são primariamente efetuadas 
em dados guardados em registradores da CPU, consequentemente, é isto que motiva a existência de 
instruções de memória para mover dados entre os registradores e a memória e vice-versa. 
Para a transferência de programas e dados para a memória e para a transferência dos resultados 
retornando para o usuário é que há as instruções de E/S (Entrada e Saída). Instruções de teste, como o 
próprio nome diz, são para fazer o teste do valor de uma palavra de dados ou o estado de uma 
execução. Para o desvio da execução de um programa para uma nova instrução é que há as instruções 
de desvio, geralmente em detrimento do resultado de um teste. 
Os campos de endereço, no formato de instrução típico, são relativamente pequenos. Com o intuito de 
possibilitar a referência a uma grande quantidade de posições de MP, técnicas variadas de 
endereçamento vêm sendo empregadas. A maioria dessas técnicas envolve decisões que contrapõem a 
quantidade de posições de memória endereçáveis e ou a flexibilidade de endereçamento ao número de 
referências à memória em cada instrução e/ou à complexidade do cálculo de endereços. 
18 
O formato de uma instrução especifica como será a disposição dos bits da instrução, conforme ele é 
formado. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
39 
Um formato de instrução deve ter um código de operação e zero ou mais operandos, 
explicitamente ou implícito. 
 
Cada operando explícito é feito referência utilizando-se os modos de endereçamento (endereçamento 
direto, registrador, indireto, deslocamento, pilha). O formato deve ser um indicador de maneira explícita 
ou implícita do modo de endereçamento para cada operando. São utilizados mais de um formato de 
instrução na maioria dos conjuntos de instruções. 
Para começo de um projeto sobre o tamanho de instrução, a questão primordial deste projeto 
é o tamanho do formato de instrução. Essa escolha interfere, e sofre interferência, pelo 
tamanho e pela maneira que a memória é organizada, pela complexidade e velocidade da UCP 
e pela estrutura de barramento (responsável em conectar à placa-mãe todos os componentes 
de um computador, como processadores, memórias, placas de vídeo). 
O dilema que se vislumbra é o conflito entre o desejo de oferecer uma variedade poderosa de 
instruções e a necessidade de economia de espaço. Programadores almejam mais operandos, 
mais códigos de operação, mais modos e maior espaço de endereçamento. Quantidade maior 
de operandos e códigos de operação facilitam o trabalho de programar, possibilitando escrever 
programas menores para executar determinada tarefa. Da mesma forma, mais modos de 
endereçamento dão ao programador flexibilidade maior na implementação de certas funções, 
tais como manipulação de tabelas e desvios com múltiplos endereços de destino. 
Saiba+ 
Em virtude do aumento da capacidade de armazenamento da MP e o uso crescente de memória 
virtual (somatório da MP e parte do HD), os programadores desejam endereçar uma maior área de 
memória. Códigos de operação, modos de endereçamento, operandos, endereços, requer bits na 
instrução, como consequência, instruções de maior tamanho. Todavia, instruções maiores podem 
significar desperdício, uma instrução de 32 bits ocupa duas vezes mais espaço que uma de 16 bits. 
 
19 
O tamanho da instrução deve ser proporcional ao tamanho da unidade de transferência de dados de e 
para a memória ou um deve ser múltiplo do outro. Caso contrário, não será obtido um número inteiro 
de instruções durante um ciclo de busca. Um aspecto importante é a taxa de transferência da memória. 
Essa taxa não está acompanhando o aumento da velocidade dos processadores. Então, a memória 
passará a ser o gargalo caso o processador seja mais rápido na execução das instruções. Uma solução 
adotada é usar instruções menores ou o uso de memória cache. 
Fica explícito que fixar o tamanho de instrução conflita com a capacidade de endereçamento e o 
número de códigos de operação. Número maior de códigos de operação impacta em mais bits no campo 
de código. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
40 
O projetista se vê, então, diante de um conjunto de fatores que deverão ser considerados e 
equilibrados. Ainda não está bem definido até onde é crítico a escolha de uma ou outra alternativa. 
Para entendermos como é a organização da UCP (CPU), é necessário considerar as seguintes ações que 
devem ser executadas: 
• Busca de dados: a execução de determinada instrução poderá solicitar a leitura de dados de um 
módulo de E/S (Entrada e Saída) ou leiturade dados da memória. 
• Interpretação de instrução: a instrução propriamente dita; 
• Busca de instrução: a CPU faz a leitura de determinada instrução da memória; 
• Escrita de dados: os resultados da execução poderão solicitar escrita dos dados em um módulo 
de E/S ou na memória. 
• Processamento de dados: execução de determinada instrução pode vir a solicitar que seja 
efetuada uma operação lógica ou aritmética sobre os dados. 
 
20 
Para a execução dessas ações, a UCP necessita guardar temporariamente alguns dados. Ela manterá a 
posição de memória da última instrução, para ter ciência da próxima instrução, e necessita também de 
armazenar temporariamente dados e instruções, enquanto determinada instrução é executada. Em 
suma, a UCP precisa de uma pequena memória interna. Você deve estar lembrado que os componentes 
mais importantes da UCP (CPU) são a ULA (unidade lógica e aritmética) e a UC (unidade de controle). 
Cabe à ULA efetuar o processamento de dados e a UC o controle da operação da ULA como também 
pela transferência de dados e instruções para fora e para dentro da UCP. 
A figura abaixo mostra o barramento interno da UCP, que nada mais é do que os caminhos de 
transferência de dados e de sinais de controle. Cabe a ele ser o responsável pela transferência dos dados 
entre os vários registradores e a ULA, uma vez que a ULA opera apenas com dados localizados na 
memória interna da UCP. A figura também mostra os elementos básicos de uma ULA. 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
41 
21 
Como estudamos anteriormente um sistema computacional emprega uma hierarquia de memória. Nos 
níveis mais altos a memória é mais rápida, menor e com o custo maior por bit. 
Na UCP, há um conjunto de registradores que funciona como um nível da hierarquia de memória acima 
da MP e da memória cache. Os registradores da UCP possuem duas funções: 
 
22 
RESUMO 
Durante o estudo deste módulo você compreendeu que um processador é um poderoso dispositivo que 
realiza cálculos. Conforme estão sendo processadas as instruções armazenadas na memória interna do 
processador, ele vai respondendo a esse volume e faz o processamento da informação. Estudamos que 
o processador é formado por um conjunto de componentes (ULA – Unidade Lógica Aritmética, UC – 
Unidade de controle, e Registradores), sendo que cada um tem um papel específico no processamento 
de um dado, uma informação, um programa e etc. A ULA é responsável pela execução das instruções 
dos programas. A Unidade de Controle (UC) é responsável por controlar as ações a serem realizadas. O 
registrador agiliza e armazena parte das informações que estão na memória principal, no intuito de 
evitar acesso contínuo a esta memória. Para finalizar, vimos que o conjunto de instruções da máquina 
constitui o limite em que o projetista e o programador de computadores visualizam em um mesmo 
computador. Na visão do projetista, o conjunto de instruções de máquina fornece os requisitos 
funcionais para a CPU. Na visão do usuário, que programar em linguagem de máquina (Assembly), há a 
necessidade do conhecimento básico sobre a estrutura de memória, sobre o conjunto de registradores 
da CPU, funcionamento da ULA e os tipos de dados disponíveis diretamente na máquina. A operação de 
uma CPU é determinada pelas instruções que ela executa, chamadas de instruções de máquina. A 
coletânea de diversas e diferentes instruções capazes de serem executas pela CPU é chamada de 
conjunto de instruções da CPU. 
UNIDADE 3 – FUNCIONAMENTO E COMPONENTES BÁSICOS 
MÓDULO 4 – DISPOSITIVOS DE ENTRADA E SAÍDA E BARRAMENTOS 
01 
1 - MÓDULOS DE ENTRADA E SAÍDA 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
42 
Neste módulo iremos fazer uma pequena introdução a respeito dos dispositivos de entrada e saída 
(E/S). Veremos que é um dispositivo de entrada/saída, como são os métodos de realização de operações 
de E/S (entrada/saída) e o importante papel do barramento na comunicação de todos estes dispositivos. 
Além da memória e do processador, outro elemento importante e fundamental de um sistema 
computacional é o conjunto de módulos de E/S (entrada e saída). Cada módulo está conectado por 
meio do barramento ao sistema ou com o computador central e controla um ou vários dispositivos 
periféricos. 
Um módulo de entrada e saída (E/S) não é apenas um conjunto de conectores mecânicos que estão 
ligando um dispositivo ao barramento do sistema. Na verdade há um certo “raciocínio” ou uma 
inteligência, ou seja, há uma lógica dedicada ao desempenho da função de comunicar um periférico ao 
barramento. 
Barramento 
É um conjunto de linhas de comunicação que permitem a interligação entre dispositivos, como a 
CPU, a memória e outros periféricos. 
 
02 
Você poderá ficar em dúvida e questionar o motivo dos periféricos não estarem diretamente 
conectados ao barramento do sistema. A resposta é simples e abaixo seguem os motivos: 
• Há uma gama de periféricos, com vários e diferentes mecanismos de operação. Não seria 
possível incorporar ao processador a lógica necessária para poder controlar dispositivos de 
vários tipos. 
• Em virtude da taxa de transferência de dados dos periféricos, na maioria das vezes, ser bem 
menor do que a taxa de transferência de dados do processador ou da memória, fica impossível 
utilizar barramentos do sistema de alta velocidade para comunicar-se diretamente com um 
periférico. 
• Na maioria das vezes os periféricos utilizam 
tamanhos de palavras e formatos de dados 
diferentes dos utilizados na máquina (computador) 
em que estão conectados. 
Em virtude das razões expostas acima, torna-se necessário 
um módulo de entrada e saída (E/S) que irá desempenhar 
as seguintes funções(observe a figura abaixo): 
• Fazer a interface com um ou mais dispositivos periféricos, 
por meio de conexões adequadas de dados. 
• Oferecer uma interface com a memória e com o 
processador, por meio do comutador central ou pelo 
barramento. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
43 
 
Comutador 
Dispositivo usado para inverter o sentido de uma corrente. Por exemplo, um interruptor. 
 
03 
2 - DISPOSITIVOS EXTERNOS 
Agora vamos falar dos dispositivos externos. As operações de entrada e saída são efetuadas utilizando-
se uma gama de dispositivos externos, que disponibilizam um meio para efetuar a troca de dados entre 
o computador e o ambiente externo. Por meio de uma conexão de um módulo de entrada e saída um 
dispositivo externo, é conectado, por exemplo, uma impressora (conforme figura acima). Para a 
transferência de dados, informações de controle e informações de estado entre o módulo de entrada e 
saída utiliza-se esta conexão. Chama-se de periférico ou dispositivo periférico o dispositivo externo 
conectado a um módulo de E/S (entrada e saída). 
Classificação dos dispositivos Externos 
Os dispositivos externos são classificados segundo sua finalidade ou sua função. Podem ser: 
• Voltados para a comunicação com dispositivos remotos; 
• Voltados para a comunicação com a máquina; 
• Voltados para a comunicação com o usuário. 
O disco magnético (HD) é um exemplo de dispositivo voltado para a comunicação com a máquina. 
 
 
Provavelmente você agora deve estar se perguntando: já estudei que HD 
(disco magnético) também exerce função de memória, então, HD é um 
dispositivo de E/S ou uma memória secundária? 
 
Pois é, esta pergunta é totalmente pertinente e vamos explicar. O HD exerce as duas funções, de 
dispositivo de E/S e também de memóriasecundária, isto ocorre em virtude de como é o modelo de 
arquitetura de um sistema computacional (conjunto de hardware/software). Pela visão funcional, o HD 
faz parte da hierarquia de memória, e por outro lado, pela visão estrutural, o HD é controlado por um 
módulo de entrada e saída (E/S). 
Comunicação com o usuário 
São exemplos de dispositivos voltados para a comunicação com o usuário: impressoras e terminais 
de vídeo. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
44 
Comunicação com a máquina 
Além do HD, há outros exemplos de dispositivos voltados para a comunicação com a máquina: 
sensores e controladores utilizados em robótica (estudo sobre utilização de robôs). 
 
Comunicação com dispositivos remotos 
Os dispositivos que são voltados para a comunicação com dispositivos remotos tornam possível 
um computador trocar dados remotamente com outros dispositivos, estes dispositivos podem ser 
voltados para a comunicação com o usuário, assim como um terminal, poderá ser com outra 
máquina ou uma comunicação interna. 
 
04 
A figura abaixo é um exemplo de modelo de um dispositivo externo. 
A lógica de controle associada ao dispositivo 
é que efetivamente faz o controle de sua 
operação, em resposta a um INPUT (comando 
recebido) no módulo de entrada e saída. 
Um transdutor é utilizado na conversão de 
dados codificados como sinais elétricos para 
alguma outra forma de energia, em uma 
operação de saída, ou dessa outra forma de 
energia para sinais elétricos, em uma 
operação de entrada. Normalmente, está 
associada ao transdutor uma área de 
armazenamento temporário para a 
transferência de dados entre o módulo de 
entrada e saída e um ambiente externo. 
A interface com o módulo de entrada e saída é feita por: 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
45 
Transdutor 
Dispositivo que recebe um sinal e o retransmite, independentemente de conversão de energia. 
 
Interface 
É o conjunto de meios planejados, sendo físicos ou lógicos com o objetivo de fazer a adaptação 
entre dois sistemas. 
 
05 
Interação usuário/máquina 
De forma geral a maneira mais usual de interação entre um usuário e sua máquina (computador) é feita 
por meio da combinação teclado- mouse-monitor de vídeo, embora já se percebam outras formas de 
interação, como o reconhecimento de voz. Inclusive, atualmente, a interação está sendo 
via touch (toque) ou tecnologia touchscreen (tela sensível ao toque). Os dados são oferecidos pelo 
usuário por meio do teclado ou pelo toque. Essa entrada é então transmitida ao computador, podendo 
também ser mostrada no monitor de vídeo. Além do mais, o monitor mostra os dados fornecidos como 
um resultado das operações realizadas pela máquina (computador). 
É um caractere a unidade básica de troca de dados. A cada caractere está associado um código 
tipicamente de 7 ou 8 bits. A codificação mais usada é um condigo de 7 bits conhecido como ASCII 
(código americano para troca de informações). Cada caractere é representado por um código binário 
distinto de 7 bits; dessa maneira, podem ser representados até 128 caracteres diferentes. A tabela 
abaixo é um exemplo da correspondência das letras do alfabeto e o código ASCII. Veja que a letra A seu 
correspondente de 7 bits é = 1000001. 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
46 
Reconhecimento de voz 
 
Você já recebeu atendimento eletrônico no qual ele pedia que você “falasse a opção desejada”? 
Ou conhece algum smartphone que efetua sozinho uma ligação para a pessoa cujo nome é 
pronunciado por você? Esses programas ouvem o som emitido pela sua voz, classificam as sílabas e 
é aplicado um método de busca para associar estas informações com padrões de palavras a fim de 
encontrar semelhanças. 
 
 
 
Como funciona: para que o computador reconheça o som da sua voz juntamente com a fonética da 
palavra pronunciada e efetue a aplicação desejada, ele precisa encadear uma sequência de passos. 
Primeiro ele precisa digitalizar a fala que se quer reconhecer. Para isso, ele utiliza um conversor 
analógico-digital que capta as vibrações criadas pela sua voz e converte essas ondas em dados 
digitais. Em seguida, aplica-se uma medida para cada uma das ondas captadas e o som digitalizado 
é filtrado para separá-lo de ruídos e interferências. Então, efetua-se uma computação das 
características que representam o domínio espectral (frequências) contido na voz. Nessa etapa do 
processo, o som pode necessitar ser sincronizado, pois as pessoas não costumam utilizar o mesmo 
tom e nem sempre falam na mesma velocidade. Isso consiste em um ajuste com modelos de som 
já armazenados na memória do classificador. 
Então essa digitalização é separada em frações ainda menores, ou seja, sons fonéticos não maiores 
do que uma sílaba. Em seguida, o programa compara os sons captados com fonemas conhecidos e 
presentes em seu banco de dados que correspondam ao idioma que o locutor tenha falado. Em 
outras palavras, é aplicado um método de busca para associar as saídas com padrões de palavras e 
da voz de quem as emitiu. 
Finalmente, o sistema analisa o resultado e o compara com palavras e frases conhecidas e, como 
resultado, ele identifica o que seu usuário disse e converte para a funcionalidade desejada (texto 
em uma planilha, um comando, o reconhecimento do usuário, etc.). 
 
06 
Quando uma tecla é acionada pelo usuário, é gerado um sinal eletrônico, que ao ser interpretado 
pelo transdutor do teclado e faz a tradução conforme o padrão de bits correspondente ao código ASCII. 
Sendo assim, esse padrão de bits será transmitido para o módulo de E/S da máquina (computador). Um 
trabalho que você digitou poderá ser armazenado na máquina, codificado em ASCII. 
Durante uma operação de saída de dados, os caracteres em código ASCII são transmitidos para um 
dispositivo externo através do módulo de E/S. O transdutor desse dispositivo realiza a interpretação dos 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
47 
códigos e os envia, por meio de sinais eletrônicos correspondentes, para o dispositivo de saída, que 
então irá executar alguma função de controle solicitada ou irá exibir o caractere indicado. 
A unidade de disco (HD) possui circuitos eletrônicos para troca de sinais de controle, de estados com o 
módulo de E/S, troca de dados, além de circuitos controladores do mecanismo de escrita e leitura do 
disco. Em um HD de cabeçote fixo, o transdutor faz a conversão dos padrões magnéticos da superfície 
do HD para bits da área de armazenagem temporária do dispositivo e vice-versa. Um HD de cabeçote 
móvel deve também ter a capacidade de mover o braço do disco na radialmente, sobre a superfície do 
HD. 
07 
3- FUNÇÕES DO MÓDULO DE ENTRADA/SAÍDA 
As funções mais importantes de um módulo de entrada e saída (E/S) são: 
- Comunicação com dispositivos; 
- Comunicação com o processador; 
- Controle e temporização; 
- Detecção de erros; 
- Área de armazenamento temporário de dados. 
 
O processador pode estabelecer uma comunicação em qualquer hora com um ou mais dispositivos 
externos, conforme as necessidades de entrada e saída do programa. 
Os recursos internos do sistema, como o barramento e a MP, são compartilhados para haver a 
realização de várias atividades, incluindo a entrada e saída de dados. Em virtude disso, um módulo de 
E/S inclui funções de temporização e controle, para efetivamente monitorar o fluxo de dados entre os 
recursos internos e os dispositivos externos. 
08 
Paraexemplificar, o controle de transferência de dados de um dispositivo externo para o processador 
envolve as seguintes etapas sequenciais: 
 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
48 
09 
Caso um barramento esteja sendo usado pelo sistema, cada uma das interações entre o módulo de 
entrada e saída e o processador irá envolver uma ou mais arbitrações (priorização) do barramento. 
Para que haja comunicação com o processador há necessidade de serem observados os seguintes itens: 
Decodificação de comando 
O módulo de E/S recebe comandos do processador, geralmente enviados como sinais, por meio do 
barramento de controle. Exemplo, um módulo de entrada e saída conectada a um HD poderá 
aceitar os seguintes comandos: leitura e escrita de um setor, busca de determinada trilha e 
pesquisa de determinado registro identificador. 
 
Dados 
Por meio do barramento de dados há transferências entre o processador e o módulo de entrada e 
saída. 
 
Informações de estado 
Geralmente os periféricos são muito lentos, em virtude disso, é necessário conhecer o estado do 
módulo de entrada e saída. Exemplo, um módulo de E/S não está pronto para uma operação de 
leitura em virtude de estar ainda processando um comando de entrada e saída anterior. Essa 
situação é enviada como um sinal de estado, podendo ser o sinal BUSY (ocupado) e READY 
(pronto). Há a possibilidade de haver também sinais para indicar condições de erro 
 
Reconhecimento de endereço 
Cada dispositivo de entrada e saída possui um endereço, assim como uma palavra de memória. 
Dessa forma, o módulo de entrada e saída deve ser capaz de reconhecer distintamente um 
endereço para cada periférico que esteja sob seu controle. 
 
10 
Uma tarefa primordial de um módulo de entrada e saída é o de armazenar temporariamente os dados. 
Enquanto a taxa de transferência de dados entre a MP e o processador é muito alta, entretanto, as taxas 
da maioria dos dispositivos periféricos são bem menores e variam em valores. A transferência de dados 
da MP para o módulo de entrada e saída é feita de forma muito rápida. Esses dados são armazenados de 
forma temporária no módulo de entrada e saída e, consequentemente, remetidos em uma taxa 
adequada para o dispositivo periférico. No sentido oposto à transmissão os dados também são 
armazenados de forma temporária no módulo de entrada e saída, para não manter a memória numa 
taxa baixa de transferência de dados. Dessa forma, o módulo de entrada e saída deverá ter a capacidade 
de realização de operações tanto à velocidade de um dispositivo externo como à velocidade da 
memória. 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
49 
Cabe também ao módulo de entrada e saída (E/S) ser o responsável pela detecção de erros e do envio 
desta informação para o processador. A detecção de erro alerta sobre mau funcionamento elétrico ou 
mecânico sinalizado pelo dispositivo, assim como alguma alteração no padrão de bits transmitido por 
um dispositivo para o módulo de entrada e saída. É utilizado um tipo de código de detecção de erros 
para detectar erros de transmissão, podendo ser utilizado um bit de paridade em cada caractere de 
dados. 
Para exemplificar, sabemos que um código em ASCII ocupa 7 dos 8 bits de um byte e o valor que será 
atribuído ao oitavo bit de tal maneira que o número total de “1” no byte seja par (paridade par) ou 
impar (paridade impar). Então, ao receber um byte, o módulo de entrada e saída verifica a paridade e 
determina se houve erro ou não. 
11 
4 – BARRAMENTO E CONTROLADOR 
Barramentos são estruturas físicas localizadas nas placas eletrônicas (exemplo: placa-mãe) que 
têm por finalidade ser uma interface de comunicação entre os vários tipos de periféricos que 
fazem parte de um computador (máquina). 
Observando fisicamente uma estrutura de uma máquina, vemos que é composta por uma caixa de 
metal, uma placa de circuito impresso chamada de placa-mãe. Nessa placa há muitos chips, entre eles o 
chip processador e alguns slots nos quais os DIMM (Módulo de Memória em Linha Dupla), poderão ser 
inseridos. Há também na placa mãe um barramento que percorre todo o seu comprimento, e soquetes 
pelos quais são feitas as ligações dos conectores das placas aos controladores dos dispositivos de 
entrada e saída. 
Veja a figura abaixo que é um exemplo de um barramento único, onde estão conectados o processador 
à memória e os dispositivos de entrada e saída (E/S). 
 
12 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
50 
Cada dispositivo de entrada e saída (E/S) possui um circuito chamado de controlador que está ligado por 
meio de um slot livre à placa mãe, isto poderá ser para qualquer dispositivo de entrada e saída com 
exceção para os dispositivos on-board. 
A função do controlador é administrar o dispositivo de entrada e saída quanto ao acesso ao 
barramento. 
Ao executar uma determinada tarefa, ele inicia diversos comandos através dos barramentos de uma 
máquina aos vários dispositivos do sistema, que por meio de seus controladores irão obter esses dados 
e retornarão um bit após o outro. É uma das atribuições do controlador agrupar esses bits em unidades 
e os escrever na memória à medida que é reconhecida cada unidade. 
Um controlador poderá não utilizar o processador para ler e escrever dados na memória, esta operação 
é chamada de DMA (Direct MemoryAccess) que quer dizer acesso direto à memória. 
Não são apenas os controladores de E/S que utilizam o barramento, o processador também o utiliza 
para realizar busca de informações e instruções iniciadas por algum programa em execução. 
No barramento está localizado um circuito eletrônico inteligente que é capaz de dar prioridade na 
sequência das informações enviadas e recebidas, isto ocorre devido à presença de um chip chamado 
de árbitro do barramento, como se fosse um sinal de trânsito, que estabelece de quem é a vez. 
Geralmente os dispositivos de entrada e saída têm a preferência, deixando o processador em segundo 
lugar, pois o HD e outros dispositivos que utilizam dispositivos mecânicos (movimentar cabeça de 
leitura), não podem sofrer interrupções durante seus trabalhos, consequentemente forçá-los a ficar em 
modo de espera acarretará em perdas de dados. 
Slot 
Termo em inglês que significa: ranhura, fenda, conector, encaixe. Sua função é conectar os 
periféricos ao barramento. 
 
13 
Quando uma operação de entrada e saída estiver sendo realizada, haverá acesso prioritário garantido ao 
barramento o dispositivo que estiver efetuando a tarefa. Esse processo é chamado de Roubo de ciclo, 
que influencia diretamente na velocidade da máquina (computador). 
São exemplos de barramentos: Barramento ISA (Industry Standard Architecture ); EISA 
(Extended Industry Standard Architecture), PCI (Peripheral Component Interconnect) e SATA 
(Serial Advanced Technology Attachment). 
Observe na figura abaixo um exemplo de barramento PCI: 
102 – Arquitetura de Computadores | Unidade 03 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
51 
 
Nesta figura é possível visualizar que o processador se comunica com a memória e também com os 
controladores por meio de uma conexão de alta velocidade e dedicada. 
A empresa americana de processadores INTEL definiu o barramento PCI com suporte para interconexão 
de componentes e periféricos com o intuito de garantir que o mercado não se tornasse uma variedade 
enorme de tipos de arquitetura de barramento local, que foram lançados em curto período de tempo. 
14 
RESUMO 
Estudamos e compreendemos duranteo desenvolvimento deste módulo que, além da memória e do 
processador, outro elemento importante e fundamental de um sistema computacional é o conjunto de 
módulos de E/S (entrada e saída). As operações de entrada e saída são efetuadas utilizando-se uma 
gama de dispositivos externos, que disponibilizam um meio para efetuar a troca de dados entre o 
computador e o ambiente externo. Estudamos que há três categorias de classificação dos dispositivos 
externos que são: os voltados para a comunicação com dispositivos remotos; os voltados para a 
comunicação com a máquina e os voltados para a comunicação com o usuário. 
Quando você clica em uma tecla qualquer é gerado um sinal eletrônico que ao ser interpretado 
pelo transdutor do teclado que irá fazer a tradução conforme o padrão de bits correspondente ao 
código ASCII. 
Uma das funções mais importantes de um módulo de entrada e saída (E/S) divide-se nas seguintes 
categorias: Comunicação com dispositivos; Comunicação com o processador; Controle e temporização; 
Detecção de erros e Área de armazenamento temporário de dados. 
Para finalizar vamos lembrar que ao falarmos em Barramentos precisamos entender que são estruturas 
físicas localizadas nas placas eletrônicas (exemplo: placa-mãe) que tem por finalidade ser uma interface 
de comunicação entre os vários tipos de periféricos que fazem parte de um computador (máquina). 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
1 
UNIDADE 4 – ARQUITETURAS CONVENCIONAIS E NÃO CONVENCIONAIS 
MÓDULO 1 – MÁQUINAS SEQUENCIAIS, MÁQUINAS RISC E CISC 
01 
1 - MÁQUINAS SEQUENCIAIS DE VON NEUMANN 
Durante o estudo deste módulo falaremos sobre a importância das chamadas máquinas sequenciais de 
von Neumann para computação. Falaremos também sobre as máquinas não von Neumann e 
finalizaremos decorrendo sobre as características das arquiteturas RISC e CISC, bem como de projetos 
recentes utilizando o melhor de cada uma dessas arquiteturas. 
No início de nosso estudo sobre arquitetura e organização de computadores, começamos a ver o que é 
um sistema computacional, a importância dos seus componentes, que são memórias, processadores, 
dispositivos de E/S (entrada e saída) e meios de interconexão. No decorrer do nosso curso também 
tivemos oportunidade de estudar que componentes do processador, como controladores, registradores 
e coprocessadores, possuem um conjunto de instruções que operam sobre instruções e dados obtidos e 
armazenados externamente e organizados em palavras. Vimos que Memórias são formadas 
basicamente pela MP (memória principal) e MS (memória secundária), que o valor (custo) associado à 
memória está diretamente relacionado à sua velocidade de operação e capacidade de armazenamento. 
Os dispositivos de E/S (entrada e saída) são os que representam fisicamente os dados e são geralmente 
mais lentos em comparação ao processador. Os meios de interconexão são os responsáveis pela 
comunicação entre os componentes por meio dos barramentos que estão sob seu controle. Um dos 
problemas que ocorrem é a disputa pelo uso simultâneo dos recursos compartilhados. 
02 
O resumo que acabamos que ver tem como intuito relembrar conceitos que já estudamos. Para você ter 
um rendimento melhor nos estudos é necessário compreender que estes conceitos constituem a base 
teórica para entendermos que, tendo por referência o relacionamento e a organização dos 
componentes de um sistema computacional, poderemos classificar as máquinas que têm por base von 
Neumann e as máquinas chamadas de não von Neumann. 
Vimos a evolução da computação ao longo do tempo e também vimos 
que o cientista John von Neumann foi um dos principais estudiosos da 
matemática, física, meteorologia, economia e computação do século XX. 
Ele nasceu na Hungria, na cidade de Budapeste no ano de 1903 e faleceu 
em 1957. Para a área de TI, von Neumann, é o responsável pela estrutura 
clássica dos computadores digitais que armazenam programas na 
memória e geram outros programas. 
Ele também contribuiu de maneira importante na arquitetura de 
computadores, na análise de algoritmos, nos princípios de programação, 
na computação científica, na análise numérica, nas redes neurais, na 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
2 
teoria dos autômatos e tolerância a falhas. 
03 
Uma característica básica da máquina von Neumann é sua composição. Esta é feita a partir de três 
subsistemas básicos, que são: CPU ou UCP, memória principal e sistema de E/S. Observe a figura abaixo: 
 
Vale a pena relembrar que a UCP (Unidade Central de Processamento) é formada pelos seguintes 
componentes: unidade de controle (UC), unidade Lógico Aritmética (ALU) e registradores. 
04 
Podemos destacar que dentre as características principais das máquinas de von Neumann estão: 
• o programa armazenado em memória, 
• existência de um único caminho entre memória e a UC (unidade de controle) 
• e a execução sequencial de instruções. 
Há uma sequência de ciclos do modelo da máquina de von Neumann que são a execução de um 
programa que faz uma busca da instrução (fetch), que nada mais é que uma transferência da instrução 
da posição de memória para a UCP, e a execução da instrução propriamente dita, que consiste na 
decodificação da instrução feita pela UC (Unidade de Controle) e a gerência dos passos para sua 
execução pela Unidade Lógica Aritmética (ULA). 
Outro modelo básico de máquinas von Neumann são as máquinas conhecidas como “máquinas de 
Harvard”. A diferença dos modelos pode ser observada pela existência de vias separadas para dados e 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
3 
instruções entre a MP e UCP, conforme pode ser visualizado na figura abaixo. A origem do termo 
“Máquinas de Harvard” surgiu durante a criação dos computadores Mark I a Mark IV, desenvolvidos em 
Harvard, que tinham como característica possuir instruções e memórias de dados separadas. 
 
Mark I 
Chamado de Mark I (ASCC - Automatic Sequence Controlled Calculator) pela Universidade de Harvard, 
este foi o primeiro computador eletromecânico automático de larga escala desenvolvido nos EUA. 
Construído em 1944 num projeto da Universidade de Harvard em conjunto com a IBM. 
(Fonte: http://pt.wikipedia.org/wiki/Harvard_Mark_I). 
 
Saiba+ 
O Harvard Mark I, também conhecido como “Harvard-IBM Automatic Sequence Controlled Calculator”, 
foi concluído em 1944 pelo renomado engenheiro de computação Howard H. Aiken, tendo tido a 
contribuição e ajuda de uma equipe de engenheiros da IBM, que eram chefiados por Clair D. Lake. O 
Mark I teve apoio e financiamento da IBM (International Business Machines), bem como, da marinha 
americana. O projeto começou no ano de 1937 e o objetivo era construir um computador que ajudasse 
na construção de novas armas, no cálculo de trajetórias de artilharia e também decodificar os códigos 
secretos do inimigo. O Mark I era muito pesado, chegava a ter aproximadamente 5 toneladas e era 
composto por setenta e oito máquinas calculadoras, que eram controladas por dispositivos mecânicos 
e elétricos. O computador era operado por meio de uma fita de papel, na qual se armazenavam, por 
meio de perfurações, as instruções codificadas. Uma vez inserido o programa, o computador iniciava os 
cálculos. O Mark I teve sua utilidade voltada para fins militares e também foi utilizado no 
desenvolvimento da bomba atômica. Entre 1947 e 1952, o cientista Howard Aiken construiu versões 
melhoradas do Mark I, os Mark II, III e IV. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de EducaçãoContinuada 
 
4 
05 
2 - MÁQUINAS NÃO VON NEUMANN 
As máquinas que não seguem o modelo de von Neumann são chamadas de máquinas “não von 
Neumann”. Porém, não quer dizer que esse modelo seja contra ou antagônico ao modelo de von 
Neumann, mas uma categoria um pouco mais ampla, em que incluímos os sistemas computacionais 
chamados de: 
 
06 
3 - AVALIAÇÃO DE DESEMPENHO 
Em virtude de haver um número grande de alternativas para a organização de um computador, é 
necessário haver mecanismos que possibilitem a realização de uma avaliação de cada arquitetura. Para 
isso, algumas medidas básicas de avaliação são necessárias. Atualmente o desempenho está associado 
à velocidade de execução das instruções básicas representadas em MIPS (milhões de instruções por 
segundo) e por flops. Outra maneira é a velocidade de execução de programas representativos das 
aplicações em benchmarks (teste para avaliação de performance na execução de um programa). 
Quando avaliamos o custo de um determinado componente precisamos nos atentar aos parâmetros que 
mais influenciam o valor final que são: número de pinos, área de chip e número de chips por sistema. 
Quando você resolve adquirir um laptop ou um notebook pode utilizar como parâmetro o tamanho, pois 
para você um item importante é a facilidade de transporte e uso em viagens. 
Será muito difícil avaliar um sistema de maneira isolada, geralmente a comparação básica que fazemos é 
o custo e desempenho, que tenha um preço justo e um desempenho aceitável, que possamos assistir a 
um filme em HD ou jogar determinado game. Aliás, quando falamos em jogos, o fator desempenho 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
5 
ganha um vulto maior, pois dependendo do jogo haverá uma alta exigência de recursos como 
processador, memória, placa de vídeo dedicada, capacidade de armazenamento e etc. Vamos usar como 
exemplo uma propaganda sobre as especificações e vantagens de adquirir um notebook da Marca XYZ: 
“Você pode assistir a um filme de sucesso ou bater um recorde em um jogo sem problemas, pois a 4ª 
Geração dos Processadores XYZ oferece bateria de longa duração e uma experiência visual 
surpreendente para você aproveitar ao máximo seus aplicativos e jogos favoritos...” 
Sendo assim, o mais importante é o entendimento da necessidade e do emprego de determinada 
arquitetura. 
FLOPS 
Flop(s) é um acrônimo na computação que significa FLoating-point Operations Per Second, que, em 
português, quer dizer operações de ponto flutuante por segundo. Isto é usado para determinar o 
desempenho de um computador, especificamente no campo de cálculos científicos, que fazem grande 
uso de cálculos com ponto flutuante; similar a instruções por segundo. 
(Fonte: http://pt.wikipedia.org/wiki/FLOPS) 
 
 
 
07 
Arquitetura de alto desempenho 
Um projeto de um sistema com arquitetura de alto desempenho só é possível alterando os algoritmos 
para melhor ajustar à organização do sistema. Há outros casos em que apenas mudanças na organização 
básica do sistema também serão necessárias. Dependendo da arquitetura, será mais adequado o uso 
de paralelismo. 
No processo de definição de arquitetura torna-se necessário observar alguns questionamentos: 
- Qual será o tempo necessário para execução de um conjunto de programas de determinada aplicação? 
- Qual será o espaço necessário para o armazenamento de um conjunto de programas ou dados? 
- Qual será o uso efetivo dos diversos componentes do sistema? 
Diante destas perguntas chegamos à conclusão de que não há uma resposta simples. Essas perguntas 
exigem uma análise mais ampla, abrangendo o teste com programas (softwares) que exijam 
Benchmark 
Em computação, benchmark é o ato de executar um programa de computador, um conjunto de 
programas ou outras operações, a fim de avaliar a performance relativa de um objeto, normalmente 
executando uma série de testes padrões e ensaios. (Fonte: http://pt.wikipedia.org/wiki/Benchmark). 
Tamanho 
No caso do tamanho, a avaliação está nas características físicas, exemplo: peso, volume, facilidade de 
transporte e consumo de energia. Você também poderá considerar outro fator, por exemplo: para 
estudar. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
6 
determinada resposta do sistema computacional. Por meio destes testes será possível desenvolver 
projetos computacionais com arquitetura de alto desempenho identificando e retirando os possíveis 
“gargalos” do sistema. Estes “gargalos” limitam o desempenho como um todo. 
Paralelismo 
O paralelismo ou também chamado de ILP (Paralelismo em nível de instrução) é uma técnica utilizada 
no desenvolvimento de processadores e compiladores que melhoram (aumentam) o desempenho dos 
computadores, fazendo que operações como multiplicações de ponto flutuante, adição de inteiros, 
escrita e leitura de memória sejam executadas em paralelo. No nível de instruções, o paralelismo é 
muito utilizado por arquiteturas de processadores que possuem a capacidade de operar dados ou 
executar instruções em paralelo. 
 
08 
4 - ARQUITETURA RISC 
Tendo por objetivo melhorar a performance, estudos sobre o comportamento da execução de 
programas em linguagens de alto nível visam orientar o projeto de um novo tipo de arquitetura para 
processadores, o chamado computador com conjunto reduzido de instruções(Reduced Instruction Set 
Computes), também conhecido como arquitetura RISC. 
Trata-se de uma linha de arquitetura de processadores que favorece um conjunto simples e pequeno 
de instruções que levam aproximadamente a mesma quantidade de tempo para serem executadas. 
Trata-se de uma linha de arquitetura de processadores que favorece um conjunto simples e pequeno de 
instruções que levam aproximadamente a mesma quantidade de tempo para serem executadas. 
Desde o surgimento e desenvolvimento do 1º computador que utilizava a memória para 
armazenamento dos programas, na década de 1950, não houve tantas mudanças significativas na área 
de Arquitetura de Organização de Computadores. Podemos destacar que os maiores avanços foram: 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
7 
 
Linguagem de alto nível 
Linguagem com um nível de abstração relativamente elevado, longe do código de máquina e mais 
próximo à linguagem humana. Desse modo, as linguagens de alto nível não estão diretamente 
relacionadas à arquitetura do computador. O programador de uma linguagem de alto nível não precisa 
conhecer características do processador, como instruções e registradores. Essas características são 
abstraídas na linguagem de alto nível. 
(Fonte: http://pt.wikipedia.org/wiki/Linguagem_de_programa_de_alto_nivel) 
 
09 
Conforme vimos na lista anterior, é possível adicionar uma inovação muito interessante na arquitetura 
de computadores que é chamada deconjunto reduzido de instruções (RISC). Essa arquitetura (RISC) 
mudou as tendências da época na arquitetura de computadores. 
Mesmo que o sistema RISC tenha sido definido de muitas maneiras por grupos diferentes de projetistas, 
a maioria segue os seguintes elementos básicos: 
• Foco em otimizar o pipeline de instruções; 
• Número grande de registradores com o propósito geral ou o uso de tecnologias de compilação que 
otimizam o uso de registradores; 
• Conjunto de instruções limitado e simples. 
Uma das maneiras de evidenciar a evolução das linguagens de programação foi também a evolução dos 
computadores. Com a diminuição do valor (custo) do hardware, houve um aumento do software. Isso 
ocorreu devido à diminuição do número de programadores disponíveis para o desenvolvimento de 
102– Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
8 
programas. Sendo assim, o preço do software passou a ser maior, no ciclo de vida de um sistema, do 
que o do hardware. Além de apresentar um custo elevado, o software, geralmente, apresenta bugs, o 
que diminui a confiança. Infelizmente é comum nos depararmos com situações que programas ou 
aplicações apresentam erros inexplicáveis mesmo após vários anos de uso. 
Bugs 
Bug em inglês quer dizer “defeito”, é um erro no funcionamento de um software ou mesmo do 
hardware, também chamado de falha na lógica de um programa. Pode vir a causar comportamentos 
inesperados, como resultado incorreto ou comportamento indesejado. São geralmente causados por 
erros no próprio código-fonte (código desenvolvido pelo programador). 
(Fonte: http://pt.wikipedia.org/wiki/Bug) 
 
10 
5 - ARQUITETURA CISC 
Há também a arquitetura CISC - Complex Instruction Set Computer, ou Computador com um Conjunto 
Complexo de Instruções. 
É uma linha de arquitetura de processadores capaz de executar centenas de instruções complexas 
diferentes sendo, assim, extremamente versátil. 
 
Havia uma tendência para o uso de conjuntos de instruções cada vez mais ricas, incluindo um grande 
número de complexas instruções. Essa tendência teve por motivação duas grandes razões: desejo de 
otimizar o desempenho e o desejo de simplificação dos compiladores. 
Essas razões tinham por fundamentação a adoção da linguagem de alto nível nas atividades de 
programação; os projetistas de computadores almejavam projetar máquinas que oferecessem o melhor 
suporte possível para as linguagens de alto nível. 
Não será nosso objetivo questionar o que motivou alguns projetistas de computadores adotarem a 
técnica CISC. O importante é o entendimento que a tecnologia não para, como na canção do Cazuza “o 
tempo não para”, a TI também não para. Atualmente, para a TI, as tecnologias ficam obsoletas em um 
curto prazo de tempo. Consequentemente, as arquiteturas existentes variam dentro de um espectro, 
não podendo ser classificadas em apenas duas categorias, RISC ou CISC, pois é pouco provável que 
algum dia haja uma conclusão sobre o tipo de abordagem mais adequada, se uma arquitetura com 
reduzido número de instruções (RISC) ou se a arquitetura com um complexo conjunto constituído de 
grande quantidade de instruções (CISC). 
Compilador 
É um programa de sistema que traduz um programa descrito em uma linguagem de alto nível para um 
programa equivalente em código de máquina para um processador. Em geral, um compilador não 
produz diretamente o código de máquina, mas sim um programa em linguagem simbólica (assembly) 
semanticamente equivalente ao programa em linguagem de alto nível. O programa em linguagem 
simbólica é então traduzido para o programa em linguagem de máquina através de montadores. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
9 
(Fonte: http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node37.html). 
 
11 
É interessante observar que mesmo a abordagem CISC tendo por premissa um complexo conjunto de 
instruções, ela veio contribuir para a simplificação dos compiladores. Um compilador gera uma 
sequência de instruções de máquina para cada comando da linguagem de alto nível. Caso existam 
instruções de máquina que se assemelhem aos comandos de linguagens de alto nível, essa tarefa tornar-
se-á mais simples. 
Contudo, esse raciocínio vem sendo discutido por pesquisadores adeptos da arquitetura RISC. Eles 
descobriram que instruções de máquina complexas frequentemente são mais difíceis de serem 
utilizadas, em virtude de o compilador ter de encontrar os casos em que essas instruções estejam 
exatamente adequadas a uma dada construção da linguagem. Com o uso de um conjunto complexo de 
instruções, fica muito mais difícil a tarefa de melhorar (otimizar) o código gerado. Fica difícil minimizar 
seu tamanho, reduzir o número de instruções executadas e melhorar o desempenho da pipeline de 
instruções. 
Outro argumento utilizado e que merece destaque é a expectativa de que uma arquitetura CISC possa 
produzir programas menores e mais rápidos. Programas menores têm duas vantagens. A primeira é 
consumir um menor espaço de memória, resultando na economia desse recurso. Como a memória é, 
hoje em dia, mais accessível e tornou-se mais barata, essa vantagem deixa de ser tão significativa. A 
vantagem mais evidente e importante de programas menores é, consequentemente, contribuir 
para melhorar o desempenho. 
O problema com essa linha de raciocínio é que não se pode ter certeza de que um programa compilado 
para arquitetura CISC será menor que um programa compilado para uma arquitetura RISC 
correspondente. Em muitos casos, o programa CISC, expresso em linguagem de máquina simbólica, 
pode ter um número menor de instruções, mas o número de bits de memória ocupada pode não ser 
significativamente menor. 
Melhorar o desempenho 
Essa melhoria de desempenho pode acontecer de duas maneiras: 
• Primeiro, um menor número de instruções significa menor número de bytes de instruções a serem 
buscados. 
• Segundo, em um ambiente de paginação, programas menores ocupam um número menor de 
páginas, o que reduz a taxa de falta de páginas. 
 
Paginação 
Processo de virtualização da memória que consiste na subdivisão da memória física em pequenas 
partições (frames), para permitir uma utilização mais eficiente da mesma. As frames da memória física 
correspondem a páginas de memória virtual. A alocação de memória é requisitada por páginas, a 
menor unidade deste método. Cada página é mapeada numa frame de memória através de um 
processo que chama paginação. (http://pt.wikipedia.org/wiki/Mem%C3%B3ria_paginada). 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
10 
12 
RISC X CISC – Projetos Recentes 
Até o momento você deve ter observado as características de cada arquitetura (RISC X CISC) e 
provavelmente deve estar pensando ou querendo saber qual delas seria realmente a melhor 
arquitetura. 
O interessante neste caso não é saber quem é a melhor, mas sim reconhecer que o projeto RISC pode 
beneficiar-se com a inclusão de algumas características CISC e o CISC pode beneficiar-se com a inclusão 
de algumas características RISC. O resultado é que projetos RISC mais recentes não são RISC “100%”, 
assim como projetos CISC incorporam característica RISC. 
Sendo assim, não há atualmente processadores que sigam fielmente uma arquitetura específica, RISC ou 
CISC. Veja alguns exemplos. 
Visando à praticidade, uma vantagem da arquitetura CISC é que já há várias instruções guardadas no 
próprio processador, o que viabiliza o trabalho dos programadores que, desta forma, já têm disponível 
as instruções necessárias para seus programas. Caso o programador estivesse programando para uma 
arquitetura RISC, ele teria mais trabalho, pois as instruções são mais simples e exigiriam muito, caso 
houvesse a necessidade de executar algumas tarefas mais complexas. Uma comparação bem 
interessante e que ajuda na elucidação seria tentar usar uma calculadora comum (operações básicas) 
para fazer cálculos de estatística ou usar a calculadora comum para fazer conversão de base. 
Para finalizar nosso módulo, uma sugestão é você visitar a página 
(http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2014/03/quais-
as-diferencas-entre-os-processadores-amd-e-intel.html) e ler esta 
reportagem sobre as diferenças entre processadores da marca Intel e 
da marca AMD. 
Outra sugestão é a reportagem 
(http://www.tecmundo.com.br/processadores/2760-tabela-de-
processadores-intel.htm) que explica com detalhes ascaracterísticas 
dos processadores da INTEL e vale a pena visitar a página da AMD 
(http://www.amd.com/pt-br/products/processors) para conhecer 
alguns tipos de processadores e suas características. 
13 
RESUMO 
Durante o estudo desta unidade tivemos a oportunidade de entender as chamadas: máquinas von 
Neumann e as não von Neumann. Uma característica básica da máquina von Neumann é sua 
composição, a qual é feita a partir de três subsistemas básicos: CPU ou UCP, memória principal e 
sistema de E/S. As máquinas que não seguem o modelo de von Neumann são chamadas de máquinas 
“não-von Neumann”. Porém, não quer dizer que este modelo seja contra ou antagônico ao modelo de 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
11 
von Neumann. Um projeto de um sistema com arquitetura de alto desempenho só é possível alterando 
os algoritmos para melhor ajustar à organização do sistema. Tendo por objetivo melhorar a 
performance, estudos sobre o comportamento da execução de programas em linguagens de alto nível 
visam orientar o projeto de um novo tipo de arquitetura para processadores, o chamado computador 
com conjunto reduzido de instruções (Reduced Instruction Set Computes) ou também conhecido como 
arquitetura RISC. Há também a arquitetura CISC, que era resultado de uma tendência para o uso de 
conjuntos de instruções cada vez mais ricas, incluindo um grande número de complexas instruções. Essa 
tendência teve por motivação duas grandes razões: desejo de otimizar o desempenho e desejo de 
simplificação dos compiladores. 
Ao final, concluímos que o mais interessante não é saber quem é a melhor (RISC ou CISC), mas sim 
reconhecer que o projeto RISC pode beneficiar-se com a inclusão de algumas características CISC e o 
CISC pode beneficiar-se com a inclusão de algumas características RISC. O resultado é que projetos RISC 
mais recentes não são RISC “100%”, assim como projetos CISC incorporam características RISC. 
 
UNIDADE 4 – ARQUITETURAS CONVENCIONAIS E NÃO CONVENCIONAIS 
MÓDULO 2 – MÁQUINAS PARALELAS 
01 
1 - COMPUTAÇÃO PARALELA 
No decorrer do estudo deste módulo entenderemos que quando falamos em computação paralela 
fazemos referência à maneira de realizar vários cálculos (instruções) de maneira simultânea. Falaremos 
da organização SMP, que faz referência a vários processadores similares em um mesmo computador, 
ligados pelo barramento ou por meio de algum circuito de conexão. Você entenderá que cluster é o 
conjunto de máquinas, ligadas entre si, que trabalham juntas como um sistema computacional único, 
dando a impressão que é uma única máquina. 
Falaremos também do sistema NUMA no qual o tempo gasto para acesso a uma palavra na memória 
varia conforme a posição dessa palavra na referida memória. Você verá que computadores 
superescalares são máquinas que possuem várias unidades de execução no mesmo processador, sendo 
assim, executam em paralelo várias instruções de um mesmo programa. Estudaremos como é uma 
organização MIMD, na qual cada processador irá processar todas as instruções para, de forma 
adequada, realizar a transformação dos dados. Estudaremos a máquina SISD, a qual possui uma unidade 
de controle que oferece uma sequência de instruções para uma unidade de processamento. 
Na sequência, estudaremos o modelo PRAM, que é uma extensão do modelo sequencial RAM e também 
o mais conhecido dos modelos de computação paralela. Veremos o modelo Bulk Synchronous Parallel 
Model (BSP) que foi um dos primeiros a levar em consideração os custos da comunicação e não levar em 
conta as características de uma máquina paralela em um número pequeno de parâmetros. E ao final, 
veremos também o modelo Coarse Grained Multicomputer (CGM) que é muito similar ao modelo BSP. 
Vamos ao nosso estudo! 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
12 
02 
Caso alguém pedisse sua opinião para melhorar o desempenho de um sistema computacional, 
provavelmente você aconselharia a aumentar o número de processadores. Se você teve esta ideia, 
muito bem, está correto. A ideia de adicionar mais processadores para trabalharem (executarem) em 
paralelo para melhorar a performance diante de uma carga de trabalho é muito bem-vinda. Tanto é, 
que, hoje em dia, ao comprarmos uma máquina (computador) notamos que os processadores são, na 
maioria das vezes, multicore (processador com mais de um núcleo). 
Quando falamos em computação paralela, estamos fazendo referência à maneira de realizar vários 
cálculos (instruções) de forma simultânea. Trata-se de dividir um grande problema em problemas 
menores, os quais serão processados concorrentemente (paralelamente). 
Esta técnica, chamada de paralelismo, é empregada há muito tempo e seu foco sempre foi a 
computação de alto desempenho. Atualmente, em virtude da necessidade de criarmos máquinas mais 
potentes, de tamanho reduzido e que consumam menos energia elétrica, tornou-se ainda mais 
necessário o uso de processadores multinúcleo. 
Todavia, há várias maneiras de organizar múltiplos processadores, vamos destacar: 
• a organização de multiprocessadores simétricos (SMP), 
• os NUMA (acesso não uniforme à memória) e 
• os chamados agregados (clusters). 
Sistema computacional 
Conjunto de dispositivos eletrônicos (hardware) que processam informações de acordo com um 
programa (software). O software mais importante é o sistema operacional, porque ele fornece as bases 
para a execução das aplicações, às quais o usuário deseja executar. Exemplos de sistemas operacionais 
são: GNU/Linux, Microsoft Windows, o IOS da Apple. 
(Fonte: http://pt.wikipedia.org/wiki/Sistema_computacional). 
 
03 
2 - SMP / NUMA / CLUSTERS 
Quando falamos de uma organização SMP (Symmetric MultiProcessor - multiprocessadores simétricos), 
estamos fazendo referência a vários processadores similares em um mesmo computador, ligados pelo 
barramento ou por meio de algum circuito de conexão. O que há de crítico neste arranjo é o que 
chamamos de coerência de cache. Isto ocorre em virtude de cada processador ter sua memória cache e 
quando trabalham em conjunto, por algum motivo, alguma linha de dados for alterada indevidamente a 
MP (memória principal) terá uma versão inválida dessa linha. 
Reforçando o conceito, um SMP consiste em vários processadores que compartilham uma memória 
única ou mesmo um conjunto de memória através do compartilhamento de um barramento ou de outro 
tipo de conexão. Esse sistema tem por característica que o tempo de acesso a qualquer região da 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
13 
memória é praticamente o mesmo para cada processador. O sistema SMP tem esta denominação em 
referência tanto quanto ao comportamento do sistema operacional quanto à arquitetura de hardware. 
Um sistema SMP tem as seguintes características: 
 O controle do sistema é feito por um sistema operacional integrado, que estabelece uma 
interação entre seus programas e os processadores, em nível de dados, arquivos e de tarefas; 
 Em virtude de serem simétricos, os processadores poderão desempenhar as mesmas funções; 
 Tanto por meio de canais distintos ou comuns que provêm caminhos para os dispositivos, todos 
os processadores compartilham acesso aos dispositivos de entrada e saída (E/S); 
 O tempo de acessa à memória é aproximadamente o mesmo para cada processador, isto 
ocorre em virtude dos processadores compartilharem as facilidades de E/S e a mesma MP e 
estão conectados por um barramento ou outro meio de conexão; 
 Há dois ou mais processadores similares, com capacidade de computação compatível. 
 
 
04 
As vantagens do SMP são as seguintes: 
•necessita de espaço físico e demanda de energia menor que um cluster; 
• fisicamente falando é muito próximo ao modelo original de um processador único, sendo assim, fica 
mais fácil para as aplicações desenvolvidas para monoprocessadores, pois a aplicação não precisa 
“saber” quantos processadores há em uma máquina. 
Quando falamos em cluster estamos fazendo referência a um conjunto de máquinas, ligados entre si, 
que trabalham juntos como um sistema computacional único, dando a impressão que é uma única 
máquina. 
Coerência de cache 
Diversas arquiteturas de máquinas paralelas atuais são construídas com processadores produzidos em 
larga escala. Essas máquinas paralelas incorporam caches em suas arquiteturas, o que provoca o 
problema de coerência de cache, que, em síntese, é a inconsistência de dados. Essa inconsistência é 
provocada pelos seguintes motivos: 
- múltiplas cópias de mesma posição de memória podem existir em diferentes caches, 
- cada processador atualiza sua cópia local, não se preocupando com a existência de outras cópias em 
outros processadores; 
- cópias de mesmo endereço de memória poderão possuir valores diferentes. 
Sistema Operacional 
É um sistema que tem por objetivo organizar e controlar os softwares e o hardware tornando possível a 
utilização de um computador (máquina). 
(Fonte: http://pt.wikipedia.org/wiki/Sistema_operativo) 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
14 
Quando falamos no sistema NUMA (Non-Uniform Memory Access ou acesso não uniforme à memória) 
estamos fazendo referência a um multiprocessador com memória compartilhada, no qual o tempo gasto 
para acesso a uma palavra na memória varia conforme a posição dessa palavra na referida memória. 
Então, como o próprio nome sugere, o tempo de acesso a diferentes regiões da memória pode não ser 
igual para um processador NUMA. Um grupo de computadores com apenas um processador ou de SMP 
independentes podem ser conectados por meio de cabos de rede ou outro tipo de conexão e formarem 
um cluster. 
Então não se esqueça, o sistema NUMA tem por característica o fato de todos os processadores 
possuírem acesso a todas as áreas da MP (memória principal), via operação de armazenamento e de 
carga. Sendo assim, o fator tempo de acesso à memória por um processador é diferente conforme a 
região utilizada. Isso acontece com todos os processadores, contudo, as regiões de memória na qual o 
acesso é mais rápido ou mais lento serão diferentes para diferentes tipos de organização utilizada nos 
processadores. 
05 
3 - MÁQUINA SEQUENCIAL / MÁQUINA PARALELA 
Tipicamente, uma máquina é vista como uma máquina sequencial. Grande parte das linguagens de 
programação exige a especificação do algoritmo como uma sequência de instruções. Esta visão é que os 
processadores executam programas através da execução sequencial de instruções de máquina. 
Contudo, esta visão não é totalmente verdadeira. Isso devido ao fato de que ao nível de 
microoperações, uma gama de sinais de controle é gerada ao mesmo tempo. 
A técnica de Pipeline de instruções é utilizada há um certo tempo, fazendo sobreposição nas operações 
de execução e busca de instruções. Esses são exemplos de execução em paralelo das funções. 
Essa visão nos remete a uma organização chamada superescalar, que tem por objetivo explorar o 
paralelismo ao nível de instrução. Nos chamados computadores superescalares, há várias unidades de 
execução no mesmo processador, sendo assim, executam em paralelo várias instruções de um mesmo 
programa. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
15 
À proporção que há evolução da tecnologia e o preço do hardware da máquina (computador) diminui, 
os projetistas de máquina estão buscando outras maneiras de aproveitar o paralelismo, geralmente com 
o intuito de melhorar o desempenho e também aumentar a disponibilidade do sistema. 
O cientista da computação, o americano Michael J. Flynn foi o criador do primeiro sistema para a 
classificação de programas e computadores paralelos e sequenciais, ficando conhecida como 
a taxonomia de Flynn, que veremos a seguir. 
06 
Flynn fez a seguinte classificação para as categorias de sistemas de computação paralela: 
• SISD (Single Instruction Single Data) – “única instrução, único dado”. Significa que apenas um 
processador irá executar uma única sequência de instruções, utilizando os dados que estão 
armazenados em apenas uma memória. Pertencem a esta categoria os sistemas uniprocessados. 
Na estrutura de uma máquina SISD há uma UC (unidade de controle) que oferece uma SI (sequência de 
instruções) para uma UP (unidade de processamento). A UP opera sobre uma única SD de uma única 
UM (unidade de memória). Na máquina SIMD, há uma única UC, que alimenta múltiplos EP (elementos 
de processamento) com somente uma sequência de instruções. Cada elemento de processamento 
possui sua própria memória ou compartilha uma memória. Na organização MIMD, há múltiplas UC, cada 
qual alimentando seu próprio elemento de processamento com diferentes sequências de instruções. 
 
• SIMD (Single Instruction Multiple Data) – “única instrução múltiplos dados”. Significa que apenas uma 
instrução de máquina controla a execução simultânea de determinado número de elementos de 
processamento, em passos de execução. Cada elemento de processamento está associado a uma 
memória de dados, de tal maneira que cada instrução será executada em cada processador sobre um 
conjunto de dados diferentes. Pertencem a esta categoria os processadores matriciais e os vetoriais. 
 
07 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
16 
• MISD (Multiple Instruction Sigle Data) - “múltiplas instruções único dado”. Significa dizer que 
determinada sequência de dados é enviada para um conjunto de processadores, cada processador 
executa uma sequência diferente de instruções. Esta estrutura é experimental. 
 
• MIMD (Multiple Instruction Multiple Data) – “múltiplas instruções múltiplos dados”. Significa que 
determinado conjunto de processadores simultaneamente executam sequências diferentes de 
instrução, sobre conjuntos de dados distintos. Pertencem a esta categoria os SMP, clusters e sistemas 
NUMA. 
Na organização MIMD, os processadores são utilizados para propósito geral, cada processador irá 
processar todas as instruções para, de forma adequada, realizar a transformação dos dados. 
Os sistemas MIMD podem, conforme a forma de comunicação, ser subdivididos. Os processadores 
compartilham a mesma memória, então cada processador irá utilizar programas e dados que estão 
armazenados na memória compartilhada e toda comunicação entre eles (processadores) será por meio 
dessa memória. Este tipo de sistema é conhecido como SMP (multiprocessador simétrico). 
Até a pouco tempo, a maioria dos PC (computadores pessoais) e das workstation (estações de trabalho) 
possuíam apenas um processador. Em virtude da necessidade de melhor desempenho e a constante 
queda do custo dos processadores, os fabricantes começaram a introduzir os sistemas SMP. 
 
08 
Para complementar o seu estudo, assista ao vídeo abaixo. Neste vídeo você terá oportunidade de 
entender o que motivou o INPE (Instituto Nacional de Pesquisas Espaciais) a investir em um sistema 
computacional de alto desempenho para o CPTEC (Centro de Previsão do Tempo e Estudos Climáticos), 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
17 
que é composto por um cluster de 1,1 mil processadores trabalhando em conjunto e está na lista dos 
500 supercomputadores mais rápidos do mundo.https://www.youtube.com/watch?v=gfBSNxcYRiU 
Aproveite também para ler uma pequena reportagem da revista on-line Exame.com, que aborda como a 
USP está utilizando os maiores e mais potentes clusters (aglomerado de computadores) do mundo 
voltado para pesquisas de astronomia. 
http://exame.abril.com.br/tecnologia/noticias/supercomputador-da-usp-estuda-estrelas-
gigantes/ 
09 
4 - CLUSTER: BENEFÍCIOS 
Cluster é um grupo de computadores interconectados, trabalhando em conjunto, como um 
sistema computacional unificado, dando a impressão de ser um único computador. 
 
Você poderá encontrar outras definições, que dizem: clusters são formados por vários “nós”, sendo que 
cada “nó” representa um computador, sendo assim, cluster também poderá ser chamado de conjunto 
de “nós” interconectados. 
 
Quando falamos em clusters podemos ver que é uma área muito utilizada e promissora do projeto de 
sistemas de computação. Clusters são uma alternativa para multiprocessadores simétricos (SMP), como 
abordagem para o provimento de alta disponibilidade e alto desempenho, sendo muito utilizados em 
ambiente de servidores. 
Servidor 
Na TI (Tecnologia da Informação) o termo “servidor” é utilizado para especificar um sistema de 
computação centralizado que fornece serviços a uma rede de computadores. Esses serviços podem ser 
de vários tipos, como por exemplo: servidor de arquivos (file server) ou de correio eletrônico (mail 
server). As máquinas (computadores) que utilizam os serviços de um servidor são chamadas de clientes 
ou estações de trabalho clientes. (Fonte: http://pt.wikipedia.org/wiki/Servidor). 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
18 
10 
No ano de 1997 o autor Brewer, no seu livro “Clustering multiply and conquer”, que em uma tradução 
simples seria “Cluster: dividir para conquistar”, fala sobre os benefícios do uso de clusters. Fazendo um 
“parêntese”, essa expressão “dividir para conquistar” foi utilizada por grandes personagens da história, 
como César (Roma) e Napoleão (França), no intuito de explicar uma estratégia de manter os inimigos 
divididos, em grupos pequenos, ficando mais fácil dominá-los. Contudo, em nosso “mundo da TI” e mais 
especificamente em Cluster, estamos fazendo referência a “dividir as tarefas” entre os processadores, 
para “conquistar” uma melhor performance. 
Abaixo podemos ver como Brewer relaciona os benefícios alcançados com clusters: 
• Escalabilidade incremental; 
• Escalabilidade absoluta; 
• Melhor relação custo/desempenho; 
• Alta disponibilidade. 
Tanto cluster como SMP (multiprocessadores simétricos) possuem uma configuração com vários 
processadores (múltiplos processadores) para suportar aplicações que exigem alto desempenho. Essas 
soluções (cluster e SMP) estão disponíveis no mercado, sendo que a principal vantagem dos sistemas 
SMP é a fácil configuração em relação a um cluster. 
Fica também claro o que motiva as empresas a investirem em clusters para aplicações de alto 
desempenho (exemplo do INPE, visto anteriormente), pois nos quesitos escalabilidade incremental, 
escalabilidade absoluta e disponibilidade os clusters são muito mais eficientes e superiores que os SMP. 
Escalabilidade Incremental 
Na configuração de um cluster é possível adicionar novos computadores, tornado sua expansão 
incremental. Dessa maneira, é possível começar com um sistema pequeno e expandir à medida do 
aumento das necessidades. 
 
Melhor relação custo/desempenho 
Em virtude da facilidade da construção de um cluster, utilizando máquinas mais simples, com poder de 
processamento menor ou mesmo máquinas que são consideradas ultrapassadas, é possível obter um 
cluster com poder de computação igual ou maior que um servidor de rede de ultima geração, com um 
valor muito mais acessível. 
Alta Disponibilidade 
Cada nó de um cluster é uma máquina independente, uma falha em qualquer destas máquinas não 
significa uma perda total do serviço, pois as outras máquinas mantêm a disponibilidade da aplicação ou 
serviço de rede. 
Escalabilidade Absoluta 
Capacidade de criação de grandes clusters, com capacidade de executar vários aplicativos de maneira 
que ultrapassa várias vezes a capacidade de uma máquina comum. Um cluster pode ser formado por 
muitas máquinas, sendo que cada uma constitui um processador ou multiprocessador. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
19 
11 
5 - NUMA: VANTAGENS E DESVANTAGENS 
Dentre as principais vantagens de um sistema NUMA destacamos o desempenho efetivo em níveis de 
paralelismo mais altos que o fornecido por sistemas SMP, sem necessidade de grandes mudanças no 
software. Com vários “nós” NUMA, o tráfego no barramento em qualquer “nó” estará limitado à 
demanda que esse barramento é capaz de suportar. Contudo, caso haja um grande número de acessos a 
posições de memória localizadas em “nós” remotos, o desempenho cairá sensivelmente. Mas tudo isso 
pode ser minimizado com uso da memória cache e também de memória virtual (visto anteriormente). 
 
Há também algumas desvantagens no sistema NUMA, a primeira é que este sistema não se apresenta 
de forma transparente como um SMP, havendo necessidade de modificações de software para a 
migração de sistemas operacionais e aplicações do sistema SMP para o sistema NUMA. A segunda 
desvantagem é a questão da disponibilidade, conforme vimos na comparação Cluster e SMP. 
Na grande maioria dos softwares desenvolvidos para máquinas paralelas observam apenas o problema 
da paralelização com baixos níveis de comunicação. Contudo, nas máquinas reais, o tempo de 
comunicação é, geralmente, mais elevado que o tempo de processamento (computação). Sendo assim, 
muitos algoritmos paralelos que na teoria são eficientes, para o modelo PRAM (memórias de acesso 
aleatório com mudança de fase), não têm o desempenho que se espera quando implementados em 
máquinas paralelas reais. 
12 
Com vimos até agora, o objetivo da computação paralela é a utilização simultaneamente de um 
conjunto de processadores interligados (conectados), de tal modo que resolva um problema de maneira 
conjunta e mais rapidamente do que seria em um processamento sequencial quando utilizado apenas 
um processador. 
Ao pararmos para pensar, poderemos ver que um computador paralelo é simplesmente um grupo 
(coleção) de processadores, geralmente do mesmo tipo, interligados de tal modo que permita a 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
20 
coordenação de como é feita a troca de dados e também das suas atividades. Essas atividades podem 
ser: quando o volume de dados e cálculos é muito grande e necessita-se de rapidez na resolução. 
Na busca constante por um modelo adequado há a necessidade de compreender e incorporar, em tal 
modelo, características peculiares da computação paralela. 
No decorrer do nosso estudo vimos o modelo de computação sequencial de von Neumann, que assume 
a existência de apenas uma UCP e uma memória de acesso aleatório (RAM), é possível estabelecer uma 
relação entre os desempenhos das implementações e dos seus respectivos algoritmos por meio de 
medidas de complexidade de tempo. 
No modelo de von Neumann, estas medidas (complexidade de tempo) tornam possível medir de 
maneira mais eficiente a performance dos algoritmos sequenciais, servindo como referência para as 
implementações. Entretanto, na computação paralela, a mesma relação entre algoritmos e 
implementações não há ainda um modelo padrão. Em virtude da presença de vários elementos de 
processamento torna a definição de um modelo de computação paralela mais complicado. 
13 
6 - PRAM - PARALLEL RANDOMACCESS MACHINE 
O modelo PRAM (Parallel Random Access Machine) é uma extensão do modelo sequencial RAM e 
também o mais conhecido dos modelos de computação paralela. 
Podemos descrevê-lo como um conjunto de processadores que trabalham sob o controle do clock de 
maneira síncrona. Cada processador possui uma identificação única e uma memória local própria, 
comunicando-se com os demais processadores por meio de uma memória compartilhada. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
21 
Apesar de sua importância conceitual e teórica, o modelo PRAM, não consegue espelhar com precisão a 
noção de paralelismo. Algumas características que não foram incorporadas ao modelo têm grande 
impacto no desempenho das implementações. 
Em virtude das limitações do modelo PRAM, outras alternativas surgiram para contornar estes 
problemas, estes modelos são chamados realísticos, exemplo, o BSP e o CGM, que veremos a seguir. 
Clock 
Significa a quantidade de ciclos que um processador é capaz de realizar durante um determinado 
tempo. (Fonte: http://pt.wikipedia.org/wiki/Clock) 
 
14 
7 – MODELOS BSP E CGM 
O modelo Bulk Synchronous Parallel Model (BSP), que em uma tradução simples seria “Modelo Paralelo 
Síncrono Volumoso”, teve sua proposição feita por Valiant (Leslie Valiant – professor de Harward), no 
ano de 1990, foi um dos primeiros em levar em consideração os custos da comunicação e não levar em 
conta as características de uma máquina paralela em um número pequeno de parâmetros. Este modelo 
tem como objetivo principal servir de ponte entre as necessidades na computação paralela de hardware 
e software. Conforme a proposição de Leslie Valiant, este é um dos fatores responsáveis pelo sucesso do 
modelo sequencial de von Neumann. 
O modelo de máquina BSP consiste de um conjunto de “p” processadores com memória local, trocando 
informações por meio de alguma interconexão, gerenciados por um roteador (faz a intermediação 
entre um ou mais pontos) e com facilidade de sincronização global. Um algoritmo BSP consiste de uma 
sequência de uma quantidade muito grande de passos (superpassos) separados por barreiras de 
sincronização. 
Há também o modelo Coarse Grained Multicomputer (CGM), que em uma tradução simples seria 
“Multicomputador com Granularidade Grossa”, teve sua proposição feita por Dehne et al, no ano de 
1993. 
O modelo CGM é muito parecido com o modelo BSP, no entanto, é definido em apenas dois 
parâmetros: 
 n = tamanho do problema e 
 p número de processadores. 
Um algoritmo CGM consiste de sequência alternada de rodadas de computação e rodadas de 
comunicação, separadas por uma barreira de sincronização. Ao falarmos de um algoritmo CGM, 
precisamos entender que é uma sequência de rounds (rodadas), com alternância de fases bem definidas 
de processamento local e estabelecendo uma conexão global. Geralmente, durante uma rodada de 
computação é feita com a utilização do melhor algoritmo sequencial para o processamento dos dados 
disponibilizados localmente. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
22 
O cálculo do custo de um algoritmo CGM é feito pela soma dos tempos obtidos em termos do número 
total de rounds de computação local e do número de superpassos, o que seria equivalente ao número 
total rodadas de comunicação. 
Granularidade grossa 
Quando se fala em “coarse grained” (granularidade grossa) é em virtude do tamanho de o problema ser 
razoavelmente maior que a quantidade de processadores, ou seja, “tamanho do problema” = “número 
de processadores” (n/p = p). 
 
15 
Os modelos modernos de computação paralalela, BSP e CGM, têm por objetivo a redução dos custos de 
comunicação de maneira muito semelhante e buscam a caracterização de uma máquina paralela por 
meio de um conjunto de parâmetros. Podemos destacar que no número de operações de computação 
local e no número de superpassos eles são muito semelhantes. 
Entretanto, há diferenças. Destacamos que o modelo CGM é mais simples no projeto e o 
desenvolvimento de algoritmos em virtude de ser um modelo mais simplificado e um pouco mais 
poderoso que o modelo BSP. É interessante destacar que um algoritmo CGM pode ser convertido para o 
modelo BSP sem nenhuma mudança. Em suma, os modelos BSP e CGM apresentam características 
muito parecidas. Contudo, o modelo CGM é mais simples quanto ao custo da comunicação, o que 
facilita bastante o projeto de algoritmos. 
Fazendo referência ao final da década de 1980, observamos que houve o crescimento grande do 
desenvolvimento de algoritmos paralelos para o modelo chamado PRAM. Em virtude, infelizmente, dos 
resultados teóricos obtidos não serem positivos eles não foram utilizados para implementações nas 
máquinas atuais. Na década de 1990, é quando surgem os modelos BSP e CGM. O desenvolvimento de 
algoritmos para esses modelos, quando foram implementados nas máquinas atuais, apresentam 
resultados satisfatórios de “Tempo do Algoritmo Sequencial Dividido pelo Tempo do Algoritmo Paralelo 
com “p” processadores” (speedup) semelhantes ao que havia sendo ensaiado nas análises teóricas. 
Os modelos BSP e CGM tornaram possível um progresso considerável na área de algoritmos paralelos, 
mas o mais interessante é que ainda há muito a melhorar e que muitas pesquisas ainda serão 
necessárias para atingir o estado da arte. 
16 
RESUMO 
Durante nosso estudo você teve oportunidade de conhecer o que é Computação Paralela e sua maneira 
de realizar vários cálculos (instruções) simultaneamente. Você compreendeu como é a organização SMP, 
que faz referência a vários processadores similares em um mesmo computador, ligados pelo 
barramento ou por meio de algum circuito de conexão. Você compreendeu que CLUSTER é o conjunto 
de máquinas, ligadas entre si, que trabalham juntas como um sistema computacional único, dando a 
impressão que é uma única máquina. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
23 
Quando falamos em sistema NUMA estamos fazendo referência a um multiprocessador com memória 
compartilhada, no qual o tempo gasto para acesso a uma palavra na memória varia conforme a posição 
dessa palavra na referida memória. Você teve oportunidade de saber que computadores superescalares 
são máquinas que possuem várias unidades de execução no mesmo processador. Na organização MIMD, 
os processadores são utilizados para propósito geral, cada processador irá processar todas as instruções 
para, de forma adequada, realizar a transformação dos dados. 
Você compreendeu que na estrutura SISD há uma UC (unidade de controle) que oferece uma SI 
(sequência de instruções) para uma UP (unidade de processamento). Você também teve oportunidade 
de conhecer o que é um sistema NUMA (Acesso não uniforme à memória) que tem por característica 
que todos os processadores possuem acesso a todas as áreas da MP (memória principal), via operação 
de armazenamento e de carga. Você compreendeu que o modelo PRAM (Parallel Random Access 
Machine) é uma extensão do modelo sequencial RAM e também o mais conhecido dos modelos de 
computação paralela. Para finalizar você conheceu o modelo Bulk Synchronous Parallel Model (BSP) que 
foi um dos primeiros a levar em consideração os custos da comunicação e não levar em conta as 
características de uma máquina paralela em um número pequeno de parâmetros e o modelo Coarse 
Grained Multicomputer (CGM) que é muito similar ao modelo BSP, no entanto, é definido em apenas 
dois parâmetros: em que “n” é o tamanho do problema e “p” número de processadores. 
 
UNIDADE 4 – ARQUITETURAS CONVENCIONAIS E NÃO CONVENCIONAIS 
MÓDULO 3 – AMBIENTE DISTRIBUÍDO DE ALTO DESEMPENHO - FUNDAMENTOSBÁSICOS 
01 
1 - ARQUITETURAS COMPUTACIONAIS 
Durante o estudo deste módulo você terá a oportunidade de compreender que os sistemas 
computacionais estão cada vez mais elaborados e complexos, requerendo o processamento de grandes 
quantidades de informação e os computadores que as processam precisam ter um melhor 
balanceamento de carga, uma melhor distribuição na concorrência de tarefas, além da redução do 
tempo de resposta ao usuário. 
As opções mais usuais para a solução desses problemas são: a utilização de processadores mais rápidos 
(cujo custo normalmente é elevado); o desenvolvimento de melhores algoritmos (permitindo agilidade 
nas aplicações); ou então, a agregação (clusters) ou distribuição geográfica (grids) dos computadores 
locais permite a maximização da eficiência global das aplicações. 
Com microprocessadores cada vez mais potentes, com um custo cada vez menor, além do avanço na 
tecnologia de comunicação de dados houve a criação de um ambiente favorável para o 
desenvolvimento e utilização de sistemas distribuídos. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
24 
 
A computação distribuída ou paralela diz respeito à interligação de vários computadores a uma rede 
com a finalidade de compartilhar e coordenar os recursos disponíveis para a solução de problemas 
complexos na execução de tarefas. 
 
02 
Há inúmeras possibilidades na arquitetura dos computadores com a finalidade de uniformizar as 
características dos sistemas computacionais, porém a taxonomia de Flynn é a mais aceita na área, pois 
considera tanto o número de instruções executadas, quanto o conjunto de dados para os quais essas 
instruções são submetidas. Vale a pena relembrar a classificação dos computadores segundo Flynn: 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
25 
 
 
03 
Ao permitir a introdução de fluxos múltiplos de dados ou instruções, as arquiteturas MIMD criaram o 
ambiente perfeito para o surgimento da computação distribuída. A classificação da arquitetura MIMD 
pode ser feita sob dois prismas: 
1) Multiprocessadores: há vários processadores compartilhando uma única memória ou 
conjunto de memórias, sendo conhecida como fortemente acoplada, visto que há uma 
interligação entre processadores e memória, através de um sistema local de interconexão. O 
diferencial é que “a comunicação entre os processadores é efetuada através de instruções 
de acesso comum à memória (as operações de carregamento e armazenamento), pois os 
processadores compartilham a memória de uma forma global” (DANTAS, 2005). Há 
restrições na escalabilidade de processadores. 
 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
26 
Fortemente acoplado 
Sistemas fortemente acoplados são aqueles que possuem vários processadores compartilhando uma 
memória física. Exemplos: SMP(UMA) e NUMA. 
 
04 
A interconexão entre processadores e memória pode ser efetuada por meio de uma barra, que permite 
a configuração compartilhada. 
 
 
05 
Outra forma de interligação é usar um equipamento de comutação, (switch), estabelecendo uma 
configuração comutada simples e até multinível. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
27 
 
 
06 
2) Multicomputadores: este tipo de arquitetura é composta por ambientes fracamente 
acoplados, onde os processadores têm suas próprias memórias locais e a comunicação entre 
processos é caracterizada por “troca de mensagens entre os processos que estão 
executando nos processadores” (DANTAS, 2005). Há uma boa escalabilidade da estrutura da 
máquina. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
28 
 
07 
Os multicomputadores também podem ser ligados em barramento e por comutação conforme as 
figuras que se seguem: 
 
 
 
 
 
Multicomputadores ligados em barramento 
 
08 
2 - SMP, CCNUMA E MPP 
Multiprocessadores Simétricos (SMP) 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
29 
Conforme vimos anteriormente, os Multiprocessadores Simétricos (SMP) são arquiteturas de 
compartilhamento total e representadas pelos Symmetric Multiprocessor SMP onde há inúmeros 
processadores compartilhando toda a base computacional e executando as instruções num único 
sistema operacional. São chamados de simétricos porque os processadores têm os mesmos custos para 
acesso à memória e a qualquer dispositivo conectado no sistema de entrada e saída. 
As máquinas são denominadas servidores de pequeno porte, que visam aumentar o desempenho de 
aplicações por meio do compartilhamento do código com uma memória única utilizando fortemente os 
processadores disponíveis, provendo maior rapidez nas consultas e atualizações de bancos de dados, 
por exemplo. Uma das características dessa arquitetura é que os ambientes não são muito escaláveis, 
pois o sistema de interconexão normalmente utilizado é um barramento que fixa a largura da banda e 
cria uma limitação. 
 
Fonte: Prof. Dr. Odemir Martinez Bruno – Processamento Paralelo – Slide ICMC – USP 
09 
ccNuma - Cache Coherence Non-Uniform Memory Access 
A arquitetura de acesso não uniforme à memória – ccNuma (Non-Uniform Memory Access NUMA) tem 
a característica de poder escalar centenas de processadores, preservando o modelo de programação 
simples de uma configuração SMP. Os processadores podem compartilhar os mesmos dados que estão 
armazenados em uma memória global. Há “um retardo para acesso a determinadas partes da memória 
por determinados processadores dependendo de suas localizações” (DANTAS, 2005). 
Referem-se a estas configurações como organização de multiprocessador distribuída de memória, onde 
cada nó processador possui um cache local que reduz o tráfego na rede de interconexão e o 
balanceamento de carga é realizado de forma dinâmica pelos protocolos de coerência das caches. 
As arquiteturas ccNUMA são complexas e suas implementações dependem das soluções de cada 
fabricante para a sincronização de acesso e consistência à memória, permitindo um melhor 
desempenho da máquina. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
30 
 
10 
MPP - Massively Parallel Processors 
É um tipo de arquitetura fracamente acoplada na qual os computadores são classificados como 
multicomputadores e as máquinas possuem configuração massivamente paralelas (MPP), podendo ser 
compostos por um conjunto de multiprocessadores, que representam um nó de uma configuração do 
tipo multicomputador, com cache e memória local, e há milhares de nós interligados por dispositivos de 
interconexão de alta velocidade. 
Cada nó possui uma cópia de sistema operacional, onde as aplicações executam localmente e se 
comunicam através de pacotes de troca de mensagem. A escalabilidade desta abordagem é maior, visto 
que cada nó tem sua estrutura própria de memória e a interligação de vários nós é efetuada por 
dispositivos chamados redes de interconexão, podendo ser implementadas de várias formas de acordo 
com sua topologia, seu algoritmo de roteamento, a estratégia de comutação e o controle do fluxo entre 
nós. 
11 
3 - SISTEMAS DISTRIBUÍDOS, CLUSTERS E GRIDS 
São configurações que agregam computadores existentes nas redes convencionais e possuem grande 
poder de escala em virtude disso. Nos ambientes distribuídos os conjuntos de máquinas existentespermitem configurações diferenciadas de SMPs, MPP, de clusters e grids computacionais. Muitos 
autores empregam o termo metacomputador como referência ao uso de sistemas distribuídos como um 
grande computador, vide a própria internet que possui máquinas agrupadas para a execução de uma 
aplicação. 
É importante que a segurança, o retardo de comunicação, a confiabilidade, a disponibilidade e a 
compatibilidade de versões de pacotes de software sejam analisados durante o processo de 
implementação desta configuração, visto que, como há mais computadores, a probabilidade de uma 
falha ocorrer aumenta substancialmente. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
31 
 
12 
Clusters 
É a agregação de computadores de uma forma dedicada ou não dedicada para a execução de aplicações 
específicas de uma organização ou que exijam um maior desempenho computacional agregado. 
Normalmente, os clusters se encontram geograficamente localizados em uma determinada área da 
organização, tendo uma disponibilidade de processadores, memórias e capacidade de armazenamento 
específicos para este atendimento. 
Nos clusters a escalabilidade é um diferencial, visto que a configuração pode ser aumentada de acordo 
com os recursos disponíveis, melhorando o desempenho das aplicações. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
32 
 
13 
Grids 
O termo computação em grade ou grids computacionais agregam ambientes geograficamente dispersos 
criando uma malha de serviços, com foco na qualidade. Seu principal objetivo é o compartilhamento dos 
mais diferentes tipos de recursos, desde os mais simples como um desktop até os de alto desempenho 
como os de grande porte e os clusters, utilizando o tempo ocioso de sistemas computacionais. 
Seu maior exemplo é a internet, que está num ambiente no qual diferentes tipos de aplicativos e de 
requerimentos de qualidade são tratados de forma equivalente, através dos grids consegue-se 
concentrar “toda a potencialidade de recursos e serviços disponíveis na internet para o processamento 
de tarefas dos usuários pertencentes a uma ou mais configurações de grid”. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
33 
 
14 
4 - ESCALONAMENTO (SCHEDULING) 
O escalonamento é necessário para minimizar o tempo de execução das aplicações, e 
consequentemente seus custos de comunicação, além de maximizar a utilização dos recursos 
computacionais disponíveis. Um algoritmo de escalonamento pode ser definido de diferentes formas 
mas seu objetivo principal é o de produzir um desempenho excelente nas combinações de hardware e 
software. Para tanto se deve verificar a plataforma computacional, o algoritmo de escalonamento e as 
aplicações executadas. 
A taxonomia proposta por Casavant (Casavant & Kuhl, 1988) é a mais abrangente e baseia-se nos tipos 
de informações usadas, onde as tarefas serão alocadas, e na forma como serão efetuadas as tomadas de 
decisão (centralizadas ou distribuídas) e a obtenção de informações. A classificação hierárquica é 
dividida em escalonamento local e global. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
34 
 
15 
No escalonamento local, os períodos de tempo de utilização de um único host são chamados de time-
slices e são atribuídos aos processos em execução por meio da política de compartilhamento de tempo 
(time-sharing) (TANEMBAUM, 2001). 
O escalonamento global é a atividade que determina para qual o elemento o processo será alocado e 
executado, podendo ser estático, onde a atribuição do processo é feita antes da execução do programa, 
ou dinâmico, onde há a redistribuição de processos entre os elementos de processamento durante a 
execução do programa, balanceando a carga (load balancing). 
 
Fonte: Escalonamento de Processos em Sistemas Computacionais Distribuídos 
As decisões relativas ao balanceamento de carga podem ser feitas de forma centralizada, distribuída ou 
de uma combinação dessas abordagens. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
35 
Centralizada 
Na forma centralizada (não distribuída), estabelece-se que um único elemento de processamento 
recebe as informações de carga, sendo responsável pelo escalonamento em todo o sistema. 
 
 
 
16 
5 - DEPENDABILIDADE 
Na sociedade moderna há uma grande dependência de sistemas computacionais e a dependabilidade 
diz respeito à capacidade destes sistemas em prestar um serviço no qual se pode justificadamente 
confiar. 
Avizienis (2001) caracteriza a dependabilidade a partir de um conjunto de conceitos divididos em três 
grupos: os atributos, os meios e as ameaças. 
 
17 
Atributos são medidas probabilísticas da dependabilidade. Em virtude da natureza não determinística 
das circunstâncias consideradas, são associadas variáveis aleatórias a cada atributo e as medidas obtidas 
são probabilidades. Os atributos comumente empregados são: 
Distribuída 
Na forma distribuída, cada elemento de processamento tem autonomia para estabelecer sob que 
condição ocorre a transferência de um processo. 
Combinação 
O processo de escalonamento pode ser feito de forma cooperativa, considerando os outros 
processadores do sistema, ou não cooperativa (independente). 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
36 
 
Fonte: Repositório – UFSC - 
https://repositorio.ufsc.br/bitstream/handle/123456789/89586/242963.pdf?sequence=1 
18 
Meios 
Através dos meios da classificação da dependabilidade consegue-se trabalhar na prevenção, tolerância, 
remoção ou previsão das falhas. Assim sendo, podem-se tratar as falhas que geram erros e propagam 
defeitos. 
Prevenção de falhas 
Ao se preverem as falhas aumenta-se a confiabilidade dos sistemas, através de técnicas de controle da 
qualidade nas etapas de projeto e desenvolvimento de sistemas. Como não há como eliminar todas as 
falhas do sistema, estão previstos procedimentos manuais de reparo a fim de restaurar o sistema à 
condição de serviço correto. 
19 
Tolerância a falhas 
É a capacidade de um sistema apresentar um comportamento muito bem definido na ocorrência de 
falhas ativas, utilizando-se de técnicas que aumentem a segurança e a operacionalidade do sistema. 
 
a) Mascaramento: empregado para encobrir ou ocultar as falhas, porém sem apresentar defeito, é a 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
37 
forma mais completa de tolerância a falhas, a mais desejada e a de maior custo. 
b) Não tolerância a falhas é uma forma extrema, porém a solução mais trivial, mais frágil e com o custo 
mais reduzido, sendo a mais indesejada, visto que o sistema apresentará defeito. 
Há também duas formas intermediárias de tolerância as falhas: o defeito seguro, que garante o estado 
seguro do sistema, mas nada diz sobre o seu estado operacional; e, tolerância a falhas sem 
mascaramento, onde o sistema permanecerá operacional, mesmo que ingresse num estado inseguro. 
A redundância é a chave para se conseguir a tolerância a falhas e os sistemas distribuídos se utilizam de 
múltiplas formas de redundância, como: 
a) estrutura; 
b) hardware e software; 
c) informação; 
d) tempo. 
Estrutura 
Técnica conhecida como N-version programming, que considera duas ou mais versões de um só 
algoritmo; 
 
 
 
 
20 
Implementaçãode tolerância a falhas 
Para tornar um sistema tolerante a falhas há a necessidade do emprego de pelo menos uma das formas 
de redundância, sendo que o ponto de partida é a detecção de erros. 
Como os erros são uma propriedade do estado do sistema e há testes que podem ser executados para 
sua detecção, que devem atender a três propriedades, um tanto difíceis de serem satisfeitas: basear-se 
somente nas especificações do sistema, ser completo e correto, possuir independência do sistema com 
relação à ocorrência de falhas para evitar erros nos testes. 
Hardware e software 
Replicação de partes componentes de um sistema, ou até mesmo o sistema como um todo, sendo para 
alguns a única forma capaz de permitir a tolerância de falhas permanentes; 
Informação 
Há técnicas que utilizam os códigos de paridade onde a redundância na informação pode ser suficiente; 
Tempo 
São métodos caracterizados pela repetição da mesma atividade uma ou mais vezes, visto que a causa 
do problema é de natureza atemporal. É mais utilizada na detecção de erros que resultem da 
ocorrência de falhas transientes. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
38 
Outro passo é a recuperação do sistema, cujo objetivo é restaurá-lo a um estado onde não haja erros 
detectados e nem falhas ativadas, gerando novos erros. Pode-se realizá-la tanto pelo tratamento dos 
erros, quanto das falhas. 
O tratamento dos erros (error handling) pode ser efetuado através de: 
 
 
21 
O tratamento de falhas (fault handling) objetiva impedir que falhas identificadas sejam ativadas 
novamente e seu tratamento se dá em quatro etapas: 
 
Remoção de falhas 
Pode-se empregar a abordagem de remoção de falhas tanto na etapa de desenvolvimento, como 
durante a vida operacional de um sistema. 
No processo de desenvolvimento a remoção de falhas atua da seguinte forma: verificação (estática ou 
dinâmica), em que se analisa se o sistema atende às condições de verificação; o diagnóstico, em que as 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
39 
origens das falhas são detectadas; e a correção, em quer as falhas são corrigidas. É importante avaliar se 
a técnica implementada será eficiente e há um mecanismo de injeção de falhas (fault injection) que 
introduz falhas controladas no sistema para avaliar o comportamento da técnica empregada, sob tais 
condições. A remoção de falhas é realizada normalmente por meio de atividades de manutenção 
corretiva ou preventiva. 
22 
Previsão de Falhas 
A técnica de previsão de falhas usa avaliação do comportamento do sistema com relação à ocorrência 
ou à ativação de falhas e possui dois aspectos: 
 
Ameaças são aspectos que podem ameaçar a dependabilidade de um sistema distribuído e é necessária 
a especificação do tipo de ameaça apresentada, por meio da identificação mais precisa de falhas, erros e 
defeitos. Há uma relação de dependência entre falhas, erros e defeitos chamada de patologia da falha. 
 
Fonte: Agnaldo L Martins – http://slideplayer.com.br/slide/1866374/ 
23 
A falha é aquilo que ocasiona o erro, provocando no sistema uma transição de estado não planejada, 
levando o sistema para o lado do erro. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
40 
Quando a falha não apresenta erros é chamada de falha latente, quando produz um erro é chamada de 
falha ativa. A latência de falhas é o tempo entre o surgimento da falha e sua ativação. 
Avizienis (2001) classifica as falhas em três grupos distintos: 
• falhas de projeto - que podem ter sido geradas a especificações erradas ou incompletas; 
• falhas de interação - originadas de ações inadequadas do operador durante a operação e 
manutenção; 
• falhas físicas - resultantes do envelhecimento dos recursos computacionais existentes, seja por 
duração, valor ou extensão. 
 
Um erro é a manifestação da falha, fazendo que o sistema não atue de acordo com sua especificação, 
ou seja, é parte de um estado errôneo que constitui uma diferença de um estado válido. 
 
24 
Defeito é um erro existente no sistema que alcança a interface do serviço e altera o seu resultado 
esperado, ou seja, é um estado indesejado do sistema que pode resultar em um defeito. 
A latência de erro é o tempo entre o surgimento de um erro e a manifestação do defeito e sua duração 
depende das circunstâncias e do sistema computacional. 
Há modos de defeitos (failure modes) ou modelos de defeitos (failure models) que são usados para 
classificar os defeitos, em que os parâmetros mais utilizados são o domínio, a percepção pelos usuários 
e as consequências no ambiente. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
41 
 
25 
RESUMO 
Durante o estudo deste módulo você teve a oportunidade de compreender que há inúmeras 
possibilidades na arquitetura dos computadores com a finalidade de uniformizar as características dos 
sistemas computacionais, porém a taxonomia de Flynn é a mais aceita na área. Vimos que as 
arquiteturas ccNUMA são complexas e suas implementações dependem das soluções de cada fabricante 
para a sincronização de acesso e consistência à memória, permitindo um melhor desempenho da 
máquina. É um tipo de arquitetura fracamente acoplada na qual os computadores são classificados 
como multicomputadores e as máquinas possuem configuração massivamente paralelas (MPP), 
podendo ser compostas por um conjunto de multiprocessadores, que representam um nó de uma 
configuração do tipo multicomputador, com cache e memória local, e há milhares de nós interligados 
por dispositivos de interconexão de alta velocidade. 
Nos ambientes distribuídos, os conjuntos de máquinas existentes permitem configurações diferenciadas 
de SMPs, MPP, de clusters e grids computacionais. Vimos também que normalmente os clusters se 
encontram geograficamente localizados em uma determinada área da organização, tendo uma 
disponibilidade de processadores, memórias e capacidade de armazenamento específicos para este 
atendimento. No caso dos grids, o seu principal objetivo é o compartilhamento dos mais diferentes tipos 
de recursos, desde os mais simples, como um desktop, até os de alto desempenho como os de grande 
porte e os clusters, utilizando o tempo ocioso de sistemas computacionais. O escalonamento é 
necessário para minimizar o tempo de execução das aplicações, e consequentemente seus custos de 
comunicação, além de maximizar a utilização dos recursos computacionais disponíveis. 
Você estucou que nossa sociedade moderna tem uma grande dependência de sistemas computacionais. 
Esta dependência é chamada de dependabilidade. Este conceito diz respeito à capacidade que os 
sistemas têm em prestar um serviço no qual se pode justificadamente confiar. Através dos meios da 
classificação da dependabilidade consegue-se trabalhar na prevenção, tolerância, remoção ou previsão 
das falhas. Assim, podem-se tratar as falhas que geram erros e propagam defeitos. Ao final do módulo, 
vimos que, em sistemas de alto desempenho, a “tolerância a falhas” é a capacidade de um sistema 
apresentar um comportamento muito bem definido na ocorrência de falhas ativas, utilizando-se de 
técnicas que aumentem a segurança e a operacionalidade do sistema. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
42 
UNIDADE 4 – ARQUITETURAS CONVENCIONAIS E NÃO CONVENCIONAIS 
MÓDULO 4 – PROCESSADORES DE REDE, DISPOSITIVOS DE INTERCONEXÃO E 
PROTOCOLOS LEVES 
01 
1 - MODELO TRADICIONAL DE REDE 
Durante o estudodeste módulo teremos a oportunidade de entender por que os sistemas 
computacionais necessitam de redes de comunicação cada vez mais eficazes, mas que, apesar do 
aumento da disponibilidade destas redes, o desempenho das aplicações não tem evoluído na mesma 
proporção, visto que são utilizados dispositivos de redes inadequados nos novos projetos de distribuição 
de recursos e também de pacotes de softwares. 
O incremento na oferta de largura da banda nos meios físicos de transmissão de concessionárias de 
telecomunicações e energia elétrica, assim como TV a cabo, tem permitido o desenvolvimento de novas 
tecnologias para aumentar a eficiência dos recursos disponibilizados. Urge fazer com que as aplicações 
sejam executadas com melhor desempenho, utilizando um maior volume de dados e fazendo uso de 
interfaces de rede, sistemas de interconexões de alta velocidade e protocolos mais leves para que a taxa 
efetiva de transmissão seja maximizada. 
No modelo tradicional, o sistema operacional acessa uma interface de rede (network interface card - 
NIC), podendo ser uma rede local (LAN) ou geograficamente distribuída (WAN), para a realização de uma 
aplicação, sendo que a rede é a responsável pelo envio das mensagens para a NIC do computador onde 
está a aplicação destinatária, fazendo o caminho inverso. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
43 
02 
 
Denominada primeira geração de rede há o reconhecimento de quadros elétricos e endereços de placa, 
tratados pelo dispositivo de rede do computador. 
 
03 
2 - APLICAÇÕES E INTERFACES DE REDE CONVENCIONAIS 
Com a oferta maior de banda larga, os custos operacionais têm diminuído e novas aplicações se 
beneficiam dessa situação, como: 
• VOIP (Voz sobre IP); 
• Transmissão áudio e vídeo; 
• Aplicações Fim a Fim; 
• VPN (Virtual Private Network). 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
44 
Tudo o que requer serviços diferenciados, qualidade de serviço, segurança e gerenciamento, necessita 
de uma maior quantidade de processamento e consequentemente interfaces de rede que atendam a 
essas demandas específicas e não há um desenvolvimento exponencial crescente dos processadores, 
sinalizando que se deve buscar uma alternativa para as aplicações que utilizam a rede, minimizando o 
baixo rendimento de processador central dos computadores. 
Para o processamento de aplicações em rede, normalmente são utilizados os dispositivos FPGA (field 
programmable gate arrays) para processamento de baixo nível (hardware) e GPP para os de alto nível 
com aplicações mais complexas. 
 
VOIP (Voz sobre IP) 
Utiliza a rede de computadores para transmissão de voz. 
 
 
Transmissão áudio e vídeo 
Havendo uma infraestrutura eficiente o usuário pode usar seu computador para assistir vídeos e filmes, 
além de conteúdos formais de bibliotecas digitais. 
Aplicações Fim a Fim 
Permite que uma aplicação residente num computador possa submeter uma tarefa para um ou mais 
computadores. É também conhecido como P2P e o aplicativo mais conhecido é o SETI@HOME (2005), 
que permite a execução de dados coletados no espaço em seu computador, uma execução remota que 
não se restringe a uma busca, mas a um trabalho especifico. 
VPN (Virtual Private Network) 
São redes virtuais privadas que permite ao programador da aplicação o estabelecimento de formas de 
ligação que faz seu local de trabalho físico esteja conectado a regiões geográficas diferentes. É uma 
solução que pode prover redução no custo, oferecer maior segurança e um acesso remoto mais fácil às 
aplicações, mas depende de infraestrutura. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
45 
 
04 
3 - PROCESSADORES DE REDE 
No modelo tradicional de redes há retenções em virtude da governança e segurança das organizações e 
as aplicações dos usuários são submetidas aos pacotes de firewall e tradução de endereços (network 
address translation NAT), que geram um retardo às aplicações de rede. As redes de nova geração dão 
maior prioridade para as aplicações de rede utilizando os processadores de rede (network processors 
NP), que são roteadores, switches e interfaces para acelerar o processamento das solicitações. 
Na 2ª Geração de sistemas de rede, há o processamento de quadros elétricos, endereçamento de rede, 
classificação e reencaminhamento de pacotes efetuados na placa, cabendo ao processador central o 
controle e tratamento de exceções. 
 
05 
Na 3ª geração de sistemas de rede ou new generation network (NGN), quando uma aplicação envia 
mensagens para outra de forma remota, o processo é efetuado diretamente através de uma chamada 
de solicitação de transmissão para o processador de rede (NP) e há um processamento na placa de 
mensagens recebidas e aí há a entrega para a aplicação. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
46 
 
06 
As técnicas que tratam da comunicação das aplicações nas redes podem ser classificadas como: 
• ASIC (Application Specific Integrated Circuit): promove um alto desempenho de hardware, porém sem 
maior flexibilidade para programação. 
• ASIP (Application Specific Instruction Processor): há processador especializado para um domínio 
específico de aplicação, gerando um bom balanceamento entre flexibilidade de programação e 
desempenho; 
• Co-processor – é utilizada para melhorar uma determinada função de uma aplicação, como aplicações 
gráficas ou de visualização, porém não há muita flexibilidade de programação; 
• FPGA (Field programmable gate arrays): é um “dispositivo semiconductor que pode ser programado 
pelo usuário final para execução de uma grande variedade de funções lógicas” (Dantas, 2002). É 
programado em nível de portas e pode ser reconfigurado quando da mudança de requisitos de uma 
aplicação. 
• GPP (General Purpose Processor): possui grande flexibilidade de programação e pequeno 
desempenho, por ser um processador de uso geral. 
De todas as opções disponíveis, a melhor relação entre flexibilidade e desempenho é na tecnologia ASIP, 
visto que permite boa utilização de software aliada ao desempenho de hardware, resultando numa 
adaptação mais fácil aos padrões de rede e suas aplicações. Além disso, há uma excelente relação de 
custo/benefício entre o desenvolvimento de software e a implementação em hardware. 
07 
4 - CARACTERÍSTICAS DE UM PROCESSADOR DE REDE 
É um dispositivo programável com características de arquitetura e circuitos próprios para o 
processamento de pacotes de rede (Dantas, 2002). Há no mercado inúmeras opções disponíveis com 
grandes diferenças tecnológicas, no que tange à complexidade dos processadores, o suporte de 
software, o sistema de memória e a arquitetura. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
47 
 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
48 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
49 
 
08 
Os processadores de rede estão cada vez mais especializados e os dispositivos usados são classificados 
em três categorias: núcleo, borda e acesso. 
• Núcleo: usado em aplicações que requerem um alto desempenho com menor flexibilidade de 
programação, como os roteadores que transferem grandes quantidades de dados sem necessitar de 
flexibilidade de programação; 
 
102 – Arquitetura de Computadores |Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
50 
09 
• Borda: como as aplicações executadas têm características de programação do nível do usuário final, os 
equipamentos requerem certa flexibilidade de programação, com um desempenho menor do que no 
tipo núcleo. Os dispositivos de borda tendem à utilização de processadores de rede ASIP; 
 
10 
• Acesso: seu foco está no provimento de acesso às redes, através de agregação do tráfego, 
encaminhando para uma rede estruturada convencional. Os dispositivos de acesso têm um baixo 
desempenho em relação aos demais tipos, porém são mais flexíveis para atender diferentes tipos de 
aplicativos, como celulares, tablets e palmtops. 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
51 
11 
5 - DISPOSITIVOS DE INTERCONEXÃO 
Permitem um alto desempenho para aplicações distribuídas, classificados como: 
1) Convencionais: interligados através de um cabo coaxial (thickwire), onde todos possuíam 
acesso limitado ao meio (Ether) caso estivesse desocupado. Esta abordagem criada pela 
Xerox foi chamada de Ethernet e aos poucos foi substituída por dispositivos concentradores 
(hubs), que através de pares trançados permite a comunicação entre equipamentos e 
comutados (switches), que permitem conexões paralelas através de interligação em pares. 
Cabe ressaltar que se o processador do computador não for muito veloz não adianta ter 
uma placa de rede com boa taxa de transferência efetiva. 
 
 
12 
2) Interconexão de alto desempenho: há inúmeras inovações tecnológicas nos 
multicomputadores e multiprocessadores, como a interconexão de processadores e memórias 
de arquiteturas paralelas, usualmente denominada de SAN (system area network), que 
propiciam ambientes de alta taxa de transferência e baixo retardo, similares aos 
multicomputadores ou multiprocessadores, utilizando-se de computadores convencionais do 
tipo PC. Sendo assim os aplicativos podem ser executados, consultando uma grande massa de 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
52 
dados distribuída geograficamente, em supercomputadores dispersos numa rede com recursos 
já existentes. As principais características que este dispositivo deve dispor é a grande 
escalabilidade, um serviço de tolerância a falhas, retardo pequeno e a taxa de transmissão da 
ordem de Gbytes/segundo, além da disponibilidade de um pacote de biblioteca de software de 
programação para o equipamento. Há dois grupos que realizam essa interconexão: 
a) Programação de troca de mensagem entre processadores no nível de placa de rede, que possibilita a 
criação de configurações de multicomputadores. 
b) Abstração de uma memória virtual única (multiprocessador) entre todos os computadores 
interligados ao dispositivo. 
 
 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
53 
13 
6 - PROTOCOLOS LEVES 
Esta abordagem enfoca não só a maximização da utilização da infraestrutura das redes, mas também o 
desempenho computacional de aplicações de diferentes naturezas em ambientes distribuídos de redes. 
Atualmente, há a utilização de maiores larguras de bandas (band-width) com menor retardo (latency) e 
o universo de equipamentos que estão sendo conectados às redes causam impacto nas arquiteturas de 
protocolos de redes. 
6.1 Arquitetura TCP/IP 
O protocolo da camada da rede IP (internet protocol) é o padrão do ambiente internet, assim como os 
protocolos de transporte, TCP (transmission Control Protocol) e UDP (user datagram protocol), que 
representam o modo como as aplicações podem solicitar serviços orientados e não orientados à 
conexão. Foram projetados num período onde as redes físicas de enlace tinham uma baixa qualidade, 
ou seja, com alta frequência de erros nas redes de comunicação devido às condições físicas do meio, 
sendo protocolos bastante robustos, e quando utilizados em uma infraestrutura mais adequada de 
transmissão apresenta algumas deficiências. 
A retransmissão go-back-n é a implementada 
no protocolo TCP, quando uma conexão entre 
dois pontos estiver em curso ou um erro de 
recebimento for detectada, todos os pacotes a 
partir do pacote perdido serão retransmitidos. 
Uma delas é o desperdício da largura da banda 
para a transmissão de pacotes que já haviam 
chegado ao destinatário e também o 
processamento dos pacotes pelo nó 
destinatário e posterior descarte dos pacotes, 
ou seja, há necessidade de soluções mais 
adequadas quando do uso de redes com alta 
taxa de transmissão, alto custo e baixa 
ocorrência de erros. 
14 
6.2 Protocolos de Alto Desempenho 
Há alguns mecanismos que auxiliam no aproveitamento do uso de rede, porém muitas ferramentas 
foram projetadas para redes de comunicação e não para redes locais com altas disponibilidades de 
largura de banda e baixo retardo, assim sendo, necessita-se de uma mudança para protocolos mais leves 
(lightweight protocols) e mais eficientes, para que a troca de pacotes seja otimizada. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
54 
Entre os exemplos existentes, há os sistemas denominados Beowulf que são um conjunto de 
computadores pessoais interligados através de uma rede SAN, com o objetivo de atender um 
determinado tipo de aplicação. São também chamados de o paradigma de Cluster Computing, uma 
forma mais abrangente da computação de alto desempenho, num único ambiente computacional, onde 
os recursos disponíveis são distribuídos. 
Não há uma correlação direta entre a infraestrutura e o desempenho das aplicações nas redes e os 
protocolos de transporte são inadequados para uma evolução das configurações atuais para ambientes 
de alto desempenho. 
6.3 Protocolos e Melhoria de Desempenho 
Há três abordagens no que tange ao desempenho de uma arquitetura de protocolo: minimizar os 
requerimentos de processamento, através da gerência da conexão; diminuir o controle de erros (error 
free), com esquemas para tratamento de perda de dados na transmissão e buffer overflow, sem 
causar overhead na rede, e melhorar o algoritmo de controle de fluxo, para evitar congestionamento na 
banda. 
15 
6.4 PROTOCOLOS DE TRANSPORTE 
Para incrementar a utilização da largura da banda através de conexões eficientes de transporte há 
necessidade de novos protocolos e melhoria dos existentes. Há protocolos que foram projetados com o 
objetivo de alto desempenho, como demonstrados na tabela a seguir. 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
55 
 
Fonte: Preparado pelo autor baseado em Dantas (2005) 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
56 
16 
7 - ANÁLISE DAS FUNÇÕES DO PROTOCOLO DE TRANSPORTE 
Dentre os mecanismos do protocolo de transporte, está a função de gerência de conexão, que estuda o 
início e término de uma associação de transporte, analisando os aspectos de: 
 
 
 
 
 
 
 
 
17 
RESUMO 
Durante nosso estudo tivemos a oportunidade de compreender que houve um incremento na oferta de 
largura da banda nos meios físicos de transmissão de concessionárias de telecomunicações e energia 
102 – Arquitetura de Computadores | Unidade 04 
 
 
© 2014 - AIEC - Associação Internacional de Educação Continuada 
 
57 
elétrica. Sendo assim, urge fazer com que as aplicações sejam executadas com melhor desempenho, 
utilizando um maior volume de dados e fazendo uso de

Mais conteúdos dessa disciplina