260 likes | 352 Views
CSE115: Introduction to Computer Science I. Dr. Carl Alphonce 219 Bell Hall alphonce@buffalo.edu. Announcements. First class? Pick up a syllabus. No recitations this week – they begin next week. Reminder: make your name signs (if you have yours, put it out!) And…. cell phones off. Today.
E N D
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall alphonce@buffalo.edu
Announcements • First class? Pick up a syllabus. • No recitations this week – they begin next week. • Reminder: make your name signs (if you have yours, put it out!) • And…
Today • Web site tour • UBLearns and Syllabus acknowledgement • Lesson 1: Preliminaries • field/course overview • Lesson 2: Representing things • information encoding • symbol interpretation
Lesson 1 – CSE Spectrum Why is CS/CEN cool?
Suzanne Vega • Tom’s Diner • MP3 player
digital camera • Cell phone • Camera phone • 2D barcode
Payment methods • Pay-at-the-pump • Cell-phone payment
Saab JAS39 Gripen • Inherently unstable • Can only fly under computer control • Very agile, short take-off and landing • Fly-by-wire commercial aircraft
Software development environment • Teamwork
Photo Credits All photos, except for the teamwork photo, are from Wikimedia Commons under the Creative Commons license. Aside from the ones noted below, all from the Wikimedia Commons are in the public domain. Tom's Restaurant photo. Date: 2000. Author: Rick Dikeman Suzanne Vega photo. Date: 2006. Author: Michal Maňas GPS photo. Date: 2006. Author: Vijverln, Modified: Emmanuel Boutet 2007. The teamwork photo is from: http://www.flickr.com/photos/znachor/2475763317/in/pool-agile
Lesson 1 – CSE Spectrum Why is CS/CEN cool? • Computer Engineering (“Hardware”) • Computer Science (“Software”) • cell phones • pay-at-pump • electronic voting • fly-by-wire / drive-by-wire • electronic health records • robotic surgery • smile-sensing cameras • social networking • mapquest/google maps/gps • games • privacy • mp3 / Suzanne Vega • etc.
Software development • CSE115 Introduction to Computer Science I • CSE116 Introduction to Computer Science 2 • CSE250 Data Structures • CSE305 Intro to Programming Languages • CSE442 Software Engineering
Software systems • CSE321 Real-Time & Embedded Operating Systems • CSE411 Intro to Computer Systems Administration • CSE421 Intro to Operating Systems • CSE422 Operating Systems Internals • CSE451 Program Development • CSE462 Database Concepts • CSE486 Distributed Systems • CSE489 Modern Networking Concepts
Artificial Intelligence • CSE435 Information Retrieval • CSE463 Knowledge Representation • CSE467 Computational Linguistics • CSE473 Intro to Computer Vision & Image Processing • CSE474 Intro to Machine Learning
Theory • CSE191 Discrete Structures • CSE331 Intro to Algorithm Analysis & Design • CSE396 Intro to the Theory of Computation • CSE431 Algorithm Analysis & Design
Hardware/Architecture • CSE241 Digital Systems • CSE341 Computer Organization • CSE379 Intro to Microprocessors and Microcomputers • CSE452 VLSI Testing • CSE453 Hardware/Software Integrated Systems Design • CSE490 Computer Architecture • CSE493 Intro to VLSI Electronics
Information encoding/decoding • Text (ASCII, EBCDIC, Unicode, Morse code…) • Images (GIF, JPG, …) • Music (mp3, …) • Video (MPG, …) • Quantity (decimal, binary,…)
Images Each pixel encodes the amount of RED, GREEN and BLUE (RGB). This is an additive color scheme. Printing uses CYAN, MAGENTA, YELLOW and BLACK (CMYK). This is a subtractive color scheme.
Morse Code • Dots, dashes and spaces used to represent letters/digits • http://www.planetofnoise.com/midi/morse2mid.php • Two features: • variable length encodings • not a prefix code
Spaces of different lengths is needed to decode unambiguously. Without spaces, how many ways can six dots in a row be decoded?
five 5 cinq
Counting Decimal (base 10) Binary (base 2) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 etc. 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 etc.
Number systems Decimal (base 10) Binary (base 2) Each position is weighted by a power of 2. E.g. 111 = 1*4 + 1*2 + 1*1 = “seven” 1*22 + 1*21 + 1*20 E.g. 1101 = 1*8 + 1*4 + 0*2 + 1*1 = “thirteen” 1*23 + 1*22 + 0*21 + 1*20 • Each position is weighted by a power of 10. • E.g. 734 = • 7*100 + 3*10 + 4*1 • 7*102 + 3*101 + 4*100 • E.g. 1101 = • 1*1000 + 1*100 + 0*10 + 1*1 • 1*103 + 1*102 + 0*101 + 1*100