Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Microprocessador 8085 2009, Notas de estudo de Mecatrônica

microprocessador 8085

Tipologia: Notas de estudo

2012

Compartilhado em 18/02/2012

leo-silva-48
leo-silva-48 🇧🇷

5

(1)

6 documentos

1 / 84

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Universidade Federal de Goiás
Escola de Engenharia Elétrica e de Computação
Microprocessador 8085
Universidade Federal de Goiás
Escola de Engenharia Elétrica e de Computação
Microprocessador 8085
Prof. José Wilson Lima Nerys
Núcleo de Estudo e Pesquisa em
Processamento da Energia e Qualidade
Goiânia, 2009
Universidade Federal de Goiás
Escola de Engenharia Elétrica e de Computação
Microprocessador 8085
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54

Pré-visualização parcial do texto

Baixe Microprocessador 8085 2009 e outras Notas de estudo em PDF para Mecatrônica, somente na Docsity!

Universidade Federal de Goiás

Escola de Engenharia Elétrica e de Computação

Microprocessador 8085

Universidade Federal de Goiás

Escola de Engenharia Elétrica e de Computação

Microprocessador 8085

Prof. José Wilson Lima Nerys

Núcleo de Estudo e Pesquisa em Processamento da Energia e Qualidade

Goiânia, 2009

Universidade Federal de Goiás

Escola de Engenharia Elétrica e de Computação

Microprocessador 8085

Observações

1. Esta apostila destina-se ao ensino de Microprocessadores e Microcontroladores para alunos do 7º

período de Engenharia Elétrica da Escola de Engenharia Elétrica e de Computação da

Universidade Federal de Goiás

2. Não se pretende, com o uso desta apostila, dispensar os livros didáticos indicados na referência

básica, mas apenas facilitar o ensino da disciplina em questão, reunindo num só volume o

material a ser usado em sala de aula.

3. A apostila trata do Microprocessador 8085 e aborda desde a estrutura básica de um

microprocessador, até a aplicação do mesmo num sistema mínimo com microprocessador,

memória, portas de entrada e saída e outros periféricos. As instruções em assembly do 8085 são

empregadas na solução de vários problemas de cunho didático, com auxílio do simulador

