-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
e.net!feeder.erje.net!usenet.goja.nl.eu.org!aioe.org!nyPK7k8oeDafdNpooDsxZQ.use
r.gioia.aioe.org.POSTED!not-for-mail
From: Mateusz Viste <m...@x...invalid>
Newsgroups: pl.comp.programming
Subject: Re: Jak działa rotr16 w c?
Date: Mon, 4 Jan 2021 09:39:13 +0100
Organization: . . .
Lines: 44
Message-ID: <20210104093913.0130a132@mateusz>
References: <8...@g...com>
<20210103182423.7ae8261c@mateusz>
<8...@g...com>
NNTP-Posting-Host: nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Complaints-To: a...@a...org
X-Notice: Filtered by postfilter v. 0.9.2
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
Xref: news-archive.icm.edu.pl pl.comp.programming:215278
[ ukryj nagłówki ]2021-01-03 o 13:29 -0800, o...@g...com napisał:
> niedziela, 3 stycznia 2021 o 18:24:30 UTC+1 Mateusz Viste napisał(a):
> > rotr16() to nie C.
> >
> > Jeśli pytanie dotyczy specyficznego Microsoftowego rozszerzenia, to
> > dokumentacja jest tutaj:
> > https://docs.microsoft.com/en-us/cpp/intrinsics/rotr
8-rotr16?view=msvc-160
>
> To dotyczy tej pracy:
> https://www.pcg-random.org/pdf/hmc-cs-2014-0905.pdf
Tak, wiem. Ja tylko wskazuję na błędnie zadane pytanie: "Jak działa
rotr16 w c". Otóż nie działa, bo nie ma czegoś takiego w C.
> Tam są używane rotate64. Kod jednego z generatorów, który mnie
> interesuje wygląda tak:
>
> uint32_t rot1 = (uint32_t)(state >> 122u);
> uint64_t high = (uint64_t)(state >> 64u);
> uint64_t low = (uint64_t)state;
> uint64_t xored = high ^ low;
> uint64_t newlow = pcg_rotr_64(xored, rot1);
> uint64_t newhigh = pcg_rotr_64(high, newlow & 63u);
> return (((pcg128_t)newhigh) << 64u) | newlow;
Powyższy kod odwołuje się do funkcji pcg_rotr_64(). Sądząc po nazwie,
to jest funkcja wchodząca w skład samego projektu.
> Chcę wiedzieć co tam jest robione
Zajrzyj głębiej w źródła, by odszukać jak PCG zaimplementował swoje
pcg_rotr_64().
Mateusz
Następne wpisy z tego wątku
- 04.01.21 13:28 o...@g...com
- 06.01.21 13:10 fir
- 10.01.21 17:07 o...@g...com
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- 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
Najnowsze wątki
- 2024-11-24 Aby WKOOOORWIĆ ekofaszystów ;-)
- 2024-11-22 OC - podwyżka
- 2024-11-22 wyszedł z domu bez buta
- 2024-11-22 Bieda hud.
- 2024-11-24 DS1813-10 się psuje
- 2024-11-23 Białystok => Inżynier bezpieczeństwa aplikacji <=
- 2024-11-23 Szczecin => QA Engineer <=
- 2024-11-23 Warszawa => SEO Specialist (15-20h tygodniowo) <=
- 2024-11-22 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-22 Warszawa => Senior Account Manager <=
- 2024-11-22 Warszawa => Key Account Manager <=
- 2024-11-22 Warszawa => DevOps Specialist <=
- 2024-11-22 Kraków => IT Expert (Network Systems area) <=
- 2024-11-22 Warszawa => Infrastructure Automation Engineer <=
- 2024-11-22 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=