Lecture 1 Introduction to Computing Machinery. Colossus 1600 1700 1800 1900 2000 Joseph Marie Jacquard Charles Babbage Augusta Ada Countess of Lovelace.

Slides:



Advertisements
Similar presentations
Computer History.
Advertisements

Princess Sumaya Univ. Computer Engineering Dept. Chapter 2: IT Students.
The CPU Revision Typical machine code instructions Using op-codes and operands Symbolic addressing. Conditional and unconditional branches.
Instruction Set Architecture & Design
The Analytical Engine Module 6 Program Translation.
Stored Program Concept: The Hardware View
Dale & Lewis Chapter 5 Computing components. Let’s design a computer Generic CPU with registers −Program counter (PC) – 5 bits (size of addresses) −Instruction.
1 CSE1301 Computer Programming: Lecture 34 Introduction to the History of Computing.
1 Chapter 1 The Big Picture. 2 2 Computing systems are dynamic entities used to solve problems and interact with their environment. They consist of devices,
Some of these slides are based on material from the ACM Computing Curricula 2005.
1 CS Programming Languages Random Access Machines Jeremy R. Johnson.
ECE 265 Introduction to Microcontroller Based Systems (A first course in computer architecture) 9/28/ ECE265.
CPU Fetch/Execute Cycle
Business Programming I Fall – 2000 By Jim Payne Lecture 01Jim Payne - University of Tulsa2 Links: Early History of Computers Virginia Tech – History.
The History of Computers
Computer Fundamentals Northern College Diploma Philip Bird.
1 Machine Language Alex Ostrovsky. 2 Introduction Hierarchy of computer languages: 1. Application-Specific Language (Matlab compiler) 2. High-Level Programming.
Computer Systems Organization CS 1428 Foundations of Computer Science.
CMSC 120: Visualizing Information 1/29/08 Introduction to Computing.
CPS120: Introduction to Computer Science Introduction to Computers.
Computer Architecture and the Fetch-Execute Cycle
CSC 3210 Computer Organization and Programming Chapter 1 THE COMPUTER D.M. Rasanjalee Himali.
History of Computers.
Software Basics. Some Pioneers Charles Babbage Analytical Engine Countess Ada Lovelace First Programmer ? John Von Neumann storing instructions in memory.
Chapter 1 Introduction.
Chapter 8: The Very Simple Computer
Model Computer CPU Arithmetic Logic Unit Control Unit Memory Unit
Module : Algorithmic state machines. Machine language Machine language is built up from discrete statements or instructions. On the processing architecture,
Computer Organization CSC 405 (VSC) Very Simple Computer.
A summary of TOY. 4 Main Components Data Processor Control Processor Memory Input/Output Device.
September 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 2: Implementation of a Simplified Computer Jeremy R. Johnson Wednesday,
Stored Programs In today’s lesson, we will look at: what we mean by a stored program computer how computers store and run programs what we mean by the.
COMPILERS CLASS 22/7,23/7. Introduction Compiler: A Compiler is a program that can read a program in one language (Source) and translate it into an equivalent.
1.4 Representation of data in computer systems Instructions.
Computer Systems Organization
Why build a computer? u Computers were developed to mechanize mathematical computations. u Two definitions:  A computer is “a programmable electronic.
Dale & Lewis Chapter 5 Computing components
Lecture 5 Computer Hardware. von Neumann Architecture.
History of Computers.
Computer Systems – Machine & Assembly code. Objectives Machine Code Assembly Language Op-code Operand Instruction Set.
CMSC 104, Lecture 061 Stored Programs A look at how programs are executed.
Computer Organization Instructions Language of The Computer (MIPS) 2.
Information Age “An in depth look at the exciting history of the Calculator and Computer”
Jeremy R. Johnson William M. Mongan
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Chapter 20 Computer Operations Computer Studies Today Chapter 20.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
Lec 4-2 Five operations of the machine cycle Fetch- fetch the next program instruction from memory. (PC+1); instruction to IR Decode- decode the instruction.
Stored Program Concept Learning Objectives Learn the meaning of the stored program concept The processor and its components The fetch-decode-execute and.
Computer Organization Exam Review CS345 David Monismith.
Computer Architecture CST 250
Chapter 1 The Big Picture
Evolution of Computer Hardware
Computer Science 210 Computer Organization
Lesson Objectives A note about notes: Aims
Lecture on Microcomputer
History Computers.
CS-401 Assembly Language Programming
Introduction to Computing Machinery
Systems Architecture I (CS ) Lecture 1: Random Access Machines
Computer Organization and ASSEMBLY LANGUAGE
Systems Architecture I (CS ) Lecture 2: A Simplified Computer
THE FETCH-EXECUTE CYCLE.
Business Programming I
MARIE: An Introduction to a Simple Computer
GCSE OCR 1 The CPU Computer Science J276 Unit 1
THE FETCH-EXECUTE CYCLE.
Objectives Describe common CPU components and their function: ALU Arithmetic Logic Unit), CU (Control Unit), Cache Explain the function of the CPU as.
Computer Architecture Assembly Language
Systems Architecture I (CS ) Lecture 1: Random Access Machines
Presentation transcript:

Lecture 1 Introduction to Computing Machinery

Colossus Joseph Marie Jacquard Charles Babbage Augusta Ada Countess of Lovelace Herman Hollerith Alan Turing Gottfried Leibniz Stepped Reckoner Blaise Pascal Pascaline Programmable LoomDifference Engine Turing Test Programming the Analytical EngineComputable Number PaperElectronic Tabulating System design of ACE Early History of Computing Machines

Z = X + Y LDA X ADD Y STO Z HLT X 10 Y 12 Z data instructions High-Level Programming Language Assembly Language address instruction Machine Language Levels of Programming Languages

The concept of a stored program was part of the design of the Analytical Engine and well understood by Charles Babbage and Augusta Ada more than 150 years ago. For some reason, this concept was temporarily lost or forgotten by the middle of the 20th century. Early electronic computers, such as the ENIAC, kept the logic and arithmetic instructions separate from the data. Some early computers had to be rewired in order to change their programs. The interpretation of a word in memory as either an instruction or data is determined by its location in memory rather than its pattern of ones and zeros. The content of memory has more than one possible interpretation. For example, the bit pattern, can represent the integer 1,086,918,618 or an instruction to JUMP to another location (address) in memory, or it could represent an approximation for the numeric value of . The Von-Neumann Architecture

Designing the Very Simple Computer VSC Instruction operations codeaddress 3-bits limits the number of instructions to 2 3 = 8 5-bit limits the number of words to 2 5 = 32 8-bit instructions will all be direct addressing mode data type will be integer, twos'-complement operations will correspond to Post-Turing language with only 8 instructions, the VSC is the "Ultimate RISC" Computer

The Very Simple Computer

The Instruction Set LDA addr - load the accumulator with the value from memory at address addr STA addr - store the value in the accumulator into memory at address addr. ADD addr - add value in memory at address addr to ACC and store in LAT1. CMP addr - take the 1's complement of the value in memory at address addr BNN addr - the branch-not-negative statement will set PC = addr if the value in the accumulator is not negative. SHL addr - shift value in memory at address addr one bit to the left. SHR addr - shift value in memory at address addr one bit to the right (arithmetic). HLT - this instruction terminates the fetch-execute cycle.

The Fetch/Execute Cycle get the address of the next instruction load the instruction register with the next instruction get the address in the current instruction increment to program counter move the value in the ALU ACC into LAT2 move the data referred to by the instruction into LAT1 execute the instruction

Programming the VSC addr label instruction addr machine code. 0 LDA A ADD B STO C HLT A B C