Calculele în Mathcad 12 precizie numerică
Precizia numerică în Mathcad este limitată la 17 de caractere după virgulă. Prin urmare, dacă în cursul de calcul al numărului va fi primit, mai puțin IO'17, aceasta va fi rotunjită până la zero. Limita superioară a calculelor numerice ale mașinii este infinit: I O307 Pentru a înțelege natura acestor limitări, vă rugăm să citiți cu atenție următorul subcheie.
2.3.2. Caracteristici de reprezentare a numerelor și aritmetica
Atunci când calculate numeric (spre deosebire de calcule simbolice) Mathcad utilizează pus în aplicare hardware aritmetică a instrumentelor informatice, în termeni de numere cu virgulă mobilă pe 64 de biți. Este de aici emană toate caracteristicile și limitările calcule numerice, care la prima vedere poate părea o consecință a imperfecțiunea programului.
În matematică, se crede că setul de numere este infinit. Acest lucru înseamnă că numărul acestora poate fi fie în mod arbitrar sau în mod arbitrar mici. Acesta poate fi format prin orice număr de cifre. Astfel, există fracțiuni infinite și nesfârșite transcendental constante (de exemplu, numărul sau numărul Tt e). în lumea reală, desigur, Ho toate. Chiar și universul are limite. memorie limitată și computer. Și fiecare cifră a numărului de biți necesari vydelitpeskolko, orice calculator contează cu precizie final.
Precizia calculelor este determinată de cât de multă memorie este alocată pentru stocarea fiecărui număr. În computerele moderne folosesc un format de 64-biți dublă precizie (un singur format de precizie, respectiv - 32 de biți). Acest lucru vă permite să codifica direct 2W = 18 446 744 073 709 551 616 numere întregi. Destul de un pic, nu-i așa? În practică, pentru a lucra în cazul în care un număr mare de valori numerice. Cum a făcut „chestii * într-o modestă pe 64 de biți toate numerele?
Decizia este complexitatea formatul descris de reprezentarea numerelor folosind punctul flotant. Ideea de bază este după cum urmează. Numărul este împărțit în două părți - o parte semnificativă (mantisei) și gradul. De exemplu, numărul 123 poate fi scris ca 1.23x102, numărul 123 LLC - cum 1.23x105, numărul 0123 - ambele 1.23xlO_J. În acest caz, numărul posibil de unul transmis pentru numere pe 64 de biți crește dramatic. Cu toate acestea, precizia reprezentării numerelor din aceasta nu crește - este întotdeauna egal cu numărul de ultimul semn al mantisei. Ho, deoarece suntem aproape întotdeauna interesați de rezultatele preciziei limitate (de multe ori doar până la a treia zecimală), modelul de numere reale cu virgulă este acceptabilă.
În general, numărul are formă sxmx21 „în care s - semn al numărului (1 bit), m - un număr întreg care specifică mantisa (procesoare Pentium sub ea alocat 52 de biți)
68 |> Capitolul 2. Calculele și tipurile de date
e - exponent (de obicei 10 biți). Să analizăm cifrele. În cazul în care o parte semnificativă a numărului poate fi determinată de 53 de biți, numărul de zecimale nu poate depăși 53xlg (2) „15. Acest lucru înseamnă că precizia calculului este limitat la 15 caractere ^ valide. Deci, a fost în toate versiunile Mathcad până la 12. Versiunea 12, probabil, în legătură cu trecerea la tehnologia .NET1 numere de lungime mantisei a crescut la 17 de caractere. Acest lucru înseamnă că, în cadrul alocate în prezent 55-56 biți mantisei la exponent, ca și mai înainte, se alocă 11 biți (acest lucru este ușor pentru a seta valoarea numărului maxim reprezentabile). Un total se dovedește 67-68 de numărul de biți. Ho posibil, dacă la nivelul hardware de un număr în virgulă flotantă este alocat doar 64 de biți? Probabil, mediu Net Framework în care se marchează Mathcad, alocă un număr diferit de biți mantisei, în funcție de amploarea numărului reprezentat. În cazul în care numărul nu este prea mare și nu prea mici (în valoare absolută), atunci faptul că descrie necesar gradul său este mult mai puțin de 11 biți. Prin urmare, o parte din biți pot fi date sub mantisei, ca și în 99% din cazuri, trebuie să lucreze în mod specific cu mediile, nu va fi o crimă să declare exactitatea 17 cifre de mantisa. Acesta nu va fi respectat numai dacă exponentul este mai mare decât (în valoare absolută) 20. În acest caz, precizia scade la 15-16 de caractere.
Astfel, precizia reprezentării numerelor este de obicei de 17 cifre mantisa. Dacă mantisa mai multe caractere, nu va fi de rotunjire:
Dacă numărul întreg este format cu mai mult de 17 cifre, de asemenea, este rotunjit la 17 cifre semnificative. Mantisă va fi scris ca o zecimală la numărul afișat în ordinea:
Rețineți că mantisa corespunde numărului inițial de numai până la 15 de caractere. Acest lucru se datorează probabil faptului că, în cazul unui astfel de ordin mare în mantisa este alocat doar 53 de biți.
În mod similar convertit și numere fractionare:
Ce exponent depus plutitoare numere de puncte au un număr limitat de biți înseamnă că este imposibil să se lucreze cu valori foarte mari sau foarte mici. Numărul maxim care poate fi utilizat în calcule, aparatul se numește infinit. Definiți-l, chiar și fără a recurge la directoare, este foarte simplu. Pe baza reprezentării principiilor descrise de numere reale cu virgulă este evident că ar trebui să aibă cea mai mare mantisa posibil înmulțită cu gradul maxim posibil. Reprezentarea binară a acestui număr este, partea reală a, care este format din 53 de unități, dar ordinea este de la 2 la 971. grad încerca să definească numărul de valoare zecimală:
Previous 34 35 36 37 38 39 225 Urmatorul >>