Anda di halaman 1dari 18

Disciplina: Linguagem de Montagem

Prof. Dr. Aledir Silveira Pereira 2 semestre de 2011

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

Prof. Dr. Aledir Silveira Pereira

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

1d- Programao assembly

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

2 Microprocessador 8085 noes de hardware


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

2.1 Arquitetura interna da 8085

Linguagem de montagem Prof. Dr. Aledir Silveira Pereira

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

2.2 Barramentos de dados, endereos e controle

Linguagem de montagem Prof. Dr. Aledir Silveira Pereira

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.

Prof. Dr. Aledir Silveira Pereira

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

Prof. Dr. Aledir Silveira Pereira

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.

Prof. Dr. Aledir Silveira Pereira

17

2.3 decodificao de memrias e perifricos

Conforme material impresso

Linguagem de montagem Prof. Dr. Aledir Silveira Pereira

18

Anda mungkin juga menyukai