Fundamentals and a Brief History of Computer Systems.

20
Fundamentals and a Brief History of Computer Systems

Transcript of Fundamentals and a Brief History of Computer Systems.

Page 1: Fundamentals and a Brief History of Computer Systems.

Fundamentals and a Brief History of Computer Systems

Page 2: Fundamentals and a Brief History of Computer Systems.

The first computer was called the ENIAC, which was built during World War II (1943-1946).

Page 3: Fundamentals and a Brief History of Computer Systems.

Charles Babbage is considered to be the father of computing after his invention and concept of the Analytical

Engine in 1837.

Page 4: Fundamentals and a Brief History of Computer Systems.

The IBM 5100 is the first portable computer, which was released on September 1975.

Page 5: Fundamentals and a Brief History of Computer Systems.

Q: What is a computer?

A: A machine that manages information

Definition: General purpose machine, commonly consisting of digital circuitry, that accepts (inputs), stores, manipulates, and generates (outputs) data as numbers, text, graphics, voice, video files, or electrical signals, in accordance with instructions

called a program.

Page 6: Fundamentals and a Brief History of Computer Systems.

Representing Information

• Computers store and manipulates numbers– Information needs to be encoded or

represented– The numbers need to be interpreted

• The memory of any computer just looks like:

010011010010011101001001001011010100100100100100100101111110000001

Page 7: Fundamentals and a Brief History of Computer Systems.

Adding meaning to bits

• As programmers we add meaning to the bits by defining an interpretation

• Handled by the programming language– Types and variables

• Examples

42 -> 000000000000000000000000001010103.14159 -> 01000000010010010000111111010000“unix” -> 01111000011010010110111001110101

Page 8: Fundamentals and a Brief History of Computer Systems.

• Four components of a computer system:– CPU - central processing unit

• Makes decisions, performs computations, and delegates input/output requests

– Memory: Disk Drives, CD drives, Tape drives, USB flash drives.

• Stores information– Input devices: Keyboard, Mouse,

• Gets information from the user to the computer– Output devices: monitor

• Sends information from computer to the user

Hardware

Page 9: Fundamentals and a Brief History of Computer Systems.

Hardware

Memory

CPU

InputDevices

OutputDevices

Page 10: Fundamentals and a Brief History of Computer Systems.

SystemSoftware

ApplicationSoftware

Software

Page 11: Fundamentals and a Brief History of Computer Systems.

• Application software– Easy-to-use programs designed to perform

specific tasks• System software

– Programs that support the execution and development of other programs

– Two major types• Operating systems• Translation systems (compilers & linkers)

Software

Page 12: Fundamentals and a Brief History of Computer Systems.

Copyright © 2000 by Brooks/Cole Publishing Company

A division of International Thomson Publishing Inc.

Page 13: Fundamentals and a Brief History of Computer Systems.

Computer Software Relationships

UserInterface

Basic Input and Output Services (BIOS)• needed for a computer to boot up

User Interface Operating System

User Interface Application Programs

Computer Hardware

Page 14: Fundamentals and a Brief History of Computer Systems.

Application Software

• Application software makes computer popular and easy to use

• Common application software: Microsoft Word, WordPerfect PowerPoint Netscape, Internet Explorer PhotoShop, Photo-Paint Quick Time Dreamweaver

Page 15: Fundamentals and a Brief History of Computer Systems.

• Controls and manages the computing resources• Examples

– Windows, Unix, MSDOS,

• Important services that an operating system provides:– Security: prevent unauthorized users from accessing

the system– Commands to manipulate the file system– Input and output on a variety of devices– Window management

Operating System

Page 16: Fundamentals and a Brief History of Computer Systems.

What is a (programming) language?

• A program needs to be written in a language• There are many programming languages

– Low-level, understandable by a computer– High-level, needs a translator!

• C++ is a high level programming language

A sequence of instructions

A program(in computer language)

An algorthm (in human language)

Page 17: Fundamentals and a Brief History of Computer Systems.

• Machine binary language: unintelligible

• Low-level assembly language – Mnemonic names for machine operations– Explicit manipulation of memory addresses– Machine-dependent

• High-level language– Readable– Machine-independent

Levels of programming language

Page 18: Fundamentals and a Brief History of Computer Systems.

Machine binary language Low-level assembly High-level

An example:

Page 19: Fundamentals and a Brief History of Computer Systems.

How to translate?

Examples of compilers:– Microsoft Visual C++, Eclipse, g++

A program written in high-level programming language (for example, C++ program)

A low-level (machine language) program that is understandable by a computer (for example, a PC)

COMPILER (for example, Visual C++)

Page 20: Fundamentals and a Brief History of Computer Systems.

Integrated Development Environments

• Combine all of the capabilities that a programmer would want while developing software (VC++ 2008, Eclipse) Editor Compiler Linker Loader Debugger Viewer