In this video will be talking about the floating point
notation, which is designed to address the problem that we
talked about in one of the previous videos, where we noted
that the radix point was jumping around and I mentioned that it
can cause a bit of a confusion for the computer. Throughout
this video I will be talking about the 8 bit floating point
notation which you will find out very soon. It's a really small
system, so it doesn't allow you to work with huge numbers.
However, it's convenient enough to understand and work with on a
paper, and you can just extend the general rules to any
systems. So let's see what is this floating point notation
looks like. Well, the floating point notation is, 8 bits are
broken up into three parts. The first part is just one single
digits telling you what is the sign of your number. The next 3
digits. We called the exponent, which will tell the computer
where to move the decimal point from here and the last four
digits. Called the mantissa. Now the mantissa is the normalized
version of your binary number into the 0.122 format. We're
going to go through it in in details. Now. The exponent bit
in this format is just three bits, so you can only move your
decimal point to three in to the right or to the left, which
straight away as it as you that you can't really cover great
ranges, but it's good enough.
And the exponent is expressed as a 3 bits 2's complement
notation. So the sign bit if we have a positive number be
going to use zero if we have a negative number, we're going to
use one. As I said, the exponent is 3 bits 2's complement.
And the mantissa, which is always 4 bits in this particular
number, we're going to have it
normalized. So when you have got a negative
number, something like minus 3 1/2.
How are you going to convert this into an 8 bit floating
point notation while step one
will be?
Identify. The sign bit.
That this is going to be the easiest one for negative #0 for
positive number. Step two will be is convert into binary.
And normalize
To get to them on this so.
Step
3. Is find the exponent.
Which will be something to do with the month. So
how you normalize your number and express it.
As three bits.
These complement notation and the last step.
Is just to pull everything together and put it into the
format of the sign followed by three of the exponent digits and
followed by four of the
mantissa. OK, it sounds quite a long and probably a little bit
alien in theory, but I think what we are going to help us if
we go through a couple of simple
examples. So let's look at minus
one. And a quarter.
OK sign bit going to be one because this
is a negative number.
Not we're going to find the mantissa for that first. What we
need to do? We need to convert 1 1/4 into binary.
So. Let's again bring
in the. Place values Now this is the radix point. Here is 124 and
the rest of them. The whole numbers and after comes up half
a quarter on 8 etc etc. Now I've chosen deliberately choosing a
simple example so to write 1 1/4 in binary or we need to do is 1.
Radix Point followed with 01. So this is our binary number, but
we need to normalize it into the
mantissa. So the normalized the normalized monthly start
then will be 0.101. And remember the amount Esther
needs to be 4 bits, so I need to put an extra 0 into here.
Now what happens in this case? Now I found my mantissa.
I found mine on Monday so now, but I still need my exponent.
The exponent the easier way to think about it is to try to
think about the exponent from the computer's point of view,
because once the computer read
the. Sign me and the exponent wait, then the computer will
know where to start from and how many places to move that Radix
point. Now from this radix point here in them from the mantissa
to get back to the original number which remember was minus
one and a quarter to get back to the original number. The
computer will need to move one places into this direction and
this is the positive direction. So I'm moving one place too.
The right that's a positive. It's like multiplying by 10
in normal numbers in normal circumstances, so I'm moving
the decimal point by one places into the positive
direction, so my exponent.
Will be positive one, but what does positive one look like in 3
bits? This compliment?
So remember I've only got 3 bits. It's a positive number, so
the 1st digit will be 0 and it's just positive one, so it's 001.
So pulling all these things together and putting it into the
sign, exponent, exponent,
mantissa. Format the sign negative number will be one. The
exponent is positive one, so it will be 001 and the months are
now because the computer knows that the mantissa is designed to
be zero point something something so that zero point. We
can always forget and I can just write down the following 4
digits 1010. So this is equivalent to minus 1 1/4. So
this is the 8 bit.
Floating point notation 4 -- 1
1/4. Now you might spot here what happens if I had to put.
Let's see after normalization, I end up with five 6 or 7 digits.
Well with this Ed bits floating point, we would have to cut off
at the first 4 bits, so we would have trunking error. Obviously
the computer works with bigger length of digits, therefore that
trunking error doesn't come up as much. So in practical
situation when you have to carry out the calculations, trunking
errors do occur.
In real situations, when the computer does it, it's very
very minimized.
Let's look at another example.
Minus two and two 8.
Now when I look at this number.
Well, I can see here straight away that I can cancel this one
down, and this is actually minus two end of quarter.
OK, so step one.
Sign and in this case the sign will be equal to 1 because I'm
talking about a negative number.
Step 2
convert.
And find the mantissa.
So 2 1/4. Let's convert that
into binary. Ring in the place values again, this is
your radix .124 half or quarter and an 8. So for two to build
up the whole part we need 1 zero and the radix point for 1/4. We
don't need any half and we use 1/4 so this is our ordinary
binary which is equal to 2 1/4. But remember now we need to
normalize it. And the normalization process goes as.
Bring it into the zero point.
One and the rest of the digit would follow, so if I normalize
it, what would means I would need to move this decimal point
into the front in here, so I
would have. The point moved into
here. And then what would follow
now is 0.1001.
OK, and remember that this part will be our mantissa, the one
that follows after the point.
Then step three is we need to identify
or. Express the
exponent. Now remember the easiest way to think about the
exponent is how many places you would need to move the
decimal point. If you were the computer. So you were reading
this number and the origonal number was one 0.01, so you
need to tell the computer via the exponent that he needs to
get to this number from this number. So what would you need
to do in here? You would need to move the decimal point.
Two places into this direction, and this is the positive
direction, so the exponent would have to be positive too, and the
positive two in three bits 2's complement. Remember positive
number is zero and two is 1 zero, so this is our exponent
now. And Lastly, pull all these bits together. The sign bit was
one. The three bits of the exponent is 010, and the four
bits of the mantissa.
Is 1001, which is this bit here.
So this is equal to minus
two and two eighths.
Now look at the last example and the locks. That last example
will be minus 116th sign bit which is. First step is again
one because it's a negative number, Step 2.
Now I need to convert.
And find the mantissa.
So place values. I don't have any whole numbers, so all I'm
going to do, I'm going to express the fractional place
values or half a quarter on
AIDS. And the 16 and again because of the way
I've chosen this number, this will be 0.0001.
OK that remember that your monthly site has to be 0.1
something. So how can I get from this number into this format
now? The only way I can get to here is by moving the decimal
.123 places so.
The exponent, which is our Step 3.
I moved my decimal .3 places.
But have I moved it into positive or negative direction?
Let's look at that again. So a normalized it. But remember that
mantis and needs to be 4 bits long, so I need to put.
Three more zeros in here and now. The computer comes in and
you telling the computer that from this number you want to go
back to the original number.
OK, so from here to get back to the origin number of 0.3
zeros followed by the one you have to tell the computer to
move the radix point.
Into the opposite direction done before, so this exponent will be
negative 3. Now let's see if we can express negative 3IN.
3 bits, two complements.
Remember how we did that is compliment. If it comes to
negative numbers, just Express 3 as a 3 bit binary number,
positive three and positive three again using the place
values is 124. Remember, we don't have anything else in
here. So it's 011 and to make it into negative three you need
to copy the digits until you copy the one which is in our
case is the very first step and then invert everything else swap
once for zeros and zeros for once for 01. So this is your
negative three in here.
So your exponent.
He is 101.
Put the whole thing together. Sign bit was one,
the exponent is 101 and a month is soft.
Is 1 followed by 3 zero, so this is the equivalent of minus
1 / 16.
Not just to recap, with the computer would actually do in
here. The computer would come and start to read the digits OK
with this digit. Here you telling the computer that he
needs to think about a negative number. With this digit you
telling the computer how many places in what direction he
needs to move the radix point that starts from here and then.
That way it will be able to re normalize the mantissa. Find out
what number hides behind this
binary code. I hope you not have a clear idea of how to convert
numbers into 8 bits floating point notation on the following
pages you will have some properties questions and then
you will find the answers to
these. So these are the practice questions.
And here are the answers.