当前位置:
工控论坛
> >
产品
>
PLC
我要发帖
BCD码与十六进制的区别?
点击:
12444
| 回复:
12
雪世界
关注
私信
精华:9帖
求助:0帖
帖子:428帖 | 4411回
年度积分:0
历史总积分:20190
注册:2005年8月04日
发表于:2007-07-07 06:24:00
楼主
BCD码与十六进制的区别?
分享到:
收藏
邀请回答
回复楼主
举报
老工控
关注
私信
精华:1帖
求助:0帖
帖子:61帖 | 4475回
年度积分:0
历史总积分:22733
注册:2003年6月25日
发表于:2007-07-07 11:44:00
1楼
举个例子:比如对于一个数:0000 0010 0011 1111
其16进制就是:23F
如果转换为BCD码,因为BCD是没有A~F的,则每一位乘以其位权为:
1x 1(2的0次方)+
1x 2(2的1次方)+
1x 4(2的2次方)+
1x 8(2的3次方)+
1x16(2的4次方)+
1x32(2的5次方)+
0x64(2的6次方)+
0x128(2的7次方)+
0x256(2的8次方)+
1x512(2的9次方)+
0x1024(2的10次方)+
0x2048(2的11次方)+
0x4096(2的12次方)+
0x8192(2的13次方)+
0x16384(2的14次方)+
0x32768(2的15次方)=575
所以转换后的BCD码是0000 0101 0111 0101(0575)
OK?
回复
引用
举报
HRBJYH
关注
私信
精华:0帖
求助:0帖
帖子:21帖 | 884回
年度积分:0
历史总积分:1069
注册:2007年6月30日
发表于:2007-07-07 12:38:00
2楼
说的对
\
回复
引用
举报
三脚猫
关注
私信
精华:0帖
求助:0帖
帖子:180帖 | 1598回
年度积分:0
历史总积分:1097
注册:2004年7月08日
发表于:2007-07-07 13:00:00
3楼
#1A00 只能当16进,不能当BCD
#0100 表面上看即可当BCD数,也可当十六进数(或二进)
当BCB码时 为十进100
当16进码时 为十进256
回复
引用
举报
chengshien
关注
私信
精华:11帖
求助:0帖
帖子:54帖 | 155回
年度积分:0
历史总积分:307
注册:2005年3月31日
发表于:2007-07-07 13:06:00
4楼
对。其实都是表示数字,只是进制的不同。bcd是二进制,而我们平时用的是十进制。
回复
引用
举报
老工控
关注
私信
精华:1帖
求助:0帖
帖子:61帖 | 4475回
年度积分:0
历史总积分:22733
注册:2003年6月25日
发表于:2007-07-07 13:07:00
5楼
楼上正解
对于一个2进制数据,每4位做一个数来讲,
1、如果此数没超过9,既可以认为是BCD码,也可以是16进制数,要在程序中具体分析
2、如果此数超过9,只能是16进制数,当然你可以通过BCD指令转换为BCD码
回复
引用
举报
雪世界
关注
私信
精华:9帖
求助:0帖
帖子:428帖 | 4411回
年度积分:0
历史总积分:20190
注册:2005年8月04日
发表于:2007-07-07 20:57:00
6楼
我可以把BCD码理解十进制吗?
回复
引用
举报
雪世界
关注
私信
精华:9帖
求助:0帖
帖子:428帖 | 4411回
年度积分:0
历史总积分:20190
注册:2005年8月04日
发表于:2007-07-07 20:57:00
7楼
我可以把BCD码理解十进制吗?
回复
引用
举报
老工控
关注
私信
精华:1帖
求助:0帖
帖子:61帖 | 4475回
年度积分:0
历史总积分:22733
注册:2003年6月25日
发表于:2007-07-08 08:18:00
8楼
BCD码是2进制表示十进制的一种方法
即从低位起,每4位代表一个十进制的数(0~9)
即:每4位的位权是10,而不是16(16进制的位权是16、2进制的位权是2)
回复
引用
举报
老工控
关注
私信
精华:1帖
求助:0帖
帖子:61帖 | 4475回
年度积分:0
历史总积分:22733
注册:2003年6月25日
发表于:2007-07-08 08:21:00
9楼
BCD码
十进制数在键盘输入和打印、显示输出时往往是将各个数字以ASCII码来表示的。但是在计算机内运算时,是以二进制形式进行的。为了便于转换,设计了一些用二进制编码表示的十进制数,称为二—十进制码,即BCD码(Binary?coded?Decimal)。
BCD码是用四位二进制代码来表示一位十进制数。有多种BCD码:8421码、2421码、余3码、格雷码。
常用BCD码
十进制数字 8421码 2421码 余3码 格雷码
0 0000 0000 0011 0000
1 0001 0001 0100 0001
2 0010 0010 0101 0011
3 0011 0011 0110 0010
4 0100 0100 0110 0010
5 0101 0101 1000 1110
6 0110 0110 1001 1010
7 0111 0111 1010 1000
8 1000 1110 1011 1100
9 1001 1111 1100 0100
注意:BCD码表示的数形式上像二进制数,但不是真正的二进制数。
回复
引用
举报
老工控
关注
私信
精华:1帖
求助:0帖
帖子:61帖 | 4475回
年度积分:0
历史总积分:22733
注册:2003年6月25日
发表于:2007-07-08 08:24:00
10楼
关于“位权”请参考:
http://zhidao.baidu.com/question/23110468.html
回复
引用
举报
gongkongedit
关注
私信
精华:1099帖
求助:0帖
帖子:14392帖 | 54470回
年度积分:0
历史总积分:622
注册:2008年9月08日
发表于:2007-07-08 23:51:00
11楼
QQ群:42341674
交流平台,欢迎你的加入,参与知识互动.
回复
引用
举报
chp351577
关注
私信
精华:0帖
求助:0帖
帖子:0帖 | 156回
年度积分:0
历史总积分:441
注册:2003年10月11日
发表于:2007-07-09 05:57:00
12楼
这是两个概念,BCD是编码的方式,十六进制是一种数制,BCD是固定长度(一个字节或一个字)的十进制表示,你只要说明,也可用十六进制表示.
回复
引用
举报
热门招聘
相关主题
欧姆龙PLC编程软件更新步骤
[7185]
三菱plc 視頻教程
[7865]
求教:如下图形怎么编程序?
[9450]
s7-200中的(S)或(R)下面的数...
[14392]
FX3U-3A-ADP 的模拟量模块怎...
[8933]
信捷PLC如何脉搏冲PLSY及DPL...
[9192]
PLC的模拟量模块怎么接电阻远...
[8598]
菜鸟请问:艾默生是哪个国家的...
[15151]
请问在伺服运行电机时,速度老...
[8277]
VB接收到PLC的十六进制码如何...
[9239]
官方公众号
智造工程师
客服
小程序
公众号