ABACUS.

    1. INTRODUÇÃO A MICROPROCESSADORES
  • 1.1 HISTÓRICO SOBRE COMPUTADORES
  • 1.2 NÚMERO DE TRANSISTORES EM UM MICROPROCESSADOR
  • 1.3 DEFINIÇÕES E CLASSIFICAÇÕES BÁSICAS
  • 1.4 ESTRUTURA BÁSICA DE UM COMPUTADOR
  • 1.4.1 UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
  • 1.4.2 MEMÓRIA
  • 1.4.3 UNIDADE DE ENTRADA E SAÍDA (I/O)
  • 1.4.4 BARRAMENTO
  • 1.5 ÍNDICE DE DESEMPENHO DE PROCESSADORES
  • 1.6 MICROPROCESSADOR ×××× MICROCONTROLADOR
  • 1.7 OUTROS CONCEITOS BÁSICOS:
  • 1.8 SISTEMAS DE NUMERAÇÃO
  • 1.8.1 SISTEMA DECIMAL
  • 1.8.2 SISTEMA BINÁRIO
  • 1.8.3 SISTEMA BCD (BINARY-CODED DECIMAL)
  • 1.8.4 SISTEMA OCTAL
  • 1.8.5 SISTEMA HEXADECIMAL
  • 1.8.6 CONVERSÃO DE BASE
  • 1.8.7 REPRESENTAÇÃO DE NÚMEROS POSITIVOS E NEGATIVOS
  • 1.9 EXERCÍCIOS PROPOSTOS
    1. ARQUITETURA E PRINCÍPIO DE FUNCIONAMENTO DO
  • 2.1 DIAGRAMA DE BLOCOS DO MICROPROCESSADOR
  • 2.2 UNIDADES INTERNAS E REGISTRADORES DO
  • 2.3 FREQUÊNCIA DE CLOCK
  • 2.4 PINAGEM DO
  • 2.5 SISTEMA BÁSICO DE TEMPORIZAÇÃO E PRINCÍPIO DE OPERAÇÃO
  • 2.6 FORMATO DAS INSTRUÇÕES
  • 2.7 EXERCÍCIOS PROPOSTOS
    1. CONJUNTO DE INSTRUÇÕES DO MICROPROCESSADOR
  • 3.1 SIMBOLOGIA DAS INSTRUÇÕES
  • 3.2 MODOS DE ENDEREÇAMENTO
  • 3.3 GRUPOS DE INSTRUÇÕES
  • 3.4 INSTRUÇÕES DE TRANSFERÊNCIA DE DADOS
  • 3.5 INSTRUÇÕES ARITMÉTICAS
  • 3.6 INSTRUÇÕES LÓGICAS
  • 3.7 INSTRUÇÕES DE DESVIO
  • 3.8 INSTRUÇÕES DE CONTROLE, PILHA E ENTRADA E SAÍDA
  • 3.9 FUNCIONAMENTO DA PILHA
  • 3.10 EXEMPLOS DE PROGRAMAS EM ASSEMBLY DO
  • 3.11 EXERCÍCIOS PROPOSTOS
    1. SIMULADOR DIGITAL ABACUS
  • 4.1 SIMULADOR ABACUS PARA O MICROPROCESSADOR
  • 4.2 EXEMPLOS DE PROGRAMAS EM ASSEMBLY PARA O ABACUS
  • 4.3 EXERCÍCIOS PROPOSTOS
    1. INTERRUPÇOES E OPERAÇÕES DE ENTRADA E SAÍDA
  • 5.1 INSTRUÇÕES DE RECOMEÇO
  • 5.2 INTERRUPÇÕES
  • 5.3 CIRCUITOS DE INTERRUPÇÃO
  • 5.4 SETAGEM E LEITURA DA MÁSCARA DE INTERRUPÇÃO
  • 5.5 AMPLIANDO A CAPACIDADE DE INTERRUPÇÃO
  • 5.6 DISPOSITIVOS DE ENTRADA E SAÍDA
  • 5.7 EXERCÍCIOS PROPOSTOS
    1. ENTRADA E SAÍDA SERIAL E PASTILHAS INTEGRADAS DE SUPORTE
  • 6.1 INTERFACE SERIAL NO PC
  • 6.2 INTEGRADOS DE SUPORTE
  • 6.2.1 MEMÓRIAS RAM E ROM
  • 6.2.2 DECODIFICADOR 74LS138
  • 6.3 EXERCÍCIOS PROPOSTOS
    1. REFERÊNCIAS BIBLIOGRÁFICAS

1.1 Histórico sobre Computadores

4000 A.C - ÁBACO – Invenção do ábaco pelos babilônios. Instrumento usado para realizar operações aritméticas, onde cada coluna representa uma casa decimal. Era o principal instrumento de cálculo do século XVII e é usado até hoje.

Data da mesma época do ábaco o octograma chinês Yin Yang , o qual é tido como a primeira representação binária dos números de 0 a 7. Foi criado pelo imperador chinês Fou-Hi para representar a interação entre as duas energias que juntas são o fundamento da “totalidade”.

1614 – LOGARITMO – O cientista escocês JOHN NAPIER criou os logaritmos. Através das tabelas criadas, as operações de multiplicação e divisão tornaram-se mais simples, pois eram substituídas por operações de adição e subtração, reduzindo o tempo de processamento.

1623 – RELÓGIO DE CALCULAR – WILHELM SHICKARD , professor de matemática da Universidade de Tübingen, Alemanha, inventou um relógio de calcular que é considerado a primeira máquina mecânica de calcular da história. Fazia multiplicação e divisão, mas requeria várias intervenções do operador. Usava o princípio desenvolvido por Napier (“Napier’s bones”). Essa calculadora foi desenvolvida para auxiliar o matemático e astrônomo Johannes Kepler.

1642 – PASCALINE – O cientista francês BLAISE PASCAL criou uma calculadora capaz de realizar operações de adição e subtração. A máquina implementada utilizava rodas e engrenagens, com as quais era possível representar números decimais de 0 a 9. Pascal desenvolveu essa máquina para ajudar seu pai na coleta de impostos. A máquina teve mais de 50 versões diferentes em uma década.

1671 – O matemático alemão francês GOTTFRIED LEIBNIZ criou uma calculadora de 4 funções, capaz de realizar operações de adição, subtração, multiplicação e divisão. É a antecessora das calculadoras atuais. O problema comum às calculadoras até esta época era a necessidade de entrar com todos os resultados intermediários.

