就像 PASCAL 语言和 C/C++ 语言一样, SH 语言也是一种编程语言。
SH 语言共有 $26$ 个寄存器,用大写拉丁字母 A, B, … , Z 表示。 SH 语言的程序中,第一行依次是这 $26$ 个寄存器的初始值,用空格分隔。程序的第二行起,每一行都是一条命令。 SH 语言有三种命令,如下表所示(在格式这一列中,用下划线代替实际语言中的一个空格)。
| 命令 |
格式 |
功能 |
限制 |
| ADD |
ADD_R1_R2 |
将寄存器 R2 的值加到寄存器 R1 上 |
无 |
| GOTO |
IF _R_ < _I1_ GOTO _LINE_ I2 |
如果寄存器 R 的值小于立即数 I1 ,则跳转至第 I2 ( $ \ge 2$ )行,否则继续执行下一行 |
至多出现一次,且只可能出现在第 I2 行之后 |
| PRINT |
PRINT_R |
打印寄存器 R 的值 |
出现且仅出现在最后一行 |
现给定一个 SH 语言的程序,请输出 PRINT 命令打印的值。