                     let lower = valueToStore.unsignedLower8()
                     let lowest = valueToStore.unsignedLowest8()
                     self.memory[address] = lower
-                    self.memory[address + 8] = lowest
+                    self.memory[address + 1] = lowest
                 case 2:
                     // Storing a word
                     let (highest, higher, lower, lowest) = valueToStore.toBytes()
                     self.memory[address] = highest
-                    self.memory[address + 8] = higher
-                    self.memory[address + 16] = lower
-                    self.memory[address + 24] = lowest
+                    self.memory[address + 1] = higher
+                    self.memory[address + 2] = lower
+                    self.memory[address + 3] = lowest
                 default:
                     // Never reached
                     fatalError("Invalid size of store word: \(size)")

            }
        case let .Memory(storing, size, memReg, offset, addrReg):
            let addrRegValue = self.registers.get(addrReg.name)
            let address = addrRegValue + offset.signExtended*8 // Immediate is offset in bytes
            if address % Int32(1 << size) != 0 {
                print("Unaligned memory reference: \(address.toHexWith0x())")
                // TODO disallow

            var words = [Int32]()
			var ascii = "" // Queue up ASCII representations of memory values to print after each line, similar to hexdump
            for i in 0..<numWords {
                let address = location + 4*i // Loading in 4-byte chunks
                let highest = self.memory[address] ?? 0
                let higher = self.memory[address + 1] ?? 0
                let lower = self.memory[address + 2] ?? 0
                let lowest = self.memory[address + 3] ?? 0
                words.append(Int32(highest: highest, higher: higher, lower: lower, lowest: lowest))
				ascii += "\(highest.toPrintableCharacter())\(higher.toPrintableCharacter())\(lower.toPrintableCharacter())\(lowest.toPrintableCharacter())"
            }