1. INTRODUÇÃO A MICROPROCESSADORES

Calculadora de 4 funções de Leibniz

Ábaco Octograma chinês Yin Yang

Tabela de logaritmos Pascaline

Para ampliar seus negócios, a TMC se uniu com duas pequenas empresas para formar a CTRC ( C omputing T abulation R ecording C ompany ), em 1914. Em 1924, a CTRC se tornou uma empresa internacional e mudou seu nome para IBM ( I nternacional B usiness M achine ).

1936 – COMPUTADORES Z1, Z3 e Z4 – O cientista alemão KONRAD ZUSE criou o computador - Z1, baseado em relé eletro-mecânico. Criou também o computador Z3, que foi o primeiro computador de propósito geral controlado por programa. Criou ainda o Z4, computador projetado para o desenvolvimento de mísseis. Ele foi destruído por bomba na 2a.^ guerra mundial.

1943 – COLOSSO – Na Inglaterra, em 1943, Alan Turing , do Serviço de Inteligência Britânico, construiu o Colosso , de dimensões gigantescas. A máquina, abrigada em Bletchley Park , tinha 2000 válvulas e lia símbolos perfurados numa argola de fita de papel, inserida na máquina de leitura fotoelétrica, comparando a mensagem codificada com sequências conhecidas até encontrar uma coincidência. Processava cerca de 5 mil caracteres por segundo e foi usada para descodificar as mensagens dos alemães, tendo sido decisiva no resultado final da guerra.

1944 – MARK I – Na Universidade de Harvard em 1937, o professor Howard Aiken , financiado pela IBM, começou a construir o Mark I , concluído em 1944. Baseado em um sistema decimal, manipulava números de até 23 dígitos e tinha medidas grotescas: 15 m de comprimento e 2,5 m de altura; 760. peças envoltas em vidro e aço inoxidável brilhante; 800 km de fios e 420 interruptores para controle.trabalhava sob o controle de um programa perfurado em uma fita de papel. Adição e subtração em 0,3 s, multiplicação em 3 s e divisão em 12 s,

1946 – ENIAC – ( Electronic Numerical Integrator and Computer ) - 1o^ Computador de propósito geral a válvula: 18.000 válvulas, 30 toneladas, 15.000 pés quadrados, 140 kW, representação e aritmética com números decimais, 5.000 adições/seg. Projetado pela Ballistics Research Labs. Foi aproveitado no desenvolvimento da Bomba “H”.

1946 – VON NEWMANN MACHINE – A Máquina de Von Newman, ou “Máquina de Touring” introduziu o conceito de programa armazenado (Stored Programa Concept) no qual a memória conteria, além de dados, programas. Os computadores modernos são baseados na máquina de Von Newman.

1950 – UNIVAC – (Universal Automatic Computer) – Lançado pela SPERRY, foi o 1o^ Computador de aplicação científica e comercial. Seguiram UNIVAC II e UNIVAC 1100 series.

1953 – IBM 701 – Computador desenvolvido para aplicações científicas.

Máquina de Herman Hollerith Z

Colosso Mark I

1947 – TRANSISTOR – Invenção do transistor pelos cientistas John Bardeen, William Shockley e Walter Brattain. Passou a ser usado em escala comercial somente em 1952 pela Bell Laboratories.

1958 – CIRCUITO INTEGRADO – O engenheiro Jack Kilby, da Texas Instruments, criou o Circuito Integrado.

1960 – IBM 7090, 7094 – Computador transistorizado. Utilização de linguagens de programação de alto nível, tais como FORTRAN, COBOL e PASCAL.

1964 – IBM 360 – Primeira família planejada de computadores.

DEC PDP 8 – Introduziu o conceito de Minicomputador. Criou a estrutura de barramento, ou seja, unidade de Entrada e Saída, Memória e CPU interligados por um conjunto de condutores.

1971 – 4004 (INTEL) - 1o^ microprocessador a ser lançado, de 4 bits, com aplicação voltada para calculadoras (manipulação de números em BCD) - 45 instruções - 640 Bytes de memória - clock de 108 KHz - 60.000 instruções/ seg. (OBS: desempenho superior ao ENIAC) - 2.300 transistores.

