This paper is concerned with crossover operators for genetic algorithms (GAs) which are used to solve problems based on real numbers. First, a classification of the operators is introduced, dividing crossover into a vector-level and a variable-level operator. The theoretical study of variable-level operators for binary coded GAs leads to the discovery of two properties, which are used to define certain characteristics of crossover operators used by real-number encoded GAs. For variable-level operators, the experimental distributions of the offspring variables of given pairs of parent variables are then found. Finally, an experimental comparison of crossover operator performance is carried out.