How to change PORTx register in other place of program?(Codevision & AVR-GCC)
Exactly the same way; there is no intrinsic difference between performing the assignment at any point in your code.

I have no experience with Codevision, but I can't imagine that performing a bitfield assignment that way would not be translated to the appropriate opcodes, the same way as if one were to perform a bitwise operation against the entire register in C.