Pozíciószámrendszer

A helyzetszámrendszer ( pozíciós, helyi számozás ) olyan számrendszer , amelyben a számbejegyzésben szereplő egyes számjegyek ( számjegyek ) értéke a tizedeselválasztóhoz viszonyított helyzetétől ( számjegyétől ) függ . A pozíciórendszerek másokhoz képest lehetővé teszik az aritmetikai műveletek végrehajtásának algoritmusainak jelentős egyszerűsítését és a számítások felgyorsítását. Létrehozásuk és terjesztésük nagy szerepet játszott az egzakt tudományok – matematika , csillagászat és fizika – fejlődésében .

Számrendszerek a kultúrában
indoarab
Arab
tamil
burmai
khmer
laoszi
mongol
thai
kelet Ázsiai
Kínai
japán
Suzhou
koreai
Vietnami
számlálóbotok
Betűrendes
Abjadia
örmény
Aryabhata
cirill
görög
Grúz
etióp
zsidó
Akshara Sankhya
Egyéb
Babiloni
egyiptomi
etruszk
római
dunai
Padlás
Kipu
Maja
Égei
KPPU szimbólumok
helyzeti
2 , 3 , 4 , 5 , 6 , 8 , 10 , 12 , 16 , 20 , 60
Nega-pozíciós
szimmetrikus
vegyes rendszerek
Fibonacci
nem pozíciós
Egyes szám (egyetlen)

Történelem

Történelmileg a számok helyi jelentésén alapuló helyszámozás első találmánya a suméroknak és babiloniaknak tulajdonítható . Az eurázsiai civilizációktól függetlenül a vigesimális helyzetszámrendszert a maja indiánok találták fel . Egy későbbi időszakban egy ilyen számozást a hinduk fejlesztettek ki, és felbecsülhetetlen következményekkel járt a civilizáció történetében . Ezek a rendszerek magukban foglalják a decimális számrendszert , amelynek kialakulása az ujjakon való számoláshoz kapcsolódik . A középkori Európában olasz kereskedők révén jelent meg, akik viszont az araboktól kölcsönözték.

Definíciók

A helyzetszámrendszert egy egész szám határozza meg , amelyet a számrendszer alapjának nevezünk . A bázissal rendelkező számrendszert -ary - nek is nevezik (különösen bináris , háromtagú , decimális stb.).

Egy előjel nélküli egész szám az -áris számrendszerben az [1] szám hatványainak véges lineáris kombinációjaként jelenik meg :

, ahol  az egész számok, az úgynevezett számjegyek , amelyek kielégítik az egyenlőtlenséget

Egy ilyen ábrázolásban minden alapelemet számjegynek ( pozíció ) nevezünk , a számjegyek és a hozzájuk tartozó számjegyek szeniorságát a számjegy (pozíció) száma (a kitevő értéke) határozza meg.

Az -ary számrendszerben lévő pozíciók segítségével egész számokat írhatunk a -tól ig terjedő tartományba , azaz. mind különböző számok.

Számok írása

Ha nincsenek eltérések (például ha az összes számjegy egyedi írott karakterek formájában van megadva), a szám a -ár számjegyeinek sorozataként kerül kiírásra, a számjegyek elsőbbségének csökkenő sorrendjében balról jobbra [1 ] :

A nullától eltérő számokban a kezdő nullákat általában kihagyják.

Számok írása olyan számrendszerben, amelynek alapja legfeljebb 36 lehet, arab számok (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), majd a latin ábécé betűi (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 ). Ebben az esetben a = 10, b = 11 stb., néha x = 10.

Ha egyszerre több számrendszerrel dolgozunk, ezek megkülönböztetésére a rendszer alapját általában alsó indexként tüntetik fel, amelyet decimális rendszerben írnak:

 a 123-as szám decimális jelöléssel ;  - ugyanaz a szám az oktális számrendszerben ;  - ugyanaz a szám, de bináris rendszerben ;  - ugyanaz a szám, de decimális számrendszerben , decimális számjegyek bináris kódolásával ( BCD );  - ugyanaz a szám, de aszimmetrikus hármas számrendszerben ;  - ugyanaz a szám, de a szimmetrikus hármas számrendszerben az "i", "7", "2" és "-" jelek "-1", az "1" és "+" jelek "+1"-et jelölnek. .

