CSC 150 Chapter 4: The Building Blocks of Computers
primary information resource: An Invitation to Computer Science (Java), Third Edition, G. Michael Schneider and Judith L. Gersting, Course Technology, 2007.

[ previous | schedule | next ]


Digital computers are built upon and operate by the simple concept of on-off.

All data and values are represented and manipulated internally as sequences of ones and zeroes.  On-off.
The streams of ones and zeroes are stored on various memory devices capable of maintaining two stable physical states.  On-off.
The construction of computer circuits is based on Boolean logic, which has only two possible values, true and false.  On-off.

Binary: Characterized by or consisting of two parts or components; twofold (www.dictionary.com).  On-off.

Let's explore these elementary building blocks.  You've already studied some of this in C SC 100.


Binary representation of integer values


Representing negative integer values


Representing real values


Representing textual values


Representing images Digitally

Digital Audio

focus on audio CDs (Compact Discs)

Highcriteria.com's Primer on PC Audio has good information about some of these topics. Another reference I used was How stuff works: CDs and How stuff works: MP3 files.

In audio and video, concurrent technology development by multiple companies and groups have lead to format wars. Such wars have been going on for centuries. Examples:

Data Compression



Storage Devices for Binary Data


If Transistors are the physical building blocks of computers, gates are the logical building blocks


Building circuits from gates

Process for designing circuits (without optimization)
1. construct truth table (complete input to output transformation, each column represents a bit)
2. for each output column
    (a) for each output row containing 1, build AND expression combining inputs in that row (first applying NOT on any 0 inputs)
    (b) combine all the AND expressions created in 2a with ORs
    (c) construct circuit diagram from resulting Boolean expression.
3. combine the circuit diagrams

Example: output is count of the number of 1's in the input.

input   | output
a  b  c |  d  e
--------+------
0  0  0 |  0  0
0  0  1 |  0  1
0  1  0 |  0  1
0  1  1 |  1  0
1  0  0 |  0  1
1  0  1 |  1  0
1  1  0 |  1  0
1  1  1 |  1  1

output d:  (!a &&  b && c) || (a  && !b && c) || (a &&  b && !c) || (a && b && c)
output e:  (!a && !b && c) || (!a && b && !c) || (a && !b && !c) || (a && b && c)

(drew circuit using lab software)

optimization results in fewer gates (cheaper, smaller, less power, less heat)

Example:
input  | output
a  b   |  c
-------+------
0  0   |  0
0  1   |  0
1  0   |  1
1  1   |  1
step 2 results in boolean expression:  (a && !b) || (a && b)
This can be reduced to simply:   a
(reduced from 4 gates to none)


[ C SC 150 | Peter Sanderson | Math Sciences server  | Math Sciences home page | Otterbein ]

Last updated:
Peter Sanderson (PSanderson@otterbein.edu)