i really like these presentations however i got lost on this one. In the diagram at the 3:02 mark the number of 0 bits between the first two 1's is 23 so why is the 2nd bit pattern for a number of 15 (001111) and not 23 (0010111)? Also the 4th 7 bit chunk has a number 40 (0101000).
I know why and it's simple. A) I'm an idiot and I can't be bothered to count the bits correctly. B) This is what happens when you write the script and then tweak the animation later. Sorry about that. I will delist this video and make another one about bit sets but better, but it's going to take some time so let me add a correction in the video description.
@@LevelUppp ahh ok. It's late at night here and i was starting to think I should be counting in octal or something like that lol. No worries and thanks for your videos.
I have a problem with understanding in 2:40 how the 7-bit blocks are populated. We have numbers 0 and 1, but in this block they are in postion 0 and 5. Why?
In the first block we have 2 bits set to 1: So we set the 0 bit (since it tells us if we have a run of ones or zeros) and the 6th bit since counting from the right to left it's the 2nd bit and what we do here is we encode the count so 2nd bit is 2. What we do here is encoding the bits from right to left.
I think I get it now. The first bit in 7-bit block is indicating what the remaining 6 bits would mean. If its 1, then it would mean we have treat 1s as 1s in that initial big bytes block. If its 0, then it would mean we treat 1s as 0s. So if we have 100_0010 then it means that we treat te 6 right most bits as 1s, so the 6 bits are 000010 and its number 2 in decimal, so 100_0010 represents 2 consecutive ones. Then if we have 000_1111 it means we treat 6 right most bits as 0s, so 001111 in decimal is 15, so 000_1111 is 15 consecutive zeros
So in other words we take as many 7-bit blocks as there are consecutive ones or zeros, so that we can encode number of their consecutiveness (is that even a word?) inside each 7-bit block. This is cool
en.wikipedia.org/wiki/Bit_array en.wikipedia.org/wiki/Run-length_encoding Here's some sample code for the bit set: gist.github.com/badamczewski/9a5aa6fbec385061b430465ed043bf5b (It's in C# but the code is very simple so it shouldn't be hard to write this in your language of choice)
How do you like the new video format? With animations etc.
i really like these presentations however i got lost on this one. In the diagram at the 3:02 mark the number of 0 bits between the first two 1's is 23 so why is the 2nd bit pattern for a number of 15 (001111) and not 23 (0010111)? Also the 4th 7 bit chunk has a number 40 (0101000).
I know why and it's simple. A) I'm an idiot and I can't be bothered to count the bits correctly. B) This is what happens when you write the script and then tweak the animation later. Sorry about that. I will delist this video and make another one about bit sets but better, but it's going to take some time so let me add a correction in the video description.
@@LevelUppp ahh ok. It's late at night here and i was starting to think I should be counting in octal or something like that lol. No worries and thanks for your videos.
without this thread, my brains would have exploded
The new format is great. Animations are very helpful and the video professional. Well done. Visual thinking is so much easier to follow along.
This is a cool video. I didn't know this kind of structure.
There's more to show and explain and I will in another video(s) provided that people will like the new format. (Animating this was super difficult)
@@LevelUppp How long did it take you to animate it and in which program?
I have a problem with understanding in 2:40 how the 7-bit blocks are populated. We have numbers 0 and 1, but in this block they are in postion 0 and 5. Why?
In the first block we have 2 bits set to 1: So we set the 0 bit (since it tells us if we have a run of ones or zeros) and the 6th bit since counting from the right to left it's the 2nd bit and what we do here is we encode the count so 2nd bit is 2.
What we do here is encoding the bits from right to left.
I think I get it now. The first bit in 7-bit block is indicating what the remaining 6 bits would mean. If its 1, then it would mean we have treat 1s as 1s in that initial big bytes block. If its 0, then it would mean we treat 1s as 0s. So if we have 100_0010 then it means that we treat te 6 right most bits as 1s, so the 6 bits are 000010 and its number 2 in decimal, so 100_0010 represents 2 consecutive ones. Then if we have 000_1111 it means we treat 6 right most bits as 0s, so 001111 in decimal is 15, so 000_1111 is 15 consecutive zeros
So in other words we take as many 7-bit blocks as there are consecutive ones or zeros, so that we can encode number of their consecutiveness (is that even a word?) inside each 7-bit block. This is cool
@@Humberd01 Yes :)
Video style toh bole toh ekdumm zhakaassss....
good info,,, RLE/RLL was used in the first hard drives interfaces... ;-)
Why is the array of bytes 20 bytes long when u have 4 ints in them? 4x4byte I thought it is?
You need extra 4 bytes for the reference to the object itself.
Where can we find more detail around it ? Considering new to this data structure.
en.wikipedia.org/wiki/Bit_array
en.wikipedia.org/wiki/Run-length_encoding
Here's some sample code for the bit set:
gist.github.com/badamczewski/9a5aa6fbec385061b430465ed043bf5b
(It's in C# but the code is very simple so it shouldn't be hard to write this in your language of choice)
Bit or byte?
best animation, worst explanation in detail
Agreed, would do it better now.
Oh, it's so much copied from 3blue1brown. Dialogues too! U can bring more creativity in.
Explaining and content is good though.
You can relate this to cryptocurrency