Egyes speciális területeken speciális szabályok vonatkoznak az alap meghatározására. Például a programozásban a hexadecimális rendszert a következőkkel jelöljük:

A C nyelv egyes dialektusaiban a "0x"-hez hasonlóan a "0b" előtagot használják a bináris számok jelölésére (a "0b" jelölést nem tartalmazza az ANSI C szabvány ).

Az orosz számlákban a számok decimális exponenciális helyzeti számrendszerben történő írásához a decimális számjegyek unáris decimális rögzítési (ábrázolási) rendszerét használják, és minden számjegyhez egy többlet unáris decimális számjegy "1111111111" = 10_10 .

Példák

Tulajdonságok

A helyzetszámrendszernek számos tulajdonsága van:

Így a számok természetes sorrendje megfelel a helyszámrendszerbeli bejegyzéseik lexikográfiai sorrendjének , feltéve, hogy ezek a bejegyzések azonos hosszúságú kezdő nullákkal vannak kitöltve.

Gazdaság

A digitális technológiában az alapszámrendszert regiszterek valósítják meg , amelyek flip- flop -készletekből állnak, amelyek mindegyike különböző állapotokat vehet fel, amelyek egy szám számjegyeit kódolják. Ugyanakkor különösen fontos a számrendszer gazdaságossága - az a képesség, hogy a lehető legtöbb számot a lehető legkevesebb karakterszámmal ábrázolják. [1] Ha a triggerek száma , akkor a karakterek teljes száma , az általuk képviselt számok száma pedig . A függvény függvényében ez a kifejezés egyenlő e = 2,718281828… számmal éri el a maximumot . [3] Egész értékek esetén a maximumot eléri . Így a leggazdaságosabb a hármas számrendszer (a hármas számítógépekben használatos ), ezt követi a kettes számrendszer (a legtöbb elterjedt számítógépben hagyományosan használt) és a negyedes számrendszer.

Számítógépes felhasználása szempontjából fontos körülmény a számrendszer hatékonysága. Ezért, bár a bináris helyett hármas rendszer használata számítógépben bizonyos tervezési nehézségekkel jár (ebben az esetben olyan elemeket kell használni, amelyek mindegyike nem két, hanem három stabil állapotú lehet), ez a rendszer már használták [4] néhány valós számítástechnikai eszközben. [egy]S. V. Fomin

A számrendszer gazdaságosságának ekvivalens leírása az információs entrópia fogalmával érhető el . Az egyes számjegyek számrekordban való megjelenésének kiegyenlítődésének feltétele mellett a b bázisú számrendszerben egy n bites szám rekordjának információs entrópiája értéket vesz fel (állandó együtthatóig ). Ezért a b bázisú számrendszerben a számok rögzítési sűrűsége (vagyis a bitenkénti információ mennyisége) egyenlő -vel , ami szintén maximális értéket vesz fel b = e esetén, és b egész érték esetén - b = 3 -nál .

Váltás másik alapra

Konvertálás decimális számrendszerbe

Ha egy egész szám az -áris számrendszerben egyenlő

majd a decimális rendszerre konvertáláshoz a következő összeget számítjuk ki : [5]

vagy Horner diagramjaként :

Például:

Hasonló műveletek történnek a tört résznél is:

Decimális fordítás

egész rész
  1. Sorozatosan ( iteratívan ) osszuk el a decimális szám egész részét a bázissal a maradékkal, amíg a decimális szám (privát) nullává nem válik.
  2. Az osztással kapott maradékok a kívánt szám számjegyei. A szám az új rendszerben az utolsó maradéktól kezdődően kerül kiírásra. [5] [6]
