Balansirana trojka

S Vikipedije, slobodne enciklopedije

Balansirana trojka je nestandardni pozicioni numerički sistem (balansirana forma) korisna za poređenje logike. Dok je trojka (baza 3) numeričkog sistema, u standardnom (ne-balansiranom) trostrukom sistemu, cifre imaju vrednosti 0, 1 i 2. Cifre u balansiranom sistemu imaju vrednosti -1, 0 i 1.

Različiti izvori koriste različite "glipse" korišćene za predstavu tri cifre u balansiranoj trojci. U ovom članku, T (koje liči na ligaturu znaka minus i 1) predstavlja -1, dok 0 i 1 predstavljaju njih same. Druga konvencija uključuje korišćenje '−' i '+' da predstavi −1 i 1 respektivno, ili korišćenje grčkog slova teta (Θ), koji liči na znak minus u krugu, da predstavi -1. 

U Setun štampi, -1 predstavlja obrnuto 1: "1".[1]

Svojstva[uredi | uredi izvor]

U ranim danima računarstva, nekoliko eksperimentalnih sovjetski računara su izgrađeni sa balansiranim trojkama umesto binarima, najpoznatiji je Setun, kojeg je sagradio Nikolaj Brusentsov i Sergej Sobolev. Izraz ima niz prednosti u odnosu na redovne binarne. Naročito, plus-minus doslednost smanjuje stopu nosivosti u višim ciframa množenja, i zaokruživanje skraćivanja jednakosti smanjuje stopu za nošenje u sakupljanju na frakcijama. 

Balansirana trojka takođe ima broj računarskih prednosti preko tradicionalnih trojki. Praktično, jedna cifra table množenja nema prenos balansirane trojke i tabla sabiranja ima samo dva simetrična prenosa umesto tri.

Moguće korišćenje balansirane trojke je da predstavi ako je lista vrednosti manja od, jednaka ili veća od odgovarajuće vrednosti u drugoj listi.  Balansirana trojka može takođe da predstavi sve cele brojeve bez korišćenja odvojivog znaka minus; vrednost od vodećih ne- nula cifara niza ima znak samog broja.

Konverzija u decimale[uredi | uredi izvor]

U balansiranom sistemu trojke, vrednost cifre n mesta levo od radiks tačke je proizvod cifre i 3n. Ovo je korisno kada se vrši konverzija između decimala i balansirane trojke. Za primer:

10bal. 3 = 1×31 + 0×30 = 310
10Tbal. 3 = 1×32 + 0×31 + −1×30 = 810
−910 = −1×32 + 0×31 + 0×30 = T00bal. 3
810 = 1×32 + 0×31 + −1×30 = 10Tbal. 3

Slično, prvo mesto nadesno od radiks tačke nosi 3−1 = 1/3, drugo mesto desno od decimalnog mesta nosi 3−2 = 1/9, i tako dalje. Na primer

−2/310 = −1 + 1/3 = −1×30 + 1×3−1 = T.1bal. 3.
Dec. Bal. T. Ekspanzija Dec. Bal. T. Ekspanzija Dec. Bal.

 T.

Ekspanzija Dec. Bal. T. Ekspanzija Dec. Bal. T. Ekspanzija
−12 TT0 −9−3 −7 T1T −9+3−1 −2 T1 −3+1 3 10 +3 8 10T +9−1
−11 TT1 −9−3+1 −6 T10 −9+3 −1 T −1 4 11 +3+1 9 100 +9
−10 T0T −9−1 −5 T11 −9+3+1 0 0 0 5 1TT +9−3−1 10 101 +9+1
−9 T00 −9 −4 TT −3−1 1 1 +1 6 1T0 +9−3 11 11T +9+3−1
−8 T01 −9+1 −3 T0 −3 2 1T +3−1 7 1T1 +9−3+1 12 110 +9+3

Ceo broj je deljiv sa tri ako i samo ako je cifra u jediničnim mestima nula.

