Introduction to Computer Systems and Software - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

Introduction to Computer Systems and Software

Description:

Low-level Programmer and Hardware Designer. The End User ... is a collection (an array) of ... Computer systems are large collections of electronic switches ... – PowerPoint PPT presentation

Number of Views:109
Avg rating:3.0/5.0
Slides: 51
Provided by: simonco6
Category:

less

Transcript and Presenter's Notes

Title: Introduction to Computer Systems and Software


1
Introduction to Computer Systems and Software
  • Lecture 1 of 2
  • Simon Coupland
  • simonc_at_dmu.ac.uk

2
Contents
  • Technology and Computer Evolution
  • Introduction to Computer Systems
  • Computer Hardware
  • Computer Software

3
Computer System Users
  • Types of User
  • End-user
  • Applications Programmer
  • Low-level Programmer and Hardware Designer

4
The End User
  • The vast majority of computer users are end users
  • View computers as tools black boxes
  • Use a set of application programs to achieve a
    specific goal or to solve a specific problem
  • Word processor
  • Spreadsheet
  • CAD (Computer Aided Design)
  • DTP (Desktop Publishing)

5
Applications Programmers
  • People who provide what end users want
  • Little knowledge of hardware
  • Appreciation for business logic
  • Technically and generally mathematically literate

6
Low-Level Programmers and Hardware Designers
  • Electronic engineers
  • Computer scientists
  • Knowledge of machine architecture
  • Knowledge of electronics
  • Real-time, bit manipulation and hardware
    resources
  • Program in assembler and C
  • Hardware design in FPGA, VHDL and more rarely
    ASIC

7
A Microcomputer System
  • Three components
  • Hardware
  • Software
  • Data

8
Hardware
  • The physical equipment
  • Base unit printed circuit boards (processor,
    memory and I/O), power supply and connections
  • Interface VDU/monitor, keyboard and mouse
  • Peripherals Disks, CD/DVD, printers and
    scanners

9
Software
  • A sequence of instructions that tell the computer
    what to do
  • Controls the hardware
  • Processes inputs and gives outputs
  • Examples linux, windows, internet explorer, gcc,
    etc

10
Data
  • Inputs
  • files
  • Settings registry, .ini files, .conf files
  • Some cross over - batch files and shell scripts

11
Instruction and Data Storage
  • Number representation (more in lecture 2)
  • Fundamental to all computer system is the notion
    of a binary digit - 0 or 1 called a bit.
  • Eight bits make up a byte.
  • One or more bytes make up a word

12
Instruction and Data Storage
  • Integers (a number with no decimal points)
  • An unsigned byte range 0 to 255
  • 01001101 1 4 8 64 77
  • 10111101 1 2 8 16 32 128 187

13
Instruction and Data Storage
  • Negative Integers
  • An twos compliment signed byte range -128 to
    127
  • Most significant bit stores the sign (1 for -, 0
    for )
  • When negative, result -128 result
  • 01001101 1 4 8 64 77
  • 11001101 -128 1 4 8 64 -51

14
Instruction and Data Storage
  • Real numbers
  • Floating point binary representations are used to
    represent real numbers (a number that has a
    decimal point)
  • It is possible to use fixed point binary
    representation, generally not used because of
    inflexibility

15
Characters (text)
  • Text is a collection (an array) of characters
  • Generally characters are encoded in ASCII
    (American Standard Code for Information
    Interchange)
  • Example Hi!

16
Low Level Computer Languages
  • Assembly language
  • Direct interaction with all parts of the hardware
  • Specific to each microprocessor
  • Great for real-time execution
  • Nearly impossible to code large tasks

17
Low Level Computer Languages
  • Assembly language
  • Example on MC680000 series
  • CLR.W D3
  • Clear the lower 16 bit the data register D3

18
High Level Computer Languages
  • Higher level of abstract from the hardware
  • Less direct interaction with the hardware
  • Example languages
  • C (can be low level)
  • C
  • Java
  • BASIC
  • FORTRAN
  • COBOL

19
High Level Computer Languages
  • Example in C
  • int D0 7 2 (267 23)
  • Equivalent in MC680000 assembler
  • MOVE.L 267,D0
  • SUB.W 23,D0
  • ADD.W D0,D0
  • ADD.W 7,D0

20
Technology and Computer Evolution
21
Computer Generations
  • Computer systems are large collections of
    electronic switches
  • The power of a computer depends on the number of
    these electronic binary switches

22
Computer Generations
  • First Generation (1940s)
  • Switches were thermionic valves
  • Heated cathode produces negatively charged
    electrons
  • Flow of electrons to positive anode controlled by
    charged grid
  • Very large
  • Prone to breakdowns

23
Computer Generations
  • Thermionic valve / vacuum tube

24
Computer Generations
  • Second Generation (1950s)
  • Switches were transistors
  • The flow of electrons between an emitter and a
    collector is controlled by the current supplied
    to a base semi conducting material
  • 5mm in height
  • Dont breakdown

