EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Lab # 2
Due at the beginning of your lab session of week 2/20
1. Arguments to C Programs
There is a way to pass command-line arguments or parameters to a C program when
it begins executing. When ma
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Quiz # 5
May 3, 2012, 2:30 - 3:45pm, in class
Books are allowed. Notes are allowed. Calculators are allowed (but will be useless).
1. Graphs for Coding
This problem asks you to formulate codes for
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Quiz # 4
April 19, 2:30 - 3:45pm, in class
Books are allowed. Notes are allowed. Calculators are allowed (but will be useless).
1. Implementing XOR with AND gates
Recall that the Exclusive-OR (XOR)
C/C+: A High-Level Language
Gives symbolic names to values
dont need to know which register or memory location
Provides abstraction of underlying hardware
operations do not depend on instruction set
example: can write a = b * c, even though
processor m
EE 1301
Introduction to Computing Systems
Getting Started with Particle
Photon and IoT Development
Objective
See how programming skills open up
many opportunities
Learn to use programming skills to create
internet-connected devices
The internet of thin
EE 1301
Introduction to Computing Systems
Sensors and Actuators
Objective
Learn how to use sensors and actuators
Learn some circuit basics
Interfacing with the Particle Photon
Reading Datasheets
The Internet of Things
Microcontrollers = tiny computers
E
EE1301: Introduction to
Computing Systems
Professor David Lilja
University of Minnesota
Dept. of ECE
[email protected]
1
Lab Kit Internet of Things (IoT)
Particle Photon development board + useful
components
Pick up at ECE Depot (2-126 KH)
Useful reference
EE 1301
Introduction to Computing Systems
Variables and Operators
(Plus enough extra to get you
programming)
Variables
Used to store data in a program
Variables must be declared and initialized
intx;/variabledeclaration
x=0;/variableinitialization
inty=
Introduction to the World of Computing
Computer: electronic genius?
NO! Electronic idiot!
Does exactly what we tell it to do, not necessarily what we want it
to do!
IAS Machine.
Design directed
by John von
Neumann.
First booted in
Princeton NJ in
1952.
EE 1301: Introduction to Computing Systems
IoT Laboratory #2
Getting Started with Sensors and Actuators
Page 1
EE 1301 IoT Lab # 2
ECE Department
Background
As discussed in IoT Lab 1, a smart device interacts with the world with Sensors and Actuators.
A s
Bits, Data Types, and Operations
2-1
How do we represent data in a computer?
At the lowest level, a computer is an electronic machine.
works by controlling the flow of electrons
Easy to recognize two conditions:
1. presence of a voltage well call this st
EE1301 Fall 2016
HW1 (Software part of Lab1), Week of 9/12
You have to demo your program for problem 1 to your lab TA, and explain the behavior of cin.
For the rest of the programs, upload your .cpp file on moodle and if time permits, demo your code to
th
EE1301 Fall 2016
HW5, Week of 10/10
You have to demo your solution for the problems labeled as [lab] to your lab TA. You will be working
on the [lab] problems alongside the IoT (Hardware) Lab 2-part b (actuators).
Note: half of your grade on the software
EE1301 Fall 2016
HW2, Week of 9/19
You have to demo your solution for the problems labeled as [lab] to your lab TA.
All the code you develop, including the ones you demo to the TA has to be submitted through Moodle.
Upload your .cpp file on Moodle with sc
EE1301 Fall 2016
HW3, Week of 10/3
You have to demo your solution for the problems labeled as [lab] to your lab TA. You will be working
on the [lab] problems alongside the IoT (Hardware) Lab 2-part a. As a reminder, you will be doing only
the sensors in I
Prefixes for Binary Quantities
Binary prefixes
Name
kibi
Symbol
Ki
Base 2
210
Decimal prefixes
Base 1024
10241
Value
1.02 x 103
Name
kilo
Symbol
K
Value
1 x 103
Prefixes for Binary Quantities
Binary prefixes
Name
Symbol
Base 2
Decimal prefixes
Base 1024
Function
Smaller, simpler, subcomponent of program
Provides abstraction
hide low-level details
give high-level structure to program,
easier to understand overall program flow
enables separable, independent development
C functions
zero or multiple argu
EE 1301
Introduction to Computing Systems
UMN
Fall 2012
Lab # 3
Collaboration is encouraged. You may discuss the problems with other students, but you
must write up your own solutions, including all your C programs, by yourself. If
you submit identical or
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Lab # 4
Introduction to the LC-3 Simulator and Machine Code
Due the week of 3/26/2012
1. Download the le add.bin from the class web page. Follow the directions in the simulator
lab manual to conver
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Lab # 5
LC-3 Assembly Language Programming
Due the week of Apr. 9, 2012
Reading: LC-3 Guide, text Chapter 7.1-7.2, Appendix A.
1. (20 pts) Write a program in LC-3 assembly language that counts the
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Lab # 6
Sorting in LC-3 Assembly Language
Due week of Apr. 23, 2012
Reading: LC-3 Guide, text Chapter 9, Appendix A.
Write a program in LC-3 assembly language that reads a string of ASCII character
EE 1301
Introduction to Computing Systems
UMN
Winter 2012
Sample Problems for Quiz # 1
(with solutions)
Here are sample problems to help you prepare for Quiz 1 on Feb. 9.
1. Logic Functions from CMOS Transistors
Recall that we introduced the abstractions
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Sample Problems for Quiz # 2
(with some solutions)
Here are sample problems to help you prepare for Quiz 2 on March 6.
1. A Funky Latch
Consider the latch shown in Figure 1, built from an OR gate,
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Sample Problems for Quiz # 3
(with solutions)
Here are sample problems to help you prepare for Quiz 3 on March 29.
1. Number Systems
(a) Suppose that the following bits represent positive numbers.
EE 1301 Introduction to Computing Systems
UMN Spring 2012
Sample Problems for Quiz # 3
Here are sample problems to help you prepare for Quiz 4 on April 12.
1. Implementing XOR with AND gates Recall that the Exclusive-OR (XOR) function is 1 if an odd num
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Sample Problems for Quiz # 3
Here are sample problems to help you prepare for Quiz 5 on May 1.
1. Graphs for Coding
This problem asks you to formulate codes for characters of the alphabet, using gr
EE 1301
Introduction to Computing Systems
UMN
Winter 2012
Quiz # 1
Feb. 9, 2:35 - 3:30pm, in class
Books are allowed. Notes are allowed. Calculators are allowed but only for arithmetic.
You are not allowed to use any device other than your brain to run th
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Quiz # 2
March 6, 2:35 - 3:40pm, in class
Books are allowed. Notes are allowed. Calculators are allowed but only for arithmetic.
You are not allowed to use any device other than your brain to run t
EE 1301
Introduction to Computing Systems
UMN
Spring 2012
Quiz # 3
March 29, 2:30 - 3:45pm, in class
Books are allowed. Notes are allowed. Calculators are allowed but only for arithmetic.
You are not allowed to use any device other than your brain to run