advent-of-code/2019/Scala/day05/opcode/OpCode1.scala

16 lines
493 B
Scala
Raw Normal View History

2019-12-06 22:45:29 +01:00
package day05.opcode
/** Sum */
case object OpCode1 extends Action
{
/** length of an instruction */
override val length: Int = 4
/** Executes instruction for given parameters and modes */
override def exec(tape: Array[Int], param1: Int, param2: Int, param3: Int, mode1: Int, mode2: Int, mode3: Int): Unit =
{
val result = accessor(param1, mode1, tape) + accessor(param2, mode2, tape)
writer(param3, 0, tape, result) // Write mode is 0 default for now
}
}