Možemo proveriti paritet uravnoteženog trostrukog celog broja proverom pariteta zbira svih trojki. Ova suma ima isti paritet kao sam ceo broj. 

Izbalansirana trojka može se produžiti na parcijalne brojeve na sličan način kako su decimalni brojevi pisani desno od radikalne tačke.[2]

Decimala −0.9 −0.8 −0.7 −0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Balansirana trojka T.010T T.1TT1 T.10T0 T.11TT 0.T or T.1 0.TT11 0.T010 0.T11T 0.0T01 0 0.010T 0.1TT1 0.10T0 0.11TT 0.1 or 1.T 1.TT11 1.T010 1.T11T 1.0T01

U decimalama ili binarima, vrednosti celog broja i završavanje frakcije imaju više predstava. Na primer, = 0.1 = 0.10 = 0.09. I, = 0.12 = 0.102 = 0.012. Neke balansirane trojke imaju takođe više predstava. Na primer, = 0.1Tbalansirana trojka = 0.01Balansirana trojka. Svakako, u decimalama i binarima, možemo izostaviti desne konce beskrajne 0s nakon radikalne tačke i steći predstavu celog broja ili ukidanja dela. Ali, u uravnoteženom trojkama, ne možemo izostaviti desne konce beskrajne -1S nakon radikalne tačke u cilju dobijanja predstave celog broja ili ukidanja dela. 

Donald Knut je istakao, da su skraćivanje i zaokruživanje iste operacije i balansiranim trojkama — one daju isti rezultat (osobine dele sa drugim balansiranim numeričkim sistemimas). Broj 1/2 nije izuzetak;ima dve jednako vredne predstave, i dva jednako validna skraćenja: 0.1 (oko 0, i skraćuje do 0) i1.T (oko 1, i skraćuje do 1).

Osnovne operacije—sabiranje, oduzimanje, množenje, i deljenje—se vrše kao u regularnim trojkama. Množenje sa 2 može se vršiti pomoću dodavanja broja na samog sebe.

Aritmetika promene ulevo od uravnoteženog trostrukog broja je ekvivalentna množenju sa stepenom tri (pozitivan, ceo broj) ; i aritmetika promene udesno na uravnotežen trostruki broj je ekvivalentna deljenju sa stepenom tri (pozitivan, ceo broj).

Konverzija do i od razlomka[uredi | uredi izvor]

Razlomak Balansirana trojka Razlomak Balansirana trojka
1/1 1 1/11 0.01T11
1/2 0.1 1.T 1/12 0.01T
1/3 0.1 1/13 0.01T
1/4 0.1T 1/14 0.01T0T1
1/5 0.1TT1 1/15 0.01TT1
1/6 0.01 0.1T 1/16 0.01TT
1/7 0.0110TT 1/17 0.01TTT10T0T111T01
1/8 0.01 1/18 0.001 0.01T
1/9 0.01 1/19 0.00111T10100TTT1T0T
1/10 0.010T 1/20 0.0011

Konverzija ponavljanja balansirane trojke broja u razlomak je slična pretvaranju ponavljanja decimala. Na primer: 

Iracionalni brojevi[uredi | uredi izvor]

Kao i u svakoj drugoj bazi celih brojeva, algebarski iracionalni i transcendentni brojevi se ne prekidaju ili ponavljaju. Na primer: 

Konverzija od trojke[uredi | uredi izvor]

Nebalansirana trojka može biti novertovana u balansiranu trojku na dva načina:

  • Dodati 1 trojku po trojku iz prve ne-nula trojke, a zatim oduzmite 1 trojku po trojku iz iste trojke bez zaduživanja. Na primer,
0213 + 113 = 1023, 1023 − 113 = 1T1bal. 3 = 710.
  • Ako 2 predstavlja trojku, vratite je na 1. Na primer,
