This chapter discusses various types of applications. The objectives important to this chapter are:
Chapter 3 begins with a statement that the system unit is where instructions are carried out on a computer. The system unit has several components, which can be considered as falling into three categories:
Before discussing the system unit components, the chapter discusses the fact that computers are digital devices. The real world is sometimes digital, but more often analog. To understand the difference, consider the difference between a light with an on/off switch and a light with a dimmer switch. Think of the standard on/off switch as a digital switch, because it has only two states (on and off) and has to be in one state or the other. Think of the light with a dimmer switch as analog, because it has many possible states, ranging from off through dim to very bright. Data in a computer system is held in binary digits, ones and zeros. You can think of these digits as switches that are either on (holding a one) or off (holding a zero). Since people tend to shorten phrases that they use a lot, computer people shorten the phrase "binary digit" to "bit".
Since a bit is not complex enough to represent more than two things (on and off), sequences of bits are used to represent characters. Two code systems using bit patterns (sequences) are discussed in the chapter: ASCII, which is used on most PCs, and EBCDIC, which is used on most IBM mainframes. The two systems are different, but they serve the same purpose: characters are assigned unique bit patterns, and those bit patterns are used by a computer to represent the characters in memory. In most cases, a character is represented by eight bits. We refer to a sequence of eight bits as a byte.
A drawback to using a byte to represent a character is that you can only represent 256 different characters by using 1s and 0s in a single byte. That sounds like plenty until you start thinking about more than one language, punctuation, money symbols, and lots of other characters the average user may not encounter every day. Unicode is a code system that uses two bytes for each character, which allows more than 65,000 possible characters. This is enough characters to describe all the symbols human languages currently use.
When transmitting signals between system, some bits can become lost or misunderstood. Various systems use some means of verifying the signals. One method is described on page 3.5: parity bits. A parity bit is an additional bit that is sent with each byte. A parity bit is either a 1 or a 0, like all bits. An example will make this clearer. The sender counts the number of 1s in a byte. Let's assume the byte looks like this:
This byte has an even number of 1s. The sender now has to know which of two systems it is using: odd parity or even parity. If we are using odd parity, we would set the parity bit to 1, to make an odd total for the byte. If we are using even parity, we would set the parity bit to 0, to leave an even total of 1s. The way you set the parity bit is determined by your odd or even scheme and the actual number of 1s in each byte.
Components of a system unit are described. You should be familiar with most of the parts:
The chapter explains that a computer cannot carry out instructions unless they are in machine language. The actual instructions given to a CPU come in two types, because there are two common types of processors: Complex Instruction Set Computing (CISC) and Reduced Instruction Set Computing (RISC) processors. A program instruction generally consists of two parts: an operator (what to do) and one or more operands (what to do it to).
Processing instructions can be speeded up by two methods shown on page 3.21. Pipelining takes advantage of the fact that a processor carries out an instruction in four stages (fetch, decode, execute, and store). A processor that uses pipelining fetches the next instruction while it is decoding the first, instead of waiting to be finished with the first. Parallel processing means using more than one processor in a computer. Some systems have several processors that share the load.
The text returns to the idea of bits on page 3.22 by starting a discussion of number systems. The number system most humans use is the decimal system. Let's start with it. You use it so often that you don't think about the book's observations about it:
Consider the number 372:
(If the exponents above bother you, remember that 102 means 10 times 10, 103 means 10 times 10 times 10, and so on. Any number raised to the zero power (exponent 0) is equal to 1. This is a math rule. Trust me.)
If you understand the principles of base ten (decimal), you understand the principles of base two (binary). Base two has only two symbols: 0 and 1. A chart of a binary number can be constructed like the one above, and it is simpler. Consider, as an example, the binary number 10010001.
Since we can only use 1s and 0s in binary notation, we either have (1) or don't have (0) the number of units represented by a position in the binary number. Think of the 1 digits as being worth the value of their position, the power of two that the position represents:
The position on the right represents the 1s place (which is 20), the next represents the 2s place (21), the next the 4s place (22), and so on. (Again, for the math purists among you, we can say that 20 is actually 1, because any number raised to the zero power is defined to be 1.) A binary number can be converted to decimal notation by adding the values of the positions in which we find 1s. In the example above, there are 1s in three columns, whose values are 128, 16, and 1. So, 10010001 in binary means 145 in decimal.
The hexadecimal system is based on the number 16, and has sixteen symbols: 0 through 9, and A through F. It is often easier to write and express large numbers in hexadecimal notation, because it is shorter than binary or decimal notation.
Consider the hexadecimal number A3E, which is equal to the decimal number 2622:
A discussion of chip manufacturing follows in the chapter. Chips are usually made of silicon crystals, aluminum (and now copper) electrical paths, and other materials. The manufacturing process is exacting, and must be carried out in clean rooms free of dust, smoke, and other contaminants.