1. computers introduction

419 views
274 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
419
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • CS1103 Digital Logic Design
  • CS1103 Digital Logic Design
  • 1. computers introduction

    1. 1. 11 Lecture 1: IntroductionLecture 1: Introduction  OverviewOverview  History of ComputersHistory of Computers  Application AreasApplication Areas  Types of ComputersTypes of Computers  Computer ConfigurationsComputer Configurations  Computers as Information ProcessorsComputers as Information Processors
    2. 2. 22 IntroductionIntroduction  Basic Machine Hardware ArchitectureBasic Machine Hardware Architecture  CPUCPU  Memory/StorageMemory/Storage  Main MemoryMain Memory  Input/Output DevicesInput/Output Devices  Basic Machine SoftwareBasic Machine Software  FlowchartsFlowcharts  LanguagesLanguages  Operating SystemsOperating Systems  System UtilitiesSystem Utilities  ApplicationsApplications
    3. 3. 33 Overview of Part 1Overview of Part 1  Number system:Number system: how is informationhow is information represented in a computer.represented in a computer.  Boolean Algebra:Boolean Algebra: the basis for logic designthe basis for logic design and manipulation of information.and manipulation of information.  Logic gates:Logic gates: what are the gates used, andwhat are the gates used, and how circuits can be made from gates.how circuits can be made from gates.  Function simplification:Function simplification: to reduce the sizeto reduce the size of design, increase speed, etc.of design, increase speed, etc.
    4. 4. 44 Overview of Part 1Overview of Part 1  Combinational circuits:Combinational circuits: simple circuitsimple circuit design without memory.design without memory.  Sequential circuits:Sequential circuits: circuit design withcircuit design with memory.memory.  Disk:Disk: storage techniques.storage techniques.  Bus:Bus: internal communication.internal communication.  I/O:I/O: devices, technology, etc.devices, technology, etc.
    5. 5. 55 History of ComputersHistory of Computers  AbacusAbacus invented in Babylonia in 3000BCinvented in Babylonia in 3000BC  Adding machineAdding machine byby Blaise PascalBlaise Pascal (1642)(1642)  Difference engineDifference engine and theand the analytical engineanalytical engine byby Charles BabbageCharles Babbage (1842)(1842)  IBM first electromechanical computer (usingIBM first electromechanical computer (using relays) designed byrelays) designed by Howard AikenHoward Aiken (1937) was(1937) was based on punched cards.based on punched cards.  used to calculate tables of mathematical functionsused to calculate tables of mathematical functions
    6. 6. 66 History of ComputersHistory of Computers  11stst Generation ComputersGeneration Computers (1940s to early 1950s) –(1940s to early 1950s) – based onbased on vacuum tubesvacuum tubes technology.technology.  1943 – ENIAC: first fully electronic computer, designed by1943 – ENIAC: first fully electronic computer, designed by John MauchlyJohn Mauchly  1944 – Mark I: Howard Aiken1944 – Mark I: Howard Aiken  1946 – EDVAC: first stored program computers, designed by1946 – EDVAC: first stored program computers, designed by John von NeumannJohn von Neumann  22ndnd Generation ComputersGeneration Computers (late 50s to early 60s) –(late 50s to early 60s) – based onbased on transistorstransistors technology.technology.  more reliable, less expensive, low heat dissipationmore reliable, less expensive, low heat dissipation  IBM 7000 series, DEC PDP-1IBM 7000 series, DEC PDP-1
    7. 7. 77 History of ComputersHistory of Computers  33rdrd Generation ComputersGeneration Computers (late 60s to early 80s) –(late 60s to early 80s) – integrated circuitsintegrated circuits (IC).(IC).  IBM 360 series, DEC PDP-8IBM 360 series, DEC PDP-8  IC – many transistors packed into single containerIC – many transistors packed into single container  low prices, high packing densitylow prices, high packing density  44thth Generation ComputersGeneration Computers (present day) LSI/VLSI(present day) LSI/VLSI  small size, low-cost, large memory, ultra-fast PCs tosmall size, low-cost, large memory, ultra-fast PCs to supercomputerssupercomputers  55thth Generation ComputersGeneration Computers (future)(future)  massively parallel, large knowledge bases, intelligentmassively parallel, large knowledge bases, intelligent  Japan, Europe and US advanced research programsJapan, Europe and US advanced research programs
    8. 8. 88 History of ComputersHistory of Computers  Web sitesWeb sites  History of ComputersHistory of Computers (http://www.comp.nus.edu.sg/~sf100/c1f7.htm)(http://www.comp.nus.edu.sg/~sf100/c1f7.htm)  ACM Timeline of Computing HistoryACM Timeline of Computing History (http://www.computer.org/computer/timeline)(http://www.computer.org/computer/timeline)  The Virtual Museum of ComputingThe Virtual Museum of Computing (http://www.comlab.ox.ac.uk/archive/other/museums/computi(http://www.comlab.ox.ac.uk/archive/other/museums/computi ng.html)ng.html)  IEEE Annals of the History of ComputingIEEE Annals of the History of Computing (http://www.computer.org/annals/)(http://www.computer.org/annals/)  and others (surf the web)and others (surf the web)
    9. 9. 99 Application AreasApplication Areas  Scientific:Scientific: weather forecasting, simulation, space-weather forecasting, simulation, space- program.program.  one of the earliest application areas.one of the earliest application areas.  heavy computation but small amount of data.heavy computation but small amount of data.  Commercial:Commercial: accounting, banking, inventory, sales.accounting, banking, inventory, sales.  changes nature of business – information is money.changes nature of business – information is money.  high data throughput, simple calculations.high data throughput, simple calculations.  Manufacturing:Manufacturing: numerical control, CAD/CAM,numerical control, CAD/CAM, integration.integration.  graphics, interfacing, device-drivers, networks.graphics, interfacing, device-drivers, networks.
    10. 10. 1010 Application AreasApplication Areas  Real-time & Control System:Real-time & Control System: air-traffic control,air-traffic control, aircraft,nuclear power station.aircraft,nuclear power station.  real time, very fast, safety-critical.real time, very fast, safety-critical.  Educational & RecreationalEducational & Recreational  CAI software, multi-media, games, Internet, World WideCAI software, multi-media, games, Internet, World Wide Web.Web.  TelecommunicationTelecommunication  Network, SCV, Singapore One.Network, SCV, Singapore One.
    11. 11. 1111 Types of ComputersTypes of Computers  Supercomputers:Supercomputers:  very fast (Gflops) but expensive machine($10m), vector orvery fast (Gflops) but expensive machine($10m), vector or parallel processors, used in scientific applications andparallel processors, used in scientific applications and simulations.simulations.  Mainframes:Mainframes:  fast (>10mips) but expensive ($1m), high-throughput, usedfast (>10mips) but expensive ($1m), high-throughput, used in large commercial organisations, support many concurrentin large commercial organisations, support many concurrent users interactively.users interactively.  Mini-computers:Mini-computers:  fast but affordable ($200k), used in medium-sizedfast but affordable ($200k), used in medium-sized organisations (e.g. SoC), support multiple users.organisations (e.g. SoC), support multiple users.
    12. 12. 1212 Types of ComputersTypes of Computers  Workstations:Workstations:  affordable ($20k) and fast single-user systems (20 riscsaffordable ($20k) and fast single-user systems (20 riscs mips), good graphics capabilities, engineering, network-mips), good graphics capabilities, engineering, network- based computing.based computing.  Micro/Personal/Home Computers:Micro/Personal/Home Computers:  cheap and affordable ($3k), transportable, home use, goodcheap and affordable ($3k), transportable, home use, good for games and as educational tool, word processing, suitablefor games and as educational tool, word processing, suitable for small enterprise.for small enterprise.
    13. 13. 1313 Computer ConfigurationsComputer Configurations  Stand-alone computer systemStand-alone computer system  Modem connectionModem connection
    14. 14. 1414 Computer ConfigurationsComputer Configurations  Terminals-host connectionsTerminals-host connections
    15. 15. 1515 Computer ConfigurationsComputer Configurations  Network of computersNetwork of computers
    16. 16. 1616 Computers as InformationComputers as Information ProcessorsProcessors Example: An automobile augments our power of locomotion. A computer is a device capable of solving problems according to designed program. It simply augments our power of storage and speed of calculation. Driver Programmer
    17. 17. 1717 Computers as InformationComputers as Information ProcessorsProcessors  Unlike previous inventions, computers are specialUnlike previous inventions, computers are special because they arebecause they are general-purposegeneral-purpose..  Could be used to perform a variety of tasks.Could be used to perform a variety of tasks.  Computer =Computer = Hardware + SoftwareHardware + Software..  HardwareHardware: physical components for computation/processing;: physical components for computation/processing; should be simple, fast, reliable.should be simple, fast, reliable.  SoftwareSoftware: set of instructions to perform tasks to: set of instructions to perform tasks to specifications; should be flexible, user-friendly,specifications; should be flexible, user-friendly, sophisticated.sophisticated.
    18. 18. 1818 Computer as InformationComputer as Information ProcessorsProcessors Computer are Information Processors Data Units: 1 bit (binary digit): one of two values (0 or 1) 1 byte: 8-bits 1 word: 1, 2, or 4 bytes, or more (depends on ALU) Computer system Raw data Processed information
    19. 19. 1919 Basic Machine HardwareBasic Machine Hardware ArchitectureArchitecture  Main Components:Main Components:  CPUCPU (Central Processing Unit: controls devices and(Central Processing Unit: controls devices and processes data).processes data).  MemoryMemory: stores programs and intermediate data.: stores programs and intermediate data.  Input DevicesInput Devices: accept data from outside world.: accept data from outside world.  Output DevicesOutput Devices: presents data to the outside world.: presents data to the outside world.  An analogy with Human Information Processors:An analogy with Human Information Processors:  CPU – brain’s reasoning powersCPU – brain’s reasoning powers  Memory – brain’s memoryMemory – brain’s memory  Input Devices – eyes, ears, sensory sub-systemInput Devices – eyes, ears, sensory sub-system  Output Devices – mouth, hands, facial and bodyOutput Devices – mouth, hands, facial and body expressionsexpressions
    20. 20. 2020 Basic Machine HardwareBasic Machine Hardware ArchitectureArchitecture Monitor (Output) Mouse and Keyboard (Input) Headphone (Output) Hardware box (contains processor, memory, buses etc.)
    21. 21. 2121 Basic Machine HardwareBasic Machine Hardware ArchitectureArchitecture Motherboard (Printed Circuit Board) Processor Slots for RAM chips Network card and CRT card Cage for mounting drives Floppy disk drive and Hard disk drive © above picture: Patterson and Hennessy
    22. 22. 2222 Hardware – CPUHardware – CPU  CPU = control unit + ALU + registersCPU = control unit + ALU + registers  Control Unit :Control Unit : monitors and directs sequences ofmonitors and directs sequences of instructionsinstructions  Execution CycleExecution Cycle (repeated):(repeated):  fetch (next instruction)fetch (next instruction)  decodedecode  executeexecute
    23. 23. 2323 Hardware – CPUHardware – CPU  ALU:ALU: performs simple arithmetic and logicalperforms simple arithmetic and logical operations.operations.  Examples: Add, subtract, and, or, invert, increment etc.Examples: Add, subtract, and, or, invert, increment etc. A B ALU select R = A op B n-bits operations R
    24. 24. 2424 Hardware – CPUHardware – CPU  Registers:Registers: temporary results + status informationtemporary results + status information  ACC (accumulator) – current dataACC (accumulator) – current data  PC (program counter) – points to next instructionPC (program counter) – points to next instruction  IR (instruction register) – current instructionIR (instruction register) – current instruction  MA (memory address) – address to read/writeMA (memory address) – address to read/write  MB (memory buffer) – data to read/writeMB (memory buffer) – data to read/write
    25. 25. 2525 Hardware – Memory/StorageHardware – Memory/Storage  Purpose: to store program and data.Purpose: to store program and data.  Desirable Traits: fast access, large capacity,Desirable Traits: fast access, large capacity, economical, non-volatile.economical, non-volatile.  However, most memory devices do not have all theseHowever, most memory devices do not have all these traits.traits.
    26. 26. 2626 Hardware – Memory/StorageHardware – Memory/Storage  Solution: hierarchical combinationSolution: hierarchical combination registers main memory disk storage magnetic tapes Fast, expensive (small numbers), volatile Slow, cheap (large numbers), non-volatile
    27. 27. 2727 Hardware – Main MemoryHardware – Main Memory  FastFast BUTBUT volatilevolatile (need power to maintain data)(need power to maintain data)  Logical structure – table of memory cells/units.Logical structure – table of memory cells/units. 0 1 2 3 2m -3 2m -2 2m -1 addresses memory cells 8 bits or more M A R M B R address data
    28. 28. 2828 Hardware – Main MemoryHardware – Main Memory  Memory cells may be grouped intoMemory cells may be grouped into pagespages (say 512(say 512 consecutive words per page).consecutive words per page).  UnitsUnits  1 KBytes = 1024 (or 21 KBytes = 1024 (or 21010 ) bytes) bytes  1 MBytes = 1024 Kbytes (or 21 MBytes = 1024 Kbytes (or 22020 bytes)bytes)  1 GBytes = 1024 Mbytes (or 21 GBytes = 1024 Mbytes (or 23030 bytes)bytes)
    29. 29. 2929 Hardware – Input/OutputHardware – Input/Output DevicesDevices  Input devicesInput devices: read/accept data (into computer): read/accept data (into computer)  obsolete: card reader, paper tape readerobsolete: card reader, paper tape reader  present: keyboard, mouse, light-pen, optical char readerpresent: keyboard, mouse, light-pen, optical char reader  future: voice and vision recognition.future: voice and vision recognition.  Output devicesOutput devices: write/display data (to users): write/display data (to users)  obsolete: card & paper punch, teletypeobsolete: card & paper punch, teletype  present: VDU (visual display unit), printers, plotters,present: VDU (visual display unit), printers, plotters, graphics display, soundgraphics display, sound  future: voice synthesis.future: voice synthesis.
    30. 30. 3030 Basic Machine SoftwareBasic Machine Software  SoftwareSoftware is the key to making computers generalis the key to making computers general purpose.purpose.  Software are often built hierarchically, with layers ofSoftware are often built hierarchically, with layers of software providing successive higher-level ofsoftware providing successive higher-level of abstractions.abstractions.  This structure is reflected by the following onion layerThis structure is reflected by the following onion layer view of software.view of software.
    31. 31. 3131 Basic Machine SoftwareBasic Machine Software Hardware Operating system System utilities Applications/User programs
    32. 32. 3232 Software – FlowchartsSoftware – Flowcharts  The sequence of instructions of a software/programThe sequence of instructions of a software/program can be graphically specified usingcan be graphically specified using flowchartsflowcharts..  The flowchart technique maybe a little outdated butThe flowchart technique maybe a little outdated but could still be used in a clear manner for simplecould still be used in a clear manner for simple problems.problems.  As an example, the procedure to find the roots of aAs an example, the procedure to find the roots of a quadratic equation,quadratic equation, axax22 ++ bxbx ++ cc = 0, can be written= 0, can be written using the following equation:using the following equation: aacbbroots 2/)4( 2 −±−=
    33. 33. 3333 Software – FlowchartsSoftware – Flowcharts  This procedure can be coded in the followingThis procedure can be coded in the following flowchart:flowchart: aacbbroots 2/)4( 2 −±−= Read a,b,c a=0? d:=b2 - 4ac d>0 d=0 d<0 Write real root Write complex roots Write real roots = < > no yes Write not quadratic
    34. 34. 3434 Software – LanguagesSoftware – Languages  All programs will have to be coded in someAll programs will have to be coded in some programming language – usually text-based.programming language – usually text-based.  The native language of machine is calledThe native language of machine is called machinemachine languagelanguage..  This consists of a set of primitive instructions, codedThis consists of a set of primitive instructions, coded in numbers.in numbers.  An example is "0310 0412 0512". But can youAn example is "0310 0412 0512". But can you understand what it does?understand what it does?
    35. 35. 3535 Software – LanguagesSoftware – Languages  Possible to use more human-readable mnemonicPossible to use more human-readable mnemonic instructions.instructions.  These are know asThese are know as assembly languageassembly language instructions.instructions.  Normally, assembly language has a 1-to-1Normally, assembly language has a 1-to-1 correspondence with machine language.correspondence with machine language. Mnemonic Description ADD 10 AC:=AC+C(10) SUB 12 AC:=AC-C(12) STO 12 C(12)=AC
    36. 36. 3636 Software – LanguagesSoftware – Languages  Assembly language is still very primitive.Assembly language is still very primitive.  Higher-level LanguagesHigher-level Languages, like Pascal, C, Fortran,, like Pascal, C, Fortran, which are a little closer to English language havewhich are a little closer to English language have been developed.been developed.
    37. 37. 3737 Software – LanguagesSoftware – Languages  An example Pascal program to find roots of quadraticAn example Pascal program to find roots of quadratic equation:equation: read(a,b,c); if a=0 then writeln ("not a quadratic equation") else begin d := sqr(b)-4*a*c; if d>0 then writeln ("complex roots") else if d=0 then writeln("single root =",-b/(2*a)) else writeln ("root1=",-b+sqrt(d)/(2*a), "root2=", -b-sqrt(d)/(2*a)); end;
    38. 38. 3838 Software – Operating SystemsSoftware – Operating Systems  Operating SystemOperating System (OS) is situated directly above(OS) is situated directly above hardware. It controls and manages the availablehardware. It controls and manages the available hardware resources.hardware resources.  Often, OS has special access privileges to certainOften, OS has special access privileges to certain categories of instructions and certain hardwarecategories of instructions and certain hardware  User programs have to go through OS for theseUser programs have to go through OS for these privileges.privileges.
    39. 39. 3939 Software – Operating SystemsSoftware – Operating Systems  Associated Functions/Tasks:Associated Functions/Tasks:  boots up machineboots up machine  loads user programloads user program  allocates main memory/storage spaceallocates main memory/storage space  schedules concurrent user programsschedules concurrent user programs  drivers to service various devices (terminals, printers, etc.)drivers to service various devices (terminals, printers, etc.)
    40. 40. 4040 Software – System UtilitiesSoftware – System Utilities  Above the OS, there is a set of frequently executedAbove the OS, there is a set of frequently executed programs,calledprograms,called System UtilitiesSystem Utilities. These utilities are. These utilities are often packaged with OS.often packaged with OS.  Used by programmers/analyst to help develop applications.Used by programmers/analyst to help develop applications.  Some examplesSome examples  EditorEditor:: compose/edit user programs or data filescompose/edit user programs or data files  Assembler:Assembler: translates assembly to machine codetranslates assembly to machine code  Compiler:Compiler: translates high-level language totranslates high-level language to assembler/machine codeassembler/machine code  Spooler:Spooler: temporary stores print files for queuingtemporary stores print files for queuing
    41. 41. 4141 Software – System UtilitiesSoftware – System Utilities  Some examples (continued)Some examples (continued)  Mailer:Mailer: forwards/receives mails between usersforwards/receives mails between users  DBMSDBMS (Data-Base Management System): centralised(Data-Base Management System): centralised management of data at a more abstract level than filesmanagement of data at a more abstract level than files  Window Management System:Window Management System: multiple windows can appearmultiple windows can appear on single screen. These together with various graphicalon single screen. These together with various graphical entities (e.g. menus,panels, buttons) can be managed byentities (e.g. menus,panels, buttons) can be managed by WMS.WMS.
    42. 42. 4242 Software – ApplicationsSoftware – Applications  Word-ProcessorsWord-Processors: compose/edit reports/articles: compose/edit reports/articles  Accounting PackageAccounting Package: keeps track of accounting: keeps track of accounting transactions, produces daily/weekly/monthlytransactions, produces daily/weekly/monthly (profit/loss) reports(profit/loss) reports  Inventory SystemInventory System: keeps track of stock levels: keeps track of stock levels  Personnel/Payroll SystemPersonnel/Payroll System: staff records, monthly: staff records, monthly salarysalary
    43. 43. 4343 End of fileEnd of file

    ×