te207-aula5
-
Upload
mattpolicarpo -
Category
Documents
-
view
214 -
download
0
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]
-
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