A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas de Computação

Apresentações semelhantes


Apresentação em tema: "Sistemas de Computação"— Transcrição da apresentação:

1 Sistemas de Computação
Aritmética Computacional Ponto Flutuante – Material originalmente elaborados pelo Prof. Dr. David Fernandes Compilado a partir de slides preparados por Prof. MSc. Leandro Galvão

2 Frações binárias A parte fracionária (entre 0 e 1) de um número real em notação binária é representada por: Portanto, seu valor em decimal (F) é dado por: A expressão anterior pode ser reescrita como:

3 Frações binárias A expressão anterior sugere uma técnica de conversão. se multiplicarmos F por 2, teremos: Da expressão acima, percebe-se que b-1 é a parte inteira do número (2 × F). Portanto, podemos afirmar que (2 × F) = b-1 + F1, onde 0 < F1 < 1, e: Para encontrar b-2, basta repetir o processo.

4 Frações binárias Assim, o processo de conversão da fração F de decimal para binário envolve repetidas multiplicações por 2. A cada passo, a parte fracionária do resultado do passo anterior é multiplicada por 2. Os dígitos da parte inteira serão 0 ou 1 (da definição de bi), contribuindo para a formação da representação binária.

5 Frações binárias O processo anterior não é necessariamente exato:
Uma fração decimal com número finito de dígitos pode corresponder a uma fração binária com um número infinito de dígitos. Nesses casos, o algoritmo de conversão é suspenso após um número pré-estabelecido de passos, dependendo da precisão desejada.

6 Escolha da notação Com a notação de complemento de 2, podemos representar a parte inteira de números reais. Com a notação fracionária, podemos representar a parte fracionária do mesmo número real. Limitações: números muito grandes não podem ser representados números muito pequenos não podem ser representados dificuldades para manter precisão durante realização de operações aritméticas

7 Ponto flutuante (Padrão IEEE 754)
Um número real pode ser representado no seguinte formato: (-1)s × m × Be s – sinal m – mantissa B – base (implícita, não representada) e – expoente

8 Ponto flutuante (Padrão IEEE 754)
O formato de precisão simples (float) ocupa 32 bits. O formato de precisão dupla (double) ocupa 64 bits. 23 bits 8 bits 1 bit fração expoente sinal 52 bits 11 bits 1 bit fração expoente sinal

9 Ponto flutuante (Padrão IEEE 754) :: Sinal
O bit mais à esquerda guarda o sinal do número: bit = 0  número positivo bit = 1  número negativo

10 Ponto flutuante (Padrão IEEE 754) :: Fração
A mantissa é representada na forma normalizada (base binária): A mantissa é composta por: Algarismo 1 Ponto de separação Fração

11 Ponto flutuante (Padrão IEEE 754) :: Fração
O algarismo 1 e o ponto de numeração não precisam ser armazenados, pois são os mesmos para todos os números reais representados. Caso a fração possua menos bits que o esperado, zeros devem ser colocados à direita, pois não têm significância. 23 bits fração fração = 1,110011

12 Ponto flutuante (Padrão IEEE 754) :: Fração
Por razões históricas, o co-processador de ponto flutuante Intel não utiliza parte inteira implícita, ou seja, a parte inteira também é representada juntamente com a fração. O formato de precisão estendida ocupa 80 bits. 64 bits 15 bits 1 bit mantissa expoente sinal

13 Ponto flutuante (Padrão IEEE 754) :: Expoente
O expoente é representado na notação deslocada, ou excesso de N Maior expoente representável: 2n-1 Representado por: Menor expoente representável: -(2n-1 - 1) Representado por:

14 Ponto flutuante (Padrão IEEE 754) :: Notação excesso de N
Decimal Complemento de dois Notação excesso de N +4 -- 111 +3 011 110 +2 010 101 +1 001 100 000 -1 -2 -3 -4

15 Ponto flutuante (Padrão IEEE 754) :: Notação deslocada
Representação do valor zero: Representação do valor um: Demais valores: somar ao zero (deslocamento).

16 Ponto flutuante (Padrão IEEE 754)
Exemplo: (10)bin = +1.0 × 21 8 bits expoente 1 bit sinal 23 bits fração

17 Ponto flutuante (Padrão IEEE 754)
Mais exemplos: fração em binário float fração em decimal expoente não sinalizado expoente decimal

18 Ponto flutuante × Ponto fixo :: Faixa de números representados
-231 Inteiros representados - ( ) × 2128 underflow positivo 2-127 ( ) × 2128 underflow negativo números representados overflow positivo overflow negativo

19 Ponto flutuante :: Zero
Como representar o zero em ponto flutuante? Adota-se uma convenção. fração expoente sinal + 0 1 fração expoente sinal – 0

20 Ponto flutuante :: Infinito
Notação especial para representar eventos incomuns: permite que os programas possam manipulá-los sem que sejam interrompidos. fração expoente sinal +∞ 1 fração expoente sinal -∞

21 Ponto flutuante :: NaN – Not a Number
É uma representação do resultado de operações inválidas, tais como: 0/0 ∞ - ∞ ∞/∞ 0 × ∞ √x, x < 0 x xxx...xx ≠ 0 fração expoente sinal

22 Código ASCII (texto) ASCII
American Standard Code for Information Interchange A primeira versão foi criada em 1963 para normalizar a transmissão e armazenamento de texto. Em 1967 foram incluídas as letras minúsculas no código, que essencialmente permaneceu inalterado até nossos dias.

23 Código ASCII Código ASCII 32 48 64 @ 80 P 96 ` 112 p 33 ! 49 1 65 A 81
64 @ 80 P 96 ` 112 p 33 ! 49 1 65 A 81 Q 97 a 113 q 34 50 2 66 B 82 R 98 b 114 r 35 # 51 3 67 C 83 S 99 c 115 s 36 $ 52 4 68 D 84 T 100 d 116 t 37 % 53 5 69 E 85 U 101 e 117 u 38 & 54 6 70 F 86 V 102 f 118 v 39 55 7 71 G 87 W 103 g 119 w 40 ( 56 8 72 H 88 X 104 h 120 x 41 ) 57 9 73 I 89 Y 105 i 121 y 42 * 58 : 74 J 90 Z 106 j 122 z 43 + 59 ; 75 K 91 [ 107 k 123 { 44 , 60 < 76 L 92 \ 108 l 124 | 45 - 61 = 77 M 93 ] 109 m 125 } 46 . 62 > 78 N 94 ^ 110 n 126 ~ 47 / 63 ? 79 O 95 _ 111 o 127 DEL

24 UNICODE O código ASCII possui a grande desvantagem de apenas permitir a representação de 28=256 símbolos diferentes. O código UNICODE pretende normalizar a codificação dos caracteres utilizados em todas as escritas do mundo. Utiliza 16 bits para codificar cada caracter e encontra-se disponível nos sistemas informáticos mais recentes. Mais informações em Mostrar aqui o Insert Symbol do Word e uma font unicode Mostrar este pdf com os caracteres chineses

25 Para saber mais... William Stallings. Computer Organization and Architecture: Designing for Performance. 7th Ed. Prentice Hall, Cap. 09. Patterson & Hennessy. Organização e Projeto de Computadores (Interface HW/SW). Cap. 3. Sivarama P. Dandamudi. Guide to Assembly Language Programming in Linux. Springer, Cap. 22. Kip R. Irvine. Assembly Language For Intel-Based Computers. 5th Edition. Prentice Hall, Cap. 17.

26 Questões


Carregar ppt "Sistemas de Computação"

Apresentações semelhantes


Anúncios Google