About digital outputs of PIC16F877A
The problem is that you have different value for RB0 and RB1:

Suppose RB0=0, and RB1=1, the flow of the code is:

RA0=0 then delay 5us then RA0=1 then loop

If you hook an oscilloscope you will find that RA0 pin is actually toggling but reading the voltage pin using a voltmeter will average(generally speaking) this pulsed signal.

I didn't understand what are you trying to achieve here but you are controlling 1 output using 2 inputs which is really strange. 

If you want to check if one of the inputs is high then you shall do the following:

while(1)
{
if((RB0==1)||(RB1==1))
RA0=1;
else
RA0=0;
}