abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidech omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 1
    dnes 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 40
    včera 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 43
    včera 12:11 | Nová verze

    Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.

    Ladislav Hagara | Komentářů: 0
    včera 11:55 | IT novinky

    Společnost xAI a sociální síť X amerického miliardáře Elona Muska zažalovaly firmy Apple a OpenAI. Viní je z nezákonné konspirace s cílem potlačit konkurenci v oblasti umělé inteligence (AI).

    Ladislav Hagara | Komentářů: 3
    včera 05:44 | Nová verze

    Byla vydána nová verze 9.16 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 01:33 | IT novinky

    Americká vláda se po převzetí zhruba desetiprocentního podílu ve výrobci čipů Intel chystá na další investice do vybraných firem. Na sociální síti Truth Social to napsal prezident Donald Trump. Jeho ekonomický poradce Kevin Hassett v rozhovoru v televizi CNBC řekl, že nemusí jít pouze o firmy z technologického sektoru, ale i z jiných odvětví.

    Ladislav Hagara | Komentářů: 15
    25.8. 13:55 | Komunita

    V Amsterdamu probíhá Open Source Summit Europe. Organizace Linux Foundation představuje novinky. Pod svá křídla převzala open source dokumentovou databázi DocumentDB.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (78%)
     (8%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 92 hlasů
     Komentářů: 8, poslední včera 08:38
    Rozcestník

    Delfská veštírna trochu jinak

    1.7.2010 00:44 | Přečteno: 1863× | Jen tak | poslední úprava: 1.7.2010 12:50

    Inspirován zápisem o pořádně napěchované skříni s disketama sem se rozhodl napsat prográmek, co by simuloval cosi podobného. Kdo už takovou sbírku disket vlastní a nic emulovat nepotřebuje, dál číst nemusí :-).

    Myšlenka je jednoduchá. Místo všech kombinací 1,44 MB disket budeme mít prográmek, co dokáže vykreslit 8x8 pixelů velký monochromatický piktogram (tedy aspoň na architekturách, kde je long long int 64bitů). Proč zrovna 8x8? Jednak proto, že se mi to dobře programovalo a taky proto, že na vstupu může být stále celkem zapamatovatelné a vymyslitelné číslo.

    Ano číslo, další podstatná věc, která v odkazovaném blogu zazněla. Každá informace se dá převést na číslo a chtěl jsem, aby s ním prográmek umožnil pracovat.

    Tak co to vlastně umí: Program může mít jeden volitelný parametr a to právě to číslo, ze kterého vykreslí piktogram. Jinak kdykoliv je možné v programu zmáčknout klávesu [mezerník] co spustí promítání náhodných piktogramů v intervalu jedna sekunda, znovu stisknutím [mezerníku] se to pauzne. Číslo vygenerovaných piktogramů se vypisuje do konsole, i do titulku okna.

    Protože některé piktogramy mohou invertovaně působit odlišně, klávesa [I] spustí (a vypne) střídání inverze.

    Cože to vlastně může dokázat vykreslit? No máme 18446744073709551615 18446744073709551616 kombinací (větší čísla nezadávat ;)). To je celkem slušné. 8x8 fonty existují, taky jsem objevil jakýsi pixelart (akorát barevný). Takže nějaké "poselství" by mělo být možné tímto věštícím nástrojem přijmout ;-).

    Náhodné generování pomocí rand() použité v programu ve funkci [mezerník] má bohužel nevýhodu v tom, že je RAND_MAX podstatně menší než LONG LONG INT. Řeším to škálováním, ale tím jsem spoustu kombinací vyřadil :-(. Lepší by to bylo propojit s /dev/random, nebo /dev/urandom, ale to už se mi (zatím) nechtělo.

    Po krátkém testování mi to pár hezkých obrázků vyrobilo, tak je přikládám. Zdroják hodím do prvního komentáře jako přílohu. Přeložit to jde snad všude kde je gcc a nainstalovaná i devel verze sdl (obvykle balíček sdllib-dev). Nemělo by to jakkoliv poškodit počítač ani data ;-). Překládat takhle:
    gcc -o main main.c `pkg-config --cflags --libs sdl`
    Jinak proč? No potřeba po dlouhé době provětrat znalosti SDL a C. Jsem prasič, takže kód je šílený :-). A jinak, kdyby tam někdo zahlédl odpověď na otázku života, vesmíru a vůbec a podobně, poslat screen ;-) (a nebo projít všechny možné kombinace a poslat ty nejhezčí pixelarty ;)).

    Update: pod prvním komentářem najdete soubor vestirna.c, což je vylepšená verze, která čte z /dev/urandom (kdo chce /dev/random, ať změní ve zdrojáku - dík FAtbluNTovi) a navíc opravuje chybku se čtením vstupu (nečetlo správně nejvyšší řády, teď to po zadání maxima - 18446744073709551615 - vykreslí bílou obrazovku.        

    Hodnocení: 100 %

            špatnédobré        

    Obrázky

    Delfská veštírna trochu jinak, obrázek 1 Delfská veštírna trochu jinak, obrázek 2 Delfská veštírna trochu jinak, obrázek 3 Delfská veštírna trochu jinak, obrázek 4

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    1.7.2010 00:45 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    zdrojak
    Baník pyčo!
    1.7.2010 00:51 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Je tam chyba, hned to spadne. Tohle by mohlo fungovat :).
    Baník pyčo!
    1.7.2010 12:45 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Tak dalsi bugfix, atof kterou jsem pouzil pro cteni vstupu nebyla schopna nacist unsigned long long int. Napsal jsem si atoull. Tahle verze cte z /dev/urandom.
    Baník pyčo!
    1.7.2010 00:55 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Co takhle jednoduché strings /dev/urandom a hledat smysl v tom? :)
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 01:01 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Promiň, ale já v tom pořád vidím jenom čaj :-). Tady vidím občas hezké obrázky. Prostě mozek v těch pixelech je s trochou fantazie schopný cosi vyčíst, k něčemu si to přiřadit. Což u hromady nesourodých ascii znaků moc nejde ;-). Kdyby se na to poštval třeba ještě slovník, bylo by to lepší. Ale to by zas nebyl ono (samozřejmě, v obou případech jde pouze o srandu, ale u toho mého programu myslím že člověk vydrží o pár sekund dýl a to se vyplatí ;P).
    Baník pyčo!
    1.7.2010 01:32 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Teď mi třeba vypadl tenhle obrazek, celkem slusny pixelart (nebo temne proroctvi?) ;-). Urcite tam vidim vic nez v hromade caje :).
    Baník pyčo!
    1.7.2010 01:42 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    No nevim, u me to porad vykresluje jen bile okno :)
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 01:47 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Musis zmacknout mezernik, vzdyt to v blogu pisu ;-).
    Baník pyčo!
    1.7.2010 01:53 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Oprava: tvoje verze mi funguje. Nefungovala mi ta verze, co brala data z urandom.
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 02:04 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Tak ta mi jde, ale musel jsem na zacatku mainu z
      
    if(!Init())
    {
      SDL_Quit();
      return 1;
    }
    
    udelat
    
    Init();
    
    Proc netusim, predtim to slo. Je to nejaky rozbity :-). Tady jsem to vylepsil na /dev/random (musi se hybat myskou, jinak dojdou nahodna cisla). Viz priloha.
    Baník pyčo!
    1.7.2010 01:13 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Kdo je vetsi prase? Pridal jsem tam to cteni z urandom :-D
    1.7.2010 01:21 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    sorry cetlo to jenom 7 bajtu takhle je to spravne
    1.7.2010 01:23 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Cool, funguje :-).

    Kdyby to nekdo zkousel a neslo mu to, zrusit testovaci podminku kolem Init() na zacatku mainu. Nevim proc, ale aspon mi neprojde ;-). Pak to jde.
    Baník pyčo!
    Michal Wirth avatar 1.7.2010 08:00 Michal Wirth | skóre: 26
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    jen takovej rejp ... ten pocet kombinaci mate spatne, melo by to byt sude cislo ;-) to co tam mate, je IMHO cislo "posledni" kombinace s indexaci od nuly, ale jako pocet vsech kombinaci to nazvat nejde
    Důležité se časem stává absurdním, absurdní se časem mění v důležité.
    1.7.2010 10:31 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, máš pravdu.
    Baník pyčo!
    1.7.2010 08:33 Allah Akbar
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    A verzia pre konzolu nebude?
    1.7.2010 10:15 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    tady je :-)
    1.7.2010 10:42 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    To aby jsme pomalu zalozili git :-D. Jinak nejak mi to nebezelo, mam divny asi prekladac (na desktopu mam jeste ubuntu, gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) ;)). Kupodivu se size nechovalo jako globalni, musel sem ho udelat staticke (proc fakt netusim). A doplnil jsem nejake hlavickove soubory.
    Baník pyčo!
    Jendа avatar 1.7.2010 10:39 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Textová implementace v bashi.
    1.7.2010 10:47 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Pekne, ale chybi tu cislo jako jednoznacky identifikator obrazku. Ale to by asi napsat v bashi nebyla zadna sranda. Jeste cekam implementaci v awk, brainfucku a cobolu ;P.
    Baník pyčo!
    Michal Fecko avatar 1.7.2010 12:36 Michal Fecko | skóre: 31 | blog: Poznámkový blog
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    ja sa nehram ;-)
    +--------+
    |  |
    ||
    ||
    ||
    ||
    ||
    ||
    ||
    +--------+
    10
    
    
    xsubway avatar 1.7.2010 13:04 xsubway | skóre: 13 | blog: litera_scripta_manet
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    pěkné :)
    1.7.2010 12:11 Dadam | skóre: 12 | blog: dadamovo
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Dobrý :-) Tak mě napadlo, že rand vrací 32bitové čísla, že? Vygeneruj si čísla dvě a vynásob?
    A i B mají svoje výhody a nevýhody. Vyberte si to, co vám vyhovuje víc, a necpěte A tam, kam patří B.
    Jendа avatar 1.7.2010 12:19 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Nebude pak rozložení nerovnoměrné? (většina takto vygenerovaných čísel bude ve středu intervalu, jako když házíš dvěma platónskými tělesy) A taky přijdeš o prvočísla.
    1.7.2010 12:25 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, na to jsem tak nejak myslel. Stejne tak kdyz hazes dvemi kostkami a delas soucet, gausova krivka se tomu tusim nadava. Ale cteni z /dev/urandom (/dev/random) to resi (nekde v diskuzi).
    Baník pyčo!
    1.7.2010 12:28 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Baník pyčo!
    1.7.2010 19:05 Kvakor
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Stejne tak kdyz hazes dvemi kostkami a delas soucet, gausova krivka se tomu tusim nadava.
    Přesně takto se gaussovské rozdělení dělá. Pokud si to ještě dobře pamatuju, tak na použitelnou verzi stačí posčítat dvanác normalizovaných hodnot (tj. z intervalo 0,1) a odečíst šestku, pro nenormalizované funkce (jako je rand()) je třeba samozřejmě odečíst šestinásobek RAND_MAX a výsledek touto hodnotou ještě podělit (nebo s ním počítat jako s číslem s pevnou řádovou čárkou).

    1.7.2010 12:56 JVid
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Funkční řešení je vygenerovat dvě čísla, jedno posunout o 32b doleva a pak je vyXORovat. Při sčítání nebo násobení to samozřejmě fungovat nebude, resp. ne tak, jak by člověk chtěl.
    1.7.2010 13:07 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, to by asi šlo.
    Baník pyčo!
    Grunt avatar 1.7.2010 16:40 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    A nebylo by lepší cpát nějakou náhodnou entropii spíš do frekvencí? U toho je spíš šance, že si mozek něco domyslí.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    1.7.2010 16:57 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    A jak by sis to představoval? Na výstupu zvuk / fraktál?

    Mě by se líbilo nechat to takto náhodně generovat obrazce a kdyby mi nějaký něco připomínal (třeba nějaké zborcené písmeno A, to jsem už občas v tom smetí zahlédl), zastavit to a hledat podobné obrazce k tomu nalezenému (nějaké metoda postupného výběru). Jenže jak to realizovat...

    Jinak i z toho mého občas vypadne něco trošku zajímavého. Tady je třeba osově souměrný obrazec, který má druhou část barevně invertovanou.
    Baník pyčo!
    1.7.2010 17:22 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak

    No, mohl bys udelat inverzni diskretni kosinovou transformaci, treba by z toho lezlo neco zajimaveho :)

    Grunt avatar 1.7.2010 20:31 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Ne. Prostě náhodný šum (jaký třeba vyleze z dd if=/dev/urandom of=/dev/fb0) převést zpět z frekvenční domény do časové. Takže třeba pomocí ImageMagicku (nemám nainstalovanou HDR verzi, takže nemůžu ověřit správnost):convert -size 512x512 rgb:/dev/urandom -size 512x512 rgb:/dev/urandom -ift show:. Jen by se musela nějak normalizovat amplitudová složka aby se výsledek vešel do rozsahu. A klidně by na to šlo použít to pole 8x8. By z toho sice vylezl jen rozmazaný maglajz, ale i tak je větší šance, že v něm mozek uvidí něco víc než v takovém políčku pixelů 8x8.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.