02123 = 0010bal. 3 + 1T00bal. 3 + 001Tbal. 3 = 10TTbal. 3 = 2310
balansirano logično neoznačeno
1 Tačno 2
0 Nepoznato 1
T Netačno 0

Ako tri vrednosti logike trojke su netačne, nepoznate i tačne, i one su označene na balansirane trojke kao T, 0 i 1 i na konvencionalne vrednosti trojki bez znaka kao 0, 1 i 2 , onda balansirana trojka može biti viđena kao sistem broja analogno binarnom sistemu. Ako broj trojke ima  trojki, onda nagib  je  koji je zastupljen kao svi oni u bilo konvencionalnim ili pristrasnim oblicima.[3]

Kao rezultat, ako su ove dve predstave korišćene za balansirane i ne označene trostruke brojeve, ne-označena -ta pozitivna vrednost trojke može biti konvertovana na balansiranu formu dodavanjem  i balansirani pozitivni broj može biti konvertovan na neoznačenu formu pomoću oduzimanja pristrasnosti . Dalje, ako  i  su balansirani brojevi, njihova balansirana suma je  kada izračunava korišćenjem konvencionalne nepotpisane trostruke aritmetike. Slično , ako  i  su konvencionalni neoznačeni trostruki brojevi, njihova suma je  kada se obračunava na osnovu uravnotežene trostruke aritmetike.

Konverzija na balansiranu trojku od bilo koje baze celih brojeva[uredi | uredi izvor]

Možemo pretvoriti u balansiranu trojku sa sledećom formulom:

gde,

je originalna predstava u numeričkom sistemu.
b je originalni radikal. b je 10 ako se konvertuje iz decimale.
i su cifre k mesta za levo i desno od radikalne tačke respektivno.

Na primer,

           -25.410 = -(1T×1011+1TT×1010+11*101−1)
                  = -(1T×101+1TT+11÷101)
                  = -10T1.11TT
                  = T01T.TT11
            1010.12=1T100+1T1+1T−1
                   = 10T+1T+0.1
                   = 101.1

Sabiranje, oduzimanje, množenje i deljenje[uredi | uredi izvor]

U pojedinačnom sabiranju, oduzimanju, množenju i deljenju trojki, tabele su prikazane u nastavku. Za oduzimanje i deljenje, koje nisu komutativne, prvi operand se daje sa leve strane stola, a drugi je dat na vrhu. Na primer, odgovor na 1-T = 1T se nalazi u donjem levom uglu oduzimanja tabele. 

class="wikitable" style="width: 8em; text-align: center;"
Sabiranje
+ T 0 1
T T1 T 0
0 T 0 1
1 0 1 1T

| {| class="wikitable" style="width: 8em; text-align: center;"

|+ Одузимање

! − 

! T ! 0 ! 1

|-
! T
| 0 

| T | T1

|-
! 0
| 1 

| 0 | T

|-
! 1
| 1T 

| 1 | 0

|}

| {| class="wikitable" style="width: 8em; text-align: center;"

|+ Множење

! × 

! T ! 0 ! 1

|-
! T 
| 1 

| 0 | T

|-
! 0 
| 0 

| 0 | 0

|-
! 1 
| T 

| 0 | 1

|}

| {| class="wikitable" style="width: 8em; text-align: center;"

|+ Дељење

! ÷ 

! T ! 0 ! 1

|-
! T
| 1 

| NaN | T

|-
! 0
|  0 

| NaN | 0

|-
! 1
| T 

| NaN | 1

|}

|}

Sabiranje i oduzimanje više trojki[uredi | uredi izvor]

