Java程序辅导

C C++ Java Python Processing编程在线培训 程序编写 软件开发 视频讲解

客服在线QQ:2653320439 微信:ittutor Email:itutor@qq.com
wx: cjtutor
QQ: 2653320439
1/17/2017
1
Introduction
CSE 132
Instructional Staff
• Instructors – Roger Chamberlain and Bill Siever
– Offices: Jolley Hall Rooms 210 and 221
– Email: don’t go there!  Use Piazza
• Head TAs – Evan Simkowitz and Josh Gelbard
– A Head TA is on the clock each lab section
• Office hours: TBD (see web page)
• Appointments for Roger or Bill: send a query via 
Piazza and we can set something up
Course Web Page
• http://classes.cec.wustl.edu/~cse132
• It is a work in progress …
– Will contain full calendar
– Will contain studio and lab assignments
• Documents grading, collaboration, and late 
policies
• Contains documentation on languages 
(Java, C) and tools (Eclipse, Git, Arduino)
• Has link to textbook (free download)
What is this class about?
• Organization will be like CSE 131
– No lecture, but weekly preparation is required!
– 1.5 hrs/wk studio
– 1.5 hrs/wk lab
• The material includes
– Basic computer capabilities (I/O, esp. custom I/O)
– Demystifying how computer systems operate
– More than one machine, more than one type of 
machine
– Design decisions that include both software and 
hardware
Some High‐level Goals for CSE 132
• Introduce CoE concepts (so those who should be CoE
students know what that is)
– Do this while ensuring relevance to CS students
• Introduce the concept that not all computers are 
desktop/laptop class machines
– Computing happens in many different form factors
– Vehicle for 132 will be an 8‐bit microcontroller + standard 
desktop environment (Java/Eclipse from CSE 131)
• Introduce distributed concurrency (more than one thing 
going on at a time)
• Recurring theme throughout semester will be the 
representation of information
Typical Module Sequence
• Watch videos and read preparatory material
– Quiz due on most Sundays (simple!)
• Studio
– In Urbauer labs (attendance is required! don’t be late!)
• Lab
– Demo assignments in Urbauer labs
– 2nd quiz due on assignment due dates (later in day)
• Help
– A number of help sessions will get scheduled
– Piazza (all the TAs have instructor access)
– Textbook is on webpage (written for this class)
1/17/2017
2
Rules to Maintain Sanity
• Wed. lab times are for checkout
– Come to your lab, with assignment done
• Do not assume you can checkout later!
– Your lab time determines your due date/time
• Tuesday help sessions are for help
– No assignment demos on Tuesdays
– Sunday or Monday (not in studio) are fine for 
early assignment checkout
• Dr. Siever and Dr. Chamberlain made this up
– Don’t ask TAs to go against the rules
Two Compute Platforms
• Java on laptop or lab machines, using Eclipse as 
the development environment (just like 131)
• ``C’’ on Arduino machine
– Actually a subset of C, and subset is very close to 
the Java you are familiar with
– Physical computer is 8‐bit machine running at only 
16 MHz (over 100 times slower than desktop PC)
• 16 Kbytes of program memory
• 2 Kbytes of data memory
• No keyboard or display
– Wonderful community of users, doing lots and lots!
Let’s get started
• Information Representation
• In the digital world, this means binary
What is Binary?
• Underlying base signals are two‐valued:
– 0 or 1
– true or false (T or F)
– high or low (H or L)
• One “bit” is the smallest unambiguous unit of 
information
• Propositional calculus helps us manipulate 
(operate on) these base signals
Operations in Propositional Calculus
AND a ∙ b = c
c is true if a is true and b is true
OR a + b = c
c is true if a is true or b is true
NOT a’ = b
b is true if a is false
An Example
a passed microeconomics course
b passed macroeconomics course
c passed economics survey course
d met economics requirement
d = a ∙ b + c
1/17/2017
3
Boolean Algebra
• Boolean algebra (named after 19th century 
mathematician George Boole) lets us 
manipulate and reason about expressions of 
propositional calculus
• Systems based on this algebraic theory are 
called “digital logic systems”
• All modern computer systems fall in this 
category
That’s Not Enough!
• We are interested in representing signals that 
have more than just two values
– numbers
– text
– images
– audio
– video
– and much more
Images
• Consider the following bits:
0000 0000 0010 0100 0000 0000 0000 1000
0001 1000 1000 0001 0100 0010 0011 1100
• Make 1 dark and 0 light:
Images
• Arrange in rows, eight bits per row:
• Each bit is a “pixel” in the image
Add color and more pixels Prep Before Studio Tomorrow
• Go to website
– Read prep material and watch videos (they’re short)
• Make sure you have BitBucket account and 
“invite” to a cse132‐sp17 repository
– Contact Bill on Piazza if issues here
• Install software on your machine
– If not, use lab machines on Wednesday and install 
software after studio
• Acquire Arduino kit from bookstore
1/17/2017
4
Studio Tomorrow
• Come to Urbauer labs
– 11:30am, 1pm, 2:30pm come to Urb 218
– 4pm come to Urbauer 216
• Quick welcome and then we will disperse to labs 
along the north wall of Urbauer
• Do the exercises
– Authoring first programs on the Arduino board
– Arduino kit is needed!
• Get signed out by a TA