Skip to main content
UW-Madison
Computer Sciences
3 credits

UW-Madison CS 252: Introduction to Computer Engineering

CS 252 (cross-listed COMP SCI/E C E 252) introduces how computers work from the bottom up: transistors and gates, combinational and sequential logic, basic computer organization, and machine and assembly programming on the LC-3. It's the first systems course in the CS and computer engineering tracks.

Fennie is independent and not affiliated with University of Wisconsin-Madison. This is an unofficial study guide.

What makes it hard

The material spans transistors to assembly in one semester, and each layer assumes the previous one; letting Boolean algebra or state machines go cold makes the later units feel arbitrary. LC-3 assembly is the famous unit: programming with loads, stores, and branches demands precision that high-level languages never required, and exam problems trace machine state instruction by instruction.

What you'll cover

  • Transistors and logic gates
  • Boolean algebra
  • Combinational logic design
  • Sequential logic and state machines
  • Basic computer organization
  • LC-3 machine and assembly programming

The CS 252 study guide

How to study for UW-Madison CS 252, step by step.

  1. 1

    Get gates and Boolean algebra automatic early

    Everything in CS 252 compiles down to the first weeks. Simplifying expressions and reading circuit diagrams must be reflex before sequential logic arrives, because the course never re-teaches them.

  2. 2

    Design circuits from specifications, on paper

    Truth table to gates, state diagram to flip-flops: exams test producing designs, not recognizing them. Weekly from-scratch design practice is the preparation that matches the test.

  3. 3

    Hand-trace LC-3 programs instruction by instruction

    Write down registers and memory, step through each instruction, predict the state. The assembly unit's exam questions are exactly this exercise, and it's trainable mechanical skill.

  4. 4

    Write small assembly programs beyond the assignments

    Loops, conditionals, and memory access in LC-3: production fluency comes from writing, not reading. Small extra exercises make the instruction set a language instead of a reference card.

Today

Today's CS 252 plan

Preview
65 min

What a Fennie Daily Plan looks like for CS 252. Yours is built from your own syllabus and adapts every day to your deadlines and progress.

0 / 4 done~65m remaining
Keep this plan free

First plan free, no card required. Fennie is independent and unaffiliated with your school.

FAQ

Is CS 252 at UW-Madison hard?

It's detail-dense rather than conceptually brutal: each layer from gates to assembly is manageable, but they stack, and cramming a semester of stacked abstractions fails reliably. Students who review cumulatively and practice LC-3 tracing find it predictable.

What is LC-3 in CS 252?

A simple teaching computer architecture used for the machine and assembly programming units. You write programs with basic instructions (loads, stores, branches) to learn how computation actually happens at the machine level before CS 354 puts you in C on real hardware.

Do I take CS 252 before CS 354?

Yes. 252 is the prerequisite and 354 builds directly on it, moving from LC-3 to C and real machine organization. The gates-to-assembly mental model you build here is assumed working knowledge there.

More UW-Madison courses