RAM
CPUにRAMを追加。「CPUとRAMのつなぎ方」と「ロード命令とストア命令のOpcodeの定義」をあれこれ悩みながら考えるのが楽しかった。操作ミスで配線がぐちゃぐちゃになった時は泣きそうになったけど、無事に復旧できて良かった。
https://gyazo.com/3655117280f737794edf16f58fa88601
code:ram
const add 0
const add_ri 64
const add_ii 192
const sub 1
const jeq 32
const jeq_ii 224
const jlt 34
const jlte 35
const sw 16
const lw 8
const r0 0
const r1 1
const r2 2
const r3 3
const r4 4
const r5 5
const counter 6
const input 7
const output 7
label start
add_ii
0
0
r1
add_ii
32
0
r2
label input_stage
jeq
r1
r2
output_stage
add_ri
input
0
r5
sw
r1
r5
0
add_ri
r1
1
r1
jeq
r0
r0
input_stage
label output_stage
add_ii
0
0
r1
label output_loop
jeq
r1
r2
end
lw
r1
0
r5
add
r5
0
output
add_ri
r1
1
r1
jeq
r0
r0
output_loop
label end
jeq
r0
r0
end