Sabiranje i oduzimanje više trojki je analogno onom binarnom i decimalnom. Dodavanje i oduzimanje trojke po trojke, i dodavanje odgovarajućeg načina za nastavak. Na primer: 

           1TT1TT.1TT1              1TT1TT.1TT1            1TT1TT.1TT1          1TT1TT.1TT1
         +   11T1.T                -  11T1.T              -  11T1.T    ->      +  TT1T.1
        --------------          --------------                               ---------------
           1T0T10.0TT1              1T1001.TTT1                                 1T1001.TTT1
         +   1T                   +  T  T                                   +   T  T
         --------------         ----------------                             ----------------
           1T1110.0TT1              1110TT.TTT1                                 1110TT.TTT1
         +   T                    + T   1                                     + T   1
         --------------         ----------------                             ----------------
           1T0110.0TT1               1100T.TTT1                                  1100T.TTT1

Množenje  više trojki[uredi | uredi izvor]

Množenje više trojki je analogno onom u decimalnom i binarnom.

       1TT1.TT
   ×   T11T.1
   -------------
        1TT.1TT помножити 1
       T11T.11  помножити  T
      1TT1T.T   помножити  1
     1TT1TT     помножити  1
    T11T11      помножити  T
   -------------
    0T0000T.10T

Deljenje više trojki[uredi | uredi izvor]

Uravnoteženo deljenje trojki je analogno decimalama ili binarnim podelama.

Kako je, 0.510 = 0.1111...bal. 3 or 1.TTTT...bal. 3. Ako je dividenda nad plusom ili minusom pola delioca, trojka na količniku mora biti 1 ili T. Ako je dividenda između plusa i minusa od pola delioca, trojka količnika je 0. Magnituda dividende mora biti upoređena sa onom polovinom delioca pre postavljanja količnika trojke. Na primer,

                         1TT1.TT      количник
0.5 × делилац  T01.0 -------------                
      делилац T11T.1 ) T0000T.10T     дивиденда             
                      T11T1                        T000<T010, поставити 1
                     -------
                       1T1T0
                       1TT1T                      1T1T0>10T0, поставити T 
                      -------
                         111T
                        1TT1T                      1110>10T0, поставити T
                       -------
                          T00.1
                         T11T.1                    T001<T010, поставити 1
                        --------
                          1T1.00
                          1TT.1T                  1T100>10T0, поставити T
                         --------
                           1T.T1T
                           1T.T1T                 1TT1T>10T0, поставити T
                          --------
                                0

Sledeći primer

                           1TTT
       0.5 × делилац 1T  -------
            делилац  11  )1T01T                   1T=1T, but 1T.01>1T, поставити 1
                          11
                         -----
                          T10                    T10<T1, поставити T
                           TT
                         ------
                           T11                   T11<T1, поставити T
                            TT
                          ------
                             TT                   TT<T1, поставити T
                             TT
                            ----
                              0

Sledeći primer

                           101.TTTTTTTTT… 
                        or 100.111111111… 
       0.5 × делилац 1T  -----------------
            делилац  11  )111T                    11>1T, поставити 1
                          11
                         -----
                            1                     T1<1<1T, поставити 0
                           ---
                            1T                    1T=1T, крај тројки, поставити 1.TTTTTTTTT… или 0.111111111…

Kvadratni i kubni koren[uredi | uredi izvor]

Proces ekstrakcije kvadratnih korena u uravnoteženim trojkama je analogan onom u decimalama ili binarima.

Kao što je u deljenju, trebalo bi prvo proveriti vrednost od pola delioca. Na primer, 

                             1. 1 1 T 1 T T 0 0 ...
                           -------------------------
                          √ 1T                          1<1T<11, поставити 1
                           - 1
                            -----
                  1×10=10    1.0T                       1.0T>0.10, поставити 1
                      1T0   -1.T0
                            --------
                  11×10=110    1T0T                     1T0T>110, поставити 1
                       10T0   -10T0
                              --------
                 111×10=1110    T1T0T                   T1T0T<TTT0, поставити T
                       100T0   -T0010
                               ---------
                111T×10=111T0    1TTT0T                 1TTT0T>111T0, поставити 1
                       10T110   -10T110
                                ----------
               111T1×10=111T10    TT1TT0T               TT1TT0T<TTT1T0, поставити T
                       100TTT0   -T001110
                                 -----------
              111T1T×10=111T1T0    T001TT0T             T001TT0T<TTT1T10, поставити T
                       10T11110   -T01TTTT0
                                  ------------
               111T1TT×10=111T1TT0    T001T0T           TTT1T110<T001T0T<111T1TT0, поставити 0
                                     -      T           Return 1
                                     -----------
             111T1TT0×10=111T1TT00    T001T000T         TTT1T1100<T001T000T<111T1TT00, поставити 0
                                     -        T         Враћа 1
                                     -------------
           111T1TT00*10=111T1TT000    T001T00000T
                                              ...