Tört rész
  1. A tizedes szám tört részét megszorozzuk annak a rendszernek az alapjával, amelyre fordítani szeretnénk, és a teljes részt elválasztjuk. Továbbra is megszorozzuk a tört részt az új rendszer alapjával, és az egész részt elválasztjuk egészen addig, amíg a szám pontosan 0 nem lesz.
  2. A tört számjegyek az új számrendszerben az első lépésben kapott egész számok, amelyek a törtrész legjelentősebb számjegyétől a szenioritás csökkenésével a beérkezés és a beérkezés sorrendjében haladnak.

Megjegyzés . Néha egy tört racionális szám tizedes rendszerből történő fordításakor ilyen algoritmusok segítségével végtelen periodikus törtet kaphatunk: például . A periódus megtalálásához végre kell hajtania az első bekezdésben leírt iterációkat, és meg kell értenie, hogy ugyanaz a törtrész található-e, mint több iterációval ezelőtt [7] . (A különböző számrendszerek szabályos törtjeit alább írjuk .)

Példák

Konvertáljuk binárisra:

44 osztva 2-vel. hányados 22, maradék 0 22 osztva 2-vel. hányados 11, maradék 0 11 osztva 2-vel. hányados 5, maradék 1 5 osztva 2-vel. 2. hányados, maradék 1 2 osztva 2-vel. hányados 1, maradék 0 1 osztva 2-vel. 0 hányados, maradék 1

A hányados nulla – az osztásnak vége. Most az összes maradékot alulról felfelé írva megkapjuk a számot

A tört rész esetében az algoritmus így néz ki:

Szorozzuk meg 0,625-öt 2-vel. A tört rész 0,250. egész rész 1. Szorozzuk meg 0,250-et 2-vel. A tört rész 0,500. Egész 0. rész. Szorozzuk meg 0,500-at 2-vel. A tört rész 0,000. egész rész 1.

Ily módon

Konvertálás binárisról oktális és hexadecimális rendszerre

Az ilyen típusú műveletekhez létezik egy egyszerűsített algoritmus. [nyolc]

Egész rész

Nyolctális esetén a lefordított számot 2 hatványával egyenlő számjegyekre osztjuk (a 2-t arra a hatványra emeljük, amely szükséges ahhoz, hogy megkapjuk annak a rendszernek az alapját, amelybe fordítani szeretnénk (2³ \u003d 8). ebben az esetben 3, azaz triádok). Alakítsuk át a triádokat a triádok táblázata szerint:

000 - 0; 100-4; 001 - 1; 101-5; 010 - 2; 110-6; 011 - 3; 111-7.

Hexadecimális esetén a lefordított számot 2 hatványával egyenlő számú számjegyre osztjuk (a 2-t arra a hatványra emeljük, amely szükséges ahhoz, hogy megkapjuk a lefordítani kívánt rendszer alapját (2 4 \u003d 16), ebben az esetben 4, azaz tetrad). Alakítsuk át a tetradokat a tetradok táblázata szerint:

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.

Példa:

konvertálás 101100 2 oktális - 101 100 → 54 8 hexadecimális - 0010 1100 → 2C 16 Törtrész

A törtrész átalakítása kettes számrendszerből a 8-as és 16-os alapú számrendszerekbe pontosan ugyanúgy történik, mint a szám egész részeinél, azzal az egyetlen kivétellel, hogy az oktávokra és tetradokra való bontás a tizedesvesszőtől jobbra, a hiányzó számjegyeket jobbra nullákkal töltjük ki. Például a fent tárgyalt 1100.011 2 szám így nézne ki: 14.3 8 vagy C.6 16 .

Átalakítás oktális és hexadecimális rendszerről binárisra [8]

Az ilyen típusú műveletekhez létezik egy egyszerűsített algoritmus is, a fenti algoritmus fordítottja.

Nyolctális esetén a táblázat szerint hármasokra konvertáljuk:

0 000 4 100 1001 5101 2010 6 110 3011 7111

