-
Data: 2021-01-02 15:45:55
Temat: Re: Co robi permuted congruential generator XSL-RR-RR? Próbuję zrozumieć scheamt działania.
Od: Mateusz Viste <m...@x...invalid> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]2021-01-02 o 06:33 -0800, o...@g...com napisał:
> 1. count = (int)(x >> 122)
>
> Czyli "int" to nasza liczba startowa, na której stosujemy ">>"? A
> może wrzucamy do generatora liczbę x? Skąd wziąć zatem wartość int i
> czym ona jest?
int to nie jest żadna wartość, to tylko informacja dla kompilatora:
"wynik obliczenia (x >> 122) ogranicz do tylu bitów, ile ma normalny
int na tym systemie". Czyli typowo (dziś) 32 albo 64. W tym konkretnym
przypadku chodzi raczej tylko o uniknięcie ostrzeżenia ze strony
kompilatora.
> A skąd mam wziąć wartość tej zmiennej? Wstawiam do równania uint64_t,
> ale ile to ma konkretnie wynosić? A może to:
>
> ((uint64_t)(x ^ (x >> 64)
>
> to wcale nie jest mnożenie, tylko chodzi o coś innego? Ja tu widzę
> pomnóż liczbę uint64_t razy (x ^ (x >> 64).
Tak jak wyżej - uint64_t to nie jest zmienna, tylko cast. Tj.
informacja "wynik działania x xor (x shr 64) ogranicz do 64
bitów". Operacja którą podałeś wykonuje XOR na dwóch połówkach
128-bitowej wartości, wynik zapisuje w niższej połówce, a wyższą
połówkę usuwa (właśnie za pomocą castowania do uint64_t).
Mateusz
Następne wpisy z tego wątku
- 02.01.21 15:49 Mateusz Viste
- 02.01.21 16:25 o...@g...com
- 02.01.21 17:15 Mateusz Viste
- 02.01.21 17:50 o...@g...com
Najnowsze wątki z tej grupy
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-05-02 Gdańsk => Business Development Manager - obszar bezpieczeństwa IT <=
- 2024-05-02 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-02 Katowice => Java Developer <=
- 2024-05-02 'Studenci do nauki!'
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Wrocław => Lider Serwisu/Programista PLC z językiem niemieckim <=
- 2024-05-02 Łódź => Senior DevOps Engineer <=
- 2024-05-02 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-02 Ulm => Solution Architect (secure communication and IoT solutions) <=
- 2024-05-02 Fotowoltaika - inwerter - jakie ficzery?
- 2024-05-01 1902 Clement Gerrard
- 2024-05-01 Białystok => Inżynier DevOps (Kubernetes, AWS) <=
- 2024-05-01 Berlin => IT Network Engineer <=