1972 – 8008 (INTEL) - 1o^ microprocessador de 8 bits, com aplicação voltada para terminais (que trabalham com caracteres - codificação ASCII) - 48 instruções - 16KB de memória - clock de 200 KHz - 300. instruções/ seg. 3500 transistores.

1974 – 8080 (INTEL) - Processador de 8 bits, de propósito geral - 72 instruções - opera com 12V - clock de 2 MHz - 640.000 instruções/s. 64KB de memória. 6.000 transistores. 1975Z80 (ZILOG), 6502 (MOS) – Utilizado pelo 1o^ APPLE (APPLE 1) em 1976 por Steve Wozniak e Steve Jobs (data da fundação da APPLE).

1976 – 8085 (INTEL) – “8080” operando com 5V - 2 instruções a + que o 8080 - melhor performance. 5 MHz - 370.000 instruções/s. 6500 transistores.

1978 – 8086 (INTEL) - Processador 16 bits (barram. externo de 16 bits e registradores de 16 bits). 5 MHz - 0. MIPS, 8 MHz - 0.66 MIPS e 10 MHz - 0.75 MIPS. 29.000 transistores.

1979 – 8088 (INTEL) - Processador 16 bits (barram. externo de 8 bits e registradores de 16 bits) - 133 instruções - chip utilizado no primeiro PC em 1981. O PC/XT seria lançado em 1983 com HD de 10 MB e 128 Kbyte RAM. 29.000 transistores. Lançado o 68.000 (MOTOROLA) que foi utilizado no Machintosh em 1984

1980 – Co-processador 8087 (processador matemático).

