Professional Documents
Culture Documents
0 Intro
0 Intro
Introduction
Brett H. Meyer
Winter 2024
Revision history:
Warren Gross – 2017
Christophe Dubach – W2020, F2020, F2021, F2022, F2023
Brett H. Meyer – W2021, W2022, W2023, W2024
Timestamp: 2024/01/08 09:11:00
1
Disclaimer
2
A Brief (Professional) History of Brett H. Meyer
• 2017: Co-founder
3
What is Computer Organization?
This class will fill in the missing details to tell the story of how a
digital machine called a computer runs programs
4
ECSE 324 in context
ECSE 202
Intro to Software
Development
ECSE 324
Computer
Organization
ECSE 325 ECSE 425 ECSE 444 ECSE 421 ECSE 427 ECSE 436 COMP 520
Digital Computer Microprocessors Embedded Operating Signal Processing Compiler
Systems Architecture Systems Systems Hardware Design
ECSE 420
Parallel
Computing
5
What will you take away from ECSE 324?
computers
• How this hardware executes a
software program
6
What will you take away from ECSE 324?
• Computer software
• How to write programs at the
machine level in assembly language
• Software compilation
• How high-level languages (e.g.,
Java) are translated into assembly
source: CC0 1.0 Universal Public Domain Dedication
7
Why learn assembly language?
8
Why take ECSE 324?
9
Why take ECSE 324?
• Computer engineers:
This course sets the stage for your remaining studies; learn the
concepts motivating computer system construction.
• Software engineers:
Learn how to write efficient code by understanding the machine
it runs on.
• Electrical engineers:
Computers are at the heart of almost all EE systems; learn how
they work to better work with them.
10
Computing system stack: Big picture
Problem
Algorithm
Program (Language)
ISA (Architecture)
ECSE 324
Micro-architecture
Logic
Circuits
Electrons
11
What knowledge do you need from ECSE 202 & ECSE 222?
12
First: It’s OK to not be OK
If you tell me that you’re struggling, I’m not going to judge or think
less of you; I hope you’ll extend me the same grace.
13
Course information
14
Textbook
15
Course syllabus
We will loosely follow the text over the course of the semester.
16
Course meetings
17
Labs
This should prepare you for the midterm and final exam.
19
Tutorial and lab schedule
• To help TAs load balance, only attend the sessions you are
registered for.
• To switch lab (or tutorial) sessions, do so through the University
(do not contact the instructor or TAs about this, we cannot help).
20
Evaluation
Item Weight
Midterm exam 20%
Final exam 55%
Lab experiments 25%
21
Exam format
The exams are in-person and closed book. They are designed so that
they can be completed in:
The assignments and tutorials should prepare you for the exam
problems you will encounter.
Past exams are available on MyCourses.
22
Getting help with course material
23
A note on staff availability
• I am unavailable evenings
• I am unavailable weekends
24
What you need to do to succeed at this course
25
A few notes on academic integrity
26
Harassment- & Discrimination-free Environment
That’s it! See you next time for our first lecture on
Computer Technology and Abstractions.
29