CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor.

Slides:



Advertisements
Similar presentations
Assembly Language for x86 Processors 6 th Edition Chapter 1: Introduction to ASM (c) Pearson Education, All rights reserved. You may modify and copy.
Advertisements

CSE 340 Computer Architecture Spring 2014 MIPS ISA Review
Computer Architecture & Organization
Fall 2001CS 4471 CS 447: Fall 2001 Chapter 1: Computer Abstraction and Technology (Introduction to the course)
CS 600 Computer Architecture Professor Timothy Arndt BU 331.
ECE 232 L1 Intro.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 1 Introduction.
Processor Types And Instruction Sets Barak Perelman CS147 Prof. Lee.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
Computer Organization and Assembly language
2 nd Year - 1 st Semester Asst. Lect. Mohammed Salim
Computer Architecture and Organization
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
CS Computer Architecture Section 600 Dr. Angela Guercio Fall 2010.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
CCSE251 Introduction to Computer Organization
2007 Sept 06SYSC 2001* - Fall SYSC2001-Ch1.ppt1 Computer Architecture & Organization  Instruction set, number of bits used for data representation,
Physics 413 Chapter 1 Computer Architecture What is a Digital Computer ? A computer is essentially a fast electronic calculating machine. What is a program.
Introduction CSE 410, Spring 2008 Computer Systems
Computer Architecture and Organization Introduction.
School of Computer Science G51CSA 1 Computer Systems Architecture Guoping Qiu School of Computer Science The University of Nottingham
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
EKT 422 Computer Architecture
1 Computer System Organization I/O systemProcessor Compiler Operating System (Windows 98) Application (Netscape) Digital Design Circuit Design Instruction.
Chapter 1 Introduction. Architecture & Organization 1 Architecture is those attributes visible to the programmer —Instruction set, number of bits used.
University of Washington Roadmap 1 car *c = malloc(sizeof(car)); c->miles = 100; c->gals = 17; float mpg = get_mpg(c); free(c); Car c = new Car(); c.setMiles(100);
IT 252 Computer Organization and Architecture Introduction Chia-Chi Teng.
Computer Organization and Design Computer Abstractions and Technology
IT 252 Computer Organization and Architecture Introduction Richard Helps (based on slides from Chia-Chi Teng)
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
Areas of Computing Study. Artificial Intelligence Databases and Data Science Human-Centered Computing Networking Information Security System Software.
Computer Architecture And Organization UNIT-II General System Architecture.
Computer Organization & Assembly Language © by DR. M. Amer.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Introduction Computer System “An electronic device, operating under the control of instructions stored in its own memory unit, that can accept data (input),
Computer Architecture 2 nd year (computer and Information Sc.)
Architecture of Microprocessor
Chapter 1 Introduction.  Architecture is those attributes visible to the programmer ◦ Instruction set, number of bits used for data representation, I/O.
Computer Organization Part 1
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
William Stallings Computer Organization and Architecture Chapter 1 Introduction.
1 CHAPTER 1 COMPUTER ABSTRACTIONS AND TECHNOLOGY Parts of these notes have been adapter from those of Prof. Professor Mike Schulte, Prof. D. Patterson,
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
Chapter I: Introduction to Computer Science. Computer: is a machine that accepts input data, processes the data and creates output data. This is a specific-purpose.
Computer Architecture Furkan Rabee
Introduction CSE 410, Spring 2005 Computer Systems
William Stallings Computer Organization and Architecture 6th Edition
Computer Organization and Architecture Lecture 1 : Introduction
Computer Organization
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
Why to use the assembly and why we need this course at all?
Roadmap C: Java: Assembly language: OS: Machine code: Computer system:
CSE 410, Spring 2006 Computer Systems
Chapter 1: An Overview of Computers and Programming Languages
Architecture & Organization 1
Architecture & Organization 1
BIC 10503: COMPUTER ARCHITECTURE
ECEG-3202 Computer Architecture and Organization
ECEG-3202 Computer Architecture and Organization
Chapter 1 Introduction.
INTRODUCTION TO COMPUTER ARCHITECTURE
What is Computer Architecture?
COMS 361 Computer Organization
What is Computer Architecture?
What is Computer Architecture?
CSE378 Introduction to Machine Organization
William Stallings Computer Organization and Architecture 7th Edition
Presentation transcript:

CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor (bit) level but at the building block level (registers, adders, memory words etc.) Assembly Language –A way to learn about the Instruction Set Architecture, the interface between the hardware and the software.

CSE378 Gen. Intro2 Hierarchical Layers Top Layer: Application programs –Written in high-level languages: C, C++, Java, html etc Basic Software Layer –Translates programs written in high-level languages into machine language made up of a sequence of instructions (assembly language is a symbolic rendering of machine language). The translators are programs called compilers. –A program, the Operating System, controls the execution of the translated application programs. The O.S. is responsible for functions such as I/O, allocating storage, scheduling etc. Hardware –Executes the instructions

CSE378 Gen. Intro3 Layered View Application Programs Operating System Compilers Computer Structure Machine Language ISA

CSE378 Gen. Intro4 Programmatic view

CSE378 Gen. Intro5 What is Machine Organization (aka Computer Organization, aka Computer Architecture)? Structure: static arrangement of the parts of a computer system Organization: dynamic interaction of the parts and their control Implementation: design of specific building blocks Performance: behavioral study of the system or of some of its components

CSE378 Gen. Intro6 Alternate definition: Instruction Set Architecture (ISA) ( subset of previous def.) ISA is the interface between hardware and software ISA is what is visible to the programmer (and ISA might be different for O.S. and applications) ISA consists of: –instructions (operations and how they are encoded) –information units (size, how they are addressed etc.) –registers (or more generally processor state) –input-output control

CSE378 Gen. Intro7 Computer structure: Von Neumann model Memory hierarchy I/O controlALU Registers PC state Memory bus I/O bus CPU Data path + Control input output Memory

CSE378 Gen. Intro8 Computer Organization/Architecture Organization and architecture often used as synonyms Organization (in this course) refers to: –what are the basic blocks of a computer system, more specifically basic blocks of the CPU basic blocks of the memory hierarchy –how are the basic blocks designed, controlled, connected? Organization used to be transparent to the ISA. Today more and more of the ISA is “exposed” to the user/compiler in order to improve performance.

CSE378 Gen. Intro9 Advances in technology

CSE378 Gen. Intro10 Evolution of Intel Microprocessor Speeds

CSE378 Gen. Intro11 Illustration of Moore’s Law

CSE378 Gen. Intro12 Power Dissipation

CSE378 Gen. Intro13 Some Computer families Computers that have the same (or very similar) ISA –Compatibility of software between various implementations IBM –704, 709, 70xx etc.. From 1955 till 1965 –360, 370, 43xx, 33xx From 1965 to the present –Power PC DEC –PDP-11, VAX From 1970 till 1985 –Alpha (now Compaq, now HP) in 1990’s

CSE378 Gen. Intro14 More computer families Intel –Early micros 40xx in early 70’s –x86 (086,…,486, Pentium, Pentium Pro, Pentium 3, Pentium 4) from 1980 on –IA-64 (Itanium) in 2001 SUN –Sparc, Ultra Sparc n MIPS-SGI –Mips 2000, 3000, 4400, from 1985 on