● StrCalc DLL - DLL による違い - Ver 3.4 、3.5 の機能

Ver 3.4 、3.5 のメモリ表現方法

Ver 3.4 、3.5 では、メモリを [a] 〜 [z] の 26個で表現しています。また、メモリとは別に、置き換え文字 x 、y もあるので、全部で 28種類のメモリを数値式内に表現することができます。つまり、数値式が一度にアクセスできる範囲が 28 箇所ということになります。

Ver 3.4 や 3.5 の DLL が使用される場合、28 個を 1 ページとし、ページ単位でメモリにアクセスする方法を用います。ページの指定は、数値式の先頭でコマンドを用います。

書式:

        # ページ番号(数値式) ; 実際に計算させる数値式

例.

   #1;[a] + 1

   # [t] + 1 ; [b] + [c]

     #  3  ;  x * 2  +  y
ゼロから始まるページ番号をシャープ # とセミコロン ; の間に入れます。実際に計算させる数値式はセミコロン以降に記述します。半角の空白、タブ文字は自由に入れることができます。
なお、ページゼロ( #0; )は、コマンドを記述しなくてもアクセスできます。



例えば、メモリ [29] の内容を3倍したい場合は、次のように記述します。
    #1; [b] * 3
メモリ [23] 、[24] の内容を加算したい場合は、
    #0; [x] + [y]
と記述します。メモリ [27] まではページゼロなので、次のようにコマンドを省いた形で記述してもかまいません。
    [x] + [y]
メモリを使用する関数も、ページ指定の影響を受けます。
    #1;sum(3)
この場合、ページ1の [a] 〜 [c] ([28] 〜 [30])の内容の合計を計算します。

最後のページのメモリ数がページ単位に満たない場合、余りを [a] から割り振り、残りの部分にはゼロで埋められた仮のメモリを割り当てます。上記の例では、[0] 〜 [30] の 31個、メモリが確保されていますので、ページ1には、メモリ数 31 個 ÷ 1ページ分 28 個 の余り 3個に対し、それぞれ [a] 、[b] 、[c] が割り当てられます。
ページ1の [d] 〜 [z] と x 、y については仮メモリが割り当てられているので、数値式で使用しても動作上の問題はありません。



これらの規則は Ver 3.4 、3.5 の DLL が使用される場合に限り、SCalc 内の全ての数値式で適用されます。