Lecture 1: Course Introduction Overview of Computers and their Applications in MAE B Burlingame 3 February, 2016 Heavily based on work by Dr. Buff Furman,

Slides:



Advertisements
Similar presentations
Assembly Language for Intel-Based Computers, 4 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify and.
Advertisements

The Binary Numbering Systems
CS 61C L02 Number Representation (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C.
COMP3221: Microprocessors and Embedded Systems--Lecture 1 1 COMP3221: Microprocessors and Embedded Systems Lecture 3: Number Systems (I)
COMP3221 lec05-numbers-I.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lecture 5: Number Systems – I
CSE111: Great Ideas in Computer Science Dr. Carl Alphonce 219 Bell Hall Office hours: M-F 11:00-11:
CS 61C L02 Number Representation (1)Harvey / Wawrzynek Fall 2003 © UCB 8/27/2003  Brian Harvey ( John Wawrzynek  (Warznek) (
CS150 Introduction to Computer Science 1 Professor: Chadd Williams.
1 9/10/07CS150 Introduction to Computer Science 1 Data Types Section 2.7 – 2.12 CS 150 Introduction to Computer Science I.
Data Representation Computer Organization &
Data Representation COE 205
Connecting with Computer Science, 2e
Introduction to Programming with Java, for Beginners
CS 61C L02 Number Representation (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C.
Assembly Language for Intel-Based Computers, 4th Edition
Assembly Language for Intel-Based Computers, 5 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify.
Number Representation (1) Fall 2005 Lecture 12: Number Representation Integers and Computer Arithmetic.
Professor Jennifer Rexford COS 217
Introduction to Computer Engineering ECE/CS 252, Fall 2010 Prof. Mikko Lipasti Department of Electrical and Computer Engineering University of Wisconsin.
Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University See: P&H Chapter 2.4, 3.2, B.2, B.5, B.6.
Chapter 2 Bits, Data Types, and Operations. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 2-2 How do we.
Assembly Language for Intel-Based Computers, 5 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify.
© Janice Regan, CMPT 128, Jan CMPT 128: Introduction to Computing Science for Engineering Students Integer Data representation Addition and Multiplication.
CENG 311 Machine Representation/Numbers
Computers Organization & Assembly Language
CSU0014 Assembly Languages Homepage: Textbook: Kip R. Irvine, Assembly Language for Intel-Based Computers,
Summer 2014 Chapter 1: Basic Concepts. Irvine, Kip R. Assembly Language for Intel-Based Computers 6/e, Chapter Overview Welcome to Assembly Language.
Assembly Language for x86 Processors 7th Edition
Lecture # 5 Data Representation. Today Questions: From notes/reading/life? Prepare for Quiz # 1 (Multiple Choice) 1.Introduce: How do Computers store.
1 Please switch off your mobile phones. 2 Data Representation Instructor: Mainak Chaudhuri
Copyright © 2002 W. A. Tucker1 Chapter 7 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Lec 3: Data Representation Computer Organization & Assembly Language Programming.
Why does it matter how data is stored on a computer? Example: Perform each of the following calculations in your head. a = 4/3 b = a – 1 c = 3*b e = 1.
PART 2 Data Types 1. Integers 2. 2’s Complement 3. Conversion
The Beauty and Joy of Computing Lecture #3 : Creativity & Abstraction UC Berkeley EECS Lecturer Gerald Friedland.
CSC Intro. to Computing Lecture 5: Boolean Logic, Gates, & Circuits.
Lecture 2: Operations Bryan Burlingame 9Sept2015.
The Hexadecimal Number System and Memory Addressing ISAT 121.
1 CPRE210: Introduction to Digital Design Instructor –Arun K. Somani –Tel: – –Office Hours: MWF 10:00-11:00 Teaching Assistant.
Chapter 19 Number Systems. Irvine, Kip R. Assembly Language for Intel-Based Computers, Translating Languages English: Display the sum of A times.
1 COMS 161 Introduction to Computing Title: The Digital Domain Date: September 6, 2004 Lecture Number: 6.
EEL 3801C EEL 3801 Part I Computing Basics. EEL 3801C Data Representation Digital computers are binary in nature. They operate only on 0’s and 1’s. Everything.
Data Representation, Number Systems and Base Conversions
Irvine, Kip R. Assembly Language for Intel-Based Computers 6/e, Signed Integers The highest bit indicates the sign. 1 = negative, 0 = positive.
COMP Primitive and Class Types Yi Hong May 14, 2015.
Programming Games Logic. Slide show. Range input. Storage. Datatypes. Binary numbers. Homework: Catch up. This includes uploading projects to your server.
Lecture 1: Course Introduction Overview of Computers and their Applications in MAE B Burlingame 2 September, 2015 Heavily based on work by Dr. Buff Furman,
Computer Science I Storing data. Binary numbers. Classwork/homework: Catch up. Do analysis of image types.
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.
Lecture 2: Logic Bryan Burlingame 10 Feb Ref: xkcd:
WELCOME To ESC101N: Fundamentals of Computing Instructor: Ajai Jain
Digital logic COMP214  Lecture 1 Dr. Sarah M.Eljack Chapter 1 1.
Lecture 2: Logic Bryan Burlingame 31 Aug 2016.
Number Systems & Binary Arithmetic
Binary Representation in Text
Lecture 3: Logic Bryan Burlingame 06 Sept 2017.
Bits, Data Types, and Operations
Chapter 2 Bits, Data Types, and Operations
Lec 3: Data Representation
Data Representation Binary Numbers Binary Addition
Integer Real Numbers Character Boolean Memory Address CPU Data Types
ITEC113 Algorithms and Programming Techniques
Logistics Always read the Calendar at
March 2006 Saeid Nooshabadi
Lecture 1: Course Introduction
CDA 3100 Spring 2010.
COMS 161 Introduction to Computing
COMS 161 Introduction to Computing
Lecture 36 – Unit 6 – Under the Hood Binary Encoding – Part 2
Presentation transcript:

Lecture 1: Course Introduction Overview of Computers and their Applications in MAE B Burlingame 3 February, 2016 Heavily based on work by Dr. Buff Furman, SJSU

The Plan for Today Welcome to ME 30 Learning objectives Highlights from the syllabus (aka, ‘greensheet’)   Overview of computers and their applications in MAE   Data Types and Variables Binary representations of phenomena Bit, Bytes, and numbering schemes Base conversion

My Background Industry experience  Microsoft Corporation – Principal Hardware Engineer Consumer Electronics Development UltimateTV Xbox Xbox 360 Kinect Xbox One, Kinect II HoloLens Surface Book California Native  Grew up in Manteca, CA (one of those places where they still grow food) Personal  Hobbies: build things, fix things, literature, cycling, scuba diving Why Engineering?  Engineering is the highest form of creation open to man. We get to harness the possibilities crafted by science to creatively enhance life’s experience Why am I in this class in the middle of a work day?  To help foster as many awesome engineers as possible  The more brains we have to create a more interesting world, the more interesting the world shall become

Syllabus Highlights and Where to Find Things Syllabus available at  ex:  Office Hours TBD Course information  Course goals and learning objectives  Textbook Programming in C (4th Edition) by Stephen G Kochan  Lab Kit Needed this week  Policies and protocol  Grading  Resources  Course schedule Back

Announcements Homework 1 posted tonight, due in two weeks in class  Generally, two weeks per homework covering the lesson of the day and the following week’s lesson All homework and labs should be printed and a hardcopy turned in, a digital copy should be turned in to instructure If you have a laptop, bring it to lab

Focus of ME 30 Solving problems with computers  Learn the process for formulating a computational solution to a problem  Practice the process Gain familiarity with other software used by MEs and AEs for technical computing  Matlab  Excel Learn structured programming using the C language  Get prepared for learning about mechatronics

Where and How are Computers Used in MAE? 1 Technical and Personal Communication   Word processing (reports, procedures, etc.)  Presentations  Conferencing Computation and Analysis  Arithmetic  Equation solving  Data analysis and visualization  Multiphysics and numerical modeling sin(r)/r

Where and How are Computers Used in MAE? 2 Design  Solid modeling (ME 165)  Finite Element Analysis (FEA) (ME 160)  Dynamic modeling and simulation (ME 147, ME 187, ME 190)  Design tradeoffs and analytical modeling of mechanical components and systems (ME 154, ME 157) Gathering Information  Web searches  Patent searches  Databases  Vendor and other websites  Datasheets

Where and How are Computers Used in MAE? 3 Testing and Experimental Work  Data acquisition from sensors (ME 120) Laboratory and Factory Automation and Control  Dynamic systems (ME 187, ME 190) Instrumentation and Product Design  Embedded controllers (ME 106, ME 190) MRP, Inventory, and Document Control  Drawings  Procedures  Bill of Materials (BOM)  Specifications  Engineering change orders (ECOs) er/solutions_by_product/mechatronics_process_management.shtm l /smallImages/janusLabAuto.jpg

The Bottom Line Mechanical and aerospace engineers use computers widely You need to know how to use computers to be successful ME 30 will help you especially in the area of computation and analysis  Exposure to Matlab and Excel  Focus will be on the C language I hope it will also whet your appetite to learn about mechatronics Next -->

Networking Introduce yourself to someone you DO NOT know Find out one thing about them that they like to do in their spare time Two minutes! Back

12 What and Why? Data => pieces of information we deal with in the problem solving process Why is it important to know about data types?  Need to know about data types to effectively use a programming language  It’s all just bits the lowest level! What would you rather work with… int i; float r; i = 3; r = cos(2*i*PI); or… etc.

13 Kinds of Data (simplified view)   The basic kinds of data that we will mostly use:  Numeric Integers: Real (floating point) numbers:  Character (are enclosed by single quotes in C) All letters, numbers, and special symbols  Ex. ‘A’, ‘+’, ‘5’  String (are enclosed by double quotes in C) Are combinations of more than one character  Ex. “programming”, “ME 30”  Logical (also called ‘Boolean’ named after George Boole an English mathematician from the early 1800’s) True or False (1 or 0)

Constants and Variables Constant  A data element that never changes in your program 5, 62.37, 4.219E-6, “record_string”, ‘$’ i = j + 7;/* which one is the constant? */ first_letter = ‘a’;/* which one is the constant? */ Variable  A data element that can take on different values Its name represents a location (address) in memory    i = j + 7; /* which are variables? */  second_letter = ‘b’;/* which is the variable? */ Values are ‘assigned’ using a single equal sign ( = )  Read the statement: i = j + 7;

Binary Representations Computers only contain two values  On/Off (High/Low, 0/1, etc.) Binary number only have two value 0/1  Base 2 numbering system  A bit: A number in base 2 (binary digit) How computers do what they do?  Humans are the translators  The machine just presents information Think, what is a letter?  Just a squiggle, humans give meaning

Binary Representations Everything in a PC is encoded in binary  Computers are finite, so are their representations  RGB for colors 24 bit color (8 bits for red, 8 for green, 8 for blue) TIFF  Music Midi – Instrument + note MP3 – Sound waves compressed  Cruise Control Voltage level going to an actuator

Binary to Decimal Binary number only have two value 0/1  Base 2 numbering system  A bit: A number in base 2 (binary digit) Decimal numbers have ten values 0 – 9  Base ten numbering system Think scientific notation  6.02E23 = 6 * * *  = = 1 * * * * * 2 0 Range?  Largest 8 bit value: =  Largest 16 bit value: =

Negative Values Recall:  The computer only deals in 0/1  Humans provide context Sign bit  The first bit represents sign  = -213, = 213 1’s Complement  Flip the bits (change 1’s into 0’s)  = - 213, = 213

Negative Values (Cont) 2’s Complement  Take 1’s complement, add one  Start (84 10 in this example)  Flip bits  Add one (notice the carries)

Binary to Hexadecimal Hexadecimal (base 16) is a convenient numbering system  0 – 9, A – F (A = 10 10, B = 11 10, etc Observe 2 4 = 16, allows four bits (a nyble) to be grouped = = 0xC 16

Binary to Hexadecimal Convert Binary to Hex b

Binary to Hexadecimal Convert Binary to Hex b (grouping 4 bits) d C 3 9 F h 12 * * * * 16 0 = 50,079

Representations Decimal (default)BinaryHexadecimal 1080’ x6C 108d b6Ch C dec bin6C hex Group by 3s with a comma Group by 4s with a space or an underbar Generally don’t group Spoken short form

Decimal to binary Many ways, this is how I do it 120  120 < 128, 0 in 7 th position  120 > 64, 1 in 6 th position 120 – 64 = 56  56 > 32, 1 in 5 th position 56 – 32 = 24  24 > 16, 1 in 4 th position 24 – 16 = 8  8 = 8, 1 in 3 rd position 8 – 8 = 0  Once we hit zero, all other values are zero  Why do I do it this way? It is quick when I don’t have a calculator. Your mileage may vary BinaryDecimal

References Nicholas, P. (1994). Digital Design. Minneapolis/St. Paul: West Publishing Company Kochran, S. (2014). Programming in C 4 th Edition. Upper Saddle River, NJ: Addison-Wesley