Ive never played any other games but here is how I understand this one.
Each Pokemon has a hidden stat for Attack, Defense, and Stamina (rated 1 worst through 15 best I think) that you cannot see. These stats are calculated in a formula with modifiers for the type of pokemon, and the level of the pokemon (which is analogous to how many times its been powered up with dust), a 10 CP pidgey might be level 1, but a 300 CP pidgey is probably level 20 or whatever.
If you use dust and candy to power up the 10 cp pidgey a few times that might move it to level 3. The white bar in an arc above the CP is an indication of how many more levels you can power up that pokemon before your own level will cap you out from powering up that pokemon anymore.
If you take a 1/1/1 pidgey and max him out, he will have lower CP and lower HP than a 15/15/15 pidgey that you level to the maximimum full bar. Or to be more specific, if you power up 2 different pidgeys to maximum, and one ends up with a higher CP and higher HP, you can deduce that the one must have a higher Stamina/Attack/Defense ratings than the other.
I dont think the attack moves have any effect on CP, but in my experience they are really important. Certain moves seem to make a huge difference in battles. And of course the type of moves determines which pokemon you will be strong against. I have a 1075 CP Golduck that has a main psychic attack and an ice beam special that would struggle before beating a 1100 CP Flareon. But I have an 875 CP Golduck with Water Gun and Hydro Pump that totally destroys with almost no damage the same Flareon.