A controller instruction in our register-machine language has one of the following forms, where each $input$$_i$ is reg($register$-$name$) or constant($constant$-$value$).
These instructions were introduced in section 5.1.1: assign($register$-$name$, reg($register$-$name$)) assign($register$-$name$, constant($constant$-$value$)) assign($register$-$name$, list(op($operation$-$name$), $input$$_1$, $\ldots$, $input$$_n$)) perform(list(op($operation$-$name$), $input$$_1$, $\ldots$, $input$$_n$)) test(list(op($operation$-$name$), $input$$_1$, $\ldots$, $input$$_n$)) branch(label($label$-$name$)) go_to(label($label$-$name$))
The use of registers to hold labels was introduced in section 5.1.3: assign($register$-$name$, label($label$-$name$)) go_to(reg($register$-$name$))