Chapter 1 - Introduction New Version

Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

CHAPTER 1- INTRODUCTION

10/16/2023 CHAPTER 1 Introduction 1


CHAPTER 1
Introduction
Objectives

After studying this chapter, the student should be able to:


 Define the Turing model of a computer.

 Define the von Neumann model of a computer.

 Describe the three components of a computer: hardware,


data, and software.
1-1 TURING MODEL

The idea of a universal computational device was first


described by Alan Turing in 1936.

He proposed that all computation could be performed


by a special kind of a machine, now called a Turing
machine.

He based the model on the actions that people perform


when involved in computation. He abstracted these
actions into a model for a computational machine that
has really changed the world.
1.1.1 Data processors

Before discussing the Turing model, let us define a


computer as a data processor.

Using this definition, a computer acts as a black box that


accepts input data, processes the data, and creates output
data (Figure 1.1).

In this model, a pocket calculator is also a computer (which


it is, in a literal sense).
Figure 1.1 A single purpose computing machine
1.1.2 Programmable data processors

The Turing model (Figure 1.2) is a better model for a


general-purpose computer.
• This model adds an extra element to the specific
computing machine: the program.

A program is a set of instructions that tells the computer


what to do with data.
Figure 1.2 A computer based on the Turing model
Figure 1.3 The same program, different data
Figure 1.4 The same data, different programs
1.1.3 The universal Turing machine
A universal Turing machine, a machine that can do any
computation if the appropriate program is provided, was the
first description of a modern computer.

It can be proved that a very powerful computer and a


universal Turing machine can compute the same thing. We
need only provide the data and the program—the description
of how to do the computation—to either machine.

In fact, a universal Turing machine is capable of computing


anything that is computable.
1-2 VON NEUMANN MODEL
Computers built on the Turing universal machine store
data in their memory.

Around 1944–1945, John von Neumann proposed that,


since program and data are logically the same, programs
should also be stored in the memory of a computer.
1.2.1 Four subsystems
Computers built on the von Neumann model divide the
computer hardware into four subsystems: memory,
arithmetic logic unit, control unit, and input/output
(Figure 1.5).

Figure 1.5 The von Neumann model


1.2.2 The stored program concept

The von Neumann model states that the program must be


stored in memory.
• This is totally different from the architecture of early
computers in which only the data was stored in memory:

The memory of modern computers hosts both a program and


its corresponding data. This implies that both the data and
programs should have the same format, because they are
stored in memory. In fact, they are stored as binary patterns
in memory—a sequence of 0s and 1s.
1.2.3 Sequential execution of instructions

A program in the von Neumann model is made of a finite number of


instructions.

The control unit fetches one instruction from memory, decodes it, then
executes it (instruction cycle).

The instructions are executed one after another.


• one instruction may request the control unit to jump to some
previous or following instruction, but this does not mean that the
instructions are not executed sequentially.
Sequential execution of a program was the initial requirement of a
computer based on the von Neumann model. Today’s computers
execute programs in the order that is the most efficient.
Instruction cycle

1.14
1-3 COMPUTER COMPONENTS
We can think of a computer as being made up of three
components:
• computer hardware,
• data, and
• computer software.
1.3.1 Computer hardware

Computer hardware today has four components under the


von Neumann model, although we can have different types
of memory, different types of input/output subsystems, and
so on.

1.3.2 Data
The von Neumann model clearly defines a computer as a
data processing machine that accepts the input data,
processes it, and outputs the result.
1.3.3 Computer software

The main feature of the Turing or von Neumann models is


the concept of the program.

Although early computers did not store the program in the


computer’s memory, they did use the concept of programs.

• Programming those early computers meant changing the


wiring systems or turning a set of switches on or off (1,
0).
• Programming was therefore a task done by an operator or
engineer before the actual data processing began.
Figure 1.6 Program and data in memory
Figure 1.7 A program made of instructions
Important Links
20

 https://drive.google.com/file/d/12kVSE1DQJm2S
1b2FD3tpiEuD7La3_MPF/view?usp=sharing

10/16/2023 Chapter 1: Software and Software Engineering

You might also like