Principles of Quantum Computing & Gate Operations