Bitwise Operations & Bit Masking

Sdílet
Vložit
  • čas přidán 28. 08. 2024

Komentáře • 41

  • @danha3107
    @danha3107 Před rokem +15

    I've spent so long trying to understand this on my own, with my prof, and with other videos but none made it click as easily as this one. Thank you so much

    • @chronosbat
      @chronosbat Před rokem

      Same. I literally have a paragraph and 1 practice problem to try to write masking code 😭

  • @rilsosingkoireng1492
    @rilsosingkoireng1492 Před 2 lety +13

    the cleanest and best explanation ever on bit masking. great job!! thank you appreciate your hard work.

  • @huyennguyenmaingoc468
    @huyennguyenmaingoc468 Před 4 měsíci +2

    thank you for your explanation XD I have been searching for Bitwise explanation and this is the best video I ever seen.

  • @marnierogers3931
    @marnierogers3931 Před 2 lety +4

    This video has saved my life. Have spent a few hours trying to decipher what my lecturer explained and this has cracked it. Thanks!

  • @haojiang4882
    @haojiang4882 Před 3 lety +5

    This is by far the clearest explanation on bit masking I have watched. Thank you so much. Subed.

  • @siomarapantarotto
    @siomarapantarotto Před 2 lety +2

    Fantastic! I loved your tutorial. God bless you! Best content explaining bitwise that I found on the Internet. 🥰

  • @Shuchrid2
    @Shuchrid2 Před rokem +1

    THIS IS FANTASTIC!
    Oh my god, you explained it so elegantly - I understood everything immediately!!!
    do note that on the last example (Clearing digit 5 to 0), the table showes a XOR gate table, instead of the OR gate table (:

  • @tachikoman9462
    @tachikoman9462 Před 2 lety +2

    The clearest explanation!!! Appreciate it so much!

  • @georgesmith9178
    @georgesmith9178 Před rokem

    i am surprised you got very few likes over the 2 years this video has been on. Thumbs-up of course. Just three tips: 1. Don't point with your mouse - draw a rectangle or a circle around what you are trying to highlight. Your mouse pointer is small and learners have trouble tracking it (I asked several and we all agree :) ). 2. Please, put the word description of the bitwise operation next to its symbol, e.g., NOT !, AND &, etc. 3. For the last, more involved example, I would follow your explanation with a simplification: First, flip all original bits, then flip only the target bit (with an OR | mask), and finally flip everything in the masked result back (with a NOT !). Only the targeted bit ends up different from all the original bit we started with.
    This explanation just helps learners shift their attention from the very visible 0s and 1s to the way less visible Data, flipped, Mask, OR result, and Flipped back labels on the very right, which is probably what you want them to focus on. I would also draw two red rectangles around original target bit in the starting binary value and that bit in the final result. Best of luck. I know you will do great :).

    • @learnlearnscratch
      @learnlearnscratch  Před rokem

      Thank you very much for the tips!!! I'll make sure I incorporate them into future videos!

  • @flokipanda
    @flokipanda Před 10 měsíci

    Best tutorial on bitwise operators.

  • @goodhabits1805
    @goodhabits1805 Před 2 lety +2

    So clearly summarized! Amazing! Thank you so much!

  • @lancemarchetti8673
    @lancemarchetti8673 Před rokem

    Great Explanation. I recently wrote a .js file that carries out a Bitwise NOT on a negated string and outputs it as Base64.

  • @HappyLife-fz8uu
    @HappyLife-fz8uu Před 2 lety

    Thankyou so much! Your video saved my broken brain 👍🫶🏻

  • @pareshkumar6268
    @pareshkumar6268 Před rokem +1

    Thank u soo much bro!! understood everything on the first go

  • @dylanngo4454
    @dylanngo4454 Před 2 lety +1

    Thanks, It's simple to understand

  • @fionaleclair-robertson8998

    worth more than 400 views amazing vid

  • @aaaminahammm4365
    @aaaminahammm4365 Před 2 lety

    Finally, i learned masking
    thank you

  • @dcy9846
    @dcy9846 Před 3 měsíci +1

    For clearing bits, wouldn't you be able to use an AND instruction and use a mask that has all 1's but the ones you want to clear? 1111 0101 AND 1110 1111 would result in the same thing but in less operations since the other bits would remain the same?

  • @OneLordeAnimeClips
    @OneLordeAnimeClips Před rokem

    The first 4 minutes of this video did a better job explaining than a 45 minute lecture (and the convoluted ass explanations in the textbook).

  • @tarassavchenko2317
    @tarassavchenko2317 Před 2 lety +1

    thank you!really clear explanation

  • @TresorElf
    @TresorElf Před 8 měsíci

    you are a livesaver man

  • @akhilk5121
    @akhilk5121 Před 25 dny

    Regarding clearing a bit
    So given the definition of bitmask as "A value where only the bit you want to act on is set to 1 and all other bits are 0"
    If we want to clear a bit we need to get the NOT of the above bit mask and then the result can do an AND with original number to clear that particular bit of interest. For me the order in which he explained was confusing. Hope this help people like me

  • @James_Hello
    @James_Hello Před 12 dny

    Wonderful ❤

  • @kkh0101
    @kkh0101 Před rokem +2

    clearing a digit to 0 could be done with &= ~FLAG operation.

  • @user-kc4eu3ks5r
    @user-kc4eu3ks5r Před rokem +2

    First of all, The subject is well explained and the use of examples was great.
    But, my question is, in the last part of the video, why do we need to flip twice instead of doing
    1111 0101 DATA
    &
    1110 1111 MASK
    ----------------
    1110 0101 RESULT

  • @cristidragosmatei
    @cristidragosmatei Před rokem

    Outstanding, thank you

  • @blazingfest5885
    @blazingfest5885 Před 9 měsíci

    could you also use a bitwise AND with a flipped mask to clear a digit to 0?

  • @abhijeetpatil5170
    @abhijeetpatil5170 Před 2 lety

    Don't know for sure but can you check indexing of bits .

  • @PiyushLaad1987
    @PiyushLaad1987 Před rokem

    Thank you :)

  • @jemuelespiritu1641
    @jemuelespiritu1641 Před 3 lety

    thank you very much sir

  • @q12x
    @q12x Před rokem

    Excelent explained ! Why? because you used examples !

  • @nekosquealer3423
    @nekosquealer3423 Před 2 lety

    THANKS A LOTTT

  • @SayheeKim
    @SayheeKim Před rokem

    why can't you just do a AND mask to clear a bit to 0?
    input _ _ _ _ _ B _ _ _ _
    AND mask 1 1 1 1 0 1 1 1 1
    ----------------------------------------------
    result _ _ _ _ 0 _ _ _ _ right? (bit B is cleared to 0 and all other bits are preserved?)

  • @smellysox16
    @smellysox16 Před 3 lety

    Nice

  • @sysy_ep
    @sysy_ep Před rokem +1

    Here is a Rust example of 3:17 or 5:05 :D
    fn main() {
    let x = 0b1011; // Byte
    let y = 0b1000; // What bit?
    println!("{:b}", x & y >> y -1)
    }