-
Fototrend

Új hozzászólás Aktív témák
-
-
válasz
Postas99
#15033
üzenetére
A megoldás kulcsa az, hogy (Y>>1) legfelső bitje fixen nulla.
Innen, bitenként simán végig lehet szaladni, mivel:Xn = Yn xor 0 -> Xn = Yn
Xn-1 = Yn-1 xor Yn -> Yn ismert, vagyis Yn-1-et is ki lehet számolni
...
X0 = Y0 xor Y1 -> Y1 ismert, vagyis Y0-t is ki lehet számolni -
kovisoft
őstag
válasz
Postas99
#15033
üzenetére
Hogyan is kapjuk az Y XOR (Y>>1) egy adott bitjét? Ez akkor lesz 1, ha az adott bit Y-ban eltér a tőle eggyel balra lévő bittől, mivel Y-t az eggyel jobbra shiftelt értékével XOR-oljuk. És akkor lesz az adott bit 0, ha az adott bit Y-ban ugyanaz, mint a tőle eggyel balra lévő bit.
Ha ezt megfordítjuk, és vesszük X egy bitjét, akkor ha ez 0, abban az esetben Y-ban ugyanezen a helyen lévő bit meg kell egyezzen a tőle balra lévővel.
Ha elindulunk X legfelső bitjétől, akkor ez alapján megállapíthatjuk Y legfelső bitjét, mert Y>>1-nek a legfelső bitje 0, ezzel XOR-oljuk Y-t. Tehát Y legfelső bitje ugyanaz lesz, mint X legfelső bitje. Innen haladhatunk lefelé: ha X következő bitje 0, akkor Y következő bitje megegyezik Y előző bitjével. Ha X következő bitje 1, akkor Y következő bitje ellenkezője Y előző bitjének.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Logitech z5500 5.1
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen1 - i7 10850H 16GB DDR4 512GB SSD Quadro T1000 4GB WIN11
- 5G Lenovo ThinkPad P14s Gen 3 Intel Core i7-1280P Nvidia T550 32GB 1000GB 1 év teljeskörű garancia
- AKCIÓ! Apple MacBook Pro 16 M4 Pro 48GB RAM 4TB SSD macbook garanciával hibátlan működéssel
- 365 NAPRA RÉSZLETRE BANKMNETES KAMATMENTES , GAMER PC ,LAPTOPOK , GAMER SZÉKEK , GAMER MONITOROK
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


