Previous page
Next page

12.1 Introduction

In the previous chapter we saw how high-level programs can be translated into assembly language and from there be expressed in a machine language of 1’s and 0’s. We also looked at the physical characteristics of simple register-based machines, concentrating on how CPU registers and main memory storage locations could be manipulated by the various machine language instructions.

This chapter examines how computer hardware can be constructed. While the details necessary to build a complete computer – even one as simple as the Watson Virtual Machine – are beyond the scope of this book, this chapter illustrates how many of the basic components of a computer, such as the addition unit and comparison circuitry, can be constructed. Surprisingly, as we will see, digital computers are based on just three simple logic circuits, or “gates” as they are called. These gates: and, or, and not, can be interconnected in various ways to form all of the major functional components of a computer.

Section 12.2 presents the fundamentals of digital logic. First, the idea of two-state devices is introduced using simple electrical circuits. The behavior of these circuits is then generalized to logic gates, which are, in turn, represented using Boolean expressions. The section concludes with a discussion of several simple circuits and their corresponding gate representations.

Section 12.3 is concerned with the design of combinational circuits. Combinational circuits are constructed by interconnecting the logic gates of Section 12.2 in various ways.

Section 12.4 presents another class of circuits that are also constructed from the basic logic gates. This class, called the sequential circuits, differs from combinational circuits in that they support feedback. In other words, one or more of the outputs of a sequential circuit can be fed back to that circuit as input.

Section 12.5 illustrates how some of the basic components of a computer, such as main memory and portions of the Arithmetic / Logic Unit (ALU), can be implemented using the combinational and sequential circuits of Sections 12.3 and 12.4.

Figure 12.1: Representations of switches and light bulbs


Return to top