Hexadecimális esetén a táblázat szerint konvertáljuk kvartettekre:

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 1111

Példa:

átalakítani 54 8 → 101 100 2 2C 16 → 0010 1100 2

Változatok és általánosítások

Racionális számok írása

A racionális számokat az -áris számrendszerben a szám hatványainak lineáris kombinációjaként (általában végtelen) ábrázoljuk :

ahol  - az egész rész számjegyei ( elválasztó előtt ), - a tört rész  számjegyei (az elválasztó után),  - az egész rész számjegyeinek száma.

Csak azok a racionális számok, amelyek , ahol és formában ábrázolhatók, egész számok, vagyis azok, amelyek véges számú iterációban  az alappal megszorozva egész számot kaphatnak, rendelkezhetnek véges jelöléssel a -áris számrendszerben :

ahol és azok -ár bejegyzései a -val való osztás hányadosának és maradékának .

Az alakban nem ábrázolható racionális számokat periodikus törtként írjuk fel .

Szimmetrikus számrendszerek

A szimmetrikus (kiegyensúlyozott, előjeles számjegyű) alapszámrendszerek abban különböznek egymástól, hogy nem a halmazból, hanem abból a halmazból használnak számokat , ahol durván fogalmazva az összes szám nullához képest „visszaverődik”. Ahhoz, hogy a számok egész számok legyenek, páratlannak kell lennie. A szimmetrikus számrendszerekben a szám előjeléhez nincs szükség további jelölésekre. [9] Ezenkívül a szimmetrikus rendszerekben végzett számítások kényelmesek, mivel nincs szükség speciális kerekítési szabályokra  – a legközelebbi egész számra történő kerekítés a plusz bitek egyszerű eldobására csökken, ami jelentősen csökkenti a számítások szisztematikus hibáit.

A leggyakrabban használt szimmetrikus háromtagú számrendszer . A hármas logikában használatos, és technikailag a Setun számítógépben valósították meg .

Negatív alapok

Léteznek negatív bázisú pozíciórendszerek, amelyeket nem pozicionálisnak neveznek :

  • −2  - nem kettes számrendszer ;
  • −3  — negatív-terner számrendszer;
  • −10  — negatizedes számrendszer.

Nem egész alapok

Néha a nem egész alapú helyzetszámrendszereket is figyelembe veszik: racionális , irracionális , transzcendentális .

Példák az ilyen számrendszerekre:

  • b = ⅓ - racionális törtbázisú számrendszer, amely lehetővé teszi egész számokkal való szorzási és osztási műveletek végrehajtását hármas fordított eltolási regisztereken ,
  • b = ½ esetén racionális törtbázisú számrendszer ,
  • b = φ = 1,61… - Bergman  számrendszere , amelynek irracionális alapja egyenlő az " aranymetszet "-vel. [tíz]

Komplex alapok

A helyzetszámrendszerek alapjai lehetnek összetett [11] [12] számok is. Ugyanakkor a bennük lévő számok valamilyen véges halmazból vesznek értékeket, amelyek kielégítik azokat a feltételeket, amelyek lehetővé teszik számtani műveletek közvetlen végrehajtását a számok ábrázolásával ezekben a számrendszerekben.

Különösen az összetett bázisú helyzetszámrendszerek között lehet megkülönböztetni a binárisokat, amelyekben csak két számjegy, 0 és 1 használatos.

Példák

Ezután a helyzetszámrendszert a következő formában írjuk fel , ahol  a számrendszer alapja, A  pedig a számjegyek halmaza. Az A halmaz így nézhet ki:

  • hol és . Amikor a halmaz halmazzá változik .

Példák összetett bázisú számrendszerekre (a továbbiakban j  - imaginárius egység ):

  • [12]
    • Példa:
  • [tizenegy]
    • Példa:
  • [13]
  • ahol ,  egy pozitív egész szám, amely több értéket is felvehet egy adott R esetén ; [tizennégy]
  • ahol a halmaz formájú komplex számokból és számokból áll Például: [13]
  • ahol . [tizenöt]
