Results 1 to 5 of 5

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User vanmx's Avatar
    Join Date: Oct:2006
    Location: Ñëèâåí
    Posts: 1,964

    Òúï âúïðîñ ñâúðçàí ñ ïîáèòîâè îïåðàöèè è C#

    Çäðàâåéòå,

    Èìàì ñëåäíèÿ ïðîáëåì:

    Èìàì íÿêàêâî 32 áèòîâî ÷èñëî. Îò íåãî òðÿáâà äà âçåìà n áðîé áèòà êàòî ïúðâèÿ áèò çàïî÷âà ïîçèöèÿ p è ðåçóëòàòúò äà å îòíîâî 32 áèòà ÷èñëî.

    Èìàì åòî òàçè ôóíêöèéêà:

    Code:
    int ExtractBits(int number, int n, int p)
            {
                return (((1 << (n - 1)) - 1) & (number >> p));
            }
    Âñè÷êî èçòëåæäà íàïúëíî ëîãè÷íî è ìè èçãëåæäà êàòî íàé-äîáðîòî ðåøåíèå íà ïðîáëåìà. Íåçíàéíî çàùî îáà÷å êîãàòî ïðèìåðíî n = 1 èëè n = 2 ôóíêöèÿòà "åêñòðàêòâà" åäèí áèò ïî-ìàëêî, à â äðóãèòå ñëó÷àè âñè÷êî ïîíå èçãëåæäà íàðåä. Ïðèìåðíî àêî number = 0b101011, p = 0 è n = 2, ôóíêöèÿòà âðúùà 0b1 âìåñòî 0b11.

    Íÿêàêâè èäåè íà êàêâî ìîæå äà ñå äúëæè òîâà ?
    Last edited by vanmx; 1st August 2019 at 03:07.
    X470 AORUS ULTRA GAMING | Ryzen5 2600 |2x16GB Corsair LPX 3200Mhz | EVGA GeForce GTX 1080 Ti SC Black Edition Gaming|512GB Samsung 970 Pro +
    512GB ADATA SU800| Corsair HX1200i | Corsair Graphite 600t |BENQ PD3200U

  2. #2
    Mire-x
    Join Date: Apr:2005
    Location: Sofia
    Posts: 763
    Ïðè n=2 ñå ïîëó÷àâà (1<<(2-1))-1 = (1<<1)-1 = (0b10)-1 = 1. Òàêà ìàé âèíàãè ìàñêàòà òè å ñ 1 áèò ïî-ìàëêî. Òðÿáâà òè äèðåêòíî (1 << n) - 1.
    (10b) || !(10b)

  3. #3
    Registered User
    Join Date: Oct:2011
    Location: Ïëîâäèâ
    Posts: 430
    Àìè íà ïðúâ ïîãëåä, ìàõíè òîâà -1

    return (((1 << n) - 1) & (number >> p));
    Ñåìêè. Ïî-ëåñíî å äà ãè èçïëþåòå, íî å ïî-ïîëåçíî äà ãè ãëúòíåòå

  4. #4
    Registered User vanmx's Avatar
    Join Date: Oct:2006
    Location: Ñëèâåí
    Posts: 1,964
    Áëàãîäàðÿ çà ïîìîùòà, îêàçà ñå ÷å ïðîáëåìúò íå ìè å áèë â òàçè ôóíêöèÿ. Òîâà -1 ãî áÿõ ñëîæèë çà äà åêñïåðåìåíòèðàì ñ ðàçíè ðàáîòè, àìà çàáðàâèõ äà ãî ìàõíà êàòî ãî ïåéñòâàõ ó ôîðóìà. Çàèãðàõ ñå îòíîâî ñ äåáúãåðà è âèäÿõ ÷å íå ñúì äîîãëåäàë íåùàòà. Íå çíàì îò äå ìè äîéäå àêúëà äà ñå çàíèìàâàì â 3 ñóòðèíòà ñ òèÿ ðàáîòè
    Last edited by vanmx; 1st August 2019 at 23:46.
    X470 AORUS ULTRA GAMING | Ryzen5 2600 |2x16GB Corsair LPX 3200Mhz | EVGA GeForce GTX 1080 Ti SC Black Edition Gaming|512GB Samsung 970 Pro +
    512GB ADATA SU800| Corsair HX1200i | Corsair Graphite 600t |BENQ PD3200U

  5. #5
    Mire-x
    Join Date: Apr:2005
    Location: Sofia
    Posts: 763
    Quote Originally Posted by vanmx View Post
    Íå çíàì îò äå ìè äîéäå àêúëà äà ñå çàíèìàâàì â 3 ñóòðèíòà ñ òèÿ ðàáîòè
    Òîâà å íàé-äîáðîòî âðåìå çà çàèãðàâàíå ñ òàêèâà ðàáîòè.
    (10b) || !(10b)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè