Hi,
I am not sure what you mean by "consecutive bit-operations on the port registers" and I would like to learn.
What I mean is when you do things like this:
Code:
        outb1 = 0
        outb2 = 0
        outb3 = 0
        outb4 = 1
There's been plenty of discussions on Read-Modify-Write effects that can occur when you do things like that so very brief:
When you're accessing a bit in a register the complete register is read, the bit in question is set/cleared and the register is written back. When you do this to the PORT register there is a possibillity that the voltage at the pin accessed in the previous operation hasn't reached steady state yet and that it's logic level isn't (yet) corresponding the what you told it to - so when the port is READ it reads the wrong value for that bit and therefor the wrong value gets written back to the port.

The same thing can occur when pins used as digital outputs are left in analog mode. They usually (always? (verify against the datasheet)) read as logic '1' so you can write a 0 to the port register and the pin will go low but then the next time you do a bit operation on that port that '0' will be read as '1' and it'll be written as '1' so the pin changes state.

EDIT: Using the LAT register(s) works the same way (all registers do) but it is the port LATCH and not the ACTUAL port that is being read-modified-written so it doesn't matter if the actual output is loaded down or whatever. You still need to take care of the analog functions though - you should always do that.

/Henrik.