--- /dev/null
+;;; 連続した複数のWORDを符号付き整数とみなして最大値を返す
+;;; 入力: GR1: WORD値を格納したアドレス GR2: 値の個数
+;;; 出力: GR0: 最大値
+MAX START
+ RPUSH
+ LD GR0,0,GR1 ; MAX <- GR1アドレスの値
+ ST GR0,MAX ; ↓
+ LAD GR3,0 ; GR3:インデックス 初期化
+S1 CPA GR3,GR2 ; ループ先頭。(GR2 = GR3)の場合、終了
+ JZE RET ; ↓
+ LAD GR1,1,GR1 ; GR1 <- GR1 + 1
+ LD GR0,0,GR1 ;
+ CPA GR0,MAX ;
+ JMI S2 ;
+ JZE S2 ;
+ ST GR0,MAX ;
+S2 LAD GR3,1,GR3 ;
+ JUMP S1 ;
+RET LD GR0,MAX ;
+ RPOP
+ RET
+MAX DS 1 ; 最小値を格納
+ END