1 / 26

EEL7030 - Microprocessadores

EEL7030 - Microprocessadores. Prof. Raimes Moraes GpqCom – EEL UFSC. Manipulação de Bits. 1) Setar bits (Exemplo – bit 6 e bit 3): IN end ORI 01001000b OUT end. 3) Complementar bits (Exemplo – bit 7 e bit 3): IN end XRI 10001000b OUT end.

gizi
Télécharger la présentation

EEL7030 - Microprocessadores

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EEL7030 - Microprocessadores Prof. Raimes Moraes GpqCom – EEL UFSC

  2. Manipulação de Bits • 1) Setar bits • (Exemplo – bit 6 e bit 3): • IN end • ORI 01001000b • OUT end • 3) Complementar bits • (Exemplo – bit 7 e bit 3): • IN end • XRI 10001000b • OUT end • 2) Limpar bits • (Exemplo – bit 5 e bit 4): • IN end • ANI 11001111b • OUT end • 4) Testar bits • (Exemplo – bit 2): • IN end • ANI 00000100b • JZ end

  3. REGISTRADOR de FLAGS

  4. FLAGS Instrução CMP r CMP M CPI dado

  5. Tomando Decisões – 1 • Com dados previamente carregados nos registradores • A e B: • somar o conteúdo de ambos se [A]=[B]; • subtrair se [A]≠[B]; • CMP B • JNZ SUBTRAI • ADD B • JMP $ • SUBTRAI: SUB B • JMP $

  6. Tomando Decisões – 2 • Com dados previamente carregados nos registradores • A e B: • somar o conteúdo de ambos se [A]<[B]; • subtrair se [A]≥[B]; • CMP B ; altera flags • JC SOMA ; (ou JM SOMA) • SUB B • JMP $ • SOMA: ADD B • JMP $

  7. Tomando Decisões – 2.a JM SOMA funciona no exemplo anterior apenas se [A]-[B] <80H; A razão é que o bit 7 setado indica para o 8085 que o nro. é menor que 0. Exemplo: 7EH (126D) – (-02D) = 7EH-FEH=80H (-128D)

  8. Tomando Decisões – 3 • Com dados previamente carregados nos registradores • A e B: • somar o conteúdo de ambos se [A] ≥[B]; • subtrair se [A ]<[ B]; • CMP B ; altera flags • JNC SOMA • SUB B • JMP $ • SOMA: ADD B • JMP $

  9. Tomando Decisões – 4 • Com dados previamente carregados nos registradores • A e B: • somar o conteúdo de ambos se [A]≤[B]; • subtrair se [A]>[B]; • CMP B ; altera flags • JC SOMA • JZ SOMA • SUB B • JMP $ • SOMA: ADD B • JMP $

  10. Multiplicação por 10 no 8085 MVI A,??H RLC MOV B,A RLC RLC ADD B OBS: Resultado não pode ser superior a FFH

  11. Representação de nros negativos em formato binário • n bits => 2n valores sem sinal: 0 a (2n-1)Complemento de 1: nro. negativo é o complemento da representação binária do nro. positivo: -((2n-1)-1) a ((2n-1)-1). Duas representações para o valor 0. • Complemento de 2: nro. negativo é o complemento da representação binária do nro. positivo somado a 1 : -(2n-1) a ((2n-1)- 1).

  12. Complemento de 1 para n=3

  13. Aritmética em Complemento de 1 • Possui duas representações para 0. 1) Somar bit a bit, inclusive o bit de sinal.2) Avaliar "vai-um": a) Ausente para o bit de sinal ou carry: fim; b) "vai-um" apenas para o bit de sinal: resultado excede capacidade. c) "vai-um" para carry: soma-seo "vai-um" ao resultado da soma; c.1) se ocorrer "vai-um" após c: nro de “vai-uns” total for par (para bit de sinal e carry), correto, de outra forma, overflow;

  14. Complemento de 1

  15. Complemento de 2 para n=4 C2=2n - nro C2_5=10000–0101=1011

  16. Complemento de 2 para n=3

  17. Complemento de 2 OBS: Se houver carry sem "vai-um" para o bit de sinal: overflow

  18. Exemplo de Adição BCD Somar os operandos 1897 a 2905 em BCD

  19. Exemplo de Adição BCD 1100 (12>9) +0110 (6) 0001 1000 1001 0111 + 001010010000 0101

  20. 1 1100 (12>9) +0110 (6) 0010 Exemplo de Adição BCD 0001 1000 1001 0111 + 001010010000 0101

  21. 11 1010(10>9) 1100 (12>9) +0110(6) +0110 (6) 0000 0010 Exemplo de Adição BCD 0001 1000 1001 0111 + 001010010000 0101

  22. 1 1 1 10010(cy) 1010(10>9) 1100 (12>9) + 0110(6) +0110(6) +0110 (6) 1000 0000 0010 Exemplo de Adição BCD 0001 1000 1001 0111 + 001010010000 0101

  23. 1 1 1 0100 10010(18>9) 1010(10>9) 1100 (12>9) + 0110(6) +0110(6) +0110 (6) 1000 0000 0010 0100 1000 0000 0010 4 8 0 2 1897BCD + 2905BCD= 4802BCD Exemplo de Adição BCD 0001 1000 1001 0111 + 001010010000 0101

  24. ASCII American Standard Code for Information Interchange (ASCII)ASCII contém 128 caracteres; 33 são caracteres de controle; 94 caracteres e espaço.

  25. ASCII

More Related