MCPcopy Create free account
hub / github.com/AxlLind/AdventOfCode / run_inst

Function run_inst

2018/src/16.py:4–22  ·  view source on GitHub ↗
(regs,op,a,b,c)

Source from the content-addressed store, hash-verified

2import re
3
4def run_inst(regs,op,a,b,c):
5 match op:
6 case 0: regs[c] = regs[a] + regs[b]
7 case 1: regs[c] = regs[a] + b
8 case 2: regs[c] = regs[a] * regs[b]
9 case 3: regs[c] = regs[a] * b
10 case 4: regs[c] = regs[a] & regs[b]
11 case 5: regs[c] = regs[a] & b
12 case 6: regs[c] = regs[a] | regs[b]
13 case 7: regs[c] = regs[a] | b
14 case 8: regs[c] = regs[a]
15 case 9: regs[c] = a
16 case 10: regs[c] = int(a > regs[b])
17 case 11: regs[c] = int(regs[a] > b)
18 case 12: regs[c] = int(regs[a] > regs[b])
19 case 13: regs[c] = int(a == regs[b])
20 case 14: regs[c] = int(regs[a] == b)
21 case 15: regs[c] = int(regs[a] == regs[b])
22 return regs
23
24def valid_opcodes(before,code,after):
25 _,a,b,c = code

Callers 2

valid_opcodesFunction · 0.85
mainFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected