29
Introduction to Computer Systems (2019 Fall) Seungbum Jo Chungbuk National University Course introduction

Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Introduction to Computer Systems(2019 Fall)

Seungbum Jo

Chungbuk National University

Course introduction

Page 2: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Course information

- Instructor : Seungbum Jo (조승범)(Office : S4-329, E-mail : [email protected])

- Time & Date, and Place :

S4-102 (Mon, 11:00 – 13:00, Thu, 14:00 – 15:00)

- Office Hour : Wed 15:00 – 17:00

- Course Homepage : https://cbnu.blackboard.com/ -> 컴퓨터시스템개론

Highly recommend to use course board for Q/A.

Page 3: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Course Objectives

Why study this course?

- What topics will we study in computer science department?

- This course covers MOST of computer science topics/ courses ‘very roughly’.

(Each 1-semester course will be covered in 1 week)

Page 4: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Schedule of Topics

(Each Topic will be covered in 1- 2 weeks)

- Introduction - Data Storage- Data manipulation- Operation Systems- Algorithms- Programming Languages- Software Engineering- Data Abstractions- Database Systems- Computer Graphics - Artificial Intelligence- Theory of Computation

Page 5: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Course Material

Computer Science: An Overview, J.Glenn Brookshear, Dennis Brylow, Pearson, 2019

(컴퓨터 과학 총론 by J.Glenn Brookshear 13판)

Page 6: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Grading Policy

- Midterm (30%)- Final (40%)- Homework (4-5?) / Programming Assignments (1-2) (20%)- Extra (10%, attendance, etc..)

The students will receive an automatic failure if- Miss midterm or final exams, or- Cheat the exams / assignments.

- Any assignment submission that is more than 3 days late may not be graded (penalized 30% per day).

Page 7: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Computer Science An Overview13th Edition

Chapter 0Introduction

Page 8: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

What is a computer?A computer is a electromechanical device which can be programmed to change (process) information from one form to another.

ProgramInput Data Output data

10 , 20 Plus 30

기생충.avi Play 기생충 movie

1.hwp2.hwp

Compress 12.zip

Page 9: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

What is a computer?A computer is a electromechanical device which can be programmed to change (process) information from one form to another.

–Do exactly as they are told.–Digital devices: Understand only two different states

(OFF and ON)

Page 10: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

What is a computer?

Hardware SoftwareProgram

PlusMinus

….Algorithm

Page 11: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

The Role of Algorithms• Algorithm: A set of steps that defines how a task is

performed

• Program: A representation of an algorithm

• Programming: The process of developing a program

• Software: Programs and the algorithms they represent

• Hardware: The machinery

Page 12: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

The Euclidean algorithm for finding the greatest common divisor of two positive integers

GCD (150, 18) = GCD (18, 150%18 = 6) = GCD (6, 0) = 6

Page 13: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

The Euclidean algorithm for finding the greatest common divisor of two positive integers

The gcd of 150 and 18 is : 6

Page 14: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

History of Algorithms• The study of algorithms was originally a subject in

mathematics.

• Early examples of algorithms– Long division algorithm– Euclidean Algorithm

• Gödel's Incompleteness Theorem: Some problems cannot be solved by algorithms.

Page 15: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

The History of Computing

• Early computing devices– Abacus: positions of beads represent numbers– Gear-based machines (1600s-1800s)

▪ Positions of gears represent numbers▪ Blaise Pascal, Wilhelm Leibniz, Charles Babbage

Page 16: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Pascal’s calculator (only support addition and subtract)

Leibniz’s calculator (support Arithmetic (+, - , ×, ÷ operations)

Page 17: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Figure 0.3Chinese Wooden Abacus

Page 18: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

The History of Computing

• Babbage’s machine• Plan for calculating and printing mathematical tables

like they were used in the navy (Difference Engine).• Plans for an improved device, capable of calculating

any mathematical function.• Not completed

Charles Babbage

Page 19: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

First programmer – Ada Lovelace

• Ada Lady Lovelace, was working with Babbage on the Analytical Engine.• First ideas of algorithm representation and

programming languages.• Realized program loops and conditional statements.

Page 20: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Early Data Storage• Punched cards

– First used in Jacquard Loom (1801) to store patterns for weaving cloth

– Storage of programs in Babbage’s Analytical Engine– Popular through the 1970’s

• Gear positions

Page 21: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Early Computers• Based on mechanical relays

– 1940: Stibitz at Bell Laboratories– 1944: Mark I: Howard Aiken and IBM at Harvard

Page 22: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Vacuum tube

1st generation Computer (1940 – 1958)• Based on vacuum tubes

• Enormous (taking entire rooms)• Relied on machine language, and they could only

solve one problem at a time.• UNIVAC, ENIAC….

Page 23: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Three women operating the ENIAC’s main control panel

Page 24: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

2nd generation Computer (1958 – 1963)• Based on Transistors

• Smaller, faster, cheaper, more energy-efficient than 1st generation.

• First operating system, and moved from machine language to symbolic, assembly, or high-level programming languages (COBOL, FORTRAN).

Transistor (1947)

Page 25: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

3rd generation Computer (1964 – 1970)• Based on IC (Integrated Circuit)

• Instead of punched cards and printouts, use keyboards and monitors and interfaced with an operating system.

• Time sharing, Multiprogramming.• First time became accessible to a mass audience.

Integrated Circuit

Page 26: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

4th generation Computer (1971 - )• Based on microprocessor (thousands of IC in a single

chip)– Apple Computer established in 1976.– IBM introduced the PC in 1981.

▪ Accepted by business▪ Became the standard hardware design for most

desktop computers▪ Most PCs use software from Microsoft

4004 processor

Page 27: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

Apple-1 (1976)Altair 8800 (1974)First commercial personal computer

Page 28: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

End of the 20th Century• Internet revolutionized communications

– World Wide Web– Search Engines

• Miniaturization of computing machines– Embedded (GPS, in automobile engines)– Smartphones

Page 29: Introduction to Computer Systems (2019Fall) · 2019-09-05 · Introduction to Computer Systems (2019Fall) Seungbum Jo Chungbuk National University Course introduction

Copyright © 2015, 2012, 2009 Pearson Education, Inc. All Rights Reserved

5th generation computer• Based on artificial intelligence

• Parallel processing

• Quantum computation..