Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Objasnění citace z manuálu

Ahoj, může mi tohle někdo vysvětlit ? Proč spustí zrovna tyto dvě funckce ? Je každé číslo unikátní pro spuštění takových funkcí (splnění podmínek)? Předem díky

Cituji:

Tímto nastavíme sys[140] na hodnotu 20. Program následně podle jednotlivých bitů spustí funkce 'paty_bit_je_nastaven' a 'treti_bit_je_nastaven'.

sys[140] = 20;

if (sys[140] & 1) prvni_bit_je_nastaven();
if (sys[140] & 2) druhy_bit_je_nastaven();
if (sys[140] & 4) treti_bit_je_nastaven();
if (sys[140] & 8) ctvrty_bit_je_nastaven();
if (sys[140] & 16) paty_bit_je_nastaven();
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
A tohle někomu dává smysl ? Když předám scriptu nějakou hodnotu tak dostanu takové výsledky. Proč j…
Honza Marek 27.11.2015 10:56
Honza Marek
Jaký skript máš na mysli?
Wikan 27.11.2015 10:58
Wikan
Netuším o jaký script se jedná ani netuším v čem to je napsaný, nedostanu se na zdrojové kódy :-(
Honza Marek 27.11.2015 11:08
Honza Marek
Tak to vypadá, že tam zafungovalo omezení velikosti čísel na 32 bitů. U čísel, která ten rozsah přes…
Wikan 27.11.2015 11:58
Wikan
Můžu to zkusit, jaké je poslední číslo aby nepřesáhlo 32bitů ?
Honza Marek 27.11.2015 13:29
Honza Marek
2^32 - 1
Wikan 27.11.2015 13:32
Wikan
Pokud je to 4294967295 tak to vrací -1, lze z toho něco usoudit ?
Honza Marek 27.11.2015 13:35
Honza Marek
4294967296 (2^32) vrací 0
Honza Marek 27.11.2015 13:36
Honza Marek
Tak je to tak, jak jsem psal.
Wikan 27.11.2015 13:36
Wikan
Milane jsi fakt bedna.. :-) Ještě, že tě tu máme... Díky moc. poslední
Honza Marek 27.11.2015 13:42
Honza Marek

A tohle někomu dává smysl ?

Když předám scriptu nějakou hodnotu tak dostanu takové výsledky. Proč jsou některé stejné a některé zcela odlišné ?

hodnota     # vysledek 
1234567890  # 1234567890
1111111112  # 1111111112
9090909090  # 500974498
12345678901 # -539222987
12345678902 # -539222986

nebo zadejte co mám zadat, ať je se čeho chytnout.. díky

Zpět do poradny Odpovědět na původní otázku Nahoru