Egy egész n számnak lehet-e a binárisnál, ternárisnál, stb. tömörebb reprezentációja?
Tömörnek pont nem tömör a dolog.
Pl a 66 binárisan 1000010, a 9999 pedig 10011100001111.
A számrendszer előnye az az egyszerűség. Az viszont pont egy hátránya, hogy egyáltalán nem tömör. Ezért is találnak ki olyan tömörítési eljárásokat hozzá, mint a Packed BCD, és a többiek.
"Az viszont pont egy hátránya, hogy egyáltalán nem tömör."
(Egyszerűség kevéért tekintve a fixpontos nemnegatív egész számábárolásra.) Azon mennyiség amelyet kifejez annak egész részre csonkított logaritmusával arányos annak reprezentációjának hossza az adott számrendszerbe. Vagyis úgy is fel lehet fogni, hogy ahogy nézünk egyre nagyobb és nagyobb számot a reprezentációjának hossza azt azt képviselt értékhez képest logaritmikus csillapítást szenved el. Ha még az unáris számrendszert említetted volna akkor megérteném, mert ott lineáris a képviselt érték és a reprezentáció hossza közötti arány, konkrétan 1:1, azaz a 66 az 66 hosszú repezentáció, a 9999 pedig 9999 hosszú reprezentáció, kvázi mint amikor az ősember strigulázással a barlang falára számlált valamit.
A Packed BCD pedig itt teljesen el vagy tévedve, az a binárisan kódolt decimális. Mely azon alapul hogy egy bájt 8 bit azaz binárisan 8 jegyű. Ha decimális értéket írunk le binárisan akkor számjegyenként írjuk le karakterenként, egy karakter meg egy bájt (lehet több is, a kódtáblától függ). 2 decimális számjegyet is reprezentálhatunk egy bájton. : "In byte-oriented systems (i.e. most modern computers), the term unpacked BCD[1] usually implies a full byte for each digit (often including a sign), whereas packed BCD typically encodes two digits within a single byte by taking advantage of the fact that four bits are enough to represent the range 0 to 9. The precise 4-bit encoding, however, may vary for technical reasons (e.g. Excess-3)."
"A legtömörebb az a saját számrendszerben való ábrázolása. Úgy értve hogy pl a 666-ot ha a 666-os számrendszerben írod fel akkor az 1 karakter lesz."
Te is nagyon jót írsz nagyon pontosan, meg akik pontoztak is mindenki nagyon profin átlátta ezt. (Így főleg a tudomány kategóriába értelmét veszti a pontozás.) Tízes számrendszerben a tíz pontosan egyjegyű szám, hiszen a tíz az pont a számrendszer alapszáma ezért véletlenül se a legkisebb kétegyű szám.
Továbbá mint a mondás is tartja 10 fajta ember van:
- van aki ismeri a kettes számrendszert
- van aki nem ismeri a kettes számrendszert
Egyébként valóban úgymond tömörebb forma a BCD ábrázolás a nyers decimális bináris karakter reprezentációhoz képest, de nem a natív bináris ábrázoláshoz képest. Nem csak nemnegatív és nem csak egész számok vannak, erre Az IEE 754-es lebegőpontos számformátumot kitalálták már a tömörebb számábrázolásra, persze itt is mihez képest tömörebb. Ahhoz képest tömörebb hogy nem csak egész számokat tud tárolni, egésszen kicsi számokat is, egésszen nagy számokat is. Kevesebb a tárigénye mint az triviálisan következne, a pontosság kárára természetesen (azaz léteznek számok melyeknek ugyanaz a képe ezen leképezésben), mert nem lehet csak úgy több bitet besűríteni kevesebb bitbe.
"Azaz a nagy számokat még mindig megéri-e binárisan tárolni, vagy van jobb módszer is?"
Amit a professzor/professzornő azaz a 2.-ik hozzászóló írt a 666-ot ott azon kívül hogy az már pont 2 jegyű szám az említett az adott számrendszerbe, ott a szőnyeg alá sepertük azt a tényt hogy a szimbólumtáblát tárolni kell, tárolni kell hozzá annak a sok-sok számnak a szimbolumát mely alapján a szám reprezentációja és kiolvasása működik.
A kettes számrendszer azért pratikus csak lelegyszerűsítve fogalmazva, egy elektonikus számítógép azon elven alapul hogy egyszerűbb megkülönböztetni hogy az adott lábon van áram vagy nincs áram, mint 10 vagy 666 különböző jelszintet megkülönböztetni. Ezen kívül a bool algebra és így maga a bináris aritmetika egy egyszerűbb aritmetika mint egy magasabb számrendszer aritmetikája.
"megéri-e" - Ez azért a céltól, feladattól is erősen függ.
Annak idején egy egyetemi tanár érdekességképpen levezette nekünk, hogy melyik az ideális számrendszer a számítógépek számára, de fogalmam sincs, mi alapján, már akkor sem értettem. A lényeg, hogy valami 2,7..2,8 körüli érték jött ki, amit háromra érdemes kerekíteni. Emiatt már a hőskorban is voltak próbálkozások hármas számrendszert használó számítógépekkel, főleg katonai területen, de végül technikai okokból a kettes jobban bevált.
"Annak idején egy egyetemi tanár érdekességképpen levezette nekünk,"
Azt én se értettem, nekünk csak megemlítette az egyik matematikus előadó, hogy az e alapú (e alias Euler-féle szám) lenne az ideális számítógépek számára.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!