Fundamentals and a Brief History of Computer Systems

Fundamentals and a Brief History of Computer Systems

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

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

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

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.

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: 01001101001001001011010100100100101111110000001

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 -> 0000000000000101010 3. 14159 -> 01000000010010010000111111010000 “unix” -> 011110000110100101101110101

Hardware • 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


Software • 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)

Copyright © 2000 by Brooks/Cole Publishing Company A division of International Thomson Publishing Inc.

Computer Software Relationships User Interface Application Programs Operating System Basic Input and Output Services (BIOS) • needed for a computer to boot up Computer Hardware

Application Software • Application software makes computer popular and easy to use • Common application software: n Microsoft Word, Word. Perfect n Power. Point n Netscape, Internet Explorer n Photo. Shop, Photo-Paint n Quick Time n Dreamweaver

Operating System • 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

What is a (programming) language? A sequence of instructions An algorthm (in human language) A program (in computer 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

Levels of programming language • 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

An example: Machine binary language Low-level assembly High-level

How to translate? A program written in high-level programming language (for example, C++ program) COMPILER (for example, Visual C++) A low-level (machine language) program that is understandable by a computer (for example, a PC) Examples of compilers: – Microsoft Visual C++, Eclipse, g++

Integrated Development Environments • Combine all of the capabilities that a programmer would want while developing software (VC++ 2008, Eclipse) n Editor n Compiler n Linker n Loader n Debugger n Viewer
- Slides: 20