E se

6

Alguém me disse que o registroA função foi introduzida para facilitar o cálculo. Se tivermos que calcularxy, podemos calcular registrox+registroy Desde a registroxy=registrox+registroy. Como isso pode facilitar o cálculo? Talvez do ponto de vista matemático, mas e o ponto de vista de um cientista da computação?

Se isso facilita a calcualção, por que as pessoas não a utilizam para simplificar a complexidade dos algoritmos de multiplicação?

Do meu próprio pensamento, essa transformação torna o cálculo mais difícil. Como podemos calcular oregistrox e expx funciona em um computador?

Estou certo? Alguma sugestão, por favor? Obrigado pelo seu tempo.

zighalo
fonte
11
O cálculo é facilitado para seres humanos, pois eles podem usar tabelas de log como referência. Idéias semelhantes podem ser aplicadas à programação. Crie uma tabela de log como uma estrutura de dados comum (matrizes ou tabela de hash) e indexe nela para calcular os valores de log. No entanto, tendo dito isso para computadores, é muito mais fácil fazer multiplicação.
Tushar
Existem cenários em que você não precisa da transformação. Em vez disso, você realiza todos os seus cálculos usando logaritmos. A vantagem tirada disso foi compensada pelo advento de fpus de alto desempenho que eliminaram a penalidade de desempenho de magnitude 1-2 em operações fp.
colapsar

Respostas:

5

E se registroxy=registrox+registroy então por que a multiplicação é mais difícil que a adição?

Essa não é uma comparação justa: você não está comparando igual com igual. Se você, em vez disso, frase como "Sexy=exp(registrox+registroy) então por que a multiplicação é mais difícil que a adição? ", então a resposta é óbvia. A multiplicação, feita dessa maneira, é mais difícil que a adição porque fazer adição envolve apenas fazer adição, enquanto a multiplicação envolve fazer adição, pegar logs duas vezes e exponenciar.

Como podemos calcular o registrox e expx funciona em um computador?

Os principais métodos são usar algo como uma série de Taylor ou consulta e interpolação de tabela. A série Taylor expressa funções como somas, por exemplo,expx=Eu=0 0xEu/Eu!. Adicione quantos termos for necessário para obter o nível de precisão desejado - observe que isso envolve muitas adições e muitas multiplicações. A consulta e interpolação de tabela são essencialmente da mesma maneira que as tabelas de log de papel funcionam. Para calcular, digamos,registro4.3., você procuraria registro4 e registro5 e aproximado registro4.3.como sendo três décimos do caminho entre eles. (Na realidade, a tabela teria mais casas decimais.) Isso envolve algumas adições e multiplicações e muita memória.

David Richerby
fonte
6

Os logaritmos foram usados ​​para facilitar a computação no momento em que os computadores não estavam disponíveis. Mesmo no século XX, quando as máquinas mecânicas se tornaram disponíveis para fazer aritmética com muita precisão, elas permaneceram tão caras e muitas vezes pesadas que a maioria das pessoas não as usava. A calculadora mecânica manual que executava as quatro operações aritméticas não apareceu antes do final da Segunda Guerra Mundial (esta máquina, chamada Curta , na verdade foi projetada em um campo de concentração, que salvou algumas vidas). Como a maioria dos cálculos não exigia muita precisão, muitas pessoas simplesmente usavam regras de slides ou tabelas de logaritmos. O desenho típico de um cientista ou engenheiro o mostraria com a régua de cálculo no bolso da frente.

Tenho idade suficiente para não ter calculadoras manuais na escola (os computadores ainda usam mais espaço do que minha sala de aula). O que eu tinha era uma régua de cálculo, baseada em logaritmos. Não deu uma precisão muito alta (na melhor das hipóteses, algo como103, ou seja, 3 dígitos decimais), mas era inestimável fazer problemas em física. Os números foram lidos diretamente na régua de cálculo, que pode adicionar comprimentos.

Para mais precisão, usaríamos tabelas armazenadas em livros. Isso deu 4 dígitos, mais um com interpolação (se bem me lembro). Também temos tabela direta para logaritmos de funções trigonométricas.

Isso foi bem organizado, e o custo de calcular logs e exponenciais com as tabelas não foi nada comparado à economia de não fazer multiplicações manualmente. Na verdade, era grátis, com leitura direta das graduações, na régua de cálculo.

Este não era um ponto de vista matemático, mas um ponto de vista físico, ou o de qualquer pessoa que tenha que fazer muitos cálculos envolvendo multiplicações, como astrônomos, ou pessoas que mapeiam a terra (que provavelmente levou vários séculos).

Não verifiquei, mas acho que o design algorítmico numérico da época deve ter sido muito influenciado pela idéia de minimizar a tradução de e para logaritmos. Eu acho que nos disseram na aula para ter cuidado com isso.

Um esforço considerável também foi gasto na construção de tabelas muito precisas. À mão, é claro, pelo menos até que as máquinas aritméticas mecânicas se tornem disponíveis. Segundo a wikipedia , apesar de um grande número de protótipos anteriores, o setor de calculadoras não começou antes de meados do século XIX.

Tudo isso começou com a invenção do logaritmo de John Napier no início do século XVII. Seu contato com o astrônomo Tycho Brahe, que na época estava mapeando com muita precisão o movimento dos corpos celestes (para que Kepler e Newton tivessem os dados do trabalho que os tornou famosos) e outras pessoas, talvez não fossem estranhos a ele. invenção desta ferramenta de computação mais notável.

O fato de que os logaritmos podem facilitar a multiplicação foi certamente um fator muito importante no desenvolvimento da ciência e da tecnologia por quase três séculos. Mas sem saber exatamente quem o usou e quando, não posso fazer uma declaração mais precisa.

babou
fonte