You have a lot of options.

If you're using MCS as the editor the bottom screen shows the compiled file size.

If you use MPASM as the assembler you can open the .LST file and look at the bottom.

Program Memory Words Used: 63
Program Memory Words Free: 8129

With PM as the assembler you can look at the bottom of the .LST file;

+ 003C- 0063 @@0000 sleep
+ 003D- 018A clrf PCLATH
+ 003E- 283C goto @@0000

Or you could use Darrels' GetAddress macro to find & display the size something like this;
Code:
@ device  pic16F877, xt_osc, wdt_off, lvp_off, protect_off

DEFINE OSC 4
DEFINE LOADER_USED 1

RetAddr VAR WORD

asm
GetAddress macro Label, Wout
    CHK?RP Wout
    movlw low Label          ; get low byte
    movwf Wout
    movlw High Label         ; get high byte
    movwf Wout + 1
    endm
endasm
    
loop:
    @ GetAddress _Over, _RetAddr
    HSEROUT [HEX4 RetAddr,13,10]       
    High 0          ' Turn on LED connected to PORTB.0
    Pause 500       ' Delay for .5 seconds
    Low 0           ' Turn off LED connected to PORTB.0
    Pause 500       ' Delay for .5 seconds

    Goto loop       ' Go back to loop and blink LED forever
    
Over:
Or you could just open & examine the compiled .HEX file with your device programmer.