Go to the first, previous, next, last section, table of contents.


スタック操作コマンド群

スタック top のオブジェクトを複製するには、RETSPC (どちらも calc-enter コマンドの等価キー)を押します。 このコマンドに正の接頭引数を与えると、top からの複数の要素群を複製します。 負の接頭引数を与えると、指定の項を複製します。 ゼロの接頭引数を与えると、スタック全体を複製します。 例えば、スタックに `10 20 30' がある場合に、 RET を押すと `10 20 30 30', C-u 2 RET と打つと `10 20 30 20 30', C-u - 2 RET と打つと `10 20 30 20', C-u 0 RET と打つと `10 20 30 10 20 30' となります。

LFD (calc-over) コマンド (ラインフィード記号の付いたキーがあればそれ、無ければ C-j) は、calc-enter に似ていますが、 接頭引数の符号解釈が正反対になっています。 しかも、接頭引数を付けない場合のデフォルトは2です。 そのため、スタックに `10 20 30' がある場合に、 LFDC-u 2 LFD はどちらも C-u - 2 RET と等価で、 `10 20 30 20' となります。

スタックから top の要素を除くには、DEL (calc-pop) を押します。 C-d キーは DEL と同義です。 (もし top が要素を1個以上持つ不完全項ならば、 そこから最後の要素だけが除かれます。) 正の接頭引数を与えると、複数の要素が削除されます。 負の接頭引数を与えると、指定された要素が削除されます。 ゼロの接頭引数では、スタック全体が空にされます。 例えば、スタックに `10 20 30' がある場合に、 C-u 2 DEL`10' が残り、 C-u - 2 DEL`10 30' が残り、 C-u 0 DEL でスタックが空になります。

M-DEL (calc-pop-above) は DEL の類似コマンドで、 RET に対する LFD のような関係です。 すなわち接頭引数の符号解釈が正反対で、 接頭引数を付けない場合のデフォルトは2です。 そのため、M-DEL 単独ではスタックの top から 2番目の要素を削除して、 それ以外のスタック要素を残します。 M-3 M-DEL は、スタックの top から 3番目の要素を削除します。

スタックレベル 1番と 2番の要素を入れ替えるには、 TAB (calc-roll-down) を押します。 正の接頭引数を与えると、 指定した数のスタック要素が下向きにローテーションします。 負の接頭引数を与えると、 スタック全体が指定したステップ数だけ下向きローテーションします。 ゼロの接頭引数を与えると、スタック全体が上下逆順になります。 例えば、スタックに `10 20 30 40 50' がある場合に、 TAB を押すと `10 20 30 50 40' のようになり、 C-u 3 TAB では `10 20 50 30 40'C-u - 2 TAB では `40 50 10 20 30'C-u 0 TAB では `50 40 30 20 10' となります。

M-TAB (calc-roll-up) は TAB の類似コマンドで、 ローテーションの方向が上向きになります。 しかも、接頭引数を付けない場合のデフォルトは 3 です。 例えば、スタックに `10 20 30 40 50' がある場合に、 M-TAB を押すと `10 20 40 50 30' のようになり、 C-u 4 M-TAB では `10 30 40 50 20'C-u - 2 M-TAB では `30 40 50 10 20'C-u 0 M-TAB では `50 40 30 20 10' となります。

スタック内の特定の要素がどこに移動するかを観察すると、 TABM-TAB の動作がよく判ります。 接頭引数が正の n の場合、 TAB はスタックレベル 1 の要素をレベル n に移動し、 両レベル間の要素群を 1段ずつ下方に(top方向に)シフトします。 同じ接頭引数で M-TAB の場合は逆に、 スタックレベル n の要素をレベル 1 に移動し、 両レベル間の要素群を上向きにシフトします。 (いっぽう LFD は、同じくスタックレベル n に作用しますが、 その要素を移動するのではなく複製して top に push します。)

負の接頭引数 -n の場合、 TAB はスタック全体を n ステップ下向きローテーションして、 レベル n の要素がスタック最深部へ行き、 レベル n+1 の要素がレベル 1 に来ます。 M-TAB では n ステップの上向きローテーションなので、 スタック最深部の要素がレベル n に来て、 レベル 1 の要素がレベル n+1 に来ます。

これらのコマンドを、 スタック上のベクトルや式の一部に作用させる方法は、 サブ数式のセレクション 参照 。


Go to the first, previous, next, last section, table of contents.     利用度数