8051 (INTEL – Lançado o microcontrolador 8051: microprocessador + periféricos (RAM, ROM, Serial, Timer, Controlador de Interrupção, etc.) num único chip, voltado para aplicações de controle

1982 – 80186/188 - 80286 - 80287 (INTEL) – PC/AT – 16 bits, modo protegido, 24 linhas endereços.

1985 – 80386 (INTEL) – Processador de 32 bits - bus ext. de dados de 32bits - 275.000 transistores. 16MHz - 2.5 MIPS, 20 MHz - 2.5 MIPS, 25 MHz - 2.7 MIPS, 33 MHz - 2.9 MIPS.

1989 – 80486 (INTEL) - Processador de 32 bits: “386” que incorpora o 387 (coprocessador), cache interna (L1) de 8KB e maior performance - 235 instruções - 1,2 milhões de transistores. 25 MHz - 20 MIPS, 33 MHz - 27 MIPS, 50 MHz - 41 MIPS.

1991 – WEB – Tim Berners-Lee desenvolve a Rede Mundial de Computadores (World Wide Web). O primeiro servidor Web é lançado. O conceito de conexão de vários usuários a um único computador por via remota nasceu no MIT no final da década de 50 e início da década de 60. As idéias básicas da Internet foram desenvolvidas em 1973 por Bob Kahn e Vint Cerf.

1993 – Pentium 60 MHz e 66 MHz - Processador de 32 bits – bus ext. de 64 bits - 5V - 3 milhões de transistores. Primeiro processador de 5a^ geração.

1994 – Pentium 90 MHz e 100 MHz - Alimentação de 3,3V (maior confiabilidade). 3.2 milhões de transistores.

Tabela 1: Evolução do número de transistores no microprocessador

Processador

Ano de Introdução

Número de Transistores Processo^

Velocidade de Clock

Barramento de dados MIPS

4004 1971 2.250 10 μm 108 kHz 4 bits 0,

8008 1972 2.500 10 μm 200 kHZ 8 bits 0,

8080 1974 5.000 6 μm 2 MHz 8 bits 0,

8085 1976 6.500 3 μm 5 MHz 8 bits 0,

8086/8088 1978 29.000 3 μm

5 MHz 8 MHz 10 MHz

16/8 bits

286 1982 120.000 1,5 μm 6 MHz 16 bits 1

386 1985 275.000 1,5 μm 16 MHz 32 bits 5

486 1989 1.180.000 1,0 μm 25 MHz 32 bits 20

Pentium 1993 3.100.000 0,8 μm 60 MHz 32/64 bits 100

Pentium II 1997 7.500.000 0,35 μm 233 MHz 32/64 bits 300

Pentium III 1999 24.000.000 0,25 μm 450 MHz 32/64 bits 510

Pentium 4 2000 42.000.000 0,18 μm 1,5 GHz 32 bits/64 1.

Pentium 4 (Prescott)

2004 125.000.000 0,09 μm 3,6 GHz 32/64 bits 7.

Pentium D 2005 230.000.000 90 nm

2,8 GHz 3,2 GHz

32 bits

Core2 2006 152.000.000 65 nm

2,33 GHz

32 bits 26.

Core 2 Duo 2007 820.000.000 45 nm 3 GHz 64 bits 53.

Core i7 2008 731.000.000 45 nm 2,66 GHz 3,2 GHz

64 bits 76.

A Tabela 1 mostra a evolução dos microprocessadores INTEL quanto ao número de transistores, tecnologia empregada, velocidade de clock, capacidade do barramento de dados e capacidade de processamento (em milhões de instruções por segundo – MIPS), de 1971 a 2008.

A quantidade cada vez maior de transistores numa única pastilha foi acompanhada da redução do tamanho físico dos transistores. Essa redução é mostrada na Fig. 1.2.

Fig. 1.2: Redução do tamanho físico dos processadores

A redução do tamanho do transistor resulta no aumento da velocidade de operação e também na redução das conexões internas, além de permitir a inserção de um número cada vez maior de transistores numa única pastilha. O aumento da capacidade de integração de transistores resulta ainda na redução do consumo de energia elétrica e do custo dos microprocessadores. Há um postulado que diz que o gate de um transistor não pode ser menor do a largura correspondente a 10 átomos. A previsão de pesquisadores da Intel é a dimensão do gate dos transistores alcançarão esse valor por volta do ano 2017 (http://www.intel.com/update/archive/issue2/focus.htm).

1.3 Definições e Classificações Básicas

 COMPUTADOR (definições):

  • Máquina destinada a reduzir cômputos (cálculos) e tomadas de decisões;
  • Máquina que executa uma seqüência de operações (descritas por um programa) sobre um determinado dado e produz uma saída;
  • Dispositivo com a habilidade de ser programado para operar (armazenar, relembrar e processar) dados sem a intervenção humana.

 COMPUTADOR (classificação quanto à velocidade de processamento, número de

registradores da CPU, complexidade do sistema operacional etc ):

Microcomputador :

  • Computador que tem a CPU implementada em um único chip: o microprocessador

Minicomputador :

  • Multi-usuário;
  • grande capacidade de armazenamento;
  • operação com matrizes e ponto flutuante melhorada;

Mainframes ( computadores de grande porte) :

  • suporta grandes bases de dados (organizações governamentais, grandes empresas);
  • alta performance;
  • processamento distribuído;

Supercomputador :

  • Computador idealizado para resolver problemas matemáticos de processos reais, tais como: aerodinâmica, meteorologia, física, etc
  • altíssima performance (GFLOPs) para repetidas operações aritméticas (iteração);
  • operações com matrizes e números em ponto flutuante;
  • mercado limitado.

 COMPUTADOR (classificação quanto à grandeza manipulada):

Computadores Analógicos :

  • operam diretamente com grandeza física (variáveis contínuas);

Computadores Digitais :

  • operam com variáveis discretas (números).

 COMPUTADOR (funções básicas):

  • processamento de dados ( ex.: execução de uma adição ou de uma função lógica );
  • armazenamento de dados ( ex.: armazenamento temporário na memória RAM, Disco, DAT, etc. );
  • movimentação de dados ( comunicação com mundo exterior: teclado, monitor, impressora );
  • controle ( controle das funções anteriores ).

antecipadamente transferidos da memória dinâmica para a memória cache, de forma que o processamento torna- se mais rápido.

1.4.3 Unidade de Entrada e Saída (I/O)

É a unidade através da qual o usuário se comunica com o sistema. Ela abriga componentes responsáveis pelo interfaceamento do sistema com periféricos tais como teclado, LCD, mouse, impressora e monitor. É também através da unidade de entrada e saída que são enviados sinais de interrupção para a CPU.

1.4.4 Barramento

Barramento é o meio físico usado para o transporte de um conjunto de sinais digitais usados para comunicação entre o processador, a memória e o meio externo. O barramento específico para a comunicação entre o processador e a memória é chamado de barramento de sistema. Para a comunicação com os periféricos os três tipos mais comuns de barramento hoje são: barramento ISA, usado para interfaces seriais, paralelas, interface para drivers e alto falante; barramento PCI, usado para interfaces IDE e USB; e barramento AGP, usado para placas de vídeo 3D de alto desempenho.

Um barramento é constituído de um barramento de dados, um barramento de endereços e um barramento de controle. O barramento de dados nos computadores mais modernos possui até 64 linhas (bits) e permite o fluxo bidirecional de dados. O microprocessador 8085, objeto de estudo na primeira parte do presente curso, possui 8 bits de dados e, por esta razão, é denominado de processador de 8 bits.

A quantidade de posições de memória que um computador pode acessar é ditada pela quantidade de bits do barramento de endereços. Um barramento com 32 bits pode acessar até 4.294.967.296 (2^32 ) posições de

memória, o que corresponde a 4 GB de memória (4.294.967.296 = 4 × 1024 × 1024 × 1024 = 4 GB). Todos os processadores da classe Pentium possuem barramento de endereço com 32 bits. Os processadores Pentium II, Pentium III e Celeron possuem barramento de endereço de 36 bits, podendo então acessar até 64 GB de memória.

O barramento de controle de um computador comporta uma série de sinais com finalidades diversas. Alguns exemplos são: sinal RW que indica se a operação é uma leitura ou uma escrita, sinal MIO, que indica se a operação envolve a memória ou a unidade de entrada e saída, sinal de RESET, entradas das interrupções, sinal de CLOCK, etc.

Barramento ISA - O barramento ISA ( I ndustry S tandard A rchitecture) é formado por slots de 8 e 16 bits existentes nas placas de CPU e foi originado no IBM PC, na versão de 8 bits, e aperfeiçoado no IBM PC AT, quando foi criada a versão de 16 bits. Permite transferência de dados em grupos de 8 ou 16 bits a um clock de 8 MHz. Embora possua velocidade de transferência pequena para os padrões atuais, o barramento ISA ainda é muito utilizado para placas tais como fax/modem, placas de som e placas de rede, cujos desempenhos não ficam comprometidos com a baixa velocidade de transferência do barramento.

Barramento PCI - O barramento PCI ( P eripheral C omponent I nterconnect) foi desenvolvimento pela Intel, quando do desenvolvimento do processador Pentium. Ele opera com 32 ou 64 bits, apresenta taxa de transferência de até 132 MB/s, com 32 bits e possui suporte para o padrão PnP ( P lug a n d P lay). Seu clock é geralmente de 33 MHz, para valores de clock interno acima de 150 MHz.

Barramento AGP - O barramento AGP ( A ccelerated G raphics P ort) foi devolvido pela Intel com o intuito de aumentar a taxa de transferência entre a CPU e a placa de vídeo, melhorando o desempenho de operação com gráficos. Esse barramento foi incorporado à CPU de processadores Pentium II mais modernos. A principal vantagem do AGP é o uso de maior quantidade de memória para armazenamento de texturas para objetos tridimensionais, além de alta velocidade no acesso a essas texturas para aplicação na tela.

1.5 Índice de Desempenho de Processadores

O aumento de desempenho (velocidade de processamento) de processadores gira em torno de pontos chaves:

  • Aumento de clock
  • Aumento do número interno de bits
  • Aumento do número externo de bits
  • Redução do número de ciclos para executar cada instrução
  • Aumento da capacidade e velocidade da memória cache
  • Execução de instruções em paralelo

1.6 Microprocessador ×××× Microcontrolador

Microprocessador - É a CPU de um computador construído num único Circuito Integrado. Contém essencialmente a unidade de controle, a unidade lógica e aritmética e registradores. Precisa de periféricos tais como memória e unidade de entrada e saída, para a formação de um sistema mínimo.

Microcontrolador - É um computador completo construído num único Circuito Integrado. Os microcontroladores são normalmente utilizados para aplicações específicas. Eles contêm normalmente facilidades tais como portas seriais, portas de entrada e saída paralelas, timers, contadores, controles de interrupção, conversor analógico para digital, memórias RAM e ROM.

1.7 Outros conceitos básicos:

MIPS - Millions of Instructions Per Seconds (Milhões de Instruções Por Segundo): É uma unidade de desempenho do microprocessador.

FLOPS - FLOating point instructions Per Seconds (Instruções com Ponto Flutuante Por Segundo). É também uma unidade de desempenho do microprocessador. Indica a capacidade de trabalhar com números decimais.

Representação em Ponto Fixo - Sistema numérico no qual o ponto está implicitamente fixo (à direita do digito mais a direita);

Representação em Ponto Flutuante - Sistema numérico no qual um número real é representado por um par distinto de numerais: uma mantissa (ou significante) e um expoente. Possibilita representação de números fracionários.

Bit - Abreviatura para 'Binary Digit', ou, Dígito Binário. Pode assumir valor 0, que corresponde a tensão O V, ou 1, que representa normalmente uma tensão de 5 V ou 3.3 V.

Byte - Conjunto (cordão) de 8 bits. É a unidade básica de dados nos computadores, que também utilizam alguns múltiplos de 8, tais como 16 bits (Word) e 32 bits (Dword). BYTE nibble superior nibble inferior Bit 7 Bit 6 Bit 5 Bit 5 Bit 3 Bit 2 Bit 1 Bit 0

Nibble, Word, Dword – Palavra digital composta de 4, 16, 32 bits, respectivamente.

Set de instruções - Conjunto de Instruções. Conjunto de Mnemônicos (siglas que fazem lembrar uma ação) que representam todas as instruções do processador. Cada processador possui o seu set de instruções particular.

CISC - Complex Instruction Set Computer : Tecnologia atribuída às CPUs de um modo geral, que contém set de instruções complexo. O barramento de comunicação entre as unidades que compõem a CPU é comum a todas as unidades, ou seja, não há comunicação direta entre unidades, através de um barramento exclusivo.

RISC - Reduced Instruction Set Computer : Computador com set de instruções reduzido. Principais características:

  • Conjunto de instruções limitado e simples;
  • Grande número de registradores de propósito geral;

1 Mbyte = 2^10 x 2^10 = 1.048.576 bytes = 1.024 kbytes; 1 Gbyte = 2^10 x 2^10 x 2^10 = 1.073.741.824 bytes = 1.024 Mbytes

1.8.3 Sistema BCD (Binary-Coded Decimal)

O Sistema BCD é o sistema em que se combina o sistema binário e o sistema decimal. É utilizado como formato de saída de instrumentos. Utiliza 2 dígitos: 0 e 1 que são dispostos em grupos de 4 dígitos, utilizados para representar um dígito decimal (número 0 até 9). A representação de um número maior que 9 deve ser feita por outro grupo de 4 bits, com a ponderação dada pelo sistema decimal. Exemplo: 97310 = 1001 0111 0011. Note a diferença entre este valor e o valor do número binário 1001 0111 0011 2 = 2419 10

1.8.4 Sistema Octal

O Sistema Octal é baseado nos mesmos princípios do decimal e do binário, apenas utilizando base 8. Utiliza 8 dígitos: 0 a 7. Exemplo: 3207 8

1 o^ dígito: Armazena o equivalente a 8^0 (1). No ex.: 7 × 80 2 o^ dígito: Armazena o equivalente a 8^1 (8). No ex.: 0 × 81 3 o^ dígito: Armazena o equivalente a 8^2 (64). No ex.: 2 × 82 4 o^ dígito: Armazena o equivalente a 8^3 (512). No ex.: 3 × 83

O equivalente decimal é: 7 + 0 + 128 + 1536 = 1671 10

1.8.5 Sistema Hexadecimal

O Sistema Hexadecimal é baseado nos mesmos princípios do decimal, apenas utiliza base 16. Utiliza 16 dígitos: 0 a 9, A, B, C, D, E e F. Exemplo: Ex.: 20DH ou 20Dh ou 20D 16

1 o^ dígito: Armazena o equivalente a 16^0 (1). No ex.: 13 × 160 2 o^ dígito: Armazena o equivalente a 16^1 (16). No ex.: 0 × 161 3 o^ dígito: Armazena o equivalente a 16^2 (256). No ex.: 2 × 162

O equivalente decimal é: 13 + 0 + 512 = 525 10

O sistema hexadecimal é mais fácil de trabalhar que o sistema binário e é geralmente utilizado para escrever endereços. Cada dígito hexadecimal é convertido em 4 dígitos binários equivalentes. Cada número binário é convertido em hexadecimal convertendo-se grupos de 4 bits em seus dígitos hexadecimais equivalentes.

Ex.: 7 D 3 F 16 = 0111 1101 0011 1111 2

Ex.: 1010000110111000 2 = 1010 0001 1011 1000 2 = A 1 B (^816)

1.8.6 Conversão de Base

O sistema hexadecimal é mais fácil de trabalhar que o sistema binário e é utilizado na codificação de programas no microprocessador. Na conversão de hexadecimal para binário, cada dígito hexadecimal é convertido em 4 dígitos binários equivalentes. Na conversão de binário para hexadecimal, cada grupo de 4 dígitos binários é convertido em 1 dígito hexadecimal equivalente.

Exemplos: 7 D 3 F 16 (7D3FH) = 0111 1101 0011 1111 2 10100001101110002 = 1010 0001 1011 1000 2 = A 1 B 8 16 ou A1B8H

Um algoritmo para a conversão de base pode ser obtido. A divisão termina quando o quociente é zero. Um exemplo de decimal para hexadecimal é dado.

Representação: r 2 r 1 r 0 Valor hexadecimal correspondente a 1234: 4D2 h

Algoritmo genérico:

Se q 0 = 0  Valor = q 0 B+ r 0 = 0.B + r 0 = r 0

Valor = r 0  Representação: r 0

Se q1 = 0  Valor = q 0 B+ r 0 q 0 = q 1 .B + r 1 = 0.B + r 1 = r 1 ou,

Valor = r 1 .B+ r 0  Representação: r 1 r 0

Se q2 = 0  Valor = q 0 B+ r 0 , q 0 = q 1 .B + r 1 q 1 = q 2 .B + r 2 = 0.B + r 2 = r 2

Valor = r 2 B^2 + r 1 B + r 0  Representação: r 2 r 1 r 0

1.8.7 Representação de Números Positivos e Negativos

Na representação de números no microprocessador pode-se utilizar tanto a representação de números positivos, quanto a de números negativos. O círculo.a seguir ilustra essa situação para números de 4 bits.

  1. Qual a finalidade da memória CACHE?
  2. Quantas posições de memória podem ser endereçadas com um barramento de endereços de 16 bits? E de 20 bits?
  3. Como os indicadores abaixo contribuem para o aumento do desempenho de um processador?

(a) aumento da frequência de clock (b) redução do número de ciclos para executar uma instrução (c) processamento paralelo de instruções

  1. Qual a diferença entre microprocessador e microcontrolador?
  2. Diferencie bit, nibble e byte.
  3. Diferencie EPROM e EEPROM.
  4. Converta os números abaixo (que estão na base indicada) para hexadecimal

(a) 34510 = _________ h (b) 101001112 = _________ h (c) 101010108 = _________ h (d) 25510 = _________ h (e) 12810 = _________ h (f) 101001110112 = ___________ h

2.1 Diagrama de Blocos do Microprocessador 8085

Fig. 2.1: Diagrama de blocos do microprocessador 8085

Principais Características:

  • microprocessador de 8 bits de propósito geral (com 6.200 transistores);
  • opera com +5V e GND. O 8080, seu antecessor, opera com +12V, +5V e -5V;
  • 100% compatível em software com o 8080A;
  • conjunto de instruções com 74 instruções. Estas 74 instruções resultam num total de 246 opcodes distintos;
  • instruções do 8085 possuem 1, 2 ou 3 bytes;
  • Há 2 registradores temporários de 8 bits ( W e Z ) não aparentes ao programador (não endereçáveis);
  • 8 linhas de dados: barramento bidirecional e com 3S ( three state );
  • 16 linhas de endereço; permite endereçamento de até 64 kbytes = 65.536 posições de memória;
  • barramento de dados multiplexado com parte baixa do barramento de endereço (o hardware deve conter um latch (ex.: 74373) para armazenar os endereços baixos: A 0 a A 7 );
  • possui pino de seleção de Entrada (I) e Saída (O) - (IO/M)
  • possui gerador de clock interno (é necessário apenas um cristal externo, juntamente com dois capacitores).
  • Reset do 8085: PC em 0000h; Flip-Flop IE ( Interrupt Enable ) em 0 (indicando interrupções desabilitadas); HLDA em 0; demais registradores com valores indeterminados; Interrupções RST 5.5, RST 6.5, RST 7. mascaradas; SOD em 0.

2. ARQUITETURA E PRINCÍPIO DE FUNCIONAMENTO DO 8085