○スタック
  スタックの説明
          入れた逆順に取り出す First In Last Out
          基本操作 Push データを入れる
                   Pop  データを取り出す

                         Y       
                  X      X       X
         --- =>  --- => --- =>  --- => ---
           PUSH X  PUSH Y POP Y   POP X  
  利用例
          手続き呼出
                    「現在の処理(主たる)の流れを
                     中断して別の処理(部分の処
                     理)を行ないそのあとで戻る」
(         コンピュータの中ではハードウェアで実現されている  )
(         再帰的処理・再帰的手続き呼出  再帰的=recursive    )

スタックの例 逆ポーランド型電卓( dc コマンド ) 12 34 + 56 * 「12 に 34 を足し(それに) 56 を掛ける」 (日本語型) 34 56 12 12 46 46 2576 --- => --- => --- => --- => --- => ----- 12 34 + 56 * P P PP P P PP P U U OO+U U OO*U S S PP S S PP S H H H H H Postscript 言語
プログラム例(一部であり連続していない) double stack[N], x, y; int sp; /* stack pointer */ sp=0; /* 初期状態:スタックを空にする */ /* push x */ stack[sp]=x; sp=sp+1; /* pop -> y */ sp=sp-1; y=stack[sp];
戻る