PAUSE puts the code into a loop for a certain amount of instructions. It does not stop the hardware interrupts.

This is what a PAUSE in ASM looks like. Just a routine to eat some time.
Code:
; Delay = 0.1 seconds
; Clock frequency = 4 MHz
; Actual delay = 0.1 seconds = 100000 cycles
; Error = 0 %
Delay	;99993 cycles
	movlw	0x1E
	movwf	d1
	movlw	0x4F
	movwf	d2
Delay_0
	decfsz	d1, f
	goto	$+2
	decfsz	d2, f
	goto	Delay_0	;3 cycles
	goto	$+1
	nop		;4 cycles (including call)
	return