Hvordan regner en lommeregner?Dette interessante spørgsmål har mange sikkert stillet sig selv. Spørger
man lommeregnerfabrikanterne: Texas Instruments, Casio, Hewlett Packard ... får
man sandsynligvis ikke megen respons. Da jeg selv skrev til Texas Instruments
var de dog så elskværdige overhovedet at svare mig, men svaret var altså:
"Oplysninger af den slags, som de har bedt om, udleverer Texas Instruments
ikke. Firmaet vurderer, at det hører ind under fabrikshemmeligheder og
udleveres derfor ikke af sikkerhedsmæssige årsager. Tak for Deres henvendelse,
Vi håber, at Texas Instruments en anden gang kan være behjælpelig med
oplysninger".
I en tidligere artikel af David S. Cochran fra 1972 fortælles det, at man
under udviklingen af HP-35 spekulerede meget over hvilke algoritmer man skulle
gøre brug af. Man overvejede potensrækker, polynomieudviklinger,
kædebrøker og Chebyshev polynomier. Alle viste sig dog at
være for langsomme på grund af antallet af multiplikationer og divisioner. Det
viste sig, at den bedst egnede algoritme til HP-35 var én, som bygger på en
idé beskrevet af Henry Briggs i "Arithmetica
Logarithmica" og senere er behandlet i artikler af Volder (sept.
1959) og Meggitt (april 1962). SA-talMultiplikation med visse tal er dog særligt nemt at udføre. Ganger man for eksempel et tal, for eksempel 28,317, med 1,01, så kan regnestykket klares med et skift og en addition. Med skift menes en kommaflytning. Det nederste eksempel viser tilsvarende, hvor nemt det er at gange med 0,999. Alle disse nemme multiplikatorer vil vi kalde SA-tal (S for Skift, A for Addition). Der er tale om: 2; 1,1; 1,01; 1,001; 1,0001; . . . . samt 0,9; 0,99; 0,999; . . . En algoritme for logaritmefunktionenHenry Briggs gyldne idé for mere end 300 år siden bestod i at tage det tal,
som han ønskede at bestemme logaritmen til, og foretage nogle operationer
herpå indtil han kom til et andet tal tæt på 1, for hvilket han nemt kunne
bestemme logaritmen. Udfra kendskabet til operationerne kunne han via
regnereglerne for logaritmefunktionen regne baglæns og få logaritmen til det
oprindelige tal. Som bekendt er alle logaritmer proportionale. Sammenhængen mellem den
naturlige logaritme og titalslogaritmen er: log(x) = ln(x)/ln(10) = (0,4342945...) · ln(x). Opgave: Bestem log(370,45) med 5 decimaler. Løsning: Flyt kommaet, så argumentet tilhører det lukkede interval fra 0,1 til 1: 0,37045. Multiplicér herefter med SA-tal: 2; 1,1; 1,01; 1,001; ... Man starter fra venstre, dvs ganger med k1 = 2. Det giver 0,74090. En yderligere multiplikation med 2 giver et tal, som er større end 1. Det droppes derfor. I stedet ganger man med næste SA-tal, k2 = 1,1 og får 0,81499. Man kan gange med 1,1 yderligere to gange, før man får et tal, som er større end 1. Derefter fortsættes med k3 = 1,01 osv. Når tallet er tilstrækkeligt tæt på 1, standser man.
I dette tilfælde er x = 0,997992 tæt nok på 1. Derfor kan ln(x) tilnærmes med x -1. Nedenstående regning viser, hvordan man "kommer tilbage til" logaritmen til det oprindelige tal. For at få titalslogaritmen til 370,45 foretages følgende regninger: Vi har overfor antaget, at lommeregneren regner med 7 cifre. Afrundet til 5 decimaler er resultatet 2,56873, hvilket er fuldt ud korrekt.
LitteraturPoul Wulff Pedersen. Approksimation. Akademisk forlag, 1979. RegneredskaberEn helt fantastisk hjemmeside om gamle regneredskaber: Gamle lommeregnere, regnestokke, gamle additionsmaskiner, planimetre m.m. kan ses på hp-museum. |