Sistemul de numere poziționale ( numerare pozițională, locală ) este un sistem de numere în care valoarea fiecărui caracter numeric ( cifră ) dintr- o intrare numerică depinde de poziția sa ( cifra ) față de separatorul zecimal . Sistemele poziționale, în comparație cu altele, fac posibilă simplificarea semnificativă a algoritmilor pentru efectuarea operațiilor aritmetice și accelerarea calculelor. Crearea și distribuția lor a jucat un rol important în dezvoltarea științelor exacte - matematică , astronomie și fizică .
Sisteme numerice în cultură | |
---|---|
indo-arabă | |
arabă tamilă birmană |
Khmer Lao Mongolian Thai |
Est asiatic | |
Chineză Japoneză Suzhou Coreeană |
Bețe de numărat vietnameze |
Alfabetic | |
Abjadia armeană Aryabhata greacă chirilică |
Akshara Sankhya , evreică etiopiană georgiană |
Alte | |
babilonian egiptean etrusc roman danubian |
Attic Kipu Mayan Aegean KPPU Simboluri |
pozițional | |
2 , 3 , 4 , 5 , 6 , 8 , 10 , 12 , 16 , 20 , 60 | |
Nega-pozițional | |
simetric | |
sisteme mixte | |
Fibonacci | |
nepozițională | |
Singular (unar) |
Din punct de vedere istoric, prima invenție a numerotării poziționale bazată pe semnificația locală a numerelor este atribuită sumerienilor și babilonienilor . Indiferent de civilizațiile eurasiatice , sistemul numeric pozițional vigesimal a fost inventat de indienii Maya . Într-o perioadă ulterioară, o astfel de numerotare a fost dezvoltată de hinduși și a avut consecințe inestimabile în istoria civilizației . Aceste sisteme includ sistemul numeric zecimal , a cărui apariție este asociată cu numărarea pe degete . În Europa medievală, a apărut prin negustorii italieni, care la rândul lor l-au împrumutat de la arabi.
Sistemul numeric pozițional este definit de un număr întreg , numit baza sistemului numeric. Un sistem numeric cu o bază se mai numește și -ary (în special, binar , ternar , zecimal etc.).
Un întreg fără semn în sistemul de numere -ari este reprezentat ca o combinație liniară finită de puteri ale numărului [1] :
, unde sunt numere întregi, numite cifre , care satisfac inegalitateaFiecare element de bază dintr-o astfel de reprezentare se numește cifră ( poziția ), vechimea cifrelor și a cifrelor corespunzătoare acestora este determinată de numărul cifrei (poziția) (valoarea exponentului).
Folosind pozițiile din sistemul numeric -ary, puteți scrie numere întregi în intervalul de la , adică toate numerele diferite.
Dacă nu există discrepanțe (de exemplu, atunci când toate cifrele sunt prezentate sub formă de caractere scrise unice), numărul este scris ca o secvență a cifrelor sale, enumerate în ordinea descrescătoare a priorității cifrelor de la stânga la dreapta [1 ] :
În numerele diferite de zero , zerourile de început sunt de obicei omise.
Pentru a scrie numere în sisteme numerice cu baza de până la 36 inclusiv, cifre arabe (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) și, apoi, litere ale alfabetului latin (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z). În acest caz, a = 10, b = 11 etc., uneori x = 10.
Când lucrați cu mai multe sisteme numerice în același timp, pentru a le distinge, baza sistemului este de obicei indicată ca un indice, care este scris în sistemul zecimal:
este numărul 123 în notație zecimală ; - același număr în sistemul de numere octale ; - același număr, dar în sistem binar ; - același număr, dar în sistemul numeric zecimal cu codificare binară a cifrelor zecimale ( BCD ); - același număr, dar într-un sistem numeric ternar asimetric ; - același număr, dar în sistemul numeric ternar simetric , semnele „i”, „7”, „2” și „−” indică „−1”, semnele „1” și „+” indică „+1” .În unele zone speciale, se aplică reguli speciale pentru specificarea bazei. De exemplu, în programare, sistemul hexazecimal este notat cu:
În unele dialecte ale limbii C, prin analogie cu „0x”, prefixul „0b” este folosit pentru a desemna numere binare (notația „0b” nu este inclusă în standardul ANSI C ).
În conturile rusești , pentru a scrie numere în sistemul de numere pozițional exponențial zecimal, sistemul de înregistrare (reprezentare) zecimal unar pentru cifre zecimale este utilizat cu o cifră zecimală unară în exces "1111111111" = 10_ 10 pentru fiecare cifră.
Sistemul de numere poziționale are o serie de proprietăți:
În tehnologia digitală , sistemul de numere de bază este implementat de registre , constând din seturi de flip- flops , fiecare dintre acestea putând lua diferite stări care codifică cifrele unui număr. În același timp, economia sistemului de numere este de o importanță deosebită - capacitatea de a reprezenta cât mai multe numere posibil folosind cel mai mic număr total posibil de caractere. [1] Dacă numărul de declanșatoare este , atunci numărul total de caractere este , iar numărul de numere pe care le reprezintă, respectiv, este . În funcție de , această expresie atinge maximul la un număr egal e = 2,718281828… . [3] Pentru valori întregi, maximul este atins pentru . Astfel, cel mai economic este sistemul numeric ternar (utilizat în calculatoarele ternare ), urmat de sistemul binar (utilizat în mod tradițional în majoritatea calculatoarelor obișnuite) și cuaternar.
Eficiența sistemului de numere este o circumstanță importantă din punctul de vedere al utilizării lui într-un computer. Prin urmare, deși utilizarea unui sistem ternar în locul unuia binar într-un computer implică unele dificultăți de proiectare (în acest caz, este necesar să se utilizeze elemente, fiecare dintre acestea putând fi în nu două, ci trei stări stabile), acest sistem a fost deja folosit [4] în unele dispozitive de calcul din viața reală. [unu]S. V. Fomin
O descriere echivalentă a economiei sistemului numeric poate fi obținută folosind conceptul de entropie informațională . Sub condiția echiprobabilității apariției fiecăreia dintre cifrele din înregistrarea numărului, entropia informațională a înregistrării unui număr de n biți în sistemul numeric cu baza b ia o valoare (până la un coeficient constant ). Prin urmare, densitatea de înregistrare (adică cantitatea de informații pe bit) a numerelor din sistemul numeric cu baza b este egală cu , care ia, de asemenea, o valoare maximă la b = e , iar pentru valorile întregi ale b - la b = 3.
Dacă un număr întreg în sistemul de numere -ari este egal cu
apoi pentru a converti în sistemul zecimal, calculăm următoarea sumă : [5]
sau ca diagrama lui Horner :
De exemplu:
Acțiuni similare au loc și pentru partea fracțională :
Notă . Uneori, la traducerea unui număr rațional fracționar dintr-un sistem zecimal folosind astfel de algoritmi, se poate obține o fracție periodică infinită: de exemplu, . Pentru a găsi perioada, trebuie să efectuați iterațiile descrise în primul paragraf și să înțelegeți dacă se întâlnește aceeași parte fracțională așa cum a fost cu mai multe iterații în urmă [7] . (Fracțiile regulate din diferite sisteme de numere sunt scrise mai jos .)
ExempleSă convertim în binar:
44 împărțit la 2. cât 22, rest 0 22 împărțit la 2. câtul 11, restul 0 11 împărțit la 2. câtul 5, restul 1 5 împărțit la 2. cât 2, rest 1 2 împărțit la 2. cât 1, rest 0 1 împărțit la 2. cât 0, rest 1Coeficientul este zero - împărțirea s-a încheiat. Acum, scriind toate resturile de jos în sus, obținem numărul
Pentru partea fracționată, algoritmul arată astfel:
Înmulțiți 0,625 cu 2. Partea fracțională este 0,250. întreaga parte 1. Înmulțiți 0,250 cu 2. Partea fracțională este 0,500. Partea întreagă 0. Înmulțiți 0,500 cu 2. Partea fracțională este 0,000. întreaga parte 1.În acest fel,
Există un algoritm simplificat pentru acest tip de operație. [opt]
Toată partePentru octal, împărțim numărul tradus într-un număr de cifre egal cu puterea lui 2 (2 este ridicat la puterea necesară pentru a obține baza sistemului în care doriți să traduceți (2³ \u003d 8), în acest caz 3, adică triade). Să transformăm triadele conform tabelului de triade:
000 - 0; 100 - 4; 001 - 1; 101 - 5; 010 - 2; 110 - 6; 011 - 3; 111-7.Pentru hexazecimal, împărțim numărul tradus într-un număr de cifre egal cu puterea lui 2 (2 este ridicat la puterea necesară pentru a obține baza sistemului în care doriți să traduceți (2 4 \u003d 16), în acest caz 4, adică tetrade). Să convertim tetradele conform tabelului de tetrade:
0000 - 0; 0100 - 4; 1000 - 8; 1100 - C; 0001 - 1; 0101 - 5; 1001 - 9; 1101 - D; 0010 - 2; 0110 - 6; 1010 - A; 1110 - E; 0011 - 3; 0111 - 7; 1011 - B; 1111-F.Exemplu:
converti 101100 2 octal - 101 100 → 54 8 hexazecimal - 0010 1100 → 2C 16 Parte fracționalăConversia părții fracționale din sistemul de numere binar în sistemele de numere cu bazele 8 și 16 se realizează exact în același mod ca și pentru părțile întregi ale numărului, cu singura excepție că defalcarea în octave și tetrade merge la la dreapta punctului zecimal, cifrele lipsă sunt completate cu zerouri la dreapta. De exemplu, numărul 1100.011 2 discutat mai sus ar arăta ca 14,3 8 sau C.6 16 .
Pentru acest tip de operație, există și un algoritm simplificat, inversul algoritmului de mai sus .
Pentru octal, convertim conform tabelului în triplete:
0 000 4 100 1001 5101 2010 6 110 3011 7111Pentru hexazecimal, convertim conform tabelului în cvartete:
0 0000 4 0100 8 1000 C 1100 1 0001 5 0101 9 1001 D 1101 2 0010 6 0110 A 1010 E 1110 3 0011 7 0111 B 1011 F 1111Exemplu:
transforma 54 8 → 101 100 2 2C 16 → 0010 1100 2Un număr rațional în sistemul de numere -ari este reprezentat ca o combinație liniară (în general, infinită) a puterilor numărului :
unde - cifre ale părții întregi (înainte de separator ), - cifre ale părții fracționale (după separator), - numărul de cifre ale părții întregi.
Numai numerele raționale care pot fi reprezentate sub forma , unde și sunt numere întregi, adică acelea care, după înmulțirea cu baza într-un număr finit de iterații, pot obține un întreg pot avea o notație finită în sistemul numeric -ary :
unde și sunt intrări -are, respectiv , ale coeficientului și restului împărțirii la .
Numerele raționale care nu pot fi reprezentate în formă sunt scrise ca fracții periodice .
Sistemele numerice de bază simetrice (echilibrate, cu cifre de semn) diferă prin faptul că folosesc numere nu din mulțime , ci din setul în care, aproximativ vorbind, toate numerele sunt „reflectate” în raport cu zero. Pentru ca numerele să fie numere întregi, acestea trebuie să fie impare. În sistemele numerice simetrice, nu este necesară nicio notație suplimentară pentru semnul numărului. [9] În plus, calculele în sisteme simetrice sunt convenabile, deoarece nu sunt necesare reguli speciale de rotunjire - rotunjirea la cel mai apropiat număr întreg se reduce la pur și simplu eliminarea biților suplimentari, ceea ce reduce drastic erorile sistematice în calcule.
Cel mai des folosit este sistemul numeric ternar simetric . Este folosit în logica ternară și a fost implementat tehnic în computerul Setun .
Există sisteme poziționale cu baze negative numite nonpoziționale :
Uneori sunt luate în considerare și sistemele de numere poziționale cu baze neîntregi: rațional , irațional , transcendental .
Exemple de astfel de sisteme numerice sunt:
Bazele sistemelor de numere poziționale pot fi, de asemenea, numere complexe [11] [12] . În același timp, numerele din ele iau valori dintr-o mulțime finită care îndeplinește condițiile care vă permit să efectuați operații aritmetice direct cu reprezentările numerelor din aceste sisteme numerice.
În special, dintre sistemele de numere poziționale cu baze complexe se pot distinge cele binare, în care sunt folosite doar două cifre 0 și 1.
ExempleÎn continuare, vom scrie sistemul numeric pozițional în următoarea formă , unde este baza sistemului numeric și A este mulțimea de cifre. În special, setul A poate arăta astfel:
Exemple de sisteme de numere cu baze complexe sunt (denumite în continuare j - unitate imaginară ):
Următoarele sunt bazele sistemelor binare de numere poziționale și reprezentările numerelor 2, −2 și −1 în ele:
Sistemele de numere exponențiale sunt un caz special de sisteme de numere poziționale cu dependență exponențială . În loc de dependență exponențială, pot exista și alte dependențe. De exemplu, sistemul numeric pozițional hiperoperator
vă permite să scrieți intervale mai mari de numere cu același număr de caractere.
Dicționare și enciclopedii |
---|