Representação de Números

Slides:



Advertisements
Apresentações semelhantes
Contadores e Registradores
Advertisements

Parte 1: Organização de Computadores
Arquitetura de Computadores
Aritmética Computacional
Arquitetura de Computadores
Estabilidade de Sistemas de Controle
Sistemas de Numeração O número é um conceito abstrato que representa a idéia de quantidade. Sistema de numeração é o conjunto de símbolos utilizados para.
VETORES.
Múltiplos Os múltiplos de um número inteiro obtêm-se multiplicando esse número por 0, 1, 2, 3, 4, 5, 6, ... Exemplos: M5= {0, 5, 10, 15, 20,
Representação de Dados e Sistemas de Numeração Aula 4
Software Básico Silvio Fernandes
Sinais e Sistemas – Capítulo 3
Sinais e Sistemas – Capítulo 4
Adição e subtração Capítulo 4: Jean Pierre Descamps; Géry Jean Antoine Bioul; Gustavo D.Sutter Synthesis of Arithmetic Circuits – New Jersey, John Wiley.
Modelos no Domínio do Tempo de Sistemas LTI Contínuos
Centro Federal de Educação Tecnológica do Espírito Santo
William Stallings Arquitetura e Organização de Computadores 8a Edição
MC542 Organização de Computadores Teoria e Prática
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
1 MergeSort Seja uma lista A de n elementos. O algoritmo consiste das seguintes fases Dividir A em 2 sub-listas de tamanho n/2 Conquistar: ordenar cada.
6. Estruturas p/ Sistemas Discretos
POTENCIAÇÃO DE NÚMEROS RACIONAIS
POLINÔMIOS.
Universidade do Estado de Santa Catarina – CCT/UDESC
Decomposição em fatores primos
O que você deve saber sobre
Polinômios Prof. Marlon.
EQUAÇÕES POLINOMIAIS Prof. Marlon.
TÉCNICAS DE CODIFICAÇÃO DE SINAIS
Formulário de Matemática
PROGRESSÕES JUDITE GOMES
TEORIA DOS NÚMEROS Embora existam diversos tipos de números na Matemática (reais, complexos, etc.), o nome "Teoria dos Números" é tradicionalmente reservado.
3 - Equações Lineares de Segunda Ordem
INTRODUÇÃO À ENGENHARIA
Sistemas de Numeração e Conversão de Base
Informática Teórica Engenharia da Computação
CIRCUITOS LÓGICOS UNIDADE 1 SISTEMAS DE NUMERAÇÃO
SISTEMAS LINEARES.
Operações Aritméticas em Binário
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Qualificadores.
Cálculo Numérico / Métodos Numéricos
Noções de trigonometria e funções trigonométricas
Capítulo 10 Funções polinomiais slide 1
UNIDADE 1 – Noções básicas de erros
Representação Digital da Informação
Polinômios Profª.: Juliana Santos.
Sistema de equações lineares
Numeração.
Infra-Estrutura de Hardware
Campus de Caraguatatuba Aula 8: Noções Básicas sobre Erros (2)
Campus de Caraguatatuba Aula 12: Sistemas de Equações Lineares (2)
Representação de dados
Sistemas Numéricos SISTEMA DECIMAL
Sistemas de Numeração.
Introdução a Cálculo Numérico
Representação de Números Inteiros
POTENCIAÇÃO E RAIZ QUADRADA DE NÚMEROS RACIONAIS
Representação de Dados
Introdução a Sistemas de Informação
Planilha Eletrônica - Excel
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
Fontes de Erros Aula 1 Introdução; Erros em processos numéricos;
FUNDAMENTOS DE COMPUTAÇÃO
Universidade Federal de Uberlândia
Potenciação an = a . a . a a (a ≠ 0) n fatores onde: a: base
Métodos Numéricos Computacionais
INTRODUÇÃO AOS MÉTODOS NUMÉRICOS Professor: Dr. Edwin B. Mitacc Meza
SISTEMAS DE NUMERAÇÃO 1. SISTEMAS DE NUMERAÇÃO 2. ARITMÉTICA BINÁRIA
Administração - UFMT Modalidade – Educação a Distância
Matemática Básica Fonte: Prof Msc SANDRO FABIAN FRANCILIO DORNELLES
Transcrição da apresentação:

Representação de Números Aula - 5

Introdução A aritmética lida com operações sobre números, portanto a representação dos números é um tópico fundamental. A escolha de um sistema de representação de números tem repercussões na complexidade dos algoritmos e sobre o custo e desempenho dos circuitos. Um outro aspecto é a interface com outros circuitos e a interface humana. Consideremos como exemplo, o sistema de números com resíduos (Residue Number Systems, RNS) que permite uma implementação muito rápida e circuitos aritméticos custo-efetivos. Não obstante, o RNS necessita de um certo tipo de interface de entrada e saída de custo relativamente alto, e conversores AD e DA não entendem esse tipo de representação. Assim, o uso de RNS é limitado a casos em que o custo extra de codificação e decodificação RNS seja desprezível com respeito ao custo total. Neste capítulo, os sistemas de representação de números mais comuns são descritos. O capítulo é dividido em 3 seções correspondentes aos números naturais, inteiros e reais.

Números naturais Sistemas ponderados Qualquer número natural (inteiro não negativo) pode ser representado numa única forma, de soma de potências Bi de certo número natural B, maior que 1, cada uma das quais multiplicada por um número natural menor que B. O seguinte teorema define um sistema de numeração de base-B. Teorema. Dado um número natural B maior que 1, qualquer número natural menor que Bn pode ser expresso na forma onde cada coeficiente é um número natural menor que B. E existe somente um vetor ( ) representando .

Algoritmo para computar xi (algoritmo 3.1) For i in 0..n-1 loop x(i):= x mod B; x := x/B; end loop; Exemplo: Computar a representação hexadecimal de 287645. 287645 = 17977.16 + 13 17977 = 1123.16 + 9 1123 = 70.16 + 3 70 = 4.16 + 6 4 = 0.16 + 4 287645 = 4.164 + 6.163 + 3.162 + 9.161 + 13.160 = [4639D]base16. n = 0 x(i)=xmodB B x = x/B n = n-1

Sistema de numeração misto, com várias bases (mixed-radix system) Exemplo: o sistema de tempo expresso em dias, horas, minutos, segundos e milisegundos. Teorema (3.2): dados n números naturais maiores que 1, qualquer número natural menor que pode ser expresso na forma onde e cada coeficiente xi é um número natural menor que bi. E existe somente um vetor representando x. Nota-se que na Base-B, os pesos são Bi, enquanto que no sistema misto os pesos são dados por:

Algoritmo 3.2 (para computar os coeficientes xi num sistema de numeração misto) for i in 0..n-1 loop x(i) := x mod b(i); x := x /b(i); end loop; Exemplo: computar a representação de 287645 na base mista (13,12,15,11,12): 287645 = 23970.12 + 5 23970 = 2179.11 + 1 2179 = 145.15 + 4 145 = 12.12 +1 12 = 0.13 + 12 287645 = 12. (12.15.11.12) + 1.(15.11.12) + 4.(11.12) + 1.12 + 5 i = 0 x mod b(i) b(i) x/b(i) i = n-1

Comentário n = 20, s = 4 e 20 = 4. q, portanto q = 5. Dado um número natural s, a conversão de uma representação na base B de x, a uma representação base Bs, e vice-versa, é direta. Supõe-se que n = s.q (se n não for divisível por s, então zeros iniciais devem ser adicionados. Então, onde Como exemplo, a representação binária de um número decimal 287645 é 01000110001110011101. A conversão para a representação hexadecimal é direta: [0100 0110 0011 1001 1101] base 2 = [4639D] base 16. n = 20, s = 4 e 20 = 4. q, portanto q = 5. X4 = x4x4 + 4 -1 B4-1+ x4.4 +4-2 B4-2+x4.4 +4-3 B4-3+x 4.4 B0 X4 = x19 B3+ x18 B2+x17 B1+x16 B0 X4 = 0.23+ 1.22+0.21+0.20 X4 = 4 X4

Sistema numérico de resíduos (RNS) Um RNS é definido por um conjunto de s valores módulo[mi]. Se os mis são primos entre si, o RNS é dito não-redundante. A representação RNS de um dado número natural é um vetor R(N), cujos componentes ri são os respectivos resíduos módulo mi, isto é, os sucessivos restos da divisão inteira de N/mi ri = N mod mi. O mínimo múltiplo comum de {mi} é o intervalo de RNS, geralmente denotado por M. O maior número natural que pode ser representado em RNS definido por {mi} é M – 1 = (m1-1, m2-1,...,ms-1). Se os mis são primos entre si então

Exemplo Seja {mi} = {31, 17, 7, 5, 3} e N = (789)10. Computar {ri} Solução: s = 5; r1 = 789 mod 3 = 0 r2 = 789 mod 5 = 4 r3 = 789 mod 7 = 5 r4 = 789 mod 17 = 7 r5 = 789 mod 31 = 14 (789)10 = (14,7,5,4, 0) RNS Como mis são primos entre si, ri = N mod mi onde M é o mínimo múltiplo comum de {mi}.

Representação de Inteiros Representação sinal e magnitude – um inteiro pode ser representado na forma +x ou –x, onde x é um número natural. O número natural x pode ser representado na base B e ao invés de usar os símbolos + e -, é usado um dígito adicional de sinal igual a 0 (número positivo) e 1 (número negativo). Definição: O inteiro representado na forma onde xn-1 é o bit de sinal é O intervalo de números representados é É uma forma natural de representar um número inteiro. Não obstante, não é a forma mais conveniente. e

Representação excesso de E Uma outra forma de representar um número inteiro x consiste em associar um número natural R(x) a x, onde R é uma função um-a-um, e R(x) é representada na base B. Definição 3.3: no sistema de numeração excesso de E, onde E é um número natural, R(x) = x + E tal que o inteiro representado na forma seja e o intervalo de números representados,

Comentários sobre excesso de E Se B é par, e E é escolhido igual a Bn/2, então, o número representado na forma é A regra de definição do sinal é: se x é negativo então e se x é positivo Em alguns casos práticos, o valor de E é diferente de Bn/2. Como exemplo, no sistema de ponto-flutuante de precisão simples ANSI/IEEE o expoente é um número de 8 bits que representa um inteiro x no intervalo de acordo com o método excesso de E com E = 127 e não Bn/2=128.

Comentários (cont.) Se B= 2 e E = 2n-1, então o número representado na forma é onde significa o complemento de A função de representação R é unate, tal que a comparação de magnitude é fácil. Função binária unate positiva é tal que se aplicar o valor 1 a um bit, o valor da função é maior ou igual que a aplicação do valor 0 no mesmo bit, desde que os demais bits sejam iguais.

Exemplo Representar x = -287645 com n = 6 dígitos na base B = 10 com E = 106/2. B6 =106= 1000000 E = B6/2 = 106/2= 500000 R(x) = x + E = – 287645 + 500000 = 212355 Observa-se que: (2-10/2).105 + 12355 = - 300000 + 12355 = - 287645 E 212355 – 500000= 2x105+12355 – 500000 Número em excesso de E

Representação Complemento de B É obtido um número natural R(x), aplicando uma função um-a-um a x. Definição: No sistema de numeração complemento de B, cada inteiro x, pertencente ao intervalo é representado pelo número natural tal que o inteiro representado na forma seja se e positivo negativo

Essas condições podem ser reescritas na forma: E se B é par, as últimas condições são equivalentes a: e se positivo negativo

Complemento de 2 Se B = 2, o número representado por é e o bit mais significativo é também o bit de sinal. Se e se

comentários O sistema complemento de B é baseado na operação, a saber R(x) = x mod Bn. Para representar um número de n dígitos com n+1 dígitos (extensão do número), a seguinte regra deve ser usada (B par): Se e se Se B = 2, o vetor de n+1 bit representa o mesmo número como o vetor de n bit

Sistema de numeração complemento de B reduzido Num sistema de numeração complemento de B reduzido, o dígito mais significativo xn-1 é 0 ou B-1. Definição: no sistema de numeração complemento de B reduzido (B par), cada inteiro x pertencente ao intervalo é representado por Se então e se então

Sistema de numeração complemento de B reduzido (cont.) Assim, o inteiro representado por é e e a regra de definição de sinal é a seguinte: se x é negativo, e se x é positivo, . De fato, o sistema complemento de B reduzido é obtido da representação complemento de B adicionando um dígito, se o dígito mais significativo é diferente de 0 ou B-1.

Exemplo Representar x = -287645 com n = 6 dígitos em complemento de B com B = 10. B6 = 1000000 B6/2 = 500000 R(x) = x + B6 = 712355 Observa-se que x’5 = 7 – 10 = -3 -3.105 + 12355 = -287645 No sistema complemento de B reduzido, n = 7 dígitos são necessários: ( -287645 < -Bn-1=-100000 ): R(x) = x + B7 = 9712355. Observa-se que -106 + 712355 = -287645 e que 9712355 é deduzido de 712355 adicionando um dígito de acordo com a regra de extensão.

Codificação de Booth A representação complemento de 2, , de um inteiro x pode ser vista como uma representação com dígito de sinal. onde e todos os outros dígitos A codificação de Booth gera uma outra representação com dígito de sinal. Definição: Considera-se um inteiro x cuja representação complemento de 2 é e define-se

Codificação de Booth Então, multiplicando a primeira equação por 20, a segunda por 21, e terceira por 22, e assim por diante, e adicionando as n equações, é obtida a seguinte equação: O vetor cujos componentes yi pertencem a {-1,0,1} é a representação Booth-1 de x e Observa-se que a representação de Booth de um inteiro é formalmente a mesma de uma representação binária de um número natural. O método de codificação de Booth pode ser generalizado.

Codificação Booth-2 Definição: considerar um inteiro cuja representação em complemento de 2 é com n = 2.m bits, e definir Multiplicando a primeira equação por 40, a segunda por 41, a terceira por 42, e assim por diante, e adicionando m equações, a seguinte equação é obtida: O vetor cujos componentes yi pertencem a {-2,-1,0,1,2} é a representação Booth-2 de x e

Codificação Booth-r Definição: considerar um inteiro x cuja representação em complemento de 2 é com n = r.m bits, e definir O vetor cujos componentes yi pertencem a é a representação Booth-r de x e onde B=2r.

Exemplo Computar a codificação de Booth de -287645, cuja representação complemento de 2 é: 10111001110001100011 De acordo com a representação Booth-1 é -1100-10100-10010-10010-1 e de acordo cm a representação Booth-2 é -10-22-102-21-1

Números reais Para números reais, existem dois tipos de abordagens de sistemas de numeração: ponto fixo e ponto flutuante. O sistema ponto fixo é uma simples extensão da representação de números inteiros, que permite a representação de um intervalo relativamente reduzido de números com certa precisão absoluta. O sistema ponto flutuante permite uma representação de um intervalo muito grande de números, com uma precisão relativa.

Sistema de numeração ponto-fixo No sistema de numeração ponto-fixo, o número representado na forma: é x/Bp onde x é o inteiro representado pela mesma sequência de dígitos sem o ponto. Seja xmin e xmax os inteiros mínimo e máximo que podem ser representados com n dígitos, isto é, xmin = 1 – Bn-1 e xmax = Bn-1 -1 na representação sinal e magnitude, e xmin = -Bn/2 e xmax = Bn/2 -1 em complemento de B ou excesso de Bn/2. Então, qualquer número real x no intervalo pode ser representado com erro igual ao valor absoluto da diferença entre x e sua representação. A distância d entre os números exatamente representados é igual à unidade na posição menos significativa (unit in the least significant position – ulp), isto é, B-p, tal que o erro máximo seja igual a O erro relativo máximo é igual a . Se então tal que o erro relativo máximo seja menor ou igual a

exemplo O intervalo de números x que podem ser representados em complemento de B com B = 10, n = 9 dígitos, e ulp = 10-3 é Os seguintes números podem ser representados exatamente: -500000.000, -499999.99, - 499999.998,...,-0.001, 0.000, 0.001, ..., 499999.999. A distância entre eles é igual a ulp = 0.001.

Sistema de numeração ponto- flutuante Num sistema de numeração ponto-flutuante, a representação consiste de dois números: um número em ponto-fixo ( significando) +s ou –s, onde s é um número positivo, e um expoente (inteiro) e. O número correspondente é onde b é a base (não-necessariamente igual a B). Seja smin, smax, emin e emax os valores mínimo e máximo de s e e respectivamente. O intervalo de números representados é e o valor absoluto mínimo de um número representado é Seja ulp a unidade na posição menos significativa do significando. Então a distância D entre os números exatamente representados é D = d.be, onde d = ulp é a distância entre dois valores sucessivos do significando. Assim, o valor de D depende do expoente e. O erro máximo é igual a O erro relativo máximo é igual a Como no caso anterior, o erro relativo máximo é menor ou igual a

exemplo No sistema de ponto-flutuante de precisão simples ANSI/IEEE, o significando é um inteiro representado em sinal e magnitude onde é chamado mantissa, e o expoente é um inteiro em excesso de 127. A palavra de 32 bits representa o número onde Assim

Apesar de emin e emax não serem usados para representarem números ordinários, eles são usados para representar e outros números não-ordinários. Os valores mínimo e máximo são: tais que o intervalo de números representados seja isto é e o menor número positivo representado é 1.2-126.