CDA 3100 Fall 2014. Special Thanks Thanks to Dr. Xiuwen Liu for letting me use his class slides and other materials as a base for this course.

Slides:



Advertisements
Similar presentations
Week 3. Assembly Language Programming  Difficult when starting assembly programming  Have to work at low level  Use processor instructions >Requires.
Advertisements

Assembly Language for Intel-Based Computers, 4 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify and.
Systems Architecture Lecture 5: MIPS Instruction Set
4/23/2015Engineering Problem Solving with C++ second edition, J. ingber 1 Engineering Problem Solving with C++, Etter/Ingber Chapter 1.
1-1 Welcome to: CSC225 Introduction to Computer Organization Paul Hatalsky.
CS 61C L02 Number Representation (1)Harvey / Wawrzynek Fall 2003 © UCB 8/27/2003  Brian Harvey ( John Wawrzynek  (Warznek) (
Fall 2004 WWW IS112 Prof. Dwyer Intro1: Overview and Syllabus Professor Catherine Dwyer.
Processor Design 5Z032 Henk Corporaal Eindhoven University of Technology 2011.
1 Welcome to CMPE 12C An Introduction to Computer Organization (Or, what is inside my case and how does it work) Winter 2004 Gabriel Hugh Elkaim.
1 Binary Arithmetic, Subtraction The rules for binary arithmetic are: = 0, carry = = 1, carry = = 1, carry = = 0, carry =
EET 4250: Microcomputer Architecture Fall 2009 William Acosta URL:
Slide 1 Instructor: Dr. Hong Jiang Teaching Assistant: Mr. Sheng Zhang Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom:
1 Binary Numbers Again Recall that N binary digits (N bits) can represent unsigned integers from 0 to 2 N bits = 0 to 15 8 bits = 0 to bits.
Introduction to Computer Architecture SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING SUMMER 2015 RAMYAR SAEEDI.
Assembly Language for Intel-Based Computers, 5 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify.
Orange Coast College Business Division Computer Science Department CS 116- Computer Architecture Course Orientation.
Welcome to the Course CPSC 5155 Computer Architecture Edward Bosworth, Ph.D. Associate Professor Computer Science.
1 CS/COE0447 Computer Organization & Assembly Language Pre-Chapter 2.
Lecture for Week Spring.  Numbers can be represented in many ways. We are familiar with the decimal system since it is most widely used in everyday.
1 Layers of Computer Science, ISA and uArch Alexander Titov 20 September 2014.
Computer Network Fundamentals CNT4007C
1 Modified from  Modified from 1998 Morgan Kaufmann Publishers Chapter Three: Arithmetic for Computers citation and following credit line is included:
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Welcome to: CSC225 Introduction to Computer Organization.
Fall 2015, Aug 17 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Fall 2015 Introduction Vishwani D. Agrawal.
CSE 111 Representing Numeric Data in a Computer Slides adapted from Dr. Kris Schindler.
Number Systems Ron Christensen CIS 121.
(1) ECE 3056: Architecture, Concurrency and Energy in Computation Lecture Notes by MKP and Sudhakar Yalamanchili Sudhakar Yalamanchili (Some small modifications.
Lecture 2 Binary Values and Number Systems. The number 943 is an example of a number written in positional notation. The relative positions of the digits.
1 CS232: Computer Architecture II Fall 2011 Intel i7 Quad-core.
Computer Engineering Introduction page 1 Computer Organization & Design SMD137 Teachers, and Lab help. Schedule: –Lectures. –Laborations. Teaching. Course.
CMP 131 Introduction to Computer Programming Violetta Cavalli-Sforza Week 3, Lecture 1.
Computer Architecture Souad MEDDEB
CDA 3100 Spring Special Thanks Thanks to Dr. Xiuwen Liu for letting me use his class slides and other materials as a base for this course.
CDA 3100 Fall2009. Special Thanks Thanks to Dr. Xiuwen Liu for letting me use his class slides and other materials as a base for this course.
1 CS232: Computer Architecture II Fall 2010 AMD dual-core Opteron.
Numbers in Computers.
Spring 2016, Jan 13 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Spring 2016 Introduction Vishwani D. Agrawal.
Computer Networks CNT5106C
Operating Systems CMPSC 473 Introduction and Overview August 24, Lecture 1 Instructor: Bhuvan Urgaonkar.
Introduction to Number Representation A451 GCSE Computing.
Administrative Preliminaries Computer Architecture.
ECE 2110: Introduction to Digital Systems Number Systems: conversions.
ECE DIGITAL LOGIC LECTURE 2: DIGITAL COMPUTER AND NUMBER SYSTEMS Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2016, 01/14/2016.
Introduction to Computer Architecture Dr. Mark C. Lewis
The course purpose and structure Teach the computers internals on hardware/software interface level The students upon completion of the course should be.
ECE 2110: Introduction to Digital Systems Number Systems: conversions.
CDA 3100 Fall Special Thanks Thanks to Dr. Xiuwen Liu for letting me use his class slides and other materials as a base for this course.
1 Digital Logic Design (41-135) Chapter 5 Number Representation & Arithmetic Circuits Younglok Kim Dept. of Electrical Engineering Sogang University Spring.
ECE 3056: Architecture, Concurrency and Energy in Computation
Computer Networks CNT5106C
Computational Science - Computer Science
Logistics Always read the Calendar at
CDA 3100 Summer 2011.
Binary, Octal and Hex Numbers Copyright Thaddeus Konar
Introduction to IT By: Muhammed s. anwar.
CDA 3100 Fall 2015.
Binary, Octal and Hex Numbers Copyright Thaddeus Konar
CDA 3100 Spring 2009.
Overview Digital Systems and Computer Systems
CDA 3100 Summer 2013.
CDA 3100 Spring 2010.
CS/COE0447 Computer Organization & Assembly Language
Accelerated Introduction to Computer Science
D0013E Microcomputer Engineering
Welcome to: CSC225 Introduction to Computer Organization
Lecture 2: Number Systems
D0013E Microcomputer Engineering
CDA 3100 Fall 2012.
Lecture 1 Class Overview
Dr. Clincy Professor of CS
Presentation transcript:

CDA 3100 Fall 2014

Special Thanks Thanks to Dr. Xiuwen Liu for letting me use his class slides and other materials as a base for this course

Course Information

10/17/2015CDA31004 About Me My name is Zhenghao Zhang – Why I am teaching this course: I worked for two years as an embedded system engineer, writing codes for embedded controllers.

10/17/2015CDA31005 Class Communication This class will use class web site to post news, changes, and updates. So please check the class website regularly Please also make sure that you check your s on the account on your University record Blackboard will be used for posting the grades

10/17/2015CDA31006 Required Textbook The required textbook for this class is – “Computer Organization and Design” The hardware/software interface – By David A. Patterson and John L. Hennessy – Fourth Edition

10/17/2015CDA31007 Lecture Notes and Textbook All the materials that you will be tested on will be covered in the lectures – Even though you may need to read the textbook for review and further detail explanations – The lectures will be based on the textbook and handouts distributed in class

Motivations

What you will learn (among other things) How does the software instruct the hardware to perform the needed functions What is going on in the processor How a simple processor is designed

10/17/2015CDA Why This Class Important? If you want to create better computers – It introduces necessary concepts, components, and principles for a computer scientist – By understanding the existing systems, you may create better ones If you want to build software with better performance If you want to have a good choice of jobs If you want to be a real computer scientist

Required Background

Based on years of teaching this course, I find that you will suffer if you do not have the required C/C++ programming background. We will need assembly coding, which is more advanced than C/C++. If you do not have a clear understanding at this moment of array and loop, it is recommended that you take this course at a later time, after getting more experience with C/C++ programming.

Array – What Happens? #include int main (void) { int A[5] = {16, 2, 77, 40, 12071}; A[A[1]] += 1; return 0; }

Loop – What Happens? #include int main () { int A[5] = {16, 20, 77, 40, 12071}; int result = 0; int i = 0; while (result < A[i]) { result += A[i]; i++; } return 0; }

Getting Started!

10/17/2015CDA Decimal Numbering System We humans naturally use a particular numbering system

10/17/2015CDA Decimal Numbering System For any nonnegative integer, its value is given by – Here d 0 is the least significant digit and d n is the most significant digit

10/17/2015CDA General Numbering System – Base X Besides 10, we can use other bases as well – In base X, – Then, the base X representation of this number is defined as d n d n-1 …d 2 d 1 d 0. – The same number can have many representations on many bases. For 23 based 10, it is 23 ten two 17 sixteen, often written as 0x17. –

10/17/2015CDA Commonly Used Bases – Note that other bases are used as well including 12 and 60 Which one is natural to computers? – Why? BaseCommon NameRepresentationDigits 10Decimal5023 ten or Binary two 0-1 8Octal11637 eight Hexadecimal139F hex or 0x139F0-9, A-F

10/17/2015CDA Meaning of a Number Representation When we specify a number, we need also to specify the base – For example, 10 presents a different quantity in a different base – There are 10 kinds of mathematicians. Those who can think binarily and those who can't

Question How many different numbers that can be represented by 4 bits?

Question How many different numbers that can be represented by 4 bits? Always 16 (2 4 ), because there are this number of different combinations with 4 bits, regardless of the type of the number these 4 bits are representing. Obviously, this also applies to other number of bits. With n bits, we can represent 2 n different numbers. If the number is unsigned integer, it is from 0 to 2 n -1.