O documento discute a representação de números em sistemas de numeração, incluindo representação em ponto fixo e ponto flutuante. É explicado como números inteiros e fracionários são representados nas bases decimal e binária, com ênfase na ordenação dos dígitos e na conversão entre bases. Também são apresentados conceitos como erro de representação causado por números infinitos em máquinas digitais.
O documento discute a representação de números em sistemas de numeração, incluindo representação em ponto fixo e ponto flutuante. É explicado como números inteiros e fracionários são representados nas bases decimal e binária, com ênfase na ordenação dos dígitos e na conversão entre bases. Também são apresentados conceitos como erro de representação causado por números infinitos em máquinas digitais.
Descrição original:
Cálculo Numérico - Representação de Numeros em Maquinas
O documento discute a representação de números em sistemas de numeração, incluindo representação em ponto fixo e ponto flutuante. É explicado como números inteiros e fracionários são representados nas bases decimal e binária, com ênfase na ordenação dos dígitos e na conversão entre bases. Também são apresentados conceitos como erro de representação causado por números infinitos em máquinas digitais.
O documento discute a representação de números em sistemas de numeração, incluindo representação em ponto fixo e ponto flutuante. É explicado como números inteiros e fracionários são representados nas bases decimal e binária, com ênfase na ordenação dos dígitos e na conversão entre bases. Também são apresentados conceitos como erro de representação causado por números infinitos em máquinas digitais.
Parte 1 : Em ponto Fixo Parte 2: Em ponto Flutuante Representao em ponto fixo. Representao de um nmero inteiro na base 10. Exemplo 1. (a) (25)10 (5 100 + 2 101 ). (b) (7)10 7 100 . (c) (2017)10 (7 100 + 1 101 + 0 102 + 2 103 ). Representao de um nmero inteiro N 6= 0 na base 10, com p + 1 dgitos significativos. N = (dp d(p1) d1 d0 )10 (d0 100 + d1 101 + + d(p1) 10p1 + dp 10p ) p
0 = d0 10 + dk 10 , k k =1 em que d0 , d1 d(p1) , dp assumem valores no conjunto {0, 1, , 8, 9}, com dp 6= 0. Obs. Note a ordenao dos dgitos da direita para a esquerda. Representao em ponto fixo. Representao de um nmero inteiro na base 2. Porque base 2? Porque os computadores trabalham internamente na base 2. 0 significa off e 1 significa on. Exemplo 2. (a) (11001)2 = (1 20 + 0 21 + 0 22 + 1 23 + 1 24 ) = (25)10 . (b) (111)2 = (1 20 + 1 21 + 1 22 ) = (7)10 . (c) (11111100001)2 = (1 20 + 0 21 +0 22 + 0 23 + 0 24 + 1 25 + 1 26 + 1 27 +1 28 + 1 29 + 1 210 ) = (2017)10 .
Data desta aula na base 2:
(11001)/(111)/(11111100001). Representao em ponto fixo. Representao de um nmero inteiro na base 2. Exemplo 2(c). +(11111100001)2 = +(1 20 + 0 21 +0 22 + 0 23 + 0 24 + 1 25 + 1 26 + 1 27 +1 28 + 1 29 + 1 210 ) = +(2017)10 . Representao de um nmero inteiro N 6= 0 na base 2, com p + 1 dgitos significativos. N = (dp d(p1) d1 d0 )2 (d0 20 + d1 21 + + d(p1) 2p1 + dp 2p ) p
0 = d0 2 + dk 2 , k k =1 em que d0 , d1 , d(p1) , dp assumem valores no conjunto {0, 1}, com dp 6= 0. Obs. Note novamente a ordenao dos dgitos da direita para a esquerda. Como converter da base 10 para a base 2? Exemplo 3. (2017)10 = (11111100001)2 . 2017 2 = 1008 + 1, 1008 2 = 504 + 0, Em geral: 504 2 = 252 + 0, N 2 = q0 + d0 , 252 2 = 126 + 0, q0 2 = q1 + d1 , 126 2 = 63 + 0, q1 2 = q2 + d2 , 63 2 = 31 + 1, .. . 31 2 = 15 + 1, qp3 2 = qp2 + d(p2) , 15 2 = 7 + 1, qp2 2 = 1 + d(p1) , 7 2 = 3 + 1, 1 2 = 0 + dp . 3 2 = 1 + 1, 1 2 = 0 + 1. Portanto: Da: N = (dp d(p1) d1 d0 )2 . (2017)10 = (11111100001)2 . Obs. Organize os restos de cima para baixo para obter a representao na base 2 da direita para a esquerda. Representao da parte fracionria na base 10. Exemplo 4. (a) (0.27)10 (2 101 + 7 102 ).
(b) (0.003)10 (0 101 + 0 102 + 3 103 ).
(c) (0.721721721 )10 (7 101 + 2 102 + 1 103 +
7 104 + 2 105 + 1 106 + ).
(d) (0.333 )10 (3 101 + 3 102 + 3 103 + ).
Obs. As representaes em (a) e (b) so finitas, enquanto as
representaes em (c) e (d) so infinitas. Representao da parte fracionria na base 10. Representao da parte fracionria 0.Q na base 10 com m dgitos significativos.
0.Q = (0.d1 d2 dm1 dm )10
(d1 101 + d2 102 + + dm1 10(m1) + dm 10m ) m = dk 10k , k =1 em que d1 , d2 , dm1 , dm assumem valores no conjunto {0, 1, , 8, 9}.
Obs. Note a ordenao dos dgitos da esquerda para direita
(aps o ponto). Representao da parte fracionria na base 2. Exemplo 5. (a) (0.101)2 (1 21 + 0 22 + 1 23 ) = (0.625)10 .
Obs. As representaes em (a) e (b) so finitas, enquanto as
representaes em (c) e (d) so infinitas.
Obs. Representaes infinitas no so exequveis em
mquinas. Isto fora erros de representao de fraes, os chamados erros de mquina. Representao da parte fracionria na base 2. Representao da parte fracionria 0.Q na base 2 com m dgitos significativos.
0.Q = (0.d1 d2 dm1 dm )2
(d1 21 + d2 22 + + dm1 2(m1) + dm 2m ) m = dk 2k , k =1 em que d1 , d2 , dm1 , dm assumem valores no conjunto {0, 1}.
Obs. Note novamente a ordenao dos dgitos da esquerda
para direita (aps o ponto). Como converter uma frao na base 10 para a base 2? Exemplo 6(a). (0.1875)10 . Em geral: 0.1875 2 = 0.3750 + 0, 0.Q 2 = 0.q1 + d1 , 0.375 2 = 0.750 + 0, 0.q1 2 = 0.q2 + d2 , 0.75 2 = 0.50 + 1, 0.q2 2 = 0.q3 + d3 , 0.50 2 = 0.0 + 1. .. . Da: (0.1875)10 = (0.0011)2 . com dk = 0 ou dk = 1, Exemplo 6(b). (0.6) 10. k = 1, 2, . . .. 0.6 2 = 0.2 + 1, Se existir m tal que qm = 0, 0.2 2 = 0.4 + 0, ento 0.4 2 = 0.8 + 0, 0.Q = (0.d1 d2 dm1 dm )2 . 0.8 2 = 0.6 + 1 .. Se no existir m tal que . qm = 0, ento Da: 0.Q = (0.d1 d2 d3 d4 )2 . (0.6)10 = (0.10011001 )2 . Representao de um nmero real numa base . Seja R um nmero real da forma R = N.Q, em que N 6= 0 a parte inteira e Q a parte fracionria.
Considere a base sendo um nmero natural com 2.
Representao R na base com p + 1 dgitos na parte
inteira e m dgitos na parte fracionria. R = (dp d(p1) d1 d0 . d1 d2 dm1 dm ) (d0 0 + d1 1 + + dp1 (p1) + dp p m +d1 1 + d2 2 + + dm m ) = dk k , k =p em que dk , k = p, (p 1), , 2, 1, 0, 1, 2, , (m 1), m assumem valores no conjunto {0, 1, , 1}.
Obs. Lembre que representaes infinitas provocam os
Obs. Como (0.6)10 = (0.1001 1001 )2 , no item (c) se
usarmos 8 dgitos significativos aps a vrgula temos uma aproximao do nmero (2.6)10 dada por (2.59765625)10 . Representao em Ponto Flutuante. Seja x 6= 0 um nmero real dado e uma base de numerao escolhida. A representao de x em ponto flutuante normalizada na base x = d e sendo que a mantissa d um nmero em ponto fixo da forma t d= dk k , k =1 em que dk , k = 1, . . . n so nmeros inteiros (os dgitos significativos), com dk {0, 1, . . . , 1}, porm d1 6= 0, e t o nmero de dgitos significativos. O expoente e um nmero inteiro entre I e S, sendo I o limite inferior e S o limite superior para e. Simbolicamente: t x = 0.d1 d2 dt e dk k e, d1 6= 0 . k =1 Representao em Ponto Flutuante. Simbolicamente, se x 6= 0 ento x = d e 0.d1 d2 dt e , d1 6= 0 . Exemplo 8. Considere = 10; t = 3; I = 2 e S = 2. Represente os seguintes nmeros, dados na base 10, neste sistema de ponto flutuante normalizado. (a) x = 0.35. Devemos escrever x como 0.d1 d2 d3 10e , com d1 6= 0. Mas, isto j est satisfeito, pois 0.35 = 0.35 100 . Da, d1 = 3 6= 0, d2 = 5, e = 0 e a representao deste x neste sistema de ponto flutuante +0.350 100 . (b) x = 5.172. Note que x possui uma parte inteira. Da, 5.172 = 0.5172 101 , isto , d1 = 5 6= 0 e e = 1. Como s podemos usar t = 3 dgitos significativos, ento a representao deste x neste sistema de ponto flutuante 0.517 101 , o que significa que um erro de aproximao est sendo cometido, pois 0.517 101 = 5.176=5.172 . Representao em Ponto Flutuante. Simbolicamente, se x 6= 0 ento x = d e 0.d1 d2 dt e , d1 6= 0 . Exemplo 8 (cont.). Considere = 10; t = 3; I = 2 e S = 2. Represente os seguintes nmeros, dados na base 10, neste sistema de ponto flutuante normalizado. (c) x = 0.0123. Note que, 0.0123 = 0.123 101 , isto , d1 = 1 e e = 1. Assim, a representao deste x neste sistema de ponto flutuante +0.123 101 . (d) x = 5391.3. Aqui temos: 5391.3 = 0.53913 104 , isto , d1 = 5 e e = 4. Como e > S este x no representvel neste sistema de ponto flutuante (overflow). (f) x = 0.0003 = 0.3 103 , isto , d1 = 3 e e = 3. Como e < I, este x tambm no representvel neste sistema de ponto flutuante (underflow). Representao em Ponto Flutuante. Simbolicamente, se x 6= 0 ento x = d e 0.d1 d2 dt e , d1 6= 0 . Exemplo 9. Considere = 2; t = 3; I = 1 e S = 2. Represente os seguintes nmeros, dados na base 10, neste sistema de ponto flutuante normalizado. Devemos ter: x = 0.d1 d2 d3 2e . Como = 2 devemos ter d1 = 1 6= 0, d2 {0, 1}, d3 {0, 1} e e {1, 0, 1, 2}. (a) x = 0.25. Note que, (0.25)10 = (0.01)2 = 0.1 21 , isto , d1 = 1 6= 0 e e = 1. Logo, a representao deste x neste sistema de ponto flutuante +0.100 21 . (b) x = 3.5. Aqui: (3.5)10 = (11.1)2 = 0.111 22 , isto , d1 = 1 6= 0 e e = 2. Como 210 = (10)2 , a representao deste x neste sistema de ponto flutuante +0.111 210 . Representao em Ponto Flutuante. Simbolicamente, se x 6= 0 ento x = d e 0.d1 d2 dt e , d1 6= 0 . Exemplo 9 (cont.). Considere = 2; t = 3; I = 1 e S = 2. Represente os seguintes nmeros, dados na base 10, neste sistema de ponto flutuante normalizado. Devemos ter: x = 0.d1 d2 d3 2e . Como = 2 devemos ter d1 = 1 6= 0, d2 {0, 1}, d3 {0, 1} e e {1, 0, 1, 2}. (c) x = 0.125. Aqui: (0.125)10 = (0.001)2 = 0.1 22 , isto , d1 = 1 6= 0 e e = 2. Como e < I = 1, temos underflow (no representvel). (d) x = 4. Note que, (4)10 = (100)2 = 0.1 23 , isto , d1 = 1 6= 0 e e = 3. Como e > S = 2, temos overflow (no representvel). Representao em Ponto Flutuante. Simbolicamente, se x 6= 0 ento x = d e 0.d1 d2 dt e , d1 6= 0 . Exemplo 9(cont.). Considere = 2; t = 3; I = 1 e S = 2. Represente os seguintes nmeros, dados na base 10, neste sistema de ponto flutuante normalizado. Devemos ter: x = 0.d1 d2 d3 2e . Como = 2 devemos ter d1 = 1 6= 0, d2 {0, 1}, d2 {0, 1} e e {1, 0, 1, 2}. (e) x = 0.3. Note que, (0.3)10 = (0.0 1001 1001 )2 = (0.1001 1001 ) 21 , isto , d1 = 1 e e = 1. Como devemos ter apenas trs dgitos, este nmero no representvel neste sistema de ponto flutuante. Tomando apenas os trs primeiros dgitos, ento temos uma aproximao de x dada por 0.100 21 = (0.0100)2 = 0 21 + 1 14 + 0 18 + 0 16 1 1 + 0 32 = (0.25)10 6=(0.3)10 . Representao em Ponto Flutuante. Exemplo 10. Considere o o mesmo sistema de ponto flutuante do Exemplo 9 com = 2; t = 3; I = 1 e S = 2, isto , F (2, 5, 1, 2). O menor nmero real positivo representvel deve ter d1 = 1, os demais dgitos zero e o menor expoente possvel e = I, isto , m = 0.100 21 = (0.010)2 = 0 21 + 1 41 = (0.25)10 . O maior nmero real positivo representvel deve ter todos os dgitos mximos e o maior expoente possvel e = S, isto , M = 0.111 2(10)2 = (11.1)2 = 1 21 + 1 20 + 1 12 = (3.5)10 . Lembre que no Exemplo 9(c), com x = (0.125)10 , e no Exemplo 9(d), com x = (4)10 , tivemos situaes de underflow e overflow, respectivamente. J no Exemplo 9(e), com x = (0.3)10 , tivemos um truncamento/aproximao. Representao em Ponto Flutuante. Num sistema de ponto flutuante F ( , t, I, S) vale: Apenas um nmero finito de nmeros reais so representveis exatamente. H um menor nmero real (em valor absoluto) m que representvel exatamente. H um maior nmero real (em valor absoluto) M que representvel exatamente. H infinitos nmeros reais entre m e M que no so representveis exatamente, mas que podem ser aproximados e ento suas aproximaes serem representveis. H infinitos nmeros reais externos ao intervalo [m , M] que no so representveis, por causarem underflow ou overflow. Representao em Ponto Flutuante. Exemplo 11. Determinemos todos os nmeros reais que so representveis exatamente no sistema do Exemplo 10 em que F (2, 3, 1, 2), i. , = 2, t = 3, I = 1 e S = 2. J sabemos que m = (0.25)10 e que M = (3.5)10 . Tambm sabemos que o zero representvel em qualquer sistema (basta tomar a mantissa nula e e = I). Como t = 3, as possveis mantissas no nulas so: (0.100)2 (0.101)2 , (0.110)2 e (0.111)2 . Como I = 1 e S = 2, os possveis expoentes so: 1, 0, 1 e 2. Assim, os nmeros positivos com representao exata so: (0.100)2 21 = 21 21 = (0.25)10 = m , (0.100)2 20 = 12 20 = (0.5)10 , (0.100)2 21 = 12 21 = (1.0)10 , (0.100)2 22 = 12 22 = (2.0)10 , Representao em Ponto Flutuante. Exemplo 11 (cont,). Determinemos todos os nmeros reais que so representveis exatamente no sistema do Exemplo 10 em que F (2, 3, 1, 2), i. , = 2, t = 3, I = 1 e S = 2. (0.101)2 21 = ( 12 + 18 ) 21 = 0.625 21 = (0.3125)10 , (0.101)2 20 = ( 12 + 81 ) 20 = 0.625 20 = (0.625)10 , (0.101)2 21 = ( 12 + 81 ) 21 = 0.625 21 = (1.25)10 , (0.101)2 22 = ( 12 + 81 ) 22 = 0.625 22 = (2.5)10 ,