Contedo programtico
1 - Noes sobre Linguagem de Mquina, Montadores, Programao Assembly 2 - Microprocessador 8085 - Noes de Hardware 2.1 - Arquitetura Interna 2.2 - Barramentos de Endereo/Dados/Controle 2.3 - Decodificao de Memria e de Entrada e Sada 3 - Linguagem Assembly do Microprocessador 8085 3.1 - Instrues do Microprocessador 8085 Conceitos de Flags Interrupes Instrues de Entrada/Sada 3.2 programao de interfaces Interfaces Serial/Paralela Linguagem de Temporizadores/contadores 4 - Projeto utilizando o Microprocessador 8085 montagem 5 Linguagem Assembly do microprocessador 80x86
1a Linguagem de mquina
Linguagem hexadecimal Manipulao direta dos recursos da cpu Formada de instrues elementares caracterstica de cada cpu (difere)
Linguagem de montagem Prof. Dr. Aledir Silveira Pereira
1b Linguagem assembly
Mnemnica Relao direta com a linguagem de mquina Usa diretivas (pseudo instrues) Melhora a visualizao da ao bsica a ser realizada (execuo da instruo)
Linguagem de montagem Prof. Dr. Aledir Silveira Pereira
1c Montadores - assembler
Diferena entre montador, interpretador e compilador Uso de pseudo instrues (diretivas) para generalizar endereos e rtulos, e facilitar a alocao de recursos de hardware (memrias e perifricos).
Linguagem de montagem Prof. Dr. Aledir Silveira Pereira
A programao assembly permite uma maior velocidade de processamento, pois trabalha diretamente com as instrues da cpu. Sua velocidade pode ser 350 vezes maior que uma rotina em linguagem de alto nvel. A construo da de Linguagem programao faremos ao longomontagem do curso.
Prof. Dr. Aledir Silveira Pereira 6
A cpu a ser estudada a intel 8085. Cpu de 8 bits de dados e 16 bits de endereamento. Possui 40 pinos em DIP (duas fileiras de pinos) Possui barramentos de: dados, Linguagem de endereos e controles.
montagem Prof. Dr. Aledir Silveira Pereira 7
Registradores I
A cpu possui 8 registradores de 8 bits (A,B,C,D,E,F,H e L) e dois registradores de 16 bits (PC e SP). Tem-se o registrador de interrupo (I) de 8 bits. Internamente tem-se outros registradores no acessveis ( registrador temporrio e registrador Linguagem de montagem de instruo)
Prof. Dr. Aledir Silveira Pereira 9
Registradores II
Registrador A o acumulador. um registrador de 8 bits, onde toda operao lgica ou aritmtica processada atravs dele e o resultado fica armazenado nele. Registradores B e C so registradores de uso geral e podero ser utilizados individualmente como registradores de 8 bits ou em par, formando um registrador de 16 bits. Registradores D e E idem aos B e C. Registradores H e L de Linguagem idem aos B e C. So usados tambm como ponteiros para rea de dados. montagem Prof. Dr. Aledir Silveira Pereira 10
Registradores III
Registrador PC um registrador de 16 bits que usado como ponteiro de instrues de programa. Registrador SP um registrador de 16 bits que usado como ponteiro de pilha. Neste registrador fica sempre apontando para o topo da pilha, que guarda dados de 16 bits por vez. Este ponteiro, quando coloca-se dado na pilha ele atualizado automaticamente e de forma decrescente ( 2 por vez). Quando retira-se dado da pilha o processo Linguagem de realizado de forma inversa. montagem Prof. Dr. Aledir Silveira Pereira 11
Registrador F (flags)
Este registrador de 8 bits apresenta 5 bits com informaes resultantes de operaes. A flag S indica o sinal do resultado aps uma operao com nmeros com sinal, sendo 0 se positivo e 1 se negativo. A flag Z, aps uma operao indica se o resultado zero quando em nvel lgico 1. A flag P indica a paridade do valor contido em A . Se a quantidade de 1 do nmero contido no registrador Linguagem de A for par esta flag ser 1. A flag CY montagem 1 indica que o resultado da quando em operao provocou um vai um ou um vem um . Prof. Dr. Aledir Silveira Pereira 12
13
2.2.1- Pinagem I
X1 e X2 local do cristal para gerar o clock Clock pino onde sai o clock gerado pelo cristal e serve para sicronizar os perifricos. +Vcc e GND Ligao da fonte de alimentao do circuito de 5 Vcc. Reset in local habilitado com nvel lgico zero. Reinicializa a cpu, zerando o registrador PC. Reset out O sinal que entra em reset in passa por Linguagem sai uma porta inversora e de neste pino. Ele serve para montagem resetar os perifricos. Prof. Dr. Aledir Silveira Pereira 14
Pinagem II
(RD) Quando a cpu quer ler um dado da memria ou de um perifrico ela coloca este pino em nvel zero. (WR) Quando a cpu coloca um dado no barramento e deseja envi-lo para uma memria ou um perifrico, este pino vai a nvel lgico zero. IO/M Este pino funciona juntamente com os dois anteriores. Se a cpu deseja ler ou escrever um dado em um perifrico, ela coloca este pino em nvel lgico um. Porm, se quiser escrever ou ler dados de uma memria, este pino vai para nvel lgico zero. ALE (address latch enable) habilita a sada de endereos da cpu. Linguagem de READY Utilizado para sincronizar perifricos lentos, cria montagem perodos de espera no ciclo de instruo de leitura e escrita.
15
Pinagem III
A8-A15 Barramento de endereos AD0-AD7 Barramento de endereos e dados HOLD Quando um elemento externo quiser utilizar os barramentos que esto conectados na cpu, ele envia um sinal em nvel um para este pino. A cpu acaba de executar a presente instruo e responde atravs do pino HOLDA, colocando-o em nvel um. HOLDA - Quando a cpu recebe o pedido atravs do pino HOLD do uso dos barramentos, ao terminar a instruo, a cpu coloca seus barramentos em alta-impedncia e Linguagem de informa atravs deste pino que os barramentos j podem ser usados. montagem
16
Pinagem IV
INTR atravs deste pino que um perifrico requisita uma interrupo da cpu. uma interrupo de prioridade 5. (INTA) Atravs deste pino a cpu responde a um perifrico que j pode atender seu pedido de interrupo. TRAP um pino em que um perifrico solicita uma interrupo. A cpu ao acabar a presente instruo interrompe o programa que est executando e comea a executar a rotina iniciada na posio de memria 0024H. Ao encontrar uma instruo de retorno ela retorna ao programa que estava executando anteriormente. Sua prioridade de atendimento 1. RST 5.5 como a TRAP s que o endereo da rotina de interrupo 002CH e a prioridade 4. RST 6.5 como a TRAP s que o endereo da rotina de interrupo 0034H e a prioridade 3. Linguagem de RST 7.5 como a TRAP s que o endereo da rotina de interrupo montagem 003CH e a prioridade 2.
17
18