Sistem de numere logaritmice

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 31 decembrie 2019; verificarea necesită 1 editare .

Sistemul de numere logaritmice (LNS) este un sistem aritmetic folosit uneori pentru a reprezenta numere reale în computere și hardware digital , în special în procesarea semnalului digital .

Teorie

În LNS, un număr este reprezentat prin logaritm , după cum urmează:

unde este valoarea sa absolută; semn care denotă ( dacă și dacă ).

Această formulare simplifică operațiile de înmulțire, împărțire și exponențiere, deoarece acestea sunt reduse la adunare, scădere, înmulțire și, respectiv, împărțire. Pe de altă parte, operațiile de adunare și scădere în această formă de notație se dovedesc a fi mai complexe și sunt calculate folosind formulele:

unde este diferența dintre logaritmii operanzilor, funcția „sumă” și funcția „diferență” . Aceste funcții și , prezentate în figura din dreapta, sunt cunoscute și ca logaritmi gaussieni. Simplificarea înmulțirii, împărțirii, înrădăcinării și exponențiației este compensată de dificultatea evaluării acestor funcții pentru adunare și scădere. Acest cost suplimentar de evaluare poate fi neglijabil atunci când se utilizează LNS în primul rând pentru a îmbunătăți acuratețea operațiunilor în virgulă mobilă.

Istorie

Sistemul de numere logaritmice a fost inventat și publicat independent de cel puțin trei ori, ca alternativă la sistemele de numere în virgulă fixă ​​și mobilă [1] .

Kingsbury și Rayner au introdus „aritmetica logaritmică” pentru procesarea semnalului digital în 1971. [2]

Un LNS similar a fost descris în 1975 de către Schwarzländer și Alehopoulos. [3]

Lee și Edgar au descris un sistem de numere similar, pe care l-au numit „Focus”, în 1977 [4]

Fundamentele matematice pentru adunare și scădere în LNS se întorc la Carl Friedrich Gauss și Z. Leonelli [5] [6] .

Aplicație

LNS a fost folosit în Gravity Pipe (GRAPE), un supercomputer dedicat [7] care a câștigat premiul Gordon Bell în 1999.

LNS este utilizat în mod obișnuit ca parte a modelelor markov ascunse, cum ar fi algoritmul Viterbi pentru recunoașterea vorbirii și secvențierea ADN- ului .

Eforturi semnificative în cercetarea aplicabilității LNS ca alternativă viabilă la sistemele cu virgulă mobilă de uz general pentru manipularea numerelor reale cu precizie unică sunt descrise în contextul „ microprocesorului logaritmic european ” (ELM). [8] Este prezentat un prototip de procesor pe 32 de biți care rulează în LNS. Îmbunătățirea ulterioară a LNS bazată pe arhitectura ELM a arătat din nou o viteză de calcul semnificativ mai bună și o precizie mai mare decât calculele cu virgulă mobilă. [9]

LNS este uneori folosit în aplicațiile FPGA  unde majoritatea operațiilor aritmetice sunt înmulțirea și împărțirea . [zece]

Note

  1. S.C. Lee și A.D. Edgar. Addendum la „The Focus Number System”  // Tranzacții  IEEE pe computere : jurnal. - 1979. - Septembrie ( vol. C-28 , nr. 9 ). — P. 693 . - doi : 10.1109/TC.1979.1675442 .
  2. NG Kingsbury și PJW Rayner. Filtrare digitală folosind aritmetică logaritmică   // Electronics Letters : jurnal. - 1971. - 28 ianuarie ( vol. 7 ). — P. 55 .
  3. EE Swartzlander și AG Alexopoulos. Sistemul de numere de semne/logaritm  //  Tranzacții IEEE pe computere : jurnal. - 1975. - Decembrie ( vol. C-24 , nr. 12 ). - P. 1238-1242 . - doi : 10.1109/TC.1975.224172 .
  4. S.C. Lee și A.D. Edgar. Sistemul de număr de focalizare  // Tranzacții IEEE pe  computere : jurnal. - 1977. - Noiembrie ( vol. C-26 , nr. 11 ). - P. 1167-1170 . - doi : 10.1109/TC.1977.1674770 .
  5. Logaritm: adunare și scădere, sau logaritmi gaussieni (downlink) . Encyclopædia Britannica Ediția a unsprezecea . Data accesului: 18 ianuarie 2013. Arhivat din original la 29 ianuarie 2013. 
  6. G. Waldo Dunnington. Carl Friedrich Gauss  (neopr.) . - MAA, 2002. - ISBN 0-88385-547-X .
  7. J Makino și M. Taiji. Simulări științifice cu calculatoare cu destinație specială : sistemele GRAPE  . - Wiley, 1998. - ISBN 978-0-471-96946-4 .
  8. JN Coleman, C.I. Softley, J. Kadlec, R. Matousek, M. Tichy, Z. Pohl, A. Hermanek și N.F. Benschop. Microprocesorul logaritmic european  //  Tranzacții IEEE pe computere : jurnal. - 2008. - Aprilie ( vol. 57 , nr. 4 ). - P. 532-546 . - doi : 10.1109/TC.2007.70791 .
  9. R. C. Ismail și J. N. Coleman. LNS fără ROM  (neopr.)  // 2011 20th IEEE Symposium on Computer Arithmetic (ARITH). - 2011. - iulie. - S. 43-51 . - doi : 10.1109/ARITH.2011.15 .
  10. Haohuan Fu, Oskar Mencer, Wayne Luk. Comparing Floating-point and Logarithmic Number Representations for Reconfigurable Acceleration  //  IEEE Conference on Field Programmable Technology : journal. - 2006. - Decembrie. - P. 337 . - doi : 10.1109/FPT.2006.270342 .

Link -uri