She
is eating dinner
for one hour. / She
has been eating dinner for one hour.
He is watching TV all day. / He has been watching TV all day.
It is raining outside. / It has been raining outside.
What are you talking about? / What have you been talking about?
You can't specify a period of time (as shown above in red)
with the present progressive. You can with the present perfect
progressive. So two of your eight examples are incorrect
grammatically.
Other than that, the difference is the time at which the action occurs.
The present progressive says the action is occurring
at the time you say the sentence. For example, suppose it is now 6 o'clock, and you say:
She is eating dinner. (Now, as I speak, at 6 o'clock, I see that she is eating dinner.)
It is raining. (Now, as I speak, at 6 o'clock, I see that it is raining.)
The present perfect progressive says the action started happening before the time
you say the sentence and continues up to the time of your saying
it. Maybe the action stops just before you say the sentence and
maybe the action continues as you say the sentence, or even continues after you say the sentence, but the main idea
is that it starts before you say the sentence. Again, suppose it
is 6 o'clock.
He has been watching TV. (Now, as I speak, at 6
o'clock, I see that he has been watching TV from 3 o'clock until now. -
or from 1 o'clock until now - or from 2:30 until now. -- The amount of
time is not specified.)
He has been watching TV for two hours. ( Now, as I
speak, at 6 o'clock, I see that he has been watching TV from 4 o'clock
until now. -- The amount of time is specified in this case.)
It has been raining. (Now, as I speak, at 6 o'clock, I see that it has been raining from
3 o'clock until now. - or from 1 o'clock until now - or from 2:30 until
now. -- The amount of time is not specified.)
It has been raining for a half hour. ( Now, as I speak,
at 6 o'clock, I see that it has been raining from 5:30 until now.
-- The amount of time is specified in this
case.)
What have you been talking about? (Now, as I ask, at 6 o'clock, I ask the topic(s) of conversation during previous time up to the moment I ask.)
_________
Another way the present perfect progressive can
work, if no amount of time is specified, is that the action occurred in
the past and continued for some time and then stopped, but there is
evidence at the time of speaking that the action did occur.
It has been raining, but it is not raining now. (I know because I can see now that the streets are wet.)
The children have been playing ball in the family room, but they are not playing ball there now.
(I know because the ball is there, and it should be in the
garage. I know because there is a mark on the wall where the ball
probably hit the wall. I know because I can see the lamp
overturned and broken on the floor.)
This last pattern often occurs with must to show that the speaker has reached a logical conclusion from the evidence before him.
It must have been raining, because the streets are wet.
The children must have been playing ball in the family room, because the lamp is broken.
CJ