Bináris komplex számrendszerek

A bináris helyzetszámrendszerek alapjai és a 2, -2 és -1 számok ábrázolásai a következők:

  • : (természetes bázisú számrendszer);
  • : , , (nem helyzeti számrendszer);
  • : , , (komplex bázisú számrendszer);
  • : , , (komplex bázisú számrendszer);
  • : , , (komplex bázisú számrendszer);
  • : , , (komplex bázisú számrendszer).

Nem exponenciális számrendszerek

Az exponenciális számrendszerek az exponenciális függő helyzetű számrendszerek speciális esetei . Az exponenciális függőség helyett más függőségek is létezhetnek. Például a hiperoperátor pozíciószámrendszere

lehetővé teszi nagyobb számtartományok írását azonos számú karakterrel.

Jegyzetek

  1. 1 2 3 4 S. V. Fomin . Számrendszerek . — M .: Nauka, 1987. — 48 p. - ( Népszerű matematikai előadások ). ( alternatív link archiválva 2013. június 2-án a Wayback Machine -nél )
  2. Bityukov Szergej. 13 hang és intervallum. Felfogásuk és kijelölésük. Eltérés és moduláció rémületei  (orosz)  ? . Habr (2021. augusztus 7.). Letöltve: 2021. augusztus 26. Az eredetiből archiválva : 2021. augusztus 12.
  3. Hayes, Brian. Harmadik bázis  (angol)  // Amerikai tudós :magazin. - 2001. - Vol. 89 , sz. 6 . - P. 490-494 . doi : 10.1511 / 2001.40.3268 .
  4. Lásd hármas számítógép .
  5. ↑ 1 2 Számok konvertálása egyik számrendszerből a másikba online . matworld.ru . Letöltve: 2021. május 8. Az eredetiből archiválva : 2021. május 9..
  6. 4. fejezet – A számítógépek számtani alapjai . mif.vspu.ru . Letöltve: 2021. május 8. Az eredetiből archiválva : 2020. február 19.
  7. ↑ Törtszámok fordítása egyik számrendszerből a másikba - lecke. Számítástechnika, 11. évfolyam. . www.yaklass.ru _ Letöltve: 2021. május 8. Az eredetiből archiválva : 2021. május 8.
  8. ↑ 1 2 Számok konvertálása binárisról oktálisra és hexadecimálisra és fordítva . www.5byte.ru _ Letöltve: 2021. május 8. Az eredetiből archiválva : 2021. május 15.
  9. S. B. Gashkov. Számrendszerek és alkalmazásaik . - 2004. - 52 p. - ( "Matematikai oktatás" könyvtár ). — ISBN 5-94057-146-8 . Archivált másolat (nem elérhető link) . Letöltve: 2008. március 8. Az eredetiből archiválva : 2014. január 12.. 
  10. A. V. Nikitin Bergman rendszer Archív másolat 2009. május 5-én a Wayback Machine -nél .
  11. 1 2 Khmelnik S. I. Speciális digitális számítógép komplex számokkal végzett műveletekhez  // A rádióelektronika problémái. - 1964. - T. XII , szám. 2 .  (nem elérhető link)
  12. 1 2 Knuth DE Egy képzeletbeli számrendszer // Az ACM kommunikációja. - 1960. - V. 3 , 4. sz . - S. 245-247 . - doi : 10.1145/367177.367233 .
  13. 1 2 Khmelnik S.I. Komplex számok és vektorok kódolása . — Matematika a számítógépekben. - Izrael, 2004. - ISBN 978-0-557-74692-7 .
  14. Khmelnik S. I. Komplex számok pozíciókódolása  // A rádióelektronika problémái. - 1966. - T. XII , szám. 9 .  (nem elérhető link)
  15. Khmelnik S.I. A komplex számok feldolgozásának módszere és rendszere . - USA szabadalom, US2003154226 (A1). – 2001.

Linkek