Hi every 1

here i have some doubts on FIFO read and write. please any1 knows tel me.
In FIFO how Read / Write Pointer Functionality Happens ? in the following cases ?
1. when fifo is in almost full and almost empty condition ?
2. when fifo is in full and empty ?
3. when fifo , program threshold value set to some value i.e 100 ?
4. fifo read EN / write En is HIGH , then what is the status of read/write pointers ?