Det ternære (eller trinære ) systemet er tallsystemet som bruker basen tre . De tallene ternære er kjent Som Trit ( tr inary grave den ), som er analoge med bit .
Uttrykkene "ternary" og "trinaire" er begge lånt fra den nederste latinske trinarius "som inneholder nummer tre, ternary".
Trefoldig dukket senere enn XIV th århundre , ble mye brukt opp vår tid og integrert i ordboken av den franske akademiet i 1718.
Trinaire har blitt brukt som et synonym for ternary siden minst 1830, nyter ikke så bred anerkjennelse, bare i noen få ordbøker. Det er også til stede med lignende bruk på andre språk som engelsk med ternary og trinary .
Disse to begrepene er derfor akseptable, selv om ternære fordeler med større diffusjon.
Tallene som brukes i det ternære systemet er av tre typer, 0, 1 og 2. Tre er skrevet som "10." Derfor er fire "11" og ni er "100".
Binær | 0 | 1 | 10 | 11 | 100 | 101 | 110 | 111 | 1000 | 1001 | 1010 | 1011 | 1100 | 10.000 | 10010 | 10101 | 11011 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ternær | 0 | 1 | 2 | 10 | 11 | 12 | 20 | 21 | 22 | 100 | 101 | 102 | 110 | 121 | 200 | 210 | 1000 |
Senaire | 0 | 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 1. 3 | 14 | 15 | 20 | 24 | 30 | 33 | 43 |
Desimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 16 | 18 | 21 | 27 |
Binær | 100.000 | 100 100 | 110110 | 1.000.000 | 1010001 | 1100100 | 10000111 | 11011000 | 100.000.000 | 101101101 |
---|---|---|---|---|---|---|---|---|---|---|
Ternær | 1012 | 1100 | 2000 | 2101 | 10.000 | 11202 | 12000 | 22000 | 100111 | 111112 |
Senaire | 52 | 100 | 130 | 144 | 213 | 244 | 343 | 1000 | 1104 | 1405 |
Desimal | 32 | 36 | 54 | 64 | 81 | 100 | 135 | 216 | 256 | 365 |
Binær | 11 | 1001 | 11011 | 1010001 | 11110011 | 1011011001 | 1000100010111 | 100110100001 |
---|---|---|---|---|---|---|---|---|
Ternær | 10 | 100 | 1000 | 10.000 | 100.000 | 1.000.000 | 10.000.000 | 100.000.000 |
Senaire | 3 | 1. 3 | 43 | 213 | 1043 | 3213 | 14043 | 50213 |
Desimal | 3 | 9 | 27 | 81 | 243 | 729 | 2187 | 6561 |
Ternary arbeider inndeling etter makter på tre , så vel som senary og nonary , i motsetning til binær og heksadesimal (" krefter i to " baser) eller desimal .
Men ternær 10 (tre) er ikke et multiplum av to. Det er ingen "samme mengde når delt på to" som senary 0,3 eller desimal 0,5. Så gjensidigheten av partall er alle uendelige desimaler .
Fraksjoner (senar) |
1/2 | 1/3 | 1/4 | 1/5 | 1/10 | 1/11 | 1/12 | 1/13 | 1/14 | 1/43 |
---|---|---|---|---|---|---|---|---|---|---|
Brøk (desimal) |
1/2 | 1/3 | 1/4 | 1/5 | 1/6 | 1/7 | 1/8 | 1/9 | 1/10 | 1/27 |
Binær | 0,1 | 0,01 ... | 0,01 | 0,0011 ... | 0,001 ... | 0,001 ... | 0,001 | 0.000111 ... | 0.00011 ... | ※ |
Ternær | 0,11 ... | 0,1 | 0,02 ... | 0,0121 ... | 0,011 ... | 0,010212 ... | 0,01 ... | 0,01 | 0,0022 ... | 0,001 |
Senaire | 0,3 | 0,2 | 0,13 | 0,11 ... | 0,1 | 0,05 ... | 0,043 | 0,04 | 0,033 ... | 0,012 |
Desimal | 0,5 | 0,33 ... | 0,25 | 0,2 | 0,166… | 0,142857 ... | 0,125 | 0,11 ... | 0,1 | 0,037 ... |
※ 0,001 (3) = 0,000010010111101… (2)
Et nummereringssystem kalt ternary balanced (en) bruker sifre med verdiene -1, 0 og 1. Denne kombinasjonen er spesielt interessant for ordinære forhold mellom to verdier, der de tre mulige relasjonene er mindre enn, lik og større ved . Den balanserte ternæren telles som følger: (i dette eksemplet betegner symbolet 1 sifferet -1, men alternativt for enklere bruk - kan brukes til å betegne -1 og + for å betegne +1).
Desimal | -6 | -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Senaire | -10 | -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 10 |
Balansert ternær | 1 10 | 1 11 | 11 | 1 0 | 1 1 | 1 | 0 | 1 | 1 1 | 10 | 11 | 1 11 | 1 1 0 |
Den ubalanserte ternæren kan konverteres til en balansert ternær notasjon ved å legge til 1111… med bære, og deretter trekke fra 1111… uten bære. For eksempel 021 3 + 111 3 = 202 3 , 202 3 - 111 3 = 1 1 1 3 (bal) = 7 10 .
Den balanserte ternaren representeres lett av elektroniske signaler, som et potensiale som kan være enten negativt , nøytralt eller positivt . Derfor kan en elektrisk ledning bære mer informasjon i ternær (tre tilstander) enn i binær (to tilstander). Dermed gjør det ternære systemet i elektronikk det mulig å redusere antall komponenter, og dermed det elektriske forbruket. Fordelen kan beregnes med logg (3) / logg (2) = ~ 1,584 9 bits per trit. Det vil si ca 60% mer informasjon på en måte enn litt, eller mer pragmatisk ca 40% mindre elektriske ledninger (for samme mengde informasjon).
I 1958 i Sovjetunionen , team av Nikolay Brusentsov (i) og Sergei Sobolev ved Moscow State University har utviklet en trefoldig datamaskin , den Setun , basert på bruk av laminerte plater miniatyrer og dioder som brukes til å lage et system basert på tre -statslogikk. I bruk har disse elementene vist seg å være raskere, mer pålitelige, mer holdbare og mindre strømkrevende enn deres binære konkurrenter (i det minste før Sovjetunionen hadde tilgang til transistorer). Utviklingen av Setun tok syv år, og datamaskinen var i drift så snart den ble satt sammen. Rundt 50 maskiner ble produsert, men programmet, som ble ansett som et innfall av akademikere i et land som var tregt til å forstå viktigheten av databehandling, ble raskt skrotet til fordel for mer verdslige binære datamaskiner.
De prosessorer av datamaskiner utfører antall sammenligning. Tre tilfeller oppstår: ett tall er større enn , lik eller mindre enn et annet. Denne sammenligningen mellom to tall utføres ved å trekke disse to tallene, og resultatet lagres i et register over prosessoren. Den tilhørende statusregisteret angir da hvorvidt resultatet er negativt , null eller positiv (den Zero flagget indikerer hvorvidt eller ikke null og Sign flagget indikerer tegn ).
Denne ternære kapasiteten til prosessorer utnyttes noen ganger for å oppnå raske operasjoner. Ta for eksempel saken når en funksjon returnerer en kode som kan ta tre forskjellige tilstander . Faglig er denne funksjonen implementert ved å returnere en nummerert type med tre mulige verdier. Returkoden til denne funksjonen må derfor sammenlignes med hver av disse tre verdiene for å utføre operasjonen som er knyttet til hver tilstand. Ved hjelp av denne prosessorkapasiteten kan denne funksjonen implementeres ved å returnere et signert heltall . Å bestemme returkoden er da mye raskere fordi det er flaggene (bitene) i statusregistret som blir direkte sjekket.
Eksempel på en funksjon i C som utnytter prosessorens ternære kapasitet for å skille mellom negative , null og positive tall .
int fonction () { int code_retour; // [...] traitement qui change la valeur du 'code_retour' return code_retour; } void utilisateur() { int code = fonction (); if (code == 0) //vérifie le bit 'Zero' du registre d'état code_nul(); // => opération associée au code nul else if (code > 0) //vérifie le bit 'Sign' du registre d'état code_positif(); // => opération associée au code positif else code_negatif(); // => opération associée au code négatif }Et pengesystem som bruker en balansert ternær ville løse problemet med akkumulering av små endringer eller tvert imot mangel på penger. Det er nødvendig for det å slå mynter med verdi 1, 3, 9, 27 ... Ved å uttrykke prisene i standard ternær, har vi en måte å fylle på ved å bruke maksimalt bare to mynter av hver verdi. Men hvis vi uttrykker prisene i balansert ternær, representerer hver 1 en mynt som kunden må gi til selgeren, og hver -1 en mynt som selgeren må returnere til ham, og verdien av myntene bestemmes av posisjonen til siffer i tallet. For eksempel, for å betale en pris på 1-10 (det vil si 6 i desimal), gir kunden en mynt på 9 og handelsmannen gir ham en mynt på 3. 1 og -1 er også sannsynlig, fordelingen av myntene forblir ensartet. Vi går ikke lenger til banken, bortsett fra å sette inn eller ta ut store mynter.
Den balanserte ternæren har andre applikasjoner. For eksempel kan en konvensjonell balanse med to paneler , med en masse merket for hver av de første n kreftene på 3, veie gjenstander opp til , ved å flytte de markerte massene mellom de to platene og bordet. Ingen andre markerte massesystemer kan gjøre det så bra med så få markerte masser. For eksempel, med masser markert for hver effekt på 3 til 81 = 3 4, vil en gjenstand på 60 g veies perfekt med en masse på 81 g på den andre pannen, massen på 27 g i den første pannen, massen av 9 g i det andre brettet, massen på 3 g i det første brettet, og massen på 1 g som er igjen. 60 = 1 1 1 1 0.
For å gjøre ternære tillegg er det flere løsninger. Den første forklarer hva den andre vil være laget av hode. Dette består i å konvertere til desimal (vær forsiktig med at alle tall i binær i ternæren er desimaler).
Eksempel:
01010101010101010101+ 11011110101110101011= 12021211111211111112 (résultat décimal ou ternaire)Ternære tillegg gjøres ved desimalkonvertering. Eksempel:
2102120212+ 1110210212= 3212330424 (conversion décimale) 10220101201 (résultat ternaire)I ternære tillegg er det tilstrekkelig som i desimal å sette en enhet over. Eksempler:
0 <1 <2 2 er større enn 1 som er større enn 0 1 <2 <0 1 er større enn 0 som er større enn 2 2 <0 <1 0 er større enn 2 som er større enn 1
3==0 s'il y a un résultat qui est a 3 on pose 0 4==1 si un résultat est a 4 on pose une unité au-dessus 1Eksempel:
212110+ 212021= 424131 conversion décimale 1201201 résultat ternaireDet ternære systemet er ineffektivt for menneskelig bruk, og det samme er det binære . Derfor brukes ofte det ikke- nasjonale systemet ( base 9 , hvert siffer to sifre i base 3 ) eller det septemvigésimal systemet (en) ( base 27 ) (hvert siffer representerer tre sifre i base 3 ), på samme måte som bruken av det oktale systemet og det heksadesimale systemet i stedet for det binære systemet . Det ternære systemet har også analogen til en byte , kalt en tryte.