User manual - BCDライブラリマニュアルver.1.03(2012年3月29日)
3
3. 構造体一覧
3.1 BCD_DATA
本ライブラリを使用して演算行うための情報を格納します。
#define BCD_PLUS 1 // 正の数値
#define BCD_MINUS -1 // 負の数値
typedef struct{
char exp; // 指数-99~99
char sign :4; // 符号 1:正 -1:負
unsigned char integer :4; // 仮数の整数部 BCD1 桁
unsigned char kasu[12]; // 仮数の小数部
// 倍精度(12 バイト) BCD24 桁
// 単精度(6 バイト) BCD12 桁
}BCD_DATA;
- 単精度場合、仮数の小数部 kasu のうち、6 バイトのみ使用します
- 倍精度のデータを単精度で使用する場合、下位 6 バイト分のデータが無効となります
- 単精度のデータを倍精度で使用する場合、下位 6 バイト分のデータが有効となります
例
BCD_DATA:14Byte
-123.456=-1.23456×E+2
exp
:指数(8 ビット:-99~99)
sign
:符号(4 ビット:1、-1)
integer
:仮数の整数部(4 ビット:1~9)
kasu
:仮数の小数部(12 バイト)
2
-1
1
23
45
60
00
00
00
00
00
00
00
00
00
定義例
BCD_DATA = bcd_data =
{ 2, BCD_MINUS, 1, 0x23, 0x45, 0x60 };