Ekstrakcija kubnog korena u izbalansiranim trojkama je slično analogna ekstrakcijama u decimalama ili binarnima:

Kao deljenje, trebalo bi da proverite prvo vrednost od pola delioca. Na primer: 

                              1.  1   T  1  0...
                           3---------------------
                           √ 1T
                            - 1                 1<1T<10T, поставити  1
                            -------
                              1.000
              1×100=100      -0.100             позајмљује 100×, врши дељење
                             -------
                      1TT     1.T00             1T00>1TT, поставити  1
          1×1×1000+1=1001    -1.001
                             ----------
                                T0T000
            11×100            -   1100           позајмљује 100×,  врши дељење
                              ---------
                     10T000     TT1T00           TT1T00<T01000, поставити T
       11×11×1000+1=1TT1001   -T11T00T
                              ------------
                                1TTT01000
           11T×100             -    11T00        позајмљује 100×,  врши дељење
                               -----------
                   1T1T01TT     1TTTT0100        1TTTT0100>1T1T01TT, поставити 1
    11T×11T×1000+1=11111001    - 11111001
                               --------------
                                    1T10T000
          11T1×100                 -  11T100      позајмљује  100×,  врши дељење
                                   ----------
                      10T0T01TT     1T0T0T00      T01010T11<1T0T0T00<10T0T01TT, поставити 0
    11T1×11T1×1000+1=1TT1T11001    -  TT1T00      return 100×
                                   -------------
                                    1T10T000000
                                         ...

Stoga 3√2 = 1.25992110 = 1.1T1 000 111 001 T01 00T 1T1 T10 111bal. 3.

Ostale aplikacije[uredi | uredi izvor]

Uravnotežena trojka ima druge aplikacije osim računarskih. Na primer, klasična vaga sa dva tasa, sa jednom težinom za svaki stepen 3, može meriti relativno teške predmete precizno sa malim brojem tasa, pomeranjem težine između dva tasa i tabeli. Na primer, sa težinama za svaki stepen 3 do 81, 60-gramski objekat (6010 = 1T1T0bal. 3) će balansirati savršeno sa 81 gramskom težinom na drugom tasu, 27 gramski na svom tasu, 9 gramski na drugom tasu, 3 gramski na svom tasu i 1 gramski smešten van.

Slično, razmotriti sistem valuta sa kovanicama u vrednostima  1¤, 3¤, 9¤, 27¤, 81¤. Ako kupac i prodavac, svaki ima samo jednu od svake vrste novčića, svaka transakcija do 121¤ je moguća. Na primere, ako je cena 7¤ (710 = 1T1bal. 3), kupac plaća 1¤ + 9¤ i dobija 3¤ u zameni.

Vidi još[uredi | uredi izvor]

Reference[uredi | uredi izvor]

  1. ^ N.A.Krinitsky, G.A.Mironov, G.D.Frolov (1963).  Nedostaje ili je prazan parametar |title= (pomoć)
  2. ^ Bhattacharjee, Abhijit (24 July 2006).
  3. ^ Douglas W. Jones, Ternary Number Systems, Oct 15, 2013.

Literatura[uredi | uredi izvor]

Spoljašnje veze[uredi | uredi izvor]