ASC转换BCD,ASC2BCD(转)
- int ASC2BCD(const char* szASC,byte* szBDC)
- {
- int szASCLen=strlen(szASC);
- byte * bpBCD = new byte[szASCLen/2];
- int nss=0,nOu=0;
- for (int x=szASCLen-1;x>=0;x--)
- {
- //取出字符串中的一个数值
- char char_1=*(szASC+x);
- //取出BCD码
- int nBDC;
- if (char_1 != '.') nBDC=(char_1 & 0xF);
- else nBDC=14;
- if ((++nOu)&0x01)
- bpBCD[nss]=(nBDC << 4);
- else
- bpBCD[nss++] += nBDC;
- }
- int nBit=0;
- if (nOu%2==0) nBit=nOu/2-1;
- else nBit=nOu/2;
- for (int y=0;y<=nOu/2;y++)
- {
- szBDC[y]=(bpBCD[nBit-y] << 4);
- szBDC[y]+=(bpBCD[nBit-y] >> 4);
- }
- return nBit;
- // memcpy(szBDC,bpBCD,sizeof(bpBCD)*2);
- }
- void CDotTestDlg::OnButton1()
- {
- char szTest[]={"123456789123456789.789"} ;
- int s=strlen(szTest);
- byte * szAn=new byte[s/2];
- int w=ASC2BCD(szTest,szAn);
- for(int x=0;x<=w;)
- TRACE("%x ",szAn[x++]);
- }
事例:
输出:12 34 56 78 91 23 45 67 89 e7 89
ASC转换BCD,ASC2BCD(转)的更多相关文章
- C#下16进制和BCD码转换代码
private static Byte[] ConvertFrom(string strTemp) { try { if (Convert.ToBoolean(strTemp.Length & ...
- BCD与ASCII码互转-C语言实现
/*BCD 与 ASCII码转换*/ /******************************************************************* 函数名: asc2bc ...
- BCD工具类(8421)
目录 1.BCD介绍 (1)BCD码(Binary-Coded Decimal)亦称二进码十进数.用4位二进制数来表示1位十进制数中的0~9这10个数码.用二进制编码的十进制代码. (2)BCD码可分 ...
- Delphi中对BCD码的直接支持 (转)
最近在Delphi下写软件,需要将数据转换为BCD码和将BCD码转换为其它数据类型,从网上搜索了一下,没有发现好的函数,于是就想自定义函数来完成BCD与其它格式的数据转换功能.但最终没有动手写,先查查 ...
- Delphi中BCD和Currency类型
用了这些年的Delphi,竟然对Currency及TBCDField一知半解,下文给了很好的讲解,值得一读. 一. BCD类型 BCD即Binary-Coded Decimal?,在Del ...
- DES、MD5、RSA加密算法
本篇主要是实现标题中的三个加密算法,至于机制大家自行百度吧. 一.DES 实现类:DES.java package com.kale.des; import java.security.SecureR ...
- Java RSA 加密 解密 签名 验签
原文:http://gaofulai1988.iteye.com/blog/2262802 import java.io.FileInputStream; import java.io.FileOut ...
- 【转】 我的java web登录RSA加密
[转] 我的java web登录RSA加密 之前一直没关注过web应用登录密码加密的问题,这两天用appscan扫描应用,最严重的问题就是这个了,提示我明文发送密码.这个的确很不安全,以前也大概想过, ...
- Android接口安全 - RSA+AES混合加密方案
转载请注明出处: http://blog.csdn.net/aa464971/article/details/51034462 本文以Androidclient加密提交数据到Java服务端后进行解密为 ...
随机推荐
- yii2 basic 简洁安装教程
虽然yii官网上说叫咱们用composer安装来安装,但是鄙人感觉这样的安装方式会将自己写的代码共享到github中,因此不太建议大家这样用.下面来给大家介绍basic简洁的安装方法. 第一步,下载b ...
- hdu 1051:Wooden Sticks(水题,贪心)
Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
- 并发容器J.U.C --组件FutureTask、ForkJoin、BlockingQueue
FutureTask FutureTask是J.U.C中的类,是一个可删除的异步计算类.这个类提供了Future接口的的基本实现,使用相关方法启动和取消计算,查询计算是否完成,并检索计算结果.只有在计 ...
- eclipse新建maven web工程
每次建maven项目,总会有问题.决定在这整理一次,避免以后浪费时间. 最后目录为 1.首先修改pom.xml 之前老是出现明明改了 java compiler 已maven update 一下就又变 ...
- 《转》Win7 IIS7.5 安装
一.进入Win7的 控制面板,选择左侧的 打开或关闭Windows功能. 二.现在出现了安装Windows功能的选项菜单,注意选择的项目,我们需要手动选择需要的功能,下面这张图片把需要安装的服务都已经 ...
- Android实例-使用电话拨号器在移动设备上
Android实例-使用电话拨号器在移动设备上 源文地址: http://docwiki.embarcadero.com/RADStudio/XE5/en/Mobile_Tutorial:_Using ...
- hdu4045(递推)
不会斯特林数的只能用递推思想了,结果发现推出来的就是斯特林数... #include <stdio.h> #include <stdlib.h> #include <st ...
- iOS侧面加shadow
UIBezierPath *shadowPath = [UIBezierPath bezierPathWithRect:_bgView.bounds]; _bgView.layer.masksToBo ...
- [Algorithms] Graph Traversal (BFS and DFS)
Graph is an important data structure and has many important applications. Moreover, grach traversal ...
- finereport Web工具栏
1.获取报表工具栏按钮 在报表页面中,偶尔会有需要获取工具栏按钮的需求,之前只能通过contentPane.toolbar.options.items[index]来获取,比较不方便,现在我们提供了两 ...