Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Gen. náhod. čísel
Jdi na stránku 1, 2  Další
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
css



Založen: Jan 05, 2011
Příspěvky: 354
Bydliště: Karlovy Vary

PříspěvekZaslal: út říjen 06 2015, 11:19    Předmět: Gen. náhod. čísel Citovat

Dobré poledne, prosím pěkně o pošťouchnutí, jak vyřešit toto:

Zařízení s CPU, kde obsluha tu a tam stiskne tlačítko, CPU si vygeneruje náhodné číslo 0 nebo 1 a podle toho program pokračuje jednou ze dvou cest. Nechal bych v CPU běžet čítač a po stisku testoval jeden bit z jeho registru, to není problém. Problém mám s tím, že je požadavek, aby jedna varianta padala zhruba 7x častěji, než druhá, aby ze 100 pokusů program cca 15-20x provedl jednu operaci, a 80-85x jinou. Zdůrazňuji, že se nejedná o žádný herní nebo herně-hazardní automat Very Happy

Prosím o obecný postup, jak tohoto docílit, do instrukcí už si to naprogramuji sám. Díky a pěkný den. Petr Smile

_________________
Petr Valečko
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zaky



Založen: Oct 30, 2010
Příspěvky: 6609
Bydliště: Praha

PříspěvekZaslal: út říjen 06 2015, 11:29    Předmět: Citovat

Dvě části zadání si lehce odporují, každopádně pokud čítač necháš běžet dostatečně rychle cyklicky od 0 do 99 a budeš testovat, jestli při stisku tlačítka byla hodnota menší, či větší, než nějakých těch 80, žádanou pravděpodobnost tím docílíš.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
css



Založen: Jan 05, 2011
Příspěvky: 354
Bydliště: Karlovy Vary

PříspěvekZaslal: út říjen 06 2015, 12:03    Předmět: Citovat

Zaky: Super, díky, triviální řešení, přesně tak jsem si to představoval. Ještě jednou díky a pěkný den Smile
_________________
Petr Valečko
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3292

PříspěvekZaslal: út říjen 06 2015, 17:46    Předmět: Citovat

Nahode se prece musi jit naproti Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ross4435897



Založen: Nov 10, 2009
Příspěvky: 426
Bydliště: Brno

PříspěvekZaslal: út říjen 06 2015, 18:23    Předmět: Citovat

kvalitni reseni, skoro jako od RSA-CA s doporucenim NSA Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: st říjen 07 2015, 15:28    Předmět: Citovat

Možná už chápu ty gamblery, co kdysi seděli v hospodě u piva a koukali na proherní automat, jak tam jiní hází peníze, pak občas vstali a s desetikačkou vysypali 300Kč.

Asi tam byl podobnej "generátor".

_________________
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zaky



Založen: Oct 30, 2010
Příspěvky: 6609
Bydliště: Praha

PříspěvekZaslal: st říjen 07 2015, 15:34    Předmět: Citovat

Chtěl bych vidět, jak s takovýmto algoritmem dokážeš vytipovat, kdy padne ta menší pravděpodobnost, když čítač napočítá do té 100 třeba za 1 ms, tak je okamžik stisku tlačítka v lidském vnímání času tak náhodný, jak jen může být. Každopádně nemám patent na rozum a pokud někdo uvede sofistikovanější řešení, rád se nechám poučit, programováním jsem byl okolnostmi donucen se začít zabývat asi tak 3 roky nazpět a nikdy jsem tento obor nestudoval.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: st říjen 07 2015, 16:14    Předmět: Citovat

Pokud bude ten čítač běžet s periodou 1ms, tak stejné číslo vygeneruje pravidelně každou X × 1ms včetně násobků (X je např. 100). Při možnosti 80/20 je při opakovaném stisku docela slušná šance trefit správnou volbu.

Při náhodném jednorázovém stisku to samozřejmě neplatí.

_________________
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zaky



Založen: Oct 30, 2010
Příspěvky: 6609
Bydliště: Praha

PříspěvekZaslal: st říjen 07 2015, 16:23    Předmět: Citovat

Pro opakovaný stisk by se to samozřejmě dalo modifikovat, aby byl interval plovoucí, nebo třeba aby se bralo jako platné vždy číslo končící na 8 a 9, dá se toho vymyslet fůra, ale stejně bych se nebál, že se někdo dokáže synchronizovat na interval 1 ms, je to pro člověka přiliš rychlé. Soft pro proherní automaty řešit nehodlám, pravidel je pro to jistě dost a tazatel se ani na žádnou takovou věc neptal. Za to se našlo dost zpochybňovačů, ale žádná relevantní odpověď.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: st říjen 07 2015, 16:31    Předmět: Citovat

Neber si to prosím osobně, tohle je čistě technická debata.

Existují třeba kvazicyklické kódy, které to trošku rozhodí, aby to nebylo tak jednoduchý. Používají se třeba pro výpočet CRC u průmyslové komunikace MODBUS atd. Jde o to, že ta smyčka není lineární, ale pseudonáhodná. Je to vlastně jen pár exorů při každém kroku....

Viz třeba http://www.lammertbies.nl/comm/info/crc-calculation.html

_________________
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zaky



Založen: Oct 30, 2010
Příspěvky: 6609
Bydliště: Praha

PříspěvekZaslal: st říjen 07 2015, 16:42    Předmět: Citovat

Samozřejmě nic osobně neberu, že je generování čehokoli pseudonáhodného deterministickým systémem vždy velký problém je jasné, naštěstí je zrovna v případě mačkání tlačítka ta náhodnost velmi dobře dána právě časem stisku a tudíž se toho zhusta využívá. Montovat do algoritmu jednočipu sofistikované řešení je v tomto případě zbytečné, v případě potřeby jistě Google napoví. Co se týče softwaru pro proherní automaty, naopak Google nenapoví celkem nic, protože tato problematika je utajená jak hrad v Karpatech. Zajímavé je, že jsem před časem zkoušel hledat nějaké informace o přenosu povelů s plovoucím kódem, tak jak to dělají třeba centrály v autech a informace o této problematice se také z Googlu nějak nesypaly, tak nezbylo, než implementovat vlastní řešení.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: st říjen 07 2015, 16:51    Předmět: Citovat

Tak ono třeba stačí prohodit pár bitů v tom čítači a pak teprve porovnávat 80/20. Ale ta perioda se tím nezmění.

Psát do Google algoritmus plovoucího kódu se rovná sebevraždě výrobce.

_________________
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zaky



Založen: Oct 30, 2010
Příspěvky: 6609
Bydliště: Praha

PříspěvekZaslal: st říjen 07 2015, 17:01    Předmět: Citovat

Neočekával bych nějaký konkrétní detailní popis, to by se rovnalo návodu výrobce, jak otevřít jeho zámek bez klíče, to je jasné, ale na druhou stranu bych si dovedl představit, že by nějaký edukativní text popisující obecné principy mohl existovat, leč nenašel jsem. Nabízí se totiž základní otázka, přenos je jednosměrný a je třeba umět odlišit na straně přijímače kódy minulé a budoucí i přes to, že si uživatel může vysílat o sto pryč mimo dosah přijímače. Z analýzy problému vyjdou zajímavé skutečnosti naznačující, kde jsou slabiny systému. Takže pokud někdo o nějakém takovém článku ví, rád bych si ho přečetl.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: st říjen 07 2015, 17:05    Předmět: Citovat

Pravda je, že to musí umět zachytit i neplatné kódy v určitém rozsahu. Ale ten generující polynom, t.j. ta pseudonáhodná smyčka je výrobcem volitelná.
_________________
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3697
Bydliště: Praha

PříspěvekZaslal: st říjen 07 2015, 19:16    Předmět: Citovat

Zaky napsal(a):
Samozřejmě nic osobně neberu, že je generování čehokoli pseudonáhodného deterministickým systémem vždy velký problém je jasné,
Není to tak strašné. V době, kdy ješte nebyly mikrporocesory tak rozšířené, nebo se jim ještě nevěřilo, se používaly pseudonáhodné generátory na šifrování při přenosu dat. Na obou stránch běží kongruentní generátory založené třeba na 64 bitových posuvných registrech s kruhovými vazbami na členy XOR tak, jak to vidíme u schémat různých CRC. Přepínáním vazeb a různým počátečním nastavením se generují různé cykly s délkou 2^64 (alespoň se tomu věří Smile ), čímž se generuje pseudonáhodná posloupnost sloužící jako vložené heslo pro Vernanovu šifru.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Jdi na stránku 1, 2  Další
Strana 1 z 2

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.18 sekund