NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

9
UNIVERSIDADE FEDERAL DE MATO GROSSO – UFMT INSTITUTO DE COMPUTAÇÃO – IC CURSO DE CIÊNCIA DA COMPUTAÇÃO Disciplina de FILOSOFIA DA CIÊNCIA Cuiabá – Novembro de 2014 REPRESENTAÇÃO DE NÚMEROS REAIS EM UM COMPUTADOR E SUA IMPORTÂNCIA PARA OS FUNDAMENTOS DA MATEMÁTICA PAULO VINICIUS; WESLEY FERNANDES.

description

Numeros reais e Fundamentos da matemática

Transcript of NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

Page 1: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

UNIVERSIDADE FEDERAL DE MATO GROSSO – UFMT INSTITUTO DE COMPUTAÇÃO – IC

CURSO DE CIÊNCIA DA COMPUTAÇÃO Disciplina de FILOSOFIA DA CIÊNCIA

 

Cuiabá – Novembro de 2014

 

 

REPRESENTAÇÃO DE NÚMEROS REAIS EM UM COMPUTADOR E SUA IMPORTÂNCIA PARA OS FUNDAMENTOS DA MATEMÁTICA

PAULO VINICIUS; WESLEY FERNANDES.

Page 2: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

UNIVERSIDADE FEDERAL DE MATO GROSSO – UFMT INSTITUTO DE COMPUTAÇÃO – IC

CURSO DE CIÊNCIA DA COMPUTAÇÃO Disciplina de FILOSOFIA DA CIÊNCIA

 

Cuiabá – Novembro de 2014

 

 

REPRESENTAÇÃO DE NÚMEROS REAIS EM UM COMPUTADOR E SUA IMPORTÂNCIA PAARA OS FUNDAMENTOS DA MATEMÁTICA

PAULO VINICIUS; WESLEY FERNANDES.

Trabalho relacionado aos conteúdos da disciplina de Filosofia da Ciência orientado pelo professor Julio.

Page 3: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

 

 

SUMÁRIO

1.   INTRODUÇÃO  ...................................................................................................................................  4  

2.   HISTÓRIA  ..........................................................................................................................................  5  

3.   COMO  COMPUTADORES  REPRESENTAM  NÚMEROS  REAIS  ............................................................  5  

4.   A  IMPORTÂNCIA  PARA  OS  FUNDAMENTOS  DA  MATEMÁTICA  .......................................................  8  

5.   CONCLUSÃO  .....................................................................................................................................  9  

6.   REFERÊNCIAS  BIBLIOGRÁFICAS  ........................................................................................................  9  

Page 4: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

4  

 

 

1. INTRODUÇÃO  

Neste texto iremos apresentar como funcionam os sistemas numéricos em

seu uso na computação, quais as bases de sistemas numéricos utilizamos em

computadores principalmente quando nos referimos aos números reais. Será

ilustrado e descrito como computadores trabalham internamente com os números

reais e sua forma de representar. Tudo isso é estudar os conceitos básicos da

matemática, ou seja , os fundamentos da matemática.    

Page 5: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

5  

 

 

2. HISTÓRIA

O ENIAC (Electronic Numerical Integrator And Computer), foi o primeiro

computador eletrônico digital. O sistema de representação numérica que ele usava

era o decimal, era mais difícil de implementar e com isto ele ficou muito grande,

ocupando uma área de 180 m2.

A grande sacada da época foi construir um computador que usava o sistema

de representação numérica binário. Ele foi mais fácil de construir e potencialmente

mais confiável.

3. COMO COMPUTADORES REPRESENTAM NÚMEROS REAIS  

Na computação, os sistemas de numeração estão na base da matemática,

onde são responsáveis por estabelecer a relação entre valores e símbolos e sem

eles fica extremamente complicado realizar operações simples de adição ou

subtração.

Para um sistema de numeração é necessário que seja definido a base na qual

ele irá trabalhar, o que pode ser inumeras opções e dentre elas temos a binária, a

decimal e a hexadecimal. É necessário que se defina também um alfabeto que nada

mais é que um conjunto de símbolos.

Nós humanos, utilizamos com maior frequência o sistema numérico decimal

que é na base 10 e para o alfabeto adotamos os algarismos arábicos. Na

computação foi adotado o sistema binário, que tornou-se um sistema de uma

importância crucial para os profissionais da área. Desta forma surge a questão do

por que utilizar o sistema binário e não o que estamos acostumados que é o

decimal. Bom, os computadores passaram a ser dispositivos elétricos, sendo

complicado representar os pulsos da corrente elétrica de 10 formas diferentes. Por

isso é utilizado o sistema binário, pois é muito mais fácil representar a passagem de

corrente ou não.

Page 6: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

6  

 

 

O sistema binário permite um processamento bastante eficiente dos

computadores e além disso, todas as operações básicas feitas no sistema decimal

podem ser facilmente adaptadas ao sistema binário.

Porém nem tudo é essa maravilha na utilização de sistemas binários em

computadores e assim surgiu alguns problemas relacionados aos números dentro do

computador. A computação é utilizada em várias áreas da ciência como física,

química, matemática entre outras. Deste modo torna-se necessário trabalhar com

números extremamente grandes e outros extremamente pequenos como números

fracionários. Além disso, torna-se crucial realizar operações matemática nestes

números.

Em números em que após a vírgula temos muitos zeros até chegar a um

caractere diferente, necessitaríamos de muitos zeros para representar o resultado.

Desta forma passou a utilizar uma notação científica chamada de ponto flutuante.

Ex.: 5,625 na base decimal equivale a 101,101 na base binária.

O computador só armazena 0’s e 1’s, com isto só existem números inteiros,

mas usando a notação de ponto flutuante pode-se armazenar também números

reais.

Internamente o computador representa números reais em três partes: o sinal,

a parte fracionária (mantissa) e o expoente (que tem um sinal).

Ex.: +5625 x 10 ^ -3 que é igual a 5,625

Os computadores são finitos ou seja, a quantidade de bits (0’s e 1’s) que ele

pode armazenar é limitado. Em um computador fictício poderia ser:

O sinal é um bit (0 ou 1), a mantissa uma palavra de 16 bits e o expoente uma

palavra de 4 bits.

A representação interna deste computador para o número 5.625 é:

Page 7: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

7  

 

 

O conjunto de números dos números reais é infinito, entretanto, a sua

representação em um sistema de ponto flutuante é limitada, pois é um sistema finito.

Os problemas se dão na mantissa ou no expoente, pois os dois são limitados.

Como alguns números não podem ser representados exatamente, eles são

então arredondados.

Abaixo, um código escrito na linguagem C e compilado no Ubuntu versão 14

de 64 bits em um computador quad-core, com 4 GB de memória RAM.

#include  <stdio.h>  

int  main(){                                        int  a  =  1234567890;                                      float  b  =  1234567.8901234567890123456789;                                        double  c  =  1234567890123456.7890123456789;                                        float  d  =1.2345678901234567890123456789;                                      double  e  =  1.2345678901234567890123456789;                                        printf("%d\n",a);                                      printf("%f\n",b);                                        printf("%lf\n",c);                                        printf("%f\n",d);                                        printf("%lf\n",e);                                        printf("%lf",c+e);                                        return  0;    }  

Saída:

Valor de a = 1234567890 // O tipo inteiro em C só aceita 10 dígitos ���

Valor de b = 1234567.875000 // O float aceita 7 dígitos antes do ponto ���

Valor de c = 1234567890123456.750000 // O double aceita 16 dígitos antes do ponto

Valor de d = 1.234568 // O float aceita 6 dígitos depois do ponto ���

Valor de e = 1.234568 // O double aceita 6 dígitos depois do ponto ���

Valor de c + e = 1234567890123458.000000 // O resultado da soma de ‘c + e’

Page 8: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

8  

 

 

Como foi visto na saída, os números completos não são suportados pela

linguagem. Como o computador é limitado, algumas vezes não tem como trabalhar

com os números completos.

Existem algumas linguagens/bibliotecas que trabalham com números com

uma maior precisão. Por exemplo na linguagem Java existe uma classe que trabalha

com números de ponto flutuante com maior precisão, o programador só precisa

definir a quantidade de precisão que ele quer usar. A classe BigDecimal em Java

trabalha com os números no sistema decimal, na forma de String, ou seja ela

trabalha fazendo operações em cima dos caracteres em vez de em cima dos

números. Isto faz com que demore mais para executar as operações, mas ganhando

uma maior precisão em cima dos resultados.

4. A IMPORTÂNCIA PARA OS FUNDAMENTOS DA MATEMÁTICA  

Os fundamentos da matemática é o estudo de conceitos básicos da

matemática. Estudando como o computador representa os números reais é estudar

um dos conceitos básicos. Alguns pontos a se estudar relacionado a como o

computador representa os números.

- O sistema binário é o melhor sistema para se usar em um computador? ���

- Converter um número para uma base maior, fazer as contas e desconverter?

- Existe uma base perfeita para se trabalhar com os números? Como sabemos

1/3 não é representado exatamente na base decimal, mas na base 3 ele é

representado de forma exata.

- Se usarmos outro sistema de representação numérica seria melhor? Vale

ressaltar que é utlizado tanto o sistema octal (representação não é redonda), quanto o

hexadecimal (mais utilizado do que o octal) para encurtar os valores numéricos onde em um

sistema binário este numero seria extremamente grande como por exemplo a capacidade de

um HD (hard disc) com capacidade de 400 MB, o que seria 419430400 bytes.

- Se recriarmos a matemática melhoraria algo?

Page 9: NumeroNumeros reais e Fundamentos da matemáticas reais e Fundamentos da matemática

 

9  

 

 

O ponto importante é que o computador é uma máquina de fazer cálculos, ou

seja, usa os fundamentos da matemática desde a sua criação. Devemos estudar os

fundamentos dele para podermos aperfeiçoá-lo.

5. CONCLUSÃO Desta forma concluímos que para um computador, a melhor forma de se

trabalhar internamente é utilizando o sistema binário por ser mais fácil ter que

identificar apenas dois tipos diferentes de pulso de corrente elétrica. Também fica

claro que computadores trabalhando internamente com um sistema numérico na

base 2 apresentam problemas quando devemos utilizar números reais. Para isto,

uma das soluções é o uso da notação científica chamada de ponto flutuante.

6. REFERÊNCIAS BIBLIOGRÁFICAS  

http://www.ime.usp.br/~elo/IntroducaoComputacao/Numeros reais.htm

http://intprogc.pbworks.com/w/page/11211433/Representa%C3%A7%C3%A3o  de  N%  C3%BAmeros

http://www.inf.ufpr.br/silvia/numerico/I1.pdf

http://gersonc.anahy.org/repicc/Apoio2-icc-PontoFlutuante.pdf

http://www1.univap.br/spilling/CN/CN_Capt1.pdf

http://blog.reverberate.org/2014/09/what-every-computer-programmer-should.html

http://perso.ens-lyon.fr/jean-michel.muller/goldberg.pdf

http://stackoverflow.com/questions/1089018/why-cant-decimal-numbers-be-represented- exactly-in-binary

http://pt.wikipedia.org/wiki/Fundamentos_da_matem%C3%A1tica

http://pt.wikipedia.org/wiki/Computador