基本的な部分は、電卓項目と同じです。ただし、扱う数値は整数ではなく実数(小数点を含む数値を許可。厳密には浮動小数点形式)になります。整数と実数ではメモリ中でのデータ表現が異なるため、整数の42と実数の42では、全く違うメモリ内容になります。書式は
[subject]項目名: f_calc, アドレス, 最小値, 最大値, サイズ記号, エンディアン
|
です。
アドレス | 読み書きする対象のアドレスです。詳しいアドレスの書き方は、《A-アドレス》を参照。 |
最小値 最大値 | 電卓項目に準じます。 |
サイズ記号 | この項目で読み書きするバイトサイズを、「float」か「double」のどちらかで指定します。floatは単精度浮動小数点で4バイト。doubleなら倍精度浮動小数点で8バイトを使用します。省略した場合や、サイズ記号が「float」でない場合、「double」になります。なお、サイズ記号よりも[size]属性を優先しますが、その場合も4バイト以内ならfloat、それ以外はdoubleと見なされます。 |
エンディアン | 電卓項目に準じます。 |
項目名は、"/"区切りで表示先を分けることができます。詳細は電卓項目に準じます。
「符号の有無」の代わりに「サイズ記号」となっていますが、実数電卓では全てsigned(符号有り)として解釈されるためです。
まとめとして、いくつかのパターンで実数電卓項目を書いておきます。
[subject]単精度:f_calc,0x400000, 0.82, 2500, float
[subject]倍精度:f_calc,0x500000, -3, 23.55, double
|
なお、実数電卓項目に対する[io_fep]属性は、入出力演算も小数点を考慮して行われますが、その場合に使用できる演算子は、%(剰余演算子)を除く算術演算子と、関係演算子や論理演算子などの比較演算子のみとなります。
|