几种码制转换 BCD TO HEX,HEX TO BCD ,BIN TO HEX_0011411的博客-程序员秘密

技术标签: include  c  文章  hex  

#include
#include
#include
#include
/*****/
#define LongToBin(n) /
(/
((n >> 21) & 0x80) | /
((n >> 18) & 0x40) | /
((n >> 15) & 0x20) | /
((n >> 12) & 0x10) | /
((n >> 9) & 0x08) | /
((n >> 6) & 0x04) | /
((n >> 3) & 0x02) | /
((n ) & 0x01) /
)

#define Bin(n) LongToBin(0x##n##l)

/********** HEX转BCD******/
/***bcd_data(<0x255,>0)***/
unsigned char BCD2HEX(unsigned int bcd_data)
{
unsigned char temp;
temp=((bcd_data>>8)*100)|((bcd_data>>4)*10)|(bcd_data&0x0f);
return temp;
}
/********** HEX转BCD******/
/***hex_data(<0xff,>0)****/
unsigned int HEX2BCD(unsigned char hex_data)
{
unsigned int bcd_data;
unsigned char temp;
temp=hex_data%100;
bcd_data=((unsigned int)hex_data)/100<<8;
bcd_data=bcd_data|temp/10<<4;
bcd_data=bcd_data|temp%10;
return bcd_data;
}

void main(void)
{
unsigned int c;

c= Bin(10101001); // then c = 0xA9
c=BCD2HEX(0x255); //255 转成HEX为0xff
c=HEX2BCD(0xff); //0xff 转成BCD码为 255
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/0011411/article/details/423623

智能推荐

ORACLE通过IP地址连接失败的解决办法_cg_program的博客-程序员秘密

以ORACLE 11G为例:1、找到oracle安装目录,找到这俩个文件 tnsnames.ora和 listener.ora ,Host= 的地方改为你的本机ip地址D:\app\gn\product\11.2.0\dbhome_2\NETWORK\ADMIN\listener.oraD:\app\gn\product\11.2.0\dbhome_2\NETWORK\ADMIN\tn

April 28 2017 Week 17 Friday_dflkg8956的博客-程序员秘密

The only thing more painful than learning from experience is not learning from experience.比从经验中学习更为痛苦的事情就是没能从经验中学习。Learning from experience is painful, but the alternative of not learning is ...

Rancher 2.1平台搭建及使用_tldesign3d_w844916072的博客-程序员秘密

Rancher 2.1平台搭建及使用Posted on2019-10-15 13:46Mr.智 阅读(11696) 评论(1)编辑收藏目录一、概述 1.1、什么是Rancher 1.2、Rancher架构 1.2.1、Docker简述 1.2.2、Kubernetes简述 1.2.3、Rancher架构 二、相...

数据库Oracle通用函数_有园人的博客-程序员秘密

通用函数:可用于任意数据类型,并且适用于空值。• NVL (expr1, expr2)• NVL2 (expr1, expr2, expr3)• NULLIF (expr1, expr2)• COALESCE (expr1, expr2, ..., exprn)NVL(expr1, expr2) 函数:转换一个空值到一个实际的值。expr1,expr2:可用的数据类型可以是日期...

C语言实现链表之双向链表(十二)判断链表是否为空和获取链表长度_君临丶天下的博客-程序员秘密

C语言实现链表之双向链表(十二)判断链表是否为空和获取链表长度    上一篇文章给出了设置结点数据与获取结点数据的两个函数,本篇文章将给出判断链表是否为空和获取链表长度的函数,共两个函数。/*============================================================================== * 操作 :检

python数据分析与挖掘实战 之笔记2_潇洒佳爷的博客-程序员秘密

《python数据分析与挖掘实战》学习笔记2经过前面章节的分析,即对数据进行探索和预处理,得到了处理后的数据。根据所得到的数据建立分类与预测、聚类分析、关联规则、时序模式、和偏差检测等模型,提取数据中蕴含的有价值的信息。下面就将对这部分知识做大致的介绍。1、分类与预测1.1 回归分析本小节只对二分类Logistic回归模型的相关原理进行介绍:(1)该模型的因变量只有0-1两个取值,...

随便推点

适合苹果13的运动耳机有哪些?性价比高的运动耳机推荐_jintan986的博客-程序员秘密

适合苹果13的运动耳机有哪些?性价比高的运动耳机推荐如今,无线耳机逐渐占据耳机主体市场,有线耳机的使用逐渐退出了历史的舞台,而且家中的有线耳机随处可见,但是平时用到的机会太少太少,相对于有线耳机,蓝牙耳机的优点有以下几点:①便捷;②音质逐渐提高;③减少耳机线对皮肤的摩擦。市场上也有许多无线耳机品牌,品质也是良莠不齐。所以接下来就让我来给大家推荐几款性价比高的蓝牙耳机吧~一、Nank南卡N2s真无线蓝牙耳机(399)推荐理由:超棒游戏体验感,性价比高由Nank南卡出品的每一个耳机都经历过各

iOS列表性能优化之异步绘制_普通网友的博客-程序员秘密

Python实战社群Java实战社群长按识别下方二维码,按需求添加扫码关注添加客服进Python社群▲扫码关注添加客服进Java社群▲作者 | Mkit来源 | 掘金https://j...

勒让德多项式学习笔记_tomeasure的博客-程序员秘密

数学物理方法(顾樵)》第14章学习笔记第一节 勒让德方程的引入将直角坐标的三维拉普拉斯方程 转换为极坐标形式,通过分离变量法、变量代换及设置特殊值的方法,得到勒让德方程:(1−x2)y′′−2xy′+l(l+1)y=0(1-x^2)y''-2xy'+l(l+1)y=0(1−x2)y′′−2xy′+l(l+1)y=0另一种形式:1sin⁡θddθ(sin⁡θdΘdθ)=−l(l+1)Θ\frac{1}{\sin \theta}\frac{d}{d\theta}(\sin\theta\frac{.

ListView控件数据操作——添加表头和数据_listview控件怎么添加数据_w_dexu的博客-程序员秘密

ListView控件数据操作一、添加表头和数据在窗口显示数据时,经常会用到ListView这个控件,虽然也可以使用ListBox,但其功能还是比较弱一些,ListView相对用起来更顺手一些。下面的两个函数是给控件添加表头和数据的函数,贴出来供大家参考。函数代码给ListView添加数据,数据可以为数组或单行数据(逗号分隔)Public Sub AddListViewData(ListViewName As Object, DateArr, Optional Header As Integer =

KEIL C51报错 UNCALLED SEGMENT_宋哥的博客-程序员秘密

<br />*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS<br />    SEGMENT: ?CO?CJM<br />该警告表示存在定义了未调用的函数,但是找了半天也未发现,虽然可以不管他,但总觉得有个问题没解决,后来仔细查找,才发现是我定义了代码段常量没有使用造成的。即下面的代码:<br />//定义液晶显示数字<br />code const unsigned char ShowTable[10]={0x88,0xbb,0

zookeeper启动失败的排错_Username_Password_R的博客-程序员秘密

1.执行zkServer.sh start 后显示:JMX enabled by defaultUsing config:/home/hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfgStarting zookeeper ... STARTED2.jps后发现没有QuorumPeerMain进程3.查看zookeeper-3