Chapter 6

CS 103 Program Translation

The Binary Machine

           As you learned earlier in the course, your computer can be reprogrammed to run many different Applications. These application programs are written in a variety of programming languages - Java, C++, Pascal, etc. However, your computer does not really "understand" any of these languages. All of the programs that we humans write in some symbolic "human" language must first be converted to the only language a computer understands - machine language.

           Machine language is binary code: sequences of zeros and ones, sets of switches that are off or on, voltages that are low or high, magnetized areas on iron oxide surfaces, or valleys and peaks burned on plastic disks.

            Originally programmers had to write programs in machine language by throwing switches on a computer console to input sequences of zeros and ones. Later, programs were written to translate human-friendly (high-level or source) code into machine-friendly (low-level or object) code. In this chapter you will glimpse, in a simplified way, how code is translated and executed by your computer. In order to understand how this works you will know more about binary code and coding schemes.

Lesson 1 - Assemblers, Interpreters,
                and Compilers.

Lesson 2 - Binary Representations

Lesson 3 - The Translation Process

Lesson 4 - Languages

  1. To describe how modern computers represent information in binary code.
  2. To show the advantages and disadvantages of different types of program translators.
  3. To introduce the concepts of scanning, parsing, and code generation.
  4. To trace the historical development of different types of program translators.
  5. To understand the relationships between different language groups and language generations.