• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Delphi中对BCD码的直接支持(转)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

最近在Delphi下写软件,需要将数据转换为BCD码和将BCD码转换为其它数据类型,从网上搜索了一下,没有发现好的函数,于是就想自定义函数来完成BCD与其它格式的数据转换功能。但最终没有动手写,先查查Delphi的帮助吧。结果一查才发现Delphi还真的直接支持BCD码的数据。现将Delphi对BCD码的支持资料大致介绍一番:

首先,Delphi支持的BCD码的数据类型名为TBCD,它的定义如下:

type 
  TBcd  = packed record
    Precision: Byte;         { 精度,1..64 }
    SignSpecialPlaces: Byte; { 符号位等信息的组合,按位表示,D7:符号位,D6:Special(不知道翻译成什么意思较好), D5~D0:Places }
    Fraction: packed array [0..31] of Byte; { BCD值,每个字节能够表示00~99范围内的值,Fraction[0]是最高位}
  end;

 

对BCD的支持是在FMTBcd单元中,所以要使用BCD函数,则需要引用此单元。

 

Delphi的BCD函数有:

BcdAdd procedure
计算两个BCD码的和

 

BcdCompare function
比较两个BCD的大小

 

BcdDivide procedure
BCD数据相除

 

BcdMultiply procedure
BCD数据相乘

 

BcdPrecision function
返回BCD的数据个数。如BCD的123返回值为3,BCD值为9382时返回值为4。

 

BcdScale function
返回BCD码的小数位数

 

BcdSubtract procedure
两个BCD码相减

 

BCDToCurr function
转换BCD码为Current格式的数据类型

 

BcdToDouble function
BCD码转换为Double格式的数据类型

 

BcdToInteger function
BCD码转换为Integer格式的数据类型

 

BcdToStr function
BCD码转换为字符串

 

BcdToStrF function
BCD码转换为带格式控制的字符串

 

CurrToBCD function
Current数据类型转换为BCD码

 

DoubleToBcd function
Double数据类型转换为BCD码

 

FormatBcd function
格式化BCD码为字符串

 

IntegerToBcd function
Integer整数类型转换为BCD码

 

IsBcdNegative function
判断BCD是否为负数

 

NormalizeBcd function
将一个BCD的值根据给定的精度和小数位数转换为另外一个BCD码的值

 

NullBcd constant
判断BCD是否为NULL

 

StrToBcd function
字符串转换为BCD码

 

TryStrToBcd function
字符串转换为BCD码,转换失败返回给定的默认值


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Delphi驱动开发研究第一篇--实现原理发布时间:2022-07-18
下一篇:
mmz-asio4delphi死链接的解决办法发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap