CS 491 Meeting 6
Dear students, We are in the working phase of developing our games, so most of our time will be spent giving weekly progress reports. Here are some questions we will probably ask you: What’s the riskiest part left to investigate in your endeavor? What three or more specific things will you accomplish before we meet […]
CS 352 Homework 3 – Alumem – due before October 24
See the PDF.
CS 352 Lecture 15 – Hack Assembly
Dear students, Now that we have all the fundamental hardware components for our computer, let’s rise another layer of abstraction. We will discuss the machine code and assembly code, which are really just encodings of the inputs that will be fed to our hardware components. The Nand2Tetris computer has the following architecture: It supports three […]
CS 145 Lecture 14 – Logical Operators
Dear students, Our computer can now ponder our data. It can examine order and equality, two operations at the root of all decision making. Before we sign up for something, we ask ourselves if the benefit exceeds the cost. We compare two brands of pasta on price and weight. We scan the details of our […]
CS 352 Lecture 14 – Program Counter
Dear students, The next homework is due in a few days, and I want to revisit some HDL concepts in hopes to roust up any questions you have. In particular, the advanced chips can benefit from array slicing, which we haven’t talked about yet. We’ll start today with an example of a hardware component that […]
CS 145 Lecture 13 – Relational Operators
Dear students, Based on your quarter sheets on the frankenstring problem, I think we need to take a moment to recommend a thinking strategy when someone asks you to write a method. Here’s how to tackle such a problem: Listen to problem description just enough to determine what kind of data your method is supposed […]
CS 491 Meeting 5
Dear students, We are in the working phase of developing our games, so most of our time will be spent giving weekly progress reports. Here are some questions we will probably ask you: What’s the riskiest part left to investigate in your endeavor? What three or more specific things will you accomplish before we meet […]
CS 145 Lecture 12 – Test-driven Development
Dear students, Last lecture I said we’d have one more day of focus on methods, but then we spent the entire time talking about casting. Today we’ll start the fill-in-the-blank exercises to exercise our method brain. Your task is to jot what goes in each blank of the following code snippets. One of the blanks […]
CS 352 Lecture 12 – ALU
Dear students, Now that we have hardware components that can perform boolean logic and arithmetic, let’s package them all together into a one-stop shop called the arithmetic-logic unit (ALU). This component will perform exactly one of many possible operations. Which operation it performs will be determined by 6 control pins, and it will also accept […]