te207-aula5

download te207-aula5

of 26

Transcript of te207-aula5

  • 8/18/2019 te207-aula5

    1/26

    Representação interndadosTE207 – Técnicas de Programação em Engenharia EléProf. Vitor Yano – DELT/UFPR – [email protected]

    mailto:[email protected]:[email protected]

  • 8/18/2019 te207-aula5

    2/26

    Operações aritméticasem binário

  • 8/18/2019 te207-aula5

    3/26

    Adição

    A soma binária se faz da mesma forma que a decimal, da direita para a efazendo o transporte de um (“vai um”) quando for o caso.

    0 + 0 = 0

    0 + 1 = 1

    1 + 0 = 1

    1 + 1 = 10 (0 e vai 1)

    Exemplos:

    101

    + 1101

    100100

    + 10010

    11001

    + 10011

    101110

    + 1110

  • 8/18/2019 te207-aula5

    4/26

    Adição

    A soma binária se faz da mesma forma que a decimal, da direita para a efazendo o transporte de um (“vai um”) quando for o caso.

    0 + 0 = 0

    0 + 1 = 1

    1 + 0 = 1

    1 + 1 = 10 (0 e vai 1)

    Exemplos:

    ¹ ¹

    101

    + 1101

    10010

    100100

    + 10010

    110110

    ¹ ¹¹

    11001

    + 10011

    101100

    ¹¹¹

    101110

    + 1110

    111100

  • 8/18/2019 te207-aula5

    5/26

    Subtração

    Soma com o complemento de dois: a – b = a + ( –b);

    Método tradicional equivalente ao decimal;

    1 – 1 = 0

    1 – 0 = 1

    0 – 0 = 0

    0 – 1 = ?

    Exemplos:

    11000

    - 101

    11101

    - 111

  • 8/18/2019 te207-aula5

    6/26

    Subtração

    Soma com o complemento de dois: a – b = a + ( –b);

    Método tradicional equivalente ao decimal;

    1 – 1 = 0

    1 – 0 = 1

    0 – 0 = 0

    0 – 1 = “empresta um”, 10 – 1 = 1

    Exemplos:

    º¹¹¹

    11000

    - 101

    10011

    ¹

    ºº¹

    11101

    - 111

    10110

  • 8/18/2019 te207-aula5

    7/26

    Multiplicação

    Somas sucessivas;

    Método usado na base decimal;

    0 * 0 = 0

    0 * 1 = 0

    1 * 0 = 0

    1 * 1 = 1

    1011

    * 1101

    1011

    00001011

    1011

    10001111

  • 8/18/2019 te207-aula5

    8/26

    Divisão

    Subtrações sucessivas;

    Método usado na base decimal;

    11011 /101

    - 101 10100111

    - 101

    010

  • 8/18/2019 te207-aula5

    9/26

    Operações lógicas

  • 8/18/2019 te207-aula5

    10/26

    Operações lógicas

    Operações lógicas são realizadas sobre proposições lógicas, ou seja, cujos valorser VERDADEIRO ou FALSO;

    Toda a eletrônica digital e, consequentemente, a computação e o processamendados, se baseia em operações lógicas;

    Por convenção, considera-se zero como FALSO e não-zero como VERDADEIRO;

    Exemplos de proposições lógicas: Está chovendo É feriado Tenho dinheiro Fico em casa Vou à praia

  • 8/18/2019 te207-aula5

    11/26

    NOT (NÃO)

    Operador unário de negação;

    Exemplo:

    Se não está chovendo, vou à praia

    A = Está chovendo = FALSO/VERDADEIRO

    NOT A = Não está chovendo = VERDADEIRO/FALSO

    A NOT A

    0 1

    1 0

  • 8/18/2019 te207-aula5

    12/26

    AND (E)

    Operador binário de conjunção;

    Exemplo:

    Se é feriado E tenho dinheiro, vou à praia

    A = É feriado

    B = Tenho dinheiro

    A B A AND B

    0 0 0

    0 1 0

    1 0 0

    1 1 1

  • 8/18/2019 te207-aula5

    13/26

    OR (OU)

    Operador binário de disjunção;

    Exemplo:

    Se está chovendo OU não tenho dinheiro, fico em casa

    A = Está chovendo

    B = Não tenho dinheiro

    A B A OR B

    0 0 0

    0 1 1

    1 0 1

    1 1 1

  • 8/18/2019 te207-aula5

    14/26

    XOR (OU-exclusivo)

    Operador binário de disjunção exclusiva;

    Exemplo:

    Se time X fez mais pontos OU (exclusivo) time Y fez mais pontos, há um ven

    A = time X fez mais pontos

    B = time Y fez mais pontos

    A B A XOR B

    0 0 0

    0 1 1

    1 0 1

    1 1 0

  • 8/18/2019 te207-aula5

    15/26

    Representação dedados

  • 8/18/2019 te207-aula5

    16/26

    Cadeias de bits

    Um bit (binary digit ) pode representar 2 valores;

    Para se representar mais possibilidades de valores, utiliza-se cadeias (strbits: n bits podem representar 2n valores;

    4 bits = nibble;

    8 bits = byte;

    16 bits = word; 32 bits = double word ;

    64 bits = quad word ;

  • 8/18/2019 te207-aula5

    17/26

    Quantidade de dados

    Por utilizar potências de dois, os prefixos na computação possuem valordiferentes dos convencionais da Física 1 kB = 210 B = 1.024 B ≠ 103

    1 MB = 220 B = 1.048.576 B ≠ 106

    1 GB = 230 B = 1.073.741.824 B ≠ 109

    A norma IEC 80000-13, de 2008 estabelece os prefixos binários, diferenc

    dos decimais: kibi (Ki) = 210 = 1024 mebi (Mi) = 220 = 1 048 576 gibi (Gi) = 230 = 1 073 741 824 tebi (Ti) = 240 = 1 099 511 627 776

  • 8/18/2019 te207-aula5

    18/26

    Caracteres

    6-bits, 7-bits, EBCDIC, ISO 8859-1, ANSI, Unicode

    ASCII ( American Standard Code for Information Interchange)

  • 8/18/2019 te207-aula5

    19/26

    Números inteiros

    Inteiros não-sinalizados (unsigned )

    próprio valor em binário

    Inteiros sinalizados (signed )

    módulo e sinal (MS)

    complemento de 1 (C-1)

    complemento de 2 (C-2) excesso de 2 elevado a (N-1)

  • 8/18/2019 te207-aula5

    20/26

    Módulo e Sinal (MS)

    O bit mais à esquerda representa o sinal do número (0 para +, 1 para –);

    Os bits restantes representam o módulo do número;

    +4210 => 00101010

     –4210 => 10101010

    Neste caso, um byte (8 bits) pode representar valores de –127 a +127, já

    módulo possui 7 bits;

    Vantagem: faixa simétrica;

    Desvantagem: duas representações para o 0 (+0 e –0): 00000000 e 1000

  • 8/18/2019 te207-aula5

    21/26

    Complemento de 1 (C-1)

    O bit mais à esquerda representa o sinal do número (0 para +, 1 para –);

    O valor simétrico de um positivo é obtido pelo complemento de seus díg(invertendo os bits):

    +4210 => 00101010

     –4210 => 11010101

    Um byte (8 bits) pode representar valores de –127 a +127;

    Vantagem: valores negativos ordenados;

    Desvantagem: duas representações para o 0 (+0 e –0): 00000000 e 1111

  • 8/18/2019 te207-aula5

    22/26

    Complemento de 2 (C-2)

    Valores positivos: primeiro bit é 0 e os demais representam o módulo;

    Valores negativos: complemento de todos os bits do número positivo + 1desprezando-se o último transporte, se existir.

    Exemplo:

    +4210 => 00101010

    Inverte: 11010101

    Soma 1: 11010110

     –4210 => 11010110

  • 8/18/2019 te207-aula5

    23/26

    Complemento de 2 (C-2)

    Desvantagem: faixa de representação assimétrica;

    Para 8 bits, pode-se representar de –128 a 127

    Vantagens: única representação para o 0; operações coerentes ( –1 +2)

    +0 => 00000000

    Inverte: 11111111

    Soma 1: 00000000  –0 => 00000000

    É o método mais utilizado para representar números negativos.

  • 8/18/2019 te207-aula5

    24/26

    Ponto flutuante

    Norma IEEE 754:

    Precisão simples (single): 32 bits (precisão 24 bits) => 2 –126 a 2127

    Precisão dupla (double): 64 bits (precisão 53 bits) => 2 –1022 a 21023

    Precisão estendida: 80 bits (precisão 63 bits) => 2 –16382 a 216383

    Forma numérica:

    S: bit de sinal M: mantissa

    E: expoente

    ( –1)S + M  * 2E 

    S E M 

  • 8/18/2019 te207-aula5

    25/26

    Overflow e underflow 

    Os sistemas possuem formas diferentes de tratar de overflow ou underfl

    Pode-se parar a execução, apresentar mensagem de erro, representar o de forma específica ou ignorar.

  • 8/18/2019 te207-aula5

    26/26

    Mais informações

    Tabela ASCII –

    Completa:

    http://ic.unicamp.br/~everton/aulas/hardware/tabelaASC II.pdf 

    Roberto Willrich – Sistemas Numéricos e a Representação Interna dos

    Computador:

    http://www.inf.ufsc.br/~willrich/Ensino/INE5602/restrito/ii-cap2.PDF

    http://ic.unicamp.br/~everton/aulas/hardware/tabelaASCII.pdfhttp://ic.unicamp.br/~everton/aulas/hardware/tabelaASCII.pdfhttp://www.inf.ufsc.br/~willrich/Ensino/INE5602/restrito/ii-cap2.PDFhttp://www.inf.ufsc.br/~willrich/Ensino/INE5602/restrito/ii-cap2.PDFhttp://www.inf.ufsc.br/~willrich/Ensino/INE5602/restrito/ii-cap2.PDFhttp://ic.unicamp.br/~everton/aulas/hardware/tabelaASCII.pdf