25
Computer Generations
  • The Transistor

Collector
Emitter
Base
26
Computer Generations
  • Third Generation (1960s)
  • Switches were fabricated into small scale
    integrated circuits (ICs)
  • Still use semiconductors
  • Many transistors built onto a single chip
  • Much smaller
  • More processing power

27
Computer Generations
  • Forth Generation (1970s to date)
  • Miniaturization is the key
  • Small scale integration 2 - 64 transistors
  • Medium scale integration 64 - 2000 transistors
  • Large scale integration 2000 - 64000 transistors
  • Very large scale integration 64K 200K
    transistors
  • Ultra large scale integration 200K 100M
    transistors

28
Computer Generations
  • Moores Law
  • Gordon Moore co-founder of Intel
  • Transistor density on ICs will double every
    eighteen months

29
Computer Generations
30
Computer Generations
  • Moores Law the limit
  • Research suggests that the smallest possible
    transistor will be 16-nanometres
  • Expected to be reached around 2020
  • Then what?
  • Quantum computing
  • Bio computing
  • Unknown alternative to the transistor

31
Computer Hardware
32
Computer Hardware
33
Computer Hardware
  • Components
  • CPU (Central Processing Unit)
  • Co-Processor (floating-point math, graphics)
  • Primary memory (RAM and ROM)
  • Disk controller
  • Input/Output devices and peripherals

34
Computer Hardware
  • Buses
  • Address bus carries address of memory being
    accessed
  • Data bus carries the data
  • Control bus carries control signals between CPU
    and other components

35
Computer Hardware
  • Memory
  • Registers store temporary data within the
    processor
  • Cache stores temporary data that is likely to
    be used with the processor
  • Primary memory RAM, stores programs being
    executed
  • Secondary memory Disks, persistent storage

36
Computer Hardware
  • Memory
  • Organised as a table

37
Computer Hardware
  • Inside the CPU

ALU
Control unit
Clock
Pipeline
Internal cache memory
RAM
External cache memory
Data
Address
Control
38
Computer Hardware
  • Inside the CPU The Control Unit
  • In overall control of the computer system
  • Controls the fetch/execute cycle
  • Registers
  • Program counter hold the memory address of the
    next word in the current instruction
  • Instruction register holds the next instruction
    to be executed

39
Computer Hardware
  • Inside the CPU Fetch/Excute
  • Fetch
  • Fetch the instruction from memory. Decode it and
    it the instruction has a indirect memory address
    find out the effective address in memory.
  • Execute
  • Execute the instruction by send the series of
    signals from the control unit to the ALU. Store
    the result or send it to an output device.

40
Computer Hardware
  • Inside the CPU the Arithmetic/Logic Unit
  • Integer arithmetic addition, subtraction,
    multiplication and division
  • Logical operations not, and, or, exclusive or
    and Bit shift operations
  • Data, address and status registers

41
Computer Hardware
  • Co-Processors
  • Mathematical to perform high speed floating
    point number calculations
  • Graphical to produce video output from computer
    models. Modern graphics co-processors often
    implement an API (DirectX, OpenGL) in hardware

42
Computer Software
43
Computer Software
  • System start-up
  • Uses firmware (software stored in ROM) generally
    called the BIOS, Basic Input/Output System
  • Initialises hardware
  • Performs Power On Self Test
  • Starts the operating system

44
Computer Software
  • Operating System OS
  • Controls hardware and software
  • Windows, Linux, MAC OS X
  • Provides the initial front end experience to the
    end user
  • Does all the backroom work to keep things running
    smoothly

45
Computer Software
  • Assemblers, Compilers and Interpreters
  • Assemblers convert assembly language into machine
    code
  • Compilers convert text written a programming
    language into machine code.
  • Cross assemblers/compilers convert code into
    machine code for a different machine
  • Interpreters execute programming code on line at
    a time

46
Computer Software
  • Java the Exception
  • Originally called Oak, java was intended to be
    the de facto language for embedded systems
  • The Java compiler javac converts java text in
    machine independent byte code
  • Each machine or piece of hardware has a Java
    Virtual Machine (JVM) which converts byte code
    into machine code and executes it
  • Write once, run anywhere (slowly!)

47
Recap
  • Three types of people in computing

48
Recap
  • Three types of people in computing
  • End users our customers
  • Applications programmers people who understand
    a little about computers and write all the
    software the we use. Use C, C, Java, VB
  • Hardware programmers/designers people who know
    a lot about electronics, they built gadgets and
    the software the underpins the applications
    software. Use VHDL, assembler, C

49
Recap
  • What is a Computer?

50
Recap
  • What is a Computer?
  • A big collection of electronic binary switches
  • The switches are actually very small transistors
    jammed onto silicon wafers - chips
  • CPU (Central Processing Unit)
  • Co-Processor (floating-point math, graphics)
  • Primary memory (RAM and ROM)
  • Disk controller
  • Input/Output devices and peripherals
Write a Comment
User Comments (0)
About PowerShow.com