L     P##TABLE                    // ACC1 := Ptr to start of table
      LAR1                              // AR1 := Ptr to start of table
      L     W#16#0                      // ACC1 := 0
      L     W [AR1,P#0.0]               // Memory reference byte 0..1 ; ACC2 := 0
      ==I                               // if(memory reference byte 0..1 = DB#)
      JZ    IF01                        // {
      T     #BLOCK_NO                   //   ACC1 := DB#
      OPN   DB [#BLOCK_NO]              //   Open DB#
IF01: NOP   0                           // }
      L     D [AR1,P#2.0]               // ACC1 := Starting address of table
      LAR1                              // AR1 := Starting address of table
// Check if table is full
      L     W [AR1,P#0.0]               // ACC1 := TABLE[0]   // max len
      L     W [AR1,P#2.0]               // ACC2 := TABLE[1]   // # of entries
      >I                                // if(max_len > # of entries)
      JCN   FAIL                        // { FAIL }
// Increment # of entries in the table  
      L     1                           // TABLE[1] := TABLE[1] - 1
      +I                                //   .
      T     W [AR1,P#2.0]               //   // 指向入口地址指針+1  ---》 指針  等同于 入口地址+1  .
// Insert data into table
      L     1                           // AR1 := addr of TABLE[TABLE[1] + 1]
      +I                                //   .
      SLD   4                           // ERI 8/8/01 RQ 241572     雙子左移指令
      TAR1                              // ERI 8/8/01 RQ 241572
      +D                                // ERI 8/8/01 RQ 241572
      LAR1                              // ERI 8/8/01 RQ 241572
      L     #DATA                       // ACC1 := DATA
      T     W [AR1,P#0.0]               // TABLE[TABLE[1] + 1] := DATA
      SET                               // RL0 := 1
      JU    SBR                         //   .
FAIL: CLR                               // RLO := 0
SBR:  SAVE                              // Set BR indicating function success or failure