Portál AbcLinuxu, 24. října 2025 10:06
.
BTW samotnej NAND imho nestačí. Na postavení univerzálního turingova automatu je imho potřeba ještě zpětná vazba.
.
Já jsem ten NAND bral z matematického hlediska
Pokud se tu oháníte matematikou (v tomto případě předpokládám matematickou logikou), určitě by vám měly být známy pojmy úplná disjunktní/konjunktní normální forma logické funkce. V podstatě jde o to, že libovolnou logickou funkci vyjádříte pouze pomocí operátorů NAND nebo NOR. Zpětná vazba nebo rekurze je pouze zahrnutí času do logické funkce.
je pouze zahrnutí časuCož, ale v případě implementace emulátoru znamená dost velké přidání kódu (výchozí hodnoty, výpočet může pokračovat tepve až se vypočítají všechny větve ústící do zpětné vazby, braní v potaz rychlost obvodu... takovej invertor zapojený do smyčky bez omezení maximální frekvence, dává opravdu realistické údaje
).
Ad všepoužitelnost NANDu. Schválně mě z NANDu postav DRAM paměť, nebo třeba EEPROM. Proto taky tvrdím, že pokud nezávisí na zpětné vazbě, tak je lepší říkat tranzistor jako univerzální prvek (a i to imho nemusí stačit, viz MRAM, diodové PROM, nebo kvantové hradlo).
Jinak je to jen moje šťouralství. Blogpost se mě samozřejmě líbil.
Já jsem ten NAND bral z matematického hlediska.Tady někdo neví, co chce
Samozřejmě že stačí. Znovu opakuji, že libovolnou logickou funkci lze vyjádřit za pomoci pouze jediného logického operátoru a to buď NAND nebo NOR. Důkaz najdete v každé učebnici matematické logiky, Booleovy algebry, nebo základů číslicové techniky. Napájení je pouze konstanta vstupující do logické funkce. S časem je to tak, že pro kombinační logickou funkci ho nepotřebujete (viz dále) a synchronní sekvenční logické funkce pracují s diskrétním časem, kdy výsledek v čase T se vyjadřuje jako funkce vstupů, vnitřních stavů a výstupů v čase T-1. Asynchronní sekvenční obvody jsou pak speciální kapitola sama pro sebe. Znalost nějakých časových závislostí je potřeba až mnohem později pro statickou časovou analýzu konkrétní fyzické implementace, ale ne pro vlastní funkční návrh.
Ve vašich argumentech máte problém udržet konstantní úroveň abstrakce. Pletete dohromady logickou funkci a fyzickou implementaci. Co třeba začít diskuzi o pneumatických logických členech nebo o logickém obvodu realizovaném mechanicky? Mimochodem, buňka DRAM nebo EEPROM není logickým operátorem! Z hlediska binární logiky je buňka DRAM podle dané situace buď konstanta nebo paměťový element stejně tak jako třeba klopný obvod. Z hlediska obvodové analýzy je to samozřejmě jinak, ale tam pak už zase nikoho nezajímá (do značné míry) logická funkce.
Samozřejmě že stačí. Znovu opakuji, že libovolnou logickou funkci lze vyjádřit za pomoci pouze jediného logického operátoru a to buď NAND nebo NOR. Důkaz najdete v každé učebnici matematické logiky, Booleovy algebry, nebo základů číslicové techniky. Napájení je pouze konstanta vstupující do logické funkce. S časem je to tak, že pro kombinační logickou funkci ho nepotřebujete (viz dále) a synchronní sekvenční logické funkce pracují s diskrétním časem, kdy výsledek v čase T se vyjadřuje jako funkce vstupů, vnitřních stavů a výstupů v čase T-1. Asynchronní sekvenční obvody jsou pak speciální kapitola sama pro sebe. Znalost nějakých časových závislostí je potřeba až mnohem později pro statickou časovou analýzu konkrétní fyzické implementace, ale ne pro vlastní funkční návrh.To ale není NAND, ale NAND + čas
. A to jsem celou dobu měl na mysli. Protože bez toho času bys dostal u zpětné vazby nesmysly. Schválně si skus bez časových závislostí vyčíslit logický výraz třeba Q=Q NAND Q.
Mimochodem, buňka DRAM nebo EEPROM není logickým operátorem!
Z hlediska binární logiky je buňka DRAM podle dané situace buď konstanta nebo paměťový element stejně tak jako třeba klopný obvod.Tak buď je nebo není
. Doufám, že je, protože buněk DRAM mám v počítači víc než NANDů.
Každopádně když nad tím uvažuju, tak se vlastně opravdu hádáme o tom drátu
. Jinak je jedna věc, která NANDem postavit nelze, ale je to extrém. Tím je například tepelný šum. Můžeš sice postavit z NANDu automat, který ho bude emulovat, ale výstupní sekvence bude pouze pseudonáhodná.
Poslední reakce, protože tahle diskuze nikam nevede. Sice se budu opakovat, ale znovu zdůrazňuji, že máte problém udržet se v jedné úrovni abstrakce.
To ale není NAND, ale NAND + čas.
Ještě jednou a naprosto vážně (a bez urážek) odkazuji na libovolnou učebnici matematické logiky. Čas skutečně není logický operátor. Je to pouze jedna ze vstupních proměnných.
Tak buď je nebo není. Doufám, že je, protože buněk DRAM mám v počítači víc než NANDů.
Analýza libovolného obvodu se provádí s ohledem na okrajové podmínky a pracovní bod. Na vyšším úrovni abstrakce (logická simulace) tedy můžete v některém případě považovat buňku DRAM za konstantu (za daných podmínek nemění hodnotu) nebo za paměťový element. Vlastní funkce buňky DRAM vás začne zajímat na mnohem nižší úrovni (tranzistorový model nebo ještě níže obvodová simulace).
Jinak je jedna věc, která NANDem postavit nelze, ale je to extrém. Tím je například tepelný šum. Můžeš sice postavit z NANDu automat, který ho bude emulovat, ale výstupní sekvence bude pouze pseudonáhodná.
Opět mícháte dohromady různé úrovně. Tepelný šum je analogová veličina. V diskrétní oblasti ji můžete pouze simulovat. Mimochodem, převést tepelný šum do diskrétní oblasti není zase až tak složité a skutečně vám na to stačí pouze pár hradel NAND: 2x kruhový oscilátor, komparátor, LFSR. Díky tepelnému šumu budou výstupy kruhových oscilátorů vykazovat odchylky ve frekvenci, fázi a především jejich nekorelované náhodné změny v čase. Výstupem komparátoru je pak náhodná (nikoli pseudonáhodná) binární řada, která se v LFSR převede na paralelní slovo s požadovanou charakteristikou. Abych předešel další diskuzi... skutečně jsem toto řešení použil v návrhu několika integrovaných obvodů, je plně funkční s ověřenými parametry.
Čas skutečně není logický operátor. Je to pouze jedna ze vstupních proměnných.Však jsem taky nikde nepsal, že by měl být. Jen jsem oponoval, že jen tak zapojit dva NANDy libovolně každý drát s každým není dobrý (dva výstupy najednou) a že pro obvod tedy platí určitá omezení. Například jen výstupy na vstupy bez zpětné vazby, ale to na popis všeho nestačí a tak je nutné přidělat zpětnou vazbu a tím získat sekvenční obvod.
Analýza libovolného obvodu se provádí s ohledem na okrajové podmínky a pracovní bod. Na vyšším úrovni abstrakce (logická simulace) tedy můžete v některém případě považovat buňku DRAM za konstantu (za daných podmínek nemění hodnotu) nebo za paměťový element. Vlastní funkce buňky DRAM vás začne zajímat na mnohem nižší úrovni (tranzistorový model nebo ještě níže obvodová simulace).Hmm tady jsem zřejmě blbě začal diskuzi. Neměl jsem začít mluvit o matematice. Faktem je, že pomocí
vypáleny do křemíku ve tvaru obrazce NANDnejsou určité části počítače tvořeny. Proto jsem pak dále v diskuzi uvedl, že z tohodle popisu je lepší brát jako základní prvek tranzistor. I když na matematické úrovni by šel udělat model jen ze vstupů, času a NANDů.
Opět mícháte dohromady různé úrovně. Tepelný šum je analogová veličina. V diskrétní oblasti ji můžete pouze simulovat. Mimochodem, převést tepelný šum do diskrétní oblasti není zase až tak složité a skutečně vám na to stačí pouze pár hradel NAND: 2x kruhový oscilátor, komparátor, LFSR.Mě nejde tak o převod hodnot, jako spíš o simulaci tepelného šumu. Imho neumíš udělat generátor opravdu náhodných čísel, aniž bys použil pravé náhodné hodnoty zvnějšku (kvantovou mechaniku). Což souvisí s tím, že vesmír nemusí jít simulovat turingovým automatem (tedy ani NANDem), protože může mít silnější třídu. Jinak samozřejmě z NANDů nepostavíš nic co řeší halting problém (a ostatní).
. Tady je ale problém toho jak udělat tu hmotnou složku a pak výkon počítače, na rozdíl od 2D, kde je složitost tak O(n^2), tak u stereo 3D je to už O(2*n^2). Ale u holodeck (plná 3D) je složitost O(n^3), což je dost brutální výpočetní náročnost (například pokud má monitor 1 milion pixelů, tak tady by jich měl 1 miliardu).
Jinak technologie pro současné zlepšení tu jsou, dost dobrýho VR by šlo docílit třeba pomocí 3D brýlomonitoru a snímáním pohybů těla (kinect). Ale mám takový dojem, že ono spousta lidí by něco až tak reálněho asi nechtěla. Já jsem tuhle hrát hru Tasty Static. Ale kdybych měl v reálu skákat v pokoji, tak bych se na to vykašlal. Nehledě na to, že bych si jistě zlomil vaz
(i na monitoru s klávesnicí mě pěkně bolelo zápěstí).
.
Pointa spis byla, ze to rozlisuje ani ne tak masovost znalosti, ale masovost vyroby a uziti.Prave to jsem myslel taky. Nebo ti nerozumim
Otazka je, zda magie z principu dovoluje masovou vyrobu tech svitku nebo lektvaru. Pokud ano, pak uz je to spis asi technologie.Tak to tezko rict...
Source Mage is a source-based GNU/Linux distribution based on a Sorcery metaphor of "casting" and "dispelling" programs, which we refer to as "spells", and a package manager called "Sorcery".
Omezení Mág je vždy omezen množstvím omezení, dokonce se čsto stává, že čím mocnější mág a silnější kouzlo, tím více omezení. Zatímco mág-začátečník si může většinou celkem beztresně házet malé ohnivé koule a riskovat nejvýše podpálení nějaké stodoly nebo ztrátu vlasního vousu, arcimág si jen tak nemůže pro zábavu vyvolat Ultimativní Ohnivý Vír Drtící Veškerý Čas A Prostor, protože pokud po provedení kouzla, které spálí veškerý vzduch, vše živé změní v popel, okolní zemskou kůru rozláme na kousíčky a roztrne realitu vedví tak, že se skrz vznikou trlinu vyrojí hordy nevýslovně obludných věcí s chapadly, vůbec přežije, tak problém s omluvami ostatním a a placení nákladů za opravy bude asi ten poslední, který by měl řešit. Pokud se k tomu přidá i nějaká ta forma předpovídání budoucnosti, je cesta, po které mácg musí kráčet, velmi, ale velmi úzká (což jen lehčí forma problému kombinace vševědocností, všemocností a dobroty).
U programování je to podobné - čím mocnější prostředek použijeme, tím je to složitější, tím méně chyb si můžeme dovolit a tím strašnější věci můžeme napáchat. Proto existují privilegovaní a neprivilegovaní uživatelé a režimy, proto jsou "bezpečné" a "nebezpečné" jazyky (např. z pohledu práce s pamětí), proto jsou nástroje a postupy, které mají v README a manuálových stránkách "Tohle nedělejte, pokud přesně nevíte, co děláte, jinak si přepíšete celý disk/usmažíte procesor/uděláte z routeru cihlu". A což teprve prostředky, které vám dávají moc nad minimálně částí internetu, kde jedinou chybou v konfiguraci (např. routovacích tabulek) můžete napáchat nedozírné škody, například někoho omylem zcela zaDDoSovat či dokonce odstřihou celé státy od spojení se světem.
Úrovně Mágové si na úrovně většinou potrpí. Často je mají i číslované. Vždy se vyskytuje hiearchie, často podle podle schopností. Obyčejný vesnický mág či čarodějka bude obvládat jen jednoduchá kouzla, bylinky, léčení plynatosti krav a hlednání zaběhlých ovcí, ale o tom, jak funguje skutečná magie, nejspíš nebudou mít ani ponětí, bude někde na spodku. Arcimág, který zná většinou, ne-li všechna kouzla zákony fungování magie jejich vesmíru, zas bude někde na vrcholu. Podobné je dělaní i podle oborů. Dokonce se vyskytují i pod-mágová, "uživatelé magie", kteří sice vůbec nevědí jak magie funguje, ale umí jí používat a vědí, co smí a nesmí, i když jenom ve stylu "Tohle nesmíš nikdy dělat, nebo se stanou Strašlivé Věci".
U programování to není tak strikně rozděleno, i když existuje nepsaná hiearchie, kdy např. programátoři jazyka X se dívají shora na programátory v jazyce Y, kteří se zas dívají shora programasátory v jazyce Z. Stoupency školy A budou tvrdit, že jen jejich škola je Ta Pravá Cesta K Osvícení a že jazyky školy B jsou Opravdovým Zlem Páchaným Na Duši Programátora, zatímco škola B bude o škole A tvrdit, že jsou to jen zastydlí hipíci, kteří by udělali nejlíp, kdyby se vrátili zpátky ke kouření trávy a batikování triček. Všichni se nicméně dívají zhora na "skript kiddies". V oborech je to podobné - programátoři operačních systémů se dívají skrz prsty na programátory aplikací a ti se zas dívají podobně na webové programátory (tedy alespoň donedávna, za pár let to možná bude úplně jinak). A pak nesmíme zapomenou na masu "pokročilých uživatelů", kteří sice počítače používají, ale nevědí o nich o moc více než ti běžní uživatelé.
Nevyváženost pohlaví. Celkem oblíbené téma. Zatímco někde se nedodržuje vůbec, jinde je naopak dodržováné výhradně. Často je jsou schopnosti odlišné, například klasický motiv je to, že ženy-čarodějky používají magii přírody, která je použitelná spíše pro věci jako lečení, ovládání rostlinstva a zvířectva a pododně, zatímco muži-mágové berou syrovou magii rovnou z vesmíru a mohou jí používat relativně libovolně, včetně utočných a destruktivních kouzel a páchání všemožných obludností. Jinak vyjádřeno, ženy Přírodu přemlovají, zatímco muži Vesmíru vnucují svoji vůly (toto je, mimochodem, postavené minimálně z části na reálném základě).
Jedním z velmi častých motivů v tomto oboru je i marnivost čarodějek - zatímco mágové si často svůj stařecký a vousatý vzhled často dokonce kultivují (pokud se nesnaží vypadat špíše děsive nebo drsně), první věcí, co udělá dostatečně silná čarodejka, je místní ekvivalent plastické operace, často ještě doprovázený porovnávaním s kvalitami přislušných konkurentek a jejich případnou eliminací, obvykle prostřednicvím ovoce ...
V IT je to trochu podobné - zatímco v některých oborech je to buďto vyvážené nebo dokonce mírně ve prospěch žen, čím více se postupuje blíže "železu", tím žen ubývá, i když k nule to naštěstí neklesne. Četl jsem na to různé úvahy, například to, že ženy berou počítač jako nástroj, stejně jako žehličku nebo pračku a jeho vnitřnosti je nechávají chladným, zatímco muži v něm vidí hračku a minimálně část chce vědět, jak funguje uvnitř, prý se stačí už dívat, s čím si a jak hrají malé děti. Druhá strana odporuje, že je to dané výchovou, či kulturou, nicméně opičí mládata si vybírají podobný styl hraček jako lidské děti (jak to je doopravdy se už asi pořádně nedozvíme, protože minimálně v USA jsou podobné studie dané do kladby a v Evropě to nejspíš nebude dřív či později jinak).
Podobné je to v komunikaci - tam, kde se mluví s lidmy (podpora, obchodní oddělení a pod.) bude žen klidne i nadpoloviční většina, kdežto někde v kamrlíku, oblkopeném tisíci blikajících světélek, najdete nejspíš muže, kterému bude celkem jedno, že na něj ten den ve firmě promluvili jen dva živí lidé (vrátný a uklízečka).
No a na tu marnivost se stačí podívat na jakýkoliv velký blog s množstvím uživatelů a porovnat styly podle pohlaví - i přes mohutné obvlivnění nerovnoměrným rozložením vzorku (např. tím, že webový programátoři si raději dělají stránky vlastní) tu bude vidět odlišnost přístupu ke vzhledu.
Černá a bíla magie. Mágové se ve většině fantasy dělí na černé a bíle, kde pravidlem je že bílí jsou ti dobří a černí ti zlí. Jinde jse to rozdělané podle technik (např. léčení je bílá, proklínání černá). Jinde to berou podle přístupu, protože stejným kouzlem je možná jak pomáhast, tak škodit, takže se to bere podle podle aktuláních okolností: Pyrokinezí můžete rozdělat oheň v kamench nebo udělat z človeka živou pochodeň, krátkodobým oživením mrtvého můžete dovolit přibuzným rozloučit se, nebo získat důležité informace, ale tím dlohohodobým můžete udělat snadno ovladatelné zombie, a ovládání cizí mysli může fungovat jako velmi účinná terapie, nebo jako neméně účinný brainwashing ...
I v programování a IT obecne se tohle dělení drží, hlavně u hackerů, i když tam je motiv přenesený oblkikou z westernů a barev klobouků jejich představitelů. A zatímco lidé mimo obor se drží dělení prvního typu, v praxi je to spíše to třetí. A ano, jsou lidé, co budou tvrdít, že ping, nmap a tcpdump jsou "hackerské nástroje"
Pravá jména Aby mág mohl vyvolat nějaké kouzlo, musí znát jeho jméno, aby mohl působit na nějakou věc, musí znát její pravé jméno, většinou v prastarém, a těžko vyslovitelném jazyce, takže musí trávit nemalou část života čtením rozličných grimoárů. Aby mág povolal démona, musí při obřadu pronést jeho pravé jméno, které je často zcela nevyslovitelné, alespoň ne s lidskou sadou hlasivek.
No a programátor, aby zavolal jakoukoliv funkci, nebo modifikoval nějaký objekt, musí znát jeho jménou - nemusí to být pravé jméno (a.k.a. GUID), protože naštěstí máme jmenné prostory a lokalitu (bez nich by to bylo v některých případech opravdu drsné), nicméně znát ho musí (nebo alespoň masí vědět, kde a jak ho najít). A zkuste si přečíst nahlas některá API, mnoho funkcí i konstant si ve vyslovitelnosti názvu nezadá s nezemskými obludnostmi z románů H. P. Lovecrafta. A když už jsme u těch démonů,
Vyvolávání Pokud chce mág vyvolat nějakého démonam, musí znát nejen jeho pravé jméno, ale musí připravit obřad a rozličná jiná prerekvizita typu spousta svíček z černého vosku, beraní lebky, pentagram, mločí oko, černý kouhout nebo dokonce neposkvněná panna. Pak teprve může provést samotné vyvolání a i při tom musí dávat pozor a démona nenaštvat, obvlášť pokud se nedrží zásady "Nikdy nevyvolávej nic většího, než tvoje hlava".
Programátor se sice obejde bez pentagramů, lebek a podobných serepetiček, ale pokud chce volat třeba nějakého unixového démona, řekněme přes BSD socket, tak musí znát jeho jméno (tj. adresu, port a protokol), musí připravit komplikovaný obřad (nikdo mi nevymluví, že nastavení BSD socketu není těžká magie
), provést samotné přivolání (fce. connect()) a řídit se při tom příslušným protokolem. Naštěstí má narozdíl od mágů výhodu, že pokud udělá něco špatně, tak ho démon nesežere, ale vynadá mu chybovou hláškou a zavře socket. A také k tomu nepotřebujete žádné mločí oči a panny, což se dnes velmi, ale opravdu velmi těžko shání
Nektromancie Tato téměř vždy černá magie je považována většinou za velmi mocnou disciplínu, s jejíž pomocí mohou být postaveny neméně mocné armáty poslušných služebníků, které je velmi, ale opravdu velmi těžké zlikvidovat, leda s vyjímkou zabití řídícího nekromanta.
I v IT jsou "nekromanti", vládci botnetů, ovládající statisícové armády zombifikovaných PC, ale naštěstí místo nastolení Příchodu Druhé Temnoty je využívají na rozesílání viagru propagujícího spamu a DDoS útoky. A ano, i tady je jedním z mála účiných metod odstřižení řídícího kanálu.
A pokud by nebyly skoro dvě v noci, určitě by mně napadly i další příklady, takže pokud to někoho zajímá a ovládá angličtinu, doporučuju pro celou přehršel podobných příkladů (převážně bez IT části, tu si pečlivý čtenář dodá osobně) navšívit příslušné položky indexu Magic And Powers na TVTropes, ale pozor, opatrně
. Jinak u Kvakora se daj IMHO předpokládat kvalitní texty z patra. I když rozsáhlost tohodle mě taky překvapila (je tam dost stylu z Pratchetta).
).
.
Karnaugh je guru.
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.