Lecture 1: CS2400 Introduction to Computer Science

Similar documents
Chapter 1: An Overview of Computers and Programming Languages. Objectives. Objectives (cont d.) Introduction

Ms. Minerva A. Lagarde

BITG 1113: Introduction To Computers And Programming Language LECTURE 1 LECTURE 1 1

1: History, Generation & Classification. Shobhanjana Kalita, Dept. of CSE, Tezpur University

Microprocessors I MICROCOMPUTERS AND MICROPROCESSORS

Chapter 1. Computer System Organization

2011 Francisco Delgadillo

Overview of a computer

CS 101 INTRODUCTION TO COMPUTING

Computer Basics. Computer Technology

Chapter 1 Basic Computer Organization

8/16/12. Computer Organization. Architecture. Computer Organization. Computer Basics

Chapter 1. The Big Picture

Lecture 1: Preliminaries

Describe the layers of a computer system

Computer is an electronic machine that can receive, store, transform and output data of all kinds (image, text, numeric, graphics and sound).

Computers in Engineering COMP 208. A Brief History. Mechanical Calculators. A Historic Perspective Michael A. Hawker

Computers in Engineering COMP 208

CSC180: Lecture 2. Wael Aboulsaadat.

Computer Basics 1/6/16. Computer Organization. Computer systems consist of hardware and software.

Elements of Computers and Programming Dr. William C. Bulko. What is a Computer?

Programming 1. Lecture 1 COP 3014 Fall August 28, 2017

CS1100 Introduction to Programming

You Will Need Floppy Disks for your labs!

Fundamentals of Programming (C)

Introduction to Computers, the Internet and the Web Pearson Education, Inc. All rights reserved.

Chapter 1: Introduction to Computers

Computer Fundamentals

Learning Objectives. In this chapter you will learn about:

Chapter 1: Introduction to Computers. In this chapter you will learn about:

Problem Solving and Program Design - Chapter 1. Cory L. Strope

0 Introduction: Computer systems and program development

EVOLUTION OF COMPUTERS. In the early years, before the computer was invented, there are several inventions of counting machines.

Introduction to Computer Systems and Operating Systems

Programming 1 - Honors

Högnivåspråk och översättning

1. Fundamental Concepts

Computer Basics 1/24/13. Computer Organization. Computer systems consist of hardware and software.

Computer Evolution. Budditha Hettige. Department of Computer Science

Week 1 Introduction to Programming

W1005 Intro to CS and Programming in MATLAB. Brief History of Compu?ng. Fall 2014 Instructor: Ilia Vovsha. hip://

Computer Evolution. Computer Generation. The Zero Generation (3) Charles Babbage. First Generation- Time Line

CS101 Lecture 29: Brief History of Computing

1.The First Instrument known in the history of computers was. a) Pascal s adding machine b) Napier s bones c) Abacus d) Analytical Engine

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro

7/28/ Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc.

C++ Programming Language Lecture 1 Introduction

Part 1: Computer and Information Literacy

EKT 120/4 Computer Programming KOLEJ UNIVERSITI KEJURUTERAAN UTARA MALAYSIA

SKILL AREA 304: Review Programming Language Concept. Computer Programming (YPG)

Chapter 3:: Names, Scopes, and Bindings (cont.)

Chapter 9: A Closer Look at System Hardware

Chapter 9: A Closer Look at System Hardware 4

Computer System architectures

Topics. Hardware and Software. Introduction. Main Memory. The CPU 9/21/2014. Introduction to Computers and Programming

Fundamental of digital computer

CSCI170 Lecture 1: Analysis of Programming Languages. John Magee 1 September 2011 Some material copyright Jones and Bartlett

An Overview of the Computer System. Kafui A. Prebbie 24

CSc 10200! Introduction to Computing. Lecture 1 Edgardo Molina Fall 2013 City College of New York

PHYS 4361 DR. Maher O. El-Ghossain Associate Professor. 1/31/ :24:07 PM Dr Maher O. El-Ghossain 1

v.m.g.rajasekaran ramani sri sarada sakthi mat. Hr. sec. school

Chronological History of the Pre-Computer Developments

History of Computing. Slides from NYU and Georgia Tech

Babbage s computer 1830s Boolean logic 1850s. Hollerith s electric tabulator Analog computer 1927 EDVAC 1946 ENIAC

Characteristics of Computers

Computer ANAMIKA ACADEMY. Mo Which function has the ability to move from one web page to another Hyper link

Hardware. ( Not so hard really )

I. Answer any five of the following questions. 5 4=20M 1. Write a short note on Napier s Bones. A.

CC411: Introduction To Microprocessors

Trends in Computer System Capabilities

CSCE150A. Administrivia. Overview. Hardware. Software. Example. Program. Pseudocode. Flowchart. Control Structures. Hello World Program CSCE150A

Computer Science & Engineering 150A Problem Solving Using Computers

Note: Though solved with care, not responsible for the accuracy.

INTRODUCTION TO COMPUTERS

Welcome to COSC Introduction to Computer Science

Multiple Choice Questions UNIT-I

Chapter 3:: Names, Scopes, and Bindings (cont.)

The First Operating System Was Human

Chapter 1. Hardware. Introduction to Computers and Programming. Chapter 1.2

Lecture 01: Basic Structure of Computers

lesson 3 Transforming Data into Information

Introduction To Computers. About the Course

Why Study Assembly Language?

Intermediate Programming & Design (C++) Notation

Administration Computers Software Algorithms Programming Languages

Technology in Action

COURSE OVERVIEW. Introduction to Computer Engineering 2015 Spring by Euiseong Seo

Lecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)

CS140 Lecture 09a: Brief History of Computing

Maninder Kaur.

Low-Level Languages. Computer Programs and Programming Languages

LECTURE 1. Overview and History

Von Neumann architecture. The first computers used a single fixed program (like a numeric calculator).

A Brief History of Computer Science

Chapter 2: Computers: The Machines Behind Computing.

CHAPTER1 : Part 2 INTRODUCTION & HISTORY OF COMPUTERS. UNIVERSITI TENAGA NASIONAL Generates Professionals

SSRVM Content Creation Template

CS Computer Architecture

COMPUTER BASICS LECTURER: ATHENA TOUMBOURI

LECTURE -I BASIC CONCEPTS OF COMPUTERS

Transcription:

Lecture 1: CS2400 Introduction to Computer Science Introduction to the course Introduction to computers Ethics Programming C++ CS2400 Lecture 1-1- 2017 David M. Chelberg

Computer Science What is computer science? Using computers Mathematics/Logic Science Engineering Communication Everything? Multidisciplinary! Why do you study it? To Solve Problems! CS2400 Lecture 1-2- 2017 David M. Chelberg

A Brief History of Computer Science Abacus 1000 BC Napier's Bones AD 1614 Slide Rule 1700's Mechanical Adding Machines 1800's Tabulating Machines (early IBM) 1930 Vacuum Tubes ENIAC 1945 Machine Language Transistors/Magnetic Core 1950's-1960's Assemblers/Compilers UNIVAC 1 IBM 704 CS2400 Lecture 1-3- 2017 David M. Chelberg

IC's OS/Timesharing 1960's-1970's Supercomputers Microprocessors 1980's/ Workstations Networking, WWW, Nintendo 64, etc. CS2400 Lecture 1-4- 2017 David M. Chelberg

Three classes of Computers: PCs Workstations Mainframes CS2400 Lecture 1-5- 2017 David M. Chelberg

Main Components of a Computer Input devices Output devices Secondary Memory Main Memory CPU Arithmetic/logic Unit Control Unit CS2400 Lecture 1-6- 2017 David M. Chelberg

Memory What is memory? bit - binary digit bytes - an 8-bit portion of memory address memory location - a group of memory that holds a datum CS2400 Lecture 1-7- 2017 David M. Chelberg

Codes A code is a way of representing data in the computer. Example ASCII (American Standard Code for Information Interchange) - the letter A is represented as: 01000001 But this is also the code for the number 65. CS2400 Lecture 1-8- 2017 David M. Chelberg

Secondary Memory The memory that we have been talking about so far is the main memory, used to execute computer programs. There is also secondary memory in a computer. What is its use? Information kept in secondary storage are kept in units called files. Examples of secondary memory: CS2400 Lecture 1-9- 2017 David M. Chelberg

Secondary Memory The memory that we have been talking about so far is the main memory, used to execute computer programs. There is also secondary memory in a computer. What is its use? Information kept in secondary storage are kept in units called files. Examples of secondary memory: hard disks, pen drives, diskettes, CD-ROM. CS2400 Lecture 1-10- 2017 David M. Chelberg

CPU The BRAIN of the computer. What can a CPU do for you? CS2400 Lecture 1-11- 2017 David M. Chelberg

CPU The BRAIN of the computer. What can a CPU do for you? ALU - arithmetic, logic Control Unit - executes the code, branches, fetches memory, etc. CS2400 Lecture 1-12- 2017 David M. Chelberg

Operating System Windows 7, Windows 10 Unix/Linux MacOs ios What does an operating system do for your computer? CS2400 Lecture 1-13- 2017 David M. Chelberg

A Program What is a program? CS2400 Lecture 1-14- 2017 David M. Chelberg

A Program What is a program? A program is a set of instructions for a computer to follow. Input to the computer is a program and some data. data is the input to the program running a program data is also said to be any information available to the computer. CS2400 Lecture 1-15- 2017 David M. Chelberg

Computer Languages High-level C, Pascal, FORTRAN, BASIC, COBOL, Lisp, Scheme, Ada, Modula-2, SmallTalk, Prolog, and C++. Low-level Assembler Machine language Main difference between high-level and machine-language -- high-level languages must be translated into machine language to be executed. CS2400 Lecture 1-16- 2017 David M. Chelberg

Why Study C++? C++ is a superset of C. C was developed to write the UNIX operating system. Problems with C: It encourages programmers to write large systems that lack structure! It encourages beginning programmers to learn bad habits - writing code that is difficult to read and maintain. C lacks many of the fail-safe features of modern programming languages. CS2400 Lecture 1-17- 2017 David M. Chelberg

C++ was developed in the 1980's by Bjarne Stroustrup. It has all the bad features of C, but also has additional features. If the additional features are properly used, they can alleviate many of the problems with C. In particular, C++ supports object-oriented programming. C++ is a much larger and more sophisticated language than C. We will be studying a subset that is manageable. CS2400 Lecture 1-18- 2017 David M. Chelberg

Compilers A compiler is a program that translates a highlevel language (C++) to a machine-language. What is the input to the compiler? What is the output? CS2400 Lecture 1-19- 2017 David M. Chelberg

Compilers A compiler is a program that translates a highlevel language (C++) to a machine-language. What is the input to the compiler? source program, or source code What is the output? object program, or object code CS2400 Lecture 1-20- 2017 David M. Chelberg

How to run a C++ program 1.) write the code and place in a file. 2.) 3.) 4.) CS2400 Lecture 1-21- 2017 David M. Chelberg

How to run a C++ program 1.) write the code and place in a file. 2.) run the compiler on the program 3.) link the machine code to other existing code 4.) run the resulting machine code CS2400 Lecture 1-22- 2017 David M. Chelberg

Programming and Problem-Solving Computers are STUPID!! In order to get them to do what we want we must be extremely precise in how we order them to do it. This process is the process of writing an algorithm. The subsequent step of converting the algorithm to a particular computer language is called coding. CS2400 Lecture 1-23- 2017 David M. Chelberg

The hardest part of most programming problems is to come up with the algorithm. Once that is done, coding the problem becomes much easier. Definition: an algorithm is a sequence of precise instructions that leads to a solution. CS2400 Lecture 1-24- 2017 David M. Chelberg

Example: Write an algorithm to write your name on the blackboard. CS2400 Lecture 1-25- 2017 David M. Chelberg