The theory of automata and languages looks on computations of abstract machines from a formal viewpoint. In the 1950's the investigations of this theory started with finite-state string automata, which abstract in an easy way from real computer programs. But finite-state string automata suffer from several weaknesses because of their simplicity. This is the reason for investigating more powerful concepts. In this book we establish a theory of finite-state weighted tree automata, which are one of the more powerful concepts. They model both, the performance of instructions in sequence as well as in parallel. In addition, finite-state weighted tree automata compute, for example, the time for processing a program.