IEEE 754 Standard for Floating Point Binary Arithmetic

Поділитися
Вставка
  • Опубліковано 28 лис 2024

КОМЕНТАРІ • 253

  • @MuyenKamran1nehal
    @MuyenKamran1nehal 4 роки тому +90

    This is amazing. You explained in 20 minutes what my professor could not in 90 minutes.

  • @neolord50pro77
    @neolord50pro77 3 роки тому +79

    How scared and ignorant i was about those floating points, but now i'm feeling enlightened and empowered with knowledge. Thank you!

    • @ComputerScienceLessons
      @ComputerScienceLessons  3 роки тому +9

      That's music to a teacher's ears :)KD

    • @vit6723
      @vit6723 3 роки тому

      @@ComputerScienceLessons what if the given would be .12?

  • @gabrielruszala4432
    @gabrielruszala4432 2 роки тому +4

    This guy's channel name is literally "Computer Science." Epic.

  • @jannesvanquaillie9151
    @jannesvanquaillie9151 4 роки тому +70

    I really started to hate floating-point numbers after trying to do math with it.
    But you helped me appreciate it.
    This video is SO SUPER good.
    Few people are so good at what they do, know what they are talking about AND can even explain it; in your case, you are really good at all of them.
    Truly, you are probably one of the reasons that my passion for these kinds of things is so upfront.

  • @NoName-tj8dm
    @NoName-tj8dm 2 роки тому +14

    By far the best explanation on IEEE 754 and on biased exponent. It's really remarkable that you explained in a lucid manner. Thank you for the series on binary too.

  • @ganeshharikrishnan
    @ganeshharikrishnan 4 роки тому +24

    I've followed this channel for about 2 years now. It's genuinely incredible how he has the capacity to simply the most complex procedures into a single set of steps

  • @jbkhan1135
    @jbkhan1135 4 роки тому +142

    This channel is so incredibly underrated... I wish every compsci student would subscribe to this. I know I could have used it in my uni days. Great work and keep it up!

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 роки тому +19

      It's very kind of you to say so. Thank you :)KD

    • @febiefebriansyah
      @febiefebriansyah 3 роки тому

      @@ComputerScienceLessons 6:44 why the number is chage (19.5.. to 19.5)?
      btw, i think the voice volume is too low 🙏

    • @raffaelechinotti5244
      @raffaelechinotti5244 2 роки тому

      @@ComputerScienceLessons i totally agree with him, BECAUSE I AM in university goddamn it can't you be my professor? :l

  • @LoudnessWar
    @LoudnessWar 3 роки тому +2

    I signed in to UA-cam after an eternity solely to post this - your explanation of the Two's Compliment sign bit at 9:41 is absolutely brilliant and intuitive. Well done; it's so simple: the MSB becomes its normal value except negative, and the conversion to decimal "Just Works." I wish I had seen that when I was first learning binary formats as a kid - it's SO much easier to think of it that way than the whole "count backwards from all 1's" way I had conceived of it before.

    • @ComputerScienceLessons
      @ComputerScienceLessons  3 роки тому

      Thank you for taking the time to post such a lovely comment. It makes it all worthwhile. :)KD

  • @segafrompk
    @segafrompk 4 роки тому +6

    This makes it really clear why simple math operations with floating point numbers sometimes give weird X.99999999 results. Great video!

  • @ClarHD
    @ClarHD 4 роки тому +1

    This channel is a goldmine, you are saving lives sir please do not stop making videos!

  • @hayden.A0
    @hayden.A0 4 роки тому +5

    Thanks again. Floating point numbers were always very confusing to me until I found your channel

  • @bobdemp8691
    @bobdemp8691 3 роки тому +6

    Really good. 20 years ago this went over my head and always meant to revisit it. Very clear explanation.

  • @annilator3000
    @annilator3000 2 роки тому +1

    that's the most comprehensive video I could find on this topic, great job

  • @xinguangmingwo2343
    @xinguangmingwo2343 4 роки тому +2

    Your video taught me IEEE 754. Thank you.

  • @swun3367
    @swun3367 2 роки тому

    your way of saying Mantissa is just so perfect. has to be said.

  • @swedishguyonyoutube4684
    @swedishguyonyoutube4684 2 роки тому +2

    4:08 is an incredibly well thought out, easy to follow, pedagogical explanation of conversion! Thanks a bunch!

  • @MIbrahimKh
    @MIbrahimKh 3 роки тому +2

    Really made me "floating" with joy, thanks teacher!

  • @linguae_terrae
    @linguae_terrae 3 роки тому +2

    Mate, this is brilliant! I am a medical professional trying to grasp the basics of computer anatomy and physiology if you will, and your videos really make everything much more organic! Thanks for this amazing content! I'm looking forward to watching the other series in your channel.

  • @Sciller4
    @Sciller4 3 роки тому +7

    Every year, I go on CS competitions (and usually do quite well, I was second in Croatia once), but I could never remember how to use this standard or why things were how they were. Thank you for that!

  • @LuchsYT
    @LuchsYT 3 роки тому +2

    TYSM! This finally made me understand the IEEE 754 standard for floating point numbers!

  • @arahn466
    @arahn466 2 місяці тому +1

    thank u so much
    I did very well today on the exam
    following u from Palestine

  • @florisvanderhout2675
    @florisvanderhout2675 4 роки тому +3

    just WOW, you are incredible. I just started with my first year of computer science and this video made everything sooooo clear. I subscribed. So keep up the good work.

  • @kannadiga3644
    @kannadiga3644 3 роки тому +1

    excellent session, crisp and complete coverage..

  • @ghattassaliba4910
    @ghattassaliba4910 Рік тому +1

    I love your work and explanation, you deserve to be the president 💪💪

  • @poserGirl863
    @poserGirl863 3 роки тому

    this is such a good video! I never had the idea of using what you call the "modified gadget" for the place values of 2s complement numbers. I came here thinking I knew my 2s complement and I'm leaving having learned not only the standard for floating point numbers, but an incredibly valuable tool for working with 2s complement. Thank you!

  • @kellerw4800
    @kellerw4800 2 роки тому +1

    Thanks so much for this video, excellently paced for taking notes and really absorbing and understanding the information, with lots of great explanations as to WHY steps are taken. TY

  • @alikhaled844
    @alikhaled844 Рік тому

    The exponent bias part was masterful..

  • @notgiven3971
    @notgiven3971 2 роки тому +1

    I would just like to say thank you for this video it was very helpful for my upper div assembly lab assignment on this topic. Thank you for the video!

  • @varma8669
    @varma8669 Рік тому

    This was a very helpful video. Came in clutch right before the due date. Thank you!

  • @raghunathprabhakar2166
    @raghunathprabhakar2166 Рік тому +1

    Thank you so much for explaining this in such a concise manner

  • @user-om2ev8wz6g
    @user-om2ev8wz6g 4 роки тому +1

    Thank you Kevin Drumm for this amazing video

  • @nitinrawat4522
    @nitinrawat4522 3 роки тому +1

    Nicely and neatly explained! Got all my answers from the single video. Keep up the good work! XD

  • @pinch-of-salt
    @pinch-of-salt 3 роки тому +2

    More IEEE standard videos!!! Thank you so much. VonC explained it great on stackoverflow but I still referred to this video!

  • @roshanafernando2443
    @roshanafernando2443 2 роки тому

    Well explained. Worth watching the video. Keep on doing this. All the best!

  • @fromthebeattothesaber1419
    @fromthebeattothesaber1419 3 роки тому

    Thanks a lot for this great explanation
    I am from Germany and i am currently playing with the x32 osc software which uses these floation points to control the faders of each single channel
    There is no open source javascript implementation of this calculation on the internet
    And also no good explanation
    With the help of this video I've managed to create my own conversion function
    Thanks a lot

  • @JamesBrodski
    @JamesBrodski 3 роки тому +1

    Wow, what an amazing video. Thank you so much.

  • @estefaniac8260
    @estefaniac8260 4 роки тому +1

    Thank you so much for your detailed explanation. It is excellent and exactly what I was looking for to understand this topic.

  • @petar7867
    @petar7867 2 роки тому +1

    Video is very easy to understand, thank you very much!

  • @bakaphu1992
    @bakaphu1992 2 роки тому +1

    at 06:46 the header changes from example 19.5375 to 19.25 randomly, even though the example is still done with the first number.

  • @axelboy9080
    @axelboy9080 2 роки тому +1

    it was wonderful..
    you taught me Sth..
    I LOVE YOU !

  • @Rahul-fq9kf
    @Rahul-fq9kf 2 роки тому

    Very thankful to you for explaining it so well.

  • @MCMeru
    @MCMeru 3 роки тому +1

    Incredibly well explained!!!

  • @stopthecap8810
    @stopthecap8810 Рік тому

    This is such a phenomenal video. The pace at which the animations/charts line up with your words greatly help with understanding this. To be honest, your channel is like a wikipedia for basic data representation, and should be something every teacher recommends. The only question is what exactly do you mean by 'the value of the exponent specifies how far to the left or to the right the binary should float to obtain the value in the register?' That part wasn't clear. Do you mean how much it should float to determine the mantissa? Also, what part of the floating point concept tells us where the 'decimal' starts? Is it the exponent?

  • @FarizDarari
    @FarizDarari 2 місяці тому +1

    Wow, thanks a lot for the awesome explanation!!!

  • @Thomas-ht9cn
    @Thomas-ht9cn 3 роки тому +1

    Thank you, sir! This video really helped me grasp the concept.

  • @alphanumeric2702
    @alphanumeric2702 4 роки тому +2

    Brilliant presentation!

  • @RawFatGod
    @RawFatGod Рік тому

    You explain it so clearly

  • @panjak323
    @panjak323 6 місяців тому +1

    This is one of the nicer takes

  • @slava_in3757
    @slava_in3757 2 роки тому +1

    Amazing explanation to say the least!

  • @victorlucki8586
    @victorlucki8586 4 роки тому +3

    Loved it! Thank you, as always!

  • @אליהולוי-ד4ה
    @אליהולוי-ד4ה Рік тому

    Very good explanation, thanks!

  • @fay7725
    @fay7725 4 роки тому +2

    I'm recommending this video to my college friends. Thank you so much
    Edit : also, you got a new subscriber

  • @izotovadaria7151
    @izotovadaria7151 4 роки тому +1

    Thank you so much! This is so helpful for my classes!

  • @realtissaye
    @realtissaye 3 роки тому +1

    DUDE THIS VIDEO IS SO AWESOME

  • @bakaphu1992
    @bakaphu1992 2 роки тому +1

    thank you! I think at 14:49 it's rather how many places you have to get to the right instead of left right? step 3

  • @parsiabolouki7685
    @parsiabolouki7685 3 роки тому

    Amazingly great explained! Thank you

  • @tadikasxd9546
    @tadikasxd9546 2 роки тому +1

    Amazing video, Thank you so much

  • @roman_mf
    @roman_mf 2 роки тому +1

    Thank you so much, an explanation well done!

  • @user-fg6ng7ej6w
    @user-fg6ng7ej6w 7 місяців тому

    very clear explanation thanks !

  • @spacemule1
    @spacemule1 3 роки тому

    High quality! Thanks brother

  • @yiming9569
    @yiming9569 2 роки тому +2

    Could you explain why the normalization of the mantissa is "1.1 * 2^-4" instead of "0.11 * 2^-3" as you explained that normalization for positive numbers should be in the form of 0.1xxxxxx * 2^x in the video of "Binary 6 Normalized Floating Point Binary Fractions"?

  • @ToyExamples
    @ToyExamples 4 роки тому +1

    thanks, very helpful and concise

  • @marouaabdi611
    @marouaabdi611 3 роки тому +1

    Thank you for your brilliant explanation sir , but I have a question . in the last two examples when we converted the number 123 to binary , why one started with 01 and the other with 11 ?

  • @atreya.k
    @atreya.k 2 роки тому

    Please represent 0.1 + 0.2 in IEEE 754 format and also how to equate exponents if we have -4 and -3

  • @singmantkpss
    @singmantkpss 2 роки тому +2

    Thx god i found this gem

  • @randyzakyasuchrady1488
    @randyzakyasuchrady1488 4 роки тому +1

    Thanks for the explanation!

  • @lucaspaiva8410
    @lucaspaiva8410 Рік тому +1

    Obrigado amigo você e Jesus são quase a mesma pessoa, salvou muito

  • @brascoarts2634
    @brascoarts2634 4 роки тому +2

    If you think about it, there's always gonna be 1 at the end💥

  • @keonscorner516
    @keonscorner516 3 роки тому

    That’s the IEEE 754 floating point double precision 32-bit format
    can you explain IEEE 754 floating point double precision 64-bit format

  • @TurgutKalfaoglu
    @TurgutKalfaoglu 10 місяців тому +1

    Small error: While explaning converting from 19.59375, the title of the slide switches to converting to 19.25. the bottom of the slide seems to continue on the 19.59375 however.

  • @elchemico100
    @elchemico100 4 роки тому

    Really helpful tutorial! Thank you very much!

  • @HexadecimalDump
    @HexadecimalDump Рік тому +1

    Do you know where I can read more about this theory of converting denary number to pure binary, or maybe you could explain it? I understand why repeatedly dividing whole part by 2 works, but I can't understand how repeatedly multiplying fractional part by 2 gives us binary representation. I really want to understand this part and not just memorise it

    • @ComputerScienceLessons
      @ComputerScienceLessons  Рік тому

      I think converting between binary and denary by successively multiplying or dividing by two is nice 'trick' but I prefer to teach binary from first principles. It's important to realise that each bit has a place value. Perhaps my binary playlist will help. ua-cam.com/video/cJNm938Xwao/v-deo.html :)KD

  • @Karim-nq1be
    @Karim-nq1be Рік тому +1

    Your video is great. One of the most boring stuff I had to learn in my life.

  • @tungtruong9232
    @tungtruong9232 Рік тому

    very helpful, but why in your first example, you want to convert the value 19.25 to binary but in step 2 you also use 19.59375, can you explain me, very thanks, you lesson is very valuable

  • @YnjeviYhhei
    @YnjeviYhhei 3 роки тому

    Very well explained thank you

  • @AbeDillon
    @AbeDillon 2 роки тому

    IEEE should have inverted the sign-bit convention so that 1 means positive an 0 means negative. That would allow you to compare two floats bitwise starting with the most-significant bit and the first to have a 1 where the other has a zero would be the larger number.

  • @larrywu8977
    @larrywu8977 3 роки тому +1

    Really Really helpful, thank you!

  • @bradthompson1209
    @bradthompson1209 3 роки тому

    I would have liked to see you convert -3.303139... E-36 back to a 32 bit binary number. I am struggling with how to deal with the base 10 exponent. It's not obvious to me yet.

  • @koraltayeb8681
    @koraltayeb8681 4 роки тому +1

    FANTASTIC!! THANK YOU

  • @mohamedjimale9258
    @mohamedjimale9258 11 місяців тому

    i'm confused on the last question of this video, where did you get 10 to the -36 from when you were times it by -3.3031391268106278973921496695945?

  • @pataruutu1
    @pataruutu1 3 роки тому +1

    i, and many others i suppose, would appreciate if you could do a video on guard, round and sticky bits.

  • @shahebmiah2492
    @shahebmiah2492 4 роки тому

    I haven't spent so long on a topic like this. Looks so simple but so confusing.

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 роки тому

      It may be worth going back to the start of my playlist on binary and working your way through theses. This video is the last in a series.

    • @shahebmiah2492
      @shahebmiah2492 4 роки тому

      @@ComputerScienceLessons from this video i put everything together with what i learned and i understand it now. Thank you

  • @imraulemmaka511
    @imraulemmaka511 4 роки тому +1

    What is a fixed-sized register?? Could you link any related resource, please? and in the beginning, you said -" the value of exponent specifies how far to the left or the right the binary point should float in order to obtain the actual value in the register." - Could you please explain "register" here? is the value in register or what!!

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 роки тому

      A register is the smallest unit of storage found in the CPU. In an older machine, a register could hold 32 bits. Modern machines have 64 bit registers (or even 128 bit registers). Registers are always fixed in size. I pointed out that they were fixed in size to emphasise that register size imposes a limitation on the size of the number it can store. I strongly recommend that you take a look at my playlist on binary which explains this in more detail. ua-cam.com/play/PLTd6ceoshprcpen2Jvs_JiuvWvqIAkzea.html :)KD

  • @fkarls9282
    @fkarls9282 4 роки тому +1

    A really good explanation and a nice visualisation, great video. Can you also make a video about the Quine-McCluskey method ?

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 роки тому

      I'll take a look at it. Sounds like an interesting programming project. :)KD

  • @YaakovSeif
    @YaakovSeif Місяць тому

    How do you do basic arithmetic operations in IEEE form?

  • @ofd3769
    @ofd3769 3 роки тому +1

    u are the best one thanks a lot

  • @ahmadhosseinzadeh3141
    @ahmadhosseinzadeh3141 3 роки тому

    Thanks for the splendid video!
    Will you record a video on rounding up/down the floating point formats and the associated errors?

  • @TurgutKalfaoglu
    @TurgutKalfaoglu 10 місяців тому +1

    very good thank you!

  • @96erardo
    @96erardo 3 роки тому +1

    I would love to read the original IEEE document on the subject, but it seems that is only accessible paying and i dont have the money right now :(

  • @meostyles
    @meostyles 4 роки тому

    Great video! Why is the leftmost bit of the mantissa always 1? And how is this different to the 0.1 / 1.0 rule of normalised floating point binary?

    • @meostyles
      @meostyles 4 роки тому

      Is it something to do with the fact that IEEE format separates the sign bit?

  • @ErosMarques
    @ErosMarques 3 роки тому

    thanks, this was really helpful!

  • @DeadManProp
    @DeadManProp 2 роки тому

    10:06 I do not understand why the negative numbers are now on top instead of the bottom.

  • @maxhmetonxrono
    @maxhmetonxrono 3 роки тому

    Thank you for the amazing video you are very good Teacher!!! I want to ask why we div with 2^-118 at 20:27
    ???

  • @PimpinBassie2
    @PimpinBassie2 Рік тому

    Those repeating bit patterns is the reason we don't use floats for our bank account.

  • @SHASHANKRUSTAGII
    @SHASHANKRUSTAGII 3 роки тому

    Hi please make IEEE 754 FOR fractional

  • @jessebelleman8070
    @jessebelleman8070 4 роки тому +1

    You are a legend!

  • @oviya.n1317
    @oviya.n1317 Рік тому +1

    excellent

  • @floopiiisss9295
    @floopiiisss9295 4 місяці тому

    I am confused on how he got 4 at 7:26 can anyone please explain?

  • @ermanerbak
    @ermanerbak 2 роки тому

    VERY GOOD JOB. But question changing on 6.45 :))

  • @rosiRose676
    @rosiRose676 3 роки тому +1

    Thank You !!!!