BCD码是什么 - 知乎切换模式写文章登录/注册BCD码是什么且听风吟 今天给大家穿插讲一期常用的数字编码形式----BCD码。可能我们在学校经常使用二进制和十六进制的数字表达形式。然而大多数情况下我们都是需要和十进制数进行转化来进行数字的表达,因为我们社会普遍习惯使用十进制。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免去使计算机作浮点运算时所耗费的时间。 (一) 那么是什么BCD码呢?BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。(二)如何用bcd码表示十进制数?首先,如果我们想表达0~9这几个数字,那么我们只需要使用一个四位的BCD码就足够了。细心的朋友会发现当数字大于九时,一个四位的BCD码不能够表达十进制的两位数,因此当数字大于九时,我们需要用八位BCD码来表示。高位只需要逢九进一即可。(三)BCD码如果进行加法运算?当两个BCD码相加,如果和等于或小于 1001(即十进制数9),不需要修正;如果相加之和在 1010 到1111(即十六进制数 0AH~0FH)之间,则需加 6 进行修正。相加范围在九以内都不需要进行修正:如下图相加超过九时:发布于 2020-07-13 12:03BCD码赞同 417 条评论分享喜欢收藏申请
BCD码详解-CSDN博客
BCD码详解
959y
已于 2022-07-21 15:26:10 修改
阅读量5.2w
收藏
113
点赞数
22
分类专栏:
计算机组成
文章标签:
计算机组成
于 2020-07-31 19:30:51 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43141726/article/details/107720049
版权
计算机组成
专栏收录该内容
24 篇文章
9 订阅
订阅专栏
BCD码的种类
BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的;无权BCD码有余3码、格雷码等。
8421 BCD码 8421 BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。和四位自然二进制码不同的是,它只选用了四位二进制码中前10组代码,即用0000~1001分别代表它所对应的十进制数,余下的六组代码不用。 5421 BCD码和2421 BCD码 5421 BCD码和2421 BCD码为有权BCD码,它们从高位到低位的权值分别为5、4、2、1和2、4、2、1。这两种有权BCD码中,有的十进制数码存在两种加权方法,例如,5421 BCD码中的数码5,既可以用1000表示,也可以用0101表示;2421BCD码中的数码6,既可以用1100表示,也可以用0110表示。这说明5421BCD码和2421 BCD码的编码方案都不是惟一的,表1-2只列出了一种编码方案。
上表中2421 BCD码的10个数码中,0和9、1和8、2和7、3和6、4和5的代码对应位恰好一个是0时,另一个就是1。就称0和9、1和8互为反码。
余3 码 余3码是8421 BCD码的每个码组加3(0011)形成的。常用于BCD码的运算电路中。 Gray码(格雷码) Gray码也称循环码,其最基本的特性是任何相邻的两组代码中,仅有一位数码不同,因而又叫单位距离码。
Gray码的编码方案有多种,典型的Gray码如下表所示。从表中看出,这种代码除了具有单位距离码的特点外,还有一个特点就是具有反射特性,即按表中所示的对称轴为界,除最高位互补反射外,其余低位数沿对称轴镜像对称。利用这一反射特性可以方便地构成位数不同的Gray码。
BCD码的格式
计算机中的BCD码,经常使用的有两种格式,即分离BCD码,组合BCD码。
所谓分离BCD码,即用一个字节的低四位编码表示十进制数的一位,例如数82的存放格式为:
_ _ _1 0 0 0 _ _ _ _0 0 1 0 其中_表示无关值。
组合BCD码,是将两位十进制数,存放在一个字节中,例82的存放格式是10000010
BCD码的运算法则
由于编码是将每个十进制数用一组4位二进制数来表示,因此,若将这种BCD码直接交计算机去运算,由于计算机总是把数当作二进制数来运算,所以结果可能会出错。例:用3、BCD码求38+49。
解决的办法是对二进制加法运算的结果采用"加6修正,这种修正称为BCD调整。即将二进制加法运算的结果修正为BCD码加法运算的结果,两个两位BCD数相加时,对二进制加法运算结果采用修正规则进行修正。修正规则:
(1)如果任何两个对应位BCD数相加的结果向高一位无进位,若得到的结果小于或等于9,则该不需修正;若得到的结果大于9且小于16时,该位进行加6修正。
(2)如果任何两个对应位BCD数相加的结果向高一位有进位时(即结果大于或等于16),该位进行加6修正.
(3)低位修正结果使高位大于9时,高位进行加6修正
8421 BCD码举例说明
BCD码是一一对应的
如:十进制的123 用BCD表示为:0001 0010 0011
因为:十进制的 1 用二进制表示是 0001
十进制的 2 用二进制表示是 0010
十进制的 3 用二进制表示是 0011
BCD码和二进制的区别:123的二进制应该用短除法求得1111011由此可见,BCD码只是机械地用二进制表示十进制的每一位
压缩与非压缩
区别就是BCD码是8位的,浪费4位用0填充,压缩的BCD码是4位的,没有浪费
由于1字节有8bit(8个0或1)如果用一字节存储4位BCD码(其余补0)就是非压缩
如十进制的123:
非压缩码 00000001 00000010 00000011
压缩码 0001 0010 0011
C语言压缩bcd码
#include
#include
#include
/*
* 字符串转成bcd码,这个是正好偶数个数据的时候,如果是奇数个数据则分左靠还是右靠压缩BCD码
*/
intasc_to_bcd(char * dest,const char *src)
{
unsigned char temp;
while(*src !='\0')
{
temp = *src;
*dest |=((temp&0xf)<<4);
src++;
temp = *src;
*dest |= (temp&0xf);
src++;
dest++;
}
return 0;
}
intasc_to_bcd_right(char *dest,const char *src,int src_len)
{
unsigned char temp;
if((src_len %2) !=0)
{
*dest &= 0;
temp = *src;
*dest |= (temp&0xf);
src++;
dest++;
}
asc_to_bcd(dest,src);
return 0;
}
intasc_to_bcd_left(char *dest,const char *src,int src_len)
{
unsigned char temp;
if((src_len %2) !=0)
{
dest[src_len-1] &=0;
}
asc_to_bcd(dest,src);
return 0;
}
voidprint_hex(char * bcd,int len)
{
int i=0;
for(i=0;i { int n = 8; while(n--){ if((bcd[i] &(0x1< printf("0"); else printf("1"); } putchar('\n'); } } intbcd_to_asc(char *dest,const char *src,int src_len) { unsigned char temp; char *t = dest; while(src_len--) { *t |= ((*src&0xf0)>>4); *t++ |= 0x30; *t |= (*src&0xf); *t++ |= 0x30; src++; } return 0; } intleft_bcd_to_asc(char *dest,const char * src,int src_len) { bcd_to_asc(dest,src,src_len); dest[src_len*2 -1] = '\0'; return 0; } intright_bcd_to_asc(char *dest,const char * src,int src_len) { bcd_to_asc(dest,src,src_len); memmove(dest,dest+1,src_len*2-1); dest[src_len*2-1] = '\0'; return 0; } int main(void) { char str[100]; char *str1 = "1234567"; int str_len = strlen(str1); int bcd_len = (str_len+1)/2; char *bcd = (char *)malloc(bcd_len); printf("str_len = %d\n",str_len); printf("bcd_len = %d\n",bcd_len); memset(bcd,0,bcd_len); memset(str,0,100); #if 0 printf("右靠\n"); asc_to_bcd_right(bcd,str1,str_len); print_hex(bcd,bcd_len); right_bcd_to_asc(str,bcd,bcd_len); printf("str = %s\n",str); #endif #if 1 printf("左靠\n"); asc_to_bcd_left(bcd,str1,str_len); print_hex(bcd,bcd_len); //memset(str,0,100); left_bcd_to_asc(str,bcd,bcd_len); printf("str = %s\n",str); #endif return 0; } 关注博主即可阅读全文 优惠劵 959y 关注 关注 22 点赞 踩 113 收藏 觉得还不错? 一键收藏 知道了 0 评论 BCD码详解 BCD码的种类BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的;无权BCD码有余3码、格雷码等。8421 BCD码8421 BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。和四位自然二进制码不同的是,它只选用了四位二进制码中前10组代码,即用0000~1001分别代表它所对应的十进制数,余下的六组代码不用。5421 BCD码和2421 BCD码5421 BCD码和24 复制链接 扫一扫 专栏目录 BCD.rar_BCD码 转换 09-19 生成BCD码。 Name: BIN3toBCD4 Func:2字节二进制整数--->>BCD码四字节转换(Comped BCD) Input: 3进制数人低字节到高字节存放在内部RAM50H,51H,52h单元中 Output: BCD码人低位到高位分别存放在内部RAM53H,54H,55H,56H单元中 USE: R7-R0, 56H-50H 计算机组成原理之BCD码 02-06 计算机组成原理之BCD码 参与评论 您还未登录,请先 登录 后发表或查看评论 一文深入了解BCD码 weixin_40103877的博客 04-24 2741 什么是BCD码? BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。 BCD码也称二进码十进数,BCD码可分为有权码和无权码两类。其中,常见的有权BCD码有8421码、2421码、5421码,无权BCD码有余3码、余3循环码、格雷码,其中最常使用的为8421码,下面所述的都是基于8421码。 BCD码的优点 相对浮点数,采样BCD码可保持数据精度,又可以免去CPU计算浮点所消耗的时间。 相对浮 计算机组成原理-BCD码(余三码 2421码 8421码)和格雷码和余三循环码 最新发布 llovewuzhengzi的博客 01-07 567 5对应的2421码可以为0101或1011,所以为了避免这种情况,规定大于等于5第一位都为1。余三循环码就是余三码通过格雷码的异或运算,所得到的一系列变权码。四个二进制为可以表示一个十进制位,还有几个冗余的情况。9+9等于18,二进制数也不在范围内,也需加6。相加的结果如果落到1010~10010都需加6。即四个二进制位对应的值必须为0~9。每个数码位上的值乘以权值。 BCD编码及转码 老张的便利贴 10-17 5330 简单介绍 摘取一段百度百科介绍: BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。 常见的BCD码又分8421码、5421码、2421码、余3码、余3循环码。 个人理解BCD码:将十进制数压缩存储。 拿8421(四位,每位为1代表十进制数。1110等于8+4+2+0 = 14)BC... 二进制转BCD码原理及verilog实现 小菜鸡 01-18 3万+ 一、BCD码概念 BCD码(Binary-Coded Decimal),利用四个2进制位储存一个10进制的数,如下表所示。本文所讨论的问题均以8421BCD码为例,十进制的0~9分别用0000~1001来表示。 十进制数23,可表示为0010_0011,十进制数129,可表示为0001_0010_1001。 即分别对个位、十位、百位求对应的BCD码。 二、二进制数到BCD码的转换 先根据输入不同位数的二进制数,求对应的BCD码 假设输入1位二进制数1,则对应的BCD码为0001,对应 fds.rar_bcd 码_fds 09-21 浮点数保存代码,能区别代码类别,代码为压缩BCD码 BCD码以及各进制之间的相互转换 Samuel_a的博客 09-08 5万+ BCD码的学习以及进制之间的换算 【科普】BCD码 qq_40130613的博客 11-30 5291 BCD码就是用4个二进制位表示一个十进制数 什么是BCD码,BCD码的表示 weixin_45317857的博客 06-20 3052 BCD码种类和原理 什么是BCD码?BCD码编码规则 热门推荐 xkdlzy的专栏 10-24 7万+ BCD码 BCD码 基础知识 04-18 介绍BCD码的基础知识,比较全面的介绍了BCD码的原理和在程序中的应用等。。 yangli.rar_BCD码 09-24 超全的汇编配套程序样例:1-流水灯14-倒计时演示16-BCD码演示7-按键9-继电器等等 BCD码转ASCII码的汇编程序 11-21 通过子程序段间调用实现BCD码转ASCII码,经典汇编实例 bcd.zip_单片机 BCD码 09-19 星研版 单片机实验 BCD码双字节乘法 小键盘输入 数据寻址方式(10种) 959 06-14 1万+ 1.隐含寻址 在指令中隐含着操作数的地址。 如单地址的指令格式,就不是明显地在地址字段中指出第二操作数的地址,而是规定累加器ACC作为第二操作数,指令格式明显指出的仅是第一操作数的地址。因此,累加器ACC对单地址指令格式来说是隐含地址。 隐含寻址的优点是有利于缩短指令字长;缺点是需增加硬件。 2.立即(数)寻址 这种类型的指针的地址字段指出的不是操作数的地址么事操作数本身,又称为立即数。数据是用补码形式存放的。 OP #(立即寻址特征) A操作数本身 立即寻址的优点是指令在执行阶段不访问主存, 计算机组成原理常见英文缩写 959 05-10 9402 ALU:Arithmetic Logic Unit算术逻辑单元 CU:Control Unit控制单元 CPU:Central Processing Unit中央处理器 I/O:Input/Output Equipment输入/输出设备 ACC:Accumulator累加器 PC:Programmer Counter程序计数器 PSW:Programmer Status Word程序状态字 MQ:Multipiler-Quotient register乘商寄存器 14个指令的缩写 CPU、PC、IR、CU 什么是8421bcd 码 07-17 8421BCD码是一种二进制编码方式,全称"8-4-2-1二进制编码"(Binary-Coded Decimal)。它是一种将十进制数转换成二进制形式的编码方式。 在8421BCD码中,每一位二进制数都表示一个十进制数的一个位数。其中,最高位为8,次高位为4,次低位为2,最低位为1。通过将十进制数的每一位都转换成对应的4位二进制码,可以将整个十进制数转换为8421BCD码。 例如,十进制数12的8421BCD码为0001 0010,其中"0001"表示十位上的数字1,"0010"表示个位上的数字2。 8421BCD码常用于数字显示、计算机输入输出、芯片设计等领域,它可以直观地表示十进制数,并且方便进行数字的计算和处理。 “相关推荐”对你有帮助么? 非常没帮助 没帮助 一般 有帮助 非常有帮助 提交 959y CSDN认证博客专家 CSDN认证企业博客 码龄6年 暂无认证 1166 原创 2616 周排名 1184 总排名 168万+ 访问 等级 1万+ 积分 3万+ 粉丝 1053 获赞 196 评论 4425 收藏 私信 关注 热门文章 伽马函数 297875 springcloud阿里巴巴五大组件 58261 BCD码详解 52112 二次型化为标准型 44347 判断极值_拐点的三个充要条件以及一个必要 39361 分类专栏 SpringBoot 源码分析 9篇 SpringCloud 源码分析 25篇 SpringBoot 高级 28篇 OLAP 9篇 hadoop大数据 99篇 Doris 2篇 react 14篇 Spring 源码分析 37篇 架构设计 39篇 网络 33篇 Spring Aop 10篇 Spring 48篇 kafka 17篇 中间件 33篇 RocketMq 源码分析 15篇 RocketMq 基础 24篇 K8S 14篇 flink 调优 3篇 电商实时数仓 3篇 hbase 4篇 flink java 24篇 vue 12篇 hive 6篇 javascript 12篇 计算机组成 24篇 系统设计原则 22篇 并发编程 Juc 和优化 33篇 interview 114篇 微服务 28篇 webpack 2篇 RabbitMq基于SpringBoot 4篇 数据仓库 14篇 hudi 4篇 Nacos 源码解析 12篇 netty 23篇 netty 源码解析 18篇 Eureka 源码解析 8篇 dubbo 源码分析 3篇 IO 24篇 业务逻辑 14篇 mybats 源码分析 15篇 mybatis 20篇 AQS 12篇 数据治理 1篇 SpringMvc 源码分析 15篇 flink scala 7篇 ClickHouse 3篇 CDC 2篇 Spring Tx 9篇 jvm 33篇 Sql优化 14篇 rabbitmq 2篇 Pulsar 4篇 Tomcat 源码分析 15篇 软件工程 5篇 操作系统os 22篇 cv 6篇 SpringBoot 基础 21篇 Shiro 安全框架 2篇 Spark 17篇 Sharding Sphere 2篇 Spark 源码 2篇 Sentinel 分析 1篇 Zookeeper 分析 2篇 DDD 2篇 SpringMvc 10篇 Spring 源码分析之工具类 8篇 Collection和Map的解析 9篇 Spring Secuity 6篇 Spring Data Jpa 3篇 云原生 6篇 Leecode 3篇 javaweb 8篇 机器学习 10篇 网络软考 11篇 考研 36篇 设计模式 26篇 数据结构/算法 20篇 推荐系统 6篇 linux 30篇 java 97篇 MongoDB 11篇 web渗透 7篇 redis 26篇 mysql 34篇 kotlin 15篇 python 12篇 golang 17篇 shell脚本 8篇 docker 12篇 Ansible自动化运维 4篇 Scala 12篇 华为FusionStorage存储 11篇 云计算 16篇 openstack 11篇 saltstack自动化运维 10篇 zabbix 4篇 nginx 10篇 最新评论 Spring的BeanFactoryPostProcessor和BeanPostProcessor May_HanJing: BeanFactoryPostProcessor、InstantiationAwareBeanPostProcessor、BeanPostProcessor 按照这个这个顺序加载 1.BeanFactoryPostProcessor的执行时机是Bean的实例化过程之前,它本质上管理的BeanFactory(大部分情况下是ConfigurableListableBeanFactory容器),此时该容器存放的还是未实例化的Bean对象,也就是BeanDefinition对象,通过获取对应的BeanDefinition的进行属性修改。它允许修改容器中的 Bean 定义,可以添加、修改或删除 Bean 的属性值,甚至可以完全替换 Bean 的定义。通过实现这个接口,可以影响所有 Bean 的创建过程。 2.InstantiationAwareBeanPostProcessor作用于Bean的实例化前后(before早前,after在后),这个时机已经在内存中开辟了对应的内存地址,但是还没有进行属性的赋值,也就是在populaBean方法之前执行。它允许在 Bean 实例化过程中对 Bean 进行自定义处理,例如处理 Bean 的依赖关系、注入特定的属性或者在 Bean 初始化之前做一些额外的操作。通常用于对 Bean 实例化过程进行增强或定制。 3.BeanPostProcessor 作用于Bean的初始化前后(before和after两个方法或者说是阶段),对Bean做最后的增强处理,AOP就发生这个阶段,因为这个阶段会创建对应的代理对象。 [Doris] Doris架构原理 (一) CSDN-Ada助手: 什么是分布式架构? [Doris] Doris架构原理 (一) CSDN-Ada助手: 哇, 你的文章质量真不错,值得学习!不过这么高质量的文章, 还值得进一步提升, 以下的改进点你可以参考下: (1)提升标题与正文的相关性;(2)使用更多的站内链接。 CMS 和G1 的区别 [24] 皎月摘星: 矛盾,标记清理的标记阶段只是和标记清除一样,不代表是一个意思,这个是两个算不同的算法 移位运算 m0_74874986: 这里右移丢1,都从-26变成-13了为什么叫影响精度,不叫结果出错 您愿意向朋友推荐“博客详情页”吗? 强烈不推荐 不推荐 一般般 推荐 强烈推荐 提交 最新文章 [SpringCloud] OpenFeign核心架构原理 (三) [SpringCloud] OpenFeign核心架构原理 (二) [SpringCloud] OpenFeign核心架构原理 (一) 2024年7篇 2023年97篇 2022年300篇 2021年328篇 2020年408篇 2019年35篇 目录 目录 分类专栏 SpringBoot 源码分析 9篇 SpringCloud 源码分析 25篇 SpringBoot 高级 28篇 OLAP 9篇 hadoop大数据 99篇 Doris 2篇 react 14篇 Spring 源码分析 37篇 架构设计 39篇 网络 33篇 Spring Aop 10篇 Spring 48篇 kafka 17篇 中间件 33篇 RocketMq 源码分析 15篇 RocketMq 基础 24篇 K8S 14篇 flink 调优 3篇 电商实时数仓 3篇 hbase 4篇 flink java 24篇 vue 12篇 hive 6篇 javascript 12篇 计算机组成 24篇 系统设计原则 22篇 并发编程 Juc 和优化 33篇 interview 114篇 微服务 28篇 webpack 2篇 RabbitMq基于SpringBoot 4篇 数据仓库 14篇 hudi 4篇 Nacos 源码解析 12篇 netty 23篇 netty 源码解析 18篇 Eureka 源码解析 8篇 dubbo 源码分析 3篇 IO 24篇 业务逻辑 14篇 mybats 源码分析 15篇 mybatis 20篇 AQS 12篇 数据治理 1篇 SpringMvc 源码分析 15篇 flink scala 7篇 ClickHouse 3篇 CDC 2篇 Spring Tx 9篇 jvm 33篇 Sql优化 14篇 rabbitmq 2篇 Pulsar 4篇 Tomcat 源码分析 15篇 软件工程 5篇 操作系统os 22篇 cv 6篇 SpringBoot 基础 21篇 Shiro 安全框架 2篇 Spark 17篇 Sharding Sphere 2篇 Spark 源码 2篇 Sentinel 分析 1篇 Zookeeper 分析 2篇 DDD 2篇 SpringMvc 10篇 Spring 源码分析之工具类 8篇 Collection和Map的解析 9篇 Spring Secuity 6篇 Spring Data Jpa 3篇 云原生 6篇 Leecode 3篇 javaweb 8篇 机器学习 10篇 网络软考 11篇 考研 36篇 设计模式 26篇 数据结构/算法 20篇 推荐系统 6篇 linux 30篇 java 97篇 MongoDB 11篇 web渗透 7篇 redis 26篇 mysql 34篇 kotlin 15篇 python 12篇 golang 17篇 shell脚本 8篇 docker 12篇 Ansible自动化运维 4篇 Scala 12篇 华为FusionStorage存储 11篇 云计算 16篇 openstack 11篇 saltstack自动化运维 10篇 zabbix 4篇 nginx 10篇 目录 评论 被折叠的 条评论 为什么被折叠? 到【灌水乐园】发言 查看更多评论 添加红包 祝福语 请填写红包祝福语或标题 红包数量 个 红包个数最小为10个 红包总金额 元 红包金额最低5元 余额支付 当前余额3.43元 前往充值 > 需支付:10.00元 取消 确定 下一步 知道了 成就一亿技术人! 领取后你会自动成为博主和红包主的粉丝 规则 hope_wisdom 发出的红包 实付元 使用余额支付 点击重新获取 扫码支付 钱包余额 0 抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 余额充值 BCD编码理解 - 知乎切换模式写文章登录/注册BCD编码理解ReggieDing系统架构师BCD编码概念Binary-Coded-Decimal,即二进制编码表示的十进制数字。从二进制编码和十进制数字两个概念入手说明。1)二进制编码比如:10001,这一串就是二进制的编码,不是0就是1。那么它表示数字0~9,就是0000~10001。2)十进制数字很简单0~9就是10进制的所有数字。那么BCD编码就可以理解为用了二进制编码后表示的十进制数字。比如:比如十进制的数字:123。BCD的表示形式:0001 0010 0011。总共12bit = 1.5个字节。如果采用其他的表示方式,整形数字:int i = 123,那么int是4个字节数字,在内存表示形式:0x0000007b = 1011 0111 0000 0000 0000 0000 0000 0000。字符形式表示:char s[] = "123";即s[0] = '1',s[1] = '2' ,s[2] = '3'。那么在内存中表示形式:字符1就是49。在内存中一个字节表示:49 :0001 0011 50 :0010 0011 51:0011 0011 组合字符形式“123”,就是0001 0011 0010 0011 0011 0011 。共3个字节。可以看出来BCD 编码其实就是一种压缩算法。减少了数字在内存中的占有量。发布于 2017-08-10 09:54压缩算法赞同 143 条评论分享喜欢收藏申请 什么是BCD码?BCD码编码规则-CSDN博客 什么是BCD码?BCD码编码规则 最新推荐文章于 2023-06-20 15:26:31 发布 xkdlzy 最新推荐文章于 2023-06-20 15:26:31 发布 阅读量7.6w 收藏 127 点赞数 48 文章标签: 1024程序员节 本文内容来自网络,仅供自己学习与参考,方便以后查看。 本文链接:https://blog.csdn.net/xkdlzy/article/details/109012501 版权 BCD码的英文全称是Binary-Coded Decimal,简称BCD,按字面解释是二进制十进制代码,是一种二进制的数字编码形式。我们平常用的十进制,每一位分别用二进制来保存,这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。 由于十进制数共有0、1、2、……、9十个数码,因此至少需要4位二进制码来表示1位十进制数。4位二进制码共有2^4=16种码组,在这16种代码中,可以任选10种来表示10个十进制数码,共有N=16!/(16-10)!约等于2.9乘以10的10次方种方案。 常用BCD编码方式 最常用的BCD编码,就是使用"0"至"9"这十个数值的二进码来表示。这种编码方式,在中国大陆称之为“8421码”。除此以外,对应不同需求,各人亦开发了不同的编码方法,以适应不同的需求。这些编码,大致可以分成有权码和无权码两种: 有权BCD码,如:8421(最常用)、2421、5421… 无权BCD码,如:余3码、格雷码… 以下为三种常见的BCD编码的比较。 十进数 8421-BCD码 余3-BCD码 2421-A码 (M10) D C B A C3 C2 C1 C0 a3 a2 a1 a0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 2 0 0 1 0 0 1 0 1 0 0 1 0 3 0 0 1 1 0 1 1 0 0 0 1 1 4 0 1 0 0 0 1 1 1 0 1 0 0 5 0 1 0 1 1 0 0 0 0 1 0 1 6 0 1 1 0 1 0 0 1 0 1 1 0 7 0 1 1 1 1 0 1 0 0 1 1 1 8 1 0 0 0 1 0 1 1 1 1 1 0 9 1 0 0 1 1 1 0 0 1 1 1 1 常用BCD码 十进制数 8421码 5421码 2421码 余3码 余3循环码 0 0000 0000 0000 0011 0010 1 0001 0001 0001 0100 0110 2 0010 0010 0010 0101 0111 3 0011 0011 0011 0110 0101 4 0100 0100 0100 0111 0100 5 0101 1000 1011 1000 1100 6 0110 1001 1100 1001 1101 7 0111 1010 1101 1010 1111 8 1000 1011 1110 1011 1110 9 1001 1100 1111 1100 1010 ----------------------- 特点: 8421编码直观,好理解。 5421码和2421码中大于5的数字都是高位为1,5以下的高位为0。 余3码是8421码加上3,有上溢出和下溢出的空间。 格雷码相邻2个数有三位相同,只有一位不同。 举个例子: 321的8421码就是 3 2 1 0011 0010 0001 原因:0011=8x0+4x0+1x2+1x1=3 0010=8x0+4x0+2x1+1x0=2. 0001=8x0+4x0+2x0+1x1=1 具体: bcd码是十位二进制码, 也就是将十进制的数字转化为二进制, 但是和普通的转化有一点不同, 每一个十进制的数字0-9都对应着一个四位的二进制码,对应关系如下: 十进制0 对应 二进制0000 ;十进制1 对应二进制0001 ....... 9 1001 接下来的10就有两个上述的码来表示 10 表示为00010000 也就是BCD码是遇见1001就产生进位,不象普通的二进制码,到1111才产生进位10000 举例: 某二进制无符号数11101010,转换为三位非压缩BCD数,按百位、十位和个位的顺序表示,应为 A.00000001 00000011 00000111 B. 00000011 00000001 00000111 C.00000010 00000011 00000100 D. 00000011 00000001 00001001 解:(1)11101010转换为十进制:234 (2)按百位、十位和个位的顺序表示,应为 附注:压缩BCD码与非压缩BCD码的区别—— 压缩BCD码的每一位用4位二进制表示,一个字节表示两位十进制数。例如10010110B表示十进制数96D;非压缩BCD码用1个字节表示一位十进制数,高四位总是0000,低4位的0000~1001表示0~9.例如00001000B表示十进制数8. 优惠劵 xkdlzy 关注 关注 48 点赞 踩 127 收藏 觉得还不错? 一键收藏 知道了 2 评论 什么是BCD码?BCD码编码规则 BCD码 复制链接 扫一扫 BCD码 基础知识 04-18 介绍BCD码的基础知识,比较全面的介绍了BCD码的原理和在程序中的应用等。。 阿里巴巴编码规范 基础技能认证 考题分析(考题+答案).docx 01-09 关于maven依赖、仲裁、规则,下列哪些说法是正确的:ACD A .的依赖会默认传递给子项目。 B .的依赖绝对不会传递给子项目。 C .在中指定版本号。 D .避免在不同的子项目,声明同一个二方库的不同版本号。 ... 2 条评论 您还未登录,请先 登录 后发表或查看评论 什么是BCD码、8421码、余三码、格雷码 08-19 文章简单介绍了BCD码、8421码、余三码、格雷码的基础知识及区别 BCD码 (二进码十进数) 阿哥的专栏 11-07 3948 二进码十进数(英语:Binary-Coded Decimal,简称BCD,中国大陆称BCD码或二-十进制编码)是一种十进制数字编码的形式。在这种编码下,每个十进制数字用一串单独的二进制比特来存储与表示。常见的有以4位表示1个十进制数字,称为压缩的BCD码(compressed or packed);或者以8位表示1个十进制数字,称为未压缩的BCD码(uncompressed or zoned)。这种编码技术,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字做准确的计算。相对于一般的浮点式记数法,采 BCD码详解 人生一路,点滴记录 07-15 2万+ 1、BCD码的种类 BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的;无权BCD码有余3码、格雷码等。 1. 8421 BCD码 8421 BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。和四位自然二进制码不同的是,它只选用了四位二进制码中前10组代码,即用00 十六进制和BCD码的那些事(终结篇) 03-15 2万+ 十六进制转为BCD码好理解,有问题的是BCD码转为十六进制数;
Hex2Bcd:
0x3F的BCD码是多少?正确答案:99,或者0x63
0x3F=63,再加0x,->0x63, 再把0x63转为99(0x63=99)
1、如果要表示为十六进制,则转换为10进制数,前面加0x符号;(十六进制表示)
2、如果要表示为十进制,则先转换为10进制数,前面加0x符号,再把加上符号的
十 BCD码以及各进制之间的相互转换 热门推荐 Samuel_a的博客 09-08 5万+ BCD码的学习以及进制之间的换算 【科普】BCD码 qq_40130613的博客 11-30 5291 BCD码就是用4个二进制位表示一个十进制数 什么是BCD码,BCD码的表示 weixin_45317857的博客 06-20 3052 BCD码种类和原理 BCD码与十进制数间转换 故事就酒的博客 05-26 3万+ 1.BCD码 BCD码(Binary-Coded Decimal)称为二进码十进数或二——十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的BCD码。无权BCD码有余3码,余3循环码等。 1.1 8421码 8421 BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。和四位自然二进制码不同的是,它只选用了四位二进制 bcd码是什么意思_BCD码是什么 weixin_35397235的博客 01-15 1万+ 今天给大家穿插讲一期常用的数字编码形式----BCD码。可能我们在学校经常使用二进制和十六进制的数字表达形式。然而大多数情况下我们都是需要和十进制数进行转化来进行数字的表达,因为我们社会普遍习惯使用十进制。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免去使计算机作浮点运算时所耗费的时间。 (一) 那么是什么BCD码呢?BCD码(Binary-Coded De... 数字电路讲义-第一章.pps 07-14 2)大头是数制和编码,二进制,十进制,八进制,十六进制,等等等等,原码,反码,补码,校验码,各种不同的BCD码,等等,以及各种具有实际应用的码制的编码规则和重要应用,希望对你我都有所帮助 [详细完整版]计算机基础.pdf 07-03 第一章:计算机基础 1 本章内容提要 2 1 微机的发展历史,微机系统组成,三总线概念 2 微处理器构造及其指令执行过程 3 进位计数值(2、8、10、16进制)及其相互转 换,二进制数的运算规则 4 编码(BCD码,ASCII码,... 基于51单片机交通信号灯课程设计.docx 02-27 数码管电路 数显电路采用由单片机P0.7~P0.4输出BCD码高位,P0.3~P0.0输出BCD码低位,再通过两个74LS47译码显示至共阳极的数码管上,电路原理图如下: 基于51单片机交通信号灯课程设计全文共13页,当前为第7页。... 南开大学《大学计算机基础》在线作业04.docx 05-24 A:EBCDIC码 B:ASCII码 C:原码 D:BCD码 参考选项:B 二进制数1010011.110转换为十六进制数为( )。 A:53.6 B:53.C C:123.6 D:A3.C 南开大学《大学计算机基础》在线作业04全文共8页,当前为第3页。参考选项:B 南开... MySQL单表查询(图书管理系统实践题) 03-06 MySQL单表查询(图书管理系统实践题) 如何从0到1构建用户画像系统s240306.pptx 03-06 如何从0到1构建用户画像系统s240306.pptx Java毕设-基于SpringBoot+Vue的社团管理系统的设计与实现(附源码,数据库,教程).zip 03-06 Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:html、javascript、Vue 后台框架:SpringBoot 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 后台路径地址:localhost:8080/项目名称/admin/dist/index.html 前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入) iOS开发工具小集合,不定期更新.zip 最新发布 03-06 iOS开发工具小集合,不定期更新.zip 8421bcd码和格雷码的差别 09-04 8421BCD码和格雷码是两种常用的数字编码系统。 首先,8421BCD码是一种二进制编码系统,用4位二进制数来表示一个十进制数的每个十进制位。每个十进制位用数字0到9的8421码来表示,即0000到1001。8421BCD码可以直接由十进制数转换得到,也可以由二进制数转换得到。 而格雷码则是一种循环码,相邻两个码之间只有一位状态改变。格雷码的转换规则是将二进制码的最高位保持不变,然后每个后续位与其前一位进行异或运算,得到相应的格雷码。格雷码的一个重要应用是在旋转编码器中,可以通过检测码的变化来判断旋转方向和步长。 由于8421BCD码和格雷码的编码规则不同,它们的差别主要体现在以下几个方面: 1. 表示范围:8421BCD码可以表示0到9的十进制数,而格雷码可以表示0到2^n-1的二进制数,其中n表示码位数。格雷码可以表示的数字范围更广。 2. 编码方式:8421BCD码直接用十进制数的码来表示,而格雷码则通过异或运算得到。格雷码的编码方式比较复杂,需要进行运算。 3. 码值变化:8421BCD码的相邻码之间可能有多位进行了改变,而格雷码只有一位状态改变。格雷码的变化更加有规律,更适合用于设计数字电路。 总的来说,8421BCD码主要用于表示十进制数,适合于人类的理解和操作;而格雷码则主要用于数字电路和数据传输中,适合于机器的处理和判断。 “相关推荐”对你有帮助么? 非常没帮助 没帮助 一般 有帮助 非常有帮助 提交 xkdlzy CSDN认证博客专家 CSDN认证企业博客 码龄17年 暂无认证 131 原创 5万+ 周排名 2万+ 总排名 55万+ 访问 等级 1709 积分 34 粉丝 130 获赞 43 评论 399 收藏 私信 关注 热门文章 什么是BCD码?BCD码编码规则 76703 php 引用& 变量引用、函数引用、对象引用 47039 C++11中静态局部变量初始化的线程安全性 31547 windows 10 中软件的缩放如何单独设置 30413 MySQL中delimiter的作用 30027 最新评论 解决MySQL字段名与关键字冲突 weixin_44392064: 为字段起别名似乎无法解决字段名和关键字的冲突。我刚尝试了一下,别名应该是用来解决连接查询中不同表中相同字段名的冲突的。 Visual Studio 设置代码的左大括号 不换行 xkdlzy: 你想大括号不换行,就选那个"保持在同一行,...."的选项啊 Visual Studio 设置代码的左大括号 不换行 艾克丶艾达: 没用,我把所有的“XXX左大括号置于新行”关了,但是VS自动格式化后依旧把我所有放在函数后的左大括号全给换了新行,巨难受 windows 10 中软件的缩放如何单独设置 卡布奇诺丶浓郁ぃ: 对pycharm为啥没用呢 VS2022(Visual Studio 2022)更改文件默认编码 last_fxlt: 同哭一会 您愿意向朋友推荐“博客详情页”吗? 强烈不推荐 不推荐 一般般 推荐 强烈推荐 提交 最新文章 vue3:ref,reactive,toRef,toRefs,computed 解决MySQL字段名与关键字冲突 JavaScript Promise 2024年1篇 2023年14篇 2022年25篇 2021年53篇 2020年37篇 2017年1篇 2012年2篇 2011年1篇 目录 目录 最新文章 vue3:ref,reactive,toRef,toRefs,computed 解决MySQL字段名与关键字冲突 JavaScript Promise 2024年1篇 2023年14篇 2022年25篇 2021年53篇 2020年37篇 2017年1篇 2012年2篇 2011年1篇 目录 评论 2 被折叠的 条评论 为什么被折叠? 到【灌水乐园】发言 查看更多评论 添加红包 祝福语 请填写红包祝福语或标题 红包数量 个 红包个数最小为10个 红包总金额 元 红包金额最低5元 余额支付 当前余额3.43元 前往充值 > 需支付:10.00元 取消 确定 下一步 知道了 成就一亿技术人! 领取后你会自动成为博主和红包主的粉丝 规则 hope_wisdom 发出的红包 实付元 使用余额支付 点击重新获取 扫码支付 钱包余额 0 抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 余额充值 什么是 BCD(二进制编码的十进制)-CSDN博客 什么是 BCD(二进制编码的十进制) 最新推荐文章于 2023-12-28 11:27:28 发布 ソフト開発王さん 最新推荐文章于 2023-12-28 11:27:28 发布 阅读量2w 收藏 79 点赞数 16 分类专栏: 车载 嵌入式 文章标签: c语言 开发语言 后端 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_18191333/article/details/122266207 版权 嵌入式 同时被 2 个专栏收录 82 篇文章 13 订阅 订阅专栏 车载 48 篇文章 18 订阅 订阅专栏 BCD 是一位十进制数,由代表 0 到 9 的四位二进制数字表示。 当寄存器值以十六进制表示时,可以原样读取为十进制数,这对于处理十进制数的函数来说非常方便。 二进制数的 4 位可以表示为 0 到 15,但只有低 10 位被视为有效数字。 例如,假设运算的结果是十进制数“37”。 由于它是作为二进制数存储在实际寄存器中的,“0010 0101”就是寄存器值。 另一方面,在使用集成开发工具或液晶显示器显示人类可以确认的数字时,十六进制数比二进制数更容易看清,因此以十六进制“25”显示。 但是,这样做很不方便,因为十六进制数“25”很难理解为十进制数“37”。 因此,微机的内部电路将十六进制数“25”转换为“37”。 该寄存器存储的是十六进制数“37”,即二进制数“0011 0111”。 对外显示“0011 0111”时,原样显示为“37”,所以一看就知道运算结果是十进制数“37”。 BCD用于时钟和日历功能。 日期和时间的运算本身是以二进制数进行的,但是将运算结果用BCD保存在寄存器中,将其作为时间和日期显示在外部时,具有可以直接利用寄存器内容的优点。 BCD是什么 BCD是一个十进制数的数字,表示从0到9的二进制四位数。下表显示了从0到15的十进制和相应的二进制、十六进制和BCD。 十进制数从0到9,与十六进制数字相同,因此不需要转换为BCD。但是,十进制数的10到15,在十六进制数中会变成英文字,所以必须转换。例如,十进制数字的“10”在十六进制数字中是“A”。 如果你把它转换成BCD,它会变成10,上升一个数量级。由于二进制数的四位数只能表示为9,所以我们将进一步添加二进制数的四位数,并用八位数表示。 上表中只显示了十进制的15个数字,但是比这个更大的数字也被转换成同样的方式。例如,十进制的20是十六进制的14,但在BCD中转换为20。另外,十进制数的30是十六进制的1E,但在BCD中转换为30。 如何转换为BCD 如何转换为BCD,相对简单。只要根据数值的大小加上6的倍数就可以了。检查运算结果,如果数量大于9,则加6。如果不到9,我什么都不会做。 要在BCD中表示大于9的数字,需要二进制数的八位数,因此前四位数字将被添加。在大于9的数字上加上6,必定会在第四位数发生进位。这个进位叫半进位。在微型计算机内部执行BCD转换操作时,通过检查半进位来确定大于9的数。 半进位是CCR(Condition Code Register:条件码寄存器)的H(半进位)。 您可以通过将6添加到十进制的9到15,即十六进制的A到F,将其转换为BCD。此外,更大的数字转换方法如下表所示。这里显示的是十进制数的10到39(十六进制的A到27)。十进制数的10到19的情况下加6,20到29的情况下加12,30到39的情况下加18。这样,通过根据数量的大小加上6的倍数,就可以很容易地转换成BCD。 例如,考虑一下微型计算机中内置的实时时钟(以下简称RTC:Real Time Clock)处理的数字。 RTC是一种时间时钟定时器,可实现时钟和日历功能。计算分钟和秒的最大值为59。时间最大值为12或24。因此,您可以将转换为BCD的最大值限制为59或24。也就是说,即使用普通BCD表示2位数,也可以用6位或7位来表示,而不需要仅限于RTC的所有8位。此外,您还可以在1位和10位之间进行转换,从而优化硬件逻辑规模。 优惠劵 ソフト開発王さん 关注 关注 16 点赞 踩 79 收藏 觉得还不错? 一键收藏 知道了 0 评论 什么是 BCD(二进制编码的十进制) BCD 是一位十进制数,由代表 0 到 9 的四位二进制数字表示。 当寄存器值以十六进制表示时,可以原样读取为十进制数,这对于处理十进制数的函数来说非常方便。二进制数的 4 位可以表示为 0 到 15,但只有低 10 位被视为有效数字。例如,假设运算的结果是十进制数“37”。 由于它是作为二进制数存储在实际寄存器中的,“0010 0101”就是寄存器值。 另一方面,在使用集成开发工具或液晶显示器显示人类可以确认的数字时,十六进制数比二进制数更容易看清,因此以十六进制“25”显示。 但是,这样做很 复制链接 扫一扫 专栏目录 常用编码类型之BCD编码 Solstice_的博客 11-22 4655 BCD:binary-coded decimal(BCD码也称二进码十进数)。即bcd代码,用4位来表示1位中的0~9这10个数码,是一种二进制的数字编码形式,用代码。说明:BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使和之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的式,采用BCD码,既可保存数值的精确度,又可免去使计算机作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。 基于Multisim的10位二进制转BCD码仿真 04-23 74185是用途很广的芯片,它可以将二进制数转换成十进制BCD码。 但是,无论Multism还是Proteus,均没有74185的仿真模型。作者参考74185的Datasheet,利用分立元件制作了74185仿真电路,可将10位二进制数转换十进制BCD码(范围0~1023)。 参与评论 您还未登录,请先 登录 后发表或查看评论 BCD格式及与十进制/十六进制的转换 initiallizer的博客 06-03 2093 BCD码是什么?十进制与BCD码如何互换?十六进制与BCD码如何互换? BCD数(非原创,摘抄而来) 最新发布 xipan_的博客 12-28 347 那么,这里就存在一个问题,我们使用计算器,是输入的为十进制数 25,但是计算机使用二进制数来处理信息,那么就得将 25 (D)转化成 0001 1001 (B),同样计算 25 + 25时,计算机也是处理二进制的25相加,而运算结果 0011 0010(B)还是的需要转化为 十进制 50,展示给人看。前人想出了,一种比较适合十进制系统的二进制编码的特殊形式,即将1位十进制的0~9这十个数字分别用4位二进制的组合来表示,在此基础上可按位对任意十进制数进行编码。那么,计算次数越多,这损失的效率越大。 一次说清楚BCD编码 wangerrong的专栏 09-07 461 第一次接触的时候,真心很懵,但当我看到只有10个码的时候,觉得不过如此。。。人啊,就是这样,对新东西畏惧,对熟悉的东西缺失尊重! 74LS90实现8421BCD码以及5421BCD码 01-14 基于Multisim14绘制的74LS90实现8421以及5421BCD码的仿真 BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了 lhvgod的博客 05-12 4769 BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了! 现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。 实际上题目就是让你把这个数转化为16进制的数。但是一定不能把,num1*10+num2拿出来,否则就会部分任务点错误。原因我也不知道,知道的大佬 BCD解密 majiamin123的博客 04-01 1196 BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了! 现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。 输入格式: 输入在一行中给出一个... 使用引导扇区维护工具BOOTICE编辑系统启动列表BCD文件 weixin_33770878的博客 08-23 790 使用引导扇区维护工具BOOTICE编辑系统启动列表BCD文件 系列文章: 笔记本电脑提速之加装内存条、SSD固态硬盘、光驱位换SSD固态硬盘 笔记本ThinkPad E430c加装内存和SSD固态硬盘 笔记本惠普CQ14-a003TX加装内存和SSD固态硬盘 笔记本联想(Lenovo)G40-70M加装内存和SSD固态硬盘 笔记本光驱位换SSD固态... 计算机中bcd的中文意思,BCD码 weixin_42164685的博客 07-27 3714 同义词bcd(Binary-Coded Decimal缩写)一般指BCD码BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要... easy BCD 2.2 04-19 easy BCD 2.2 BCD编码 BCD与十进制转换_CBCD编码_BCDform_ 09-30 BCD码(Binary-Coded Decimal?)亦称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。 BCD译码器电路multisim 05-28 BCD译码器电路multisim BCD.rar_bcd 09-19 BCD相乘的一个小程序!!!!第一次上载请见谅 基于Multisim的7位二进制转BCD码仿真 04-23 74185是用途很广的芯片,它可以将二进制数转换成十进制BCD码。 但是,无论Multism还是Proteus,均没有74185的仿真模型。作者参考74185的Datasheet,利用分立元件制作了74185仿真电路,可将7位二进制数转换十进制BCD码(范围0~127)。 基于Multisim的8位二进制转BCD码仿真 04-23 74185是用途很广的芯片,它可以将二进制数转换成十进制BCD码。 但是,无论Multism还是Proteus,均没有74185的仿真模型。作者参考74185的Datasheet,利用分立元件制作了74185仿真电路,可将8位二进制数转换十进制BCD... 基于Multisim的16位二进制转BCD码仿真 04-23 74185是用途很广的芯片,它可以将二进制数转换成十进制BCD码。 但是,无论Multism还是Proteus,均没有74185的仿真模型。作者参考74185的Datasheet,利用分立元件制作了74185仿真电路,可将16位二进制数转换十进制BCD... 二进制转化为BCD十进制 05-14 BCD(Binary Coded Decimal)是一种用二进制编码表示十进制数的方式。将二进制数转换为BCD格式的方法如下: 1. 将二进制数从右往左每4位分为一组,不足4位的在左边补0。 2. 对每一组进行如下转换:如果该组的二进制值小于等于9,则直接将该值转换为BCD格式;否则,将该值减去10,然后将其转换为BCD格式,再在最高位加上1。 例如,将二进制数11010101转换为BCD格式: 1. 将1101和0101分为两组,得到11和0101。 2. 对第一组11进行转换,二进制值为3,直接转换为BCD格式为0011。 3. 对第二组0101进行转换,二进制值为5,直接转换为BCD格式为0101。 4. 得到BCD格式为00110101。 因此,11010101的BCD格式为00110101。 “相关推荐”对你有帮助么? 非常没帮助 没帮助 一般 有帮助 非常有帮助 提交 ソフト開発王さん CSDN认证博客专家 CSDN认证企业博客 码龄10年 暂无认证 127 原创 4万+ 周排名 70万+ 总排名 26万+ 访问 等级 2290 积分 180 粉丝 109 获赞 30 评论 861 收藏 私信 关注 热门文章 游戏开发之编程语言5选和游戏引擎3选 28281 什么是 BCD(二进制编码的十进制) 20362 寄存器和RAM之间的区别 14371 车载相关测试工具之CANalyzer 11901 CAPL是什么 11796 分类专栏 c++ 1篇 设计 4篇 车载 48篇 嵌入式 82篇 AUTOSAR 8篇 硬件 19篇 云计算 2篇 自动驾驶 8篇 web 7篇 c# 2篇 PHP 3篇 python 1篇 机器学习 5篇 VECTOR 5篇 VBA 3篇 辅助技术 OS 1篇 JavaScript 1篇 游戏开发 1篇 Linux 37篇 C语言 11篇 最新评论 微型计算机入门之输入输出端口的使用方法 老鹅的喔: 当设置为输出模式时,读取此时电平状态合理吗 什么是Octo SPI? Tu_Tu ୧⍢⃝୨: 楼主,请问用OCTO SPI接口配置Qspi芯片时,是怎么个连接法呢 下一代系统软件设计工具“Next Design” m0_50568768: 楼主现在是霓虹巾了么? 车载相关测试工具之CANalyzer weixin_45657887: 大哥目前在日本干嘛? 微型计算机基本构成和动作 惘若箫: 读过科班吗?手机不算微型计算机的 您愿意向朋友推荐“博客详情页”吗? 强烈不推荐 不推荐 一般般 推荐 强烈推荐 提交 最新文章 C++之文字列输入输出 下一代系统软件设计工具“Next Design” AUTOSAR CP与AP的区别 2023年1篇 2022年9篇 2021年50篇 2020年70篇 目录 目录 分类专栏 c++ 1篇 设计 4篇 车载 48篇 嵌入式 82篇 AUTOSAR 8篇 硬件 19篇 云计算 2篇 自动驾驶 8篇 web 7篇 c# 2篇 PHP 3篇 python 1篇 机器学习 5篇 VECTOR 5篇 VBA 3篇 辅助技术 OS 1篇 JavaScript 1篇 游戏开发 1篇 Linux 37篇 C语言 11篇 目录 评论 被折叠的 条评论 为什么被折叠? 到【灌水乐园】发言 查看更多评论 添加红包 祝福语 请填写红包祝福语或标题 红包数量 个 红包个数最小为10个 红包总金额 元 红包金额最低5元 余额支付 当前余额3.43元 前往充值 > 需支付:10.00元 取消 确定 下一步 知道了 成就一亿技术人! 领取后你会自动成为博主和红包主的粉丝 规则 hope_wisdom 发出的红包 实付元 使用余额支付 点击重新获取 扫码支付 钱包余额 0 抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 余额充值 BCD代码(Binary-Coded Decimal) - 知乎切换模式写文章登录/注册BCD代码(Binary-Coded Decimal)普通社畜张文远BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免去使计算机作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。[1]简介BCD码也称二进码十进数,BCD码可分为有权码和无权码两类。其中,常见的有权BCD码有8421码、2421码、5421码,无权BCD码有余3码、余3循环码、格雷码。8421BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。5421BCD码和2421BCD码同为有权码,它们从高位到低位的权值分别为5、4、2、1和2、4、2、1。余3码是由8421码加3后形成的,是一种“对9的自补码”。余3循环码是一种变权码,每一位的在不同代码中并不代表固定的数值,主要特点是相邻的两个代码之间仅有一位的状态不同。格雷码(也称循环码)是由贝尔实验室的FrankGray在1940年提出的,用于PCM方法传送信号时防止出错。格雷码是一个数列集合,它是无权码,它的两个相邻代码之间仅有一位取值不同。余3循环码是取4位格雷码中的十个代码组成的,它同样具相邻性的特点[2]常用BCD码十进制数8421码5421码2421码余3码余3循环码000000000000000110010100010001000101000110200100010001001010111300110011001101100101401000100010001110100501011000101110001100601101001110010011101701111010110110101111810001011111010111110910011100111111001010应用数字钟、数字温度计、数字仪表和一些其他的使用七段显示器的设备是典型的使用BCD码显示十进制数的装置。进行运算时BCD码不如二进制码直接有效,但是如果仅局限于所需要的处理(如以上举例),就显得特别有用Tips在计算机中表示BCD码时,通常要“压缩”使得8位数有两个BCD码。一般情况下,计算机就如同对二进制数进行相加减一样。当BCD码相加减时,程序员需要使用特殊指令纠正运算结果。例如:在汇编语言中,程序中有DAA(十进制加法调整 Decimal Adjust After Addition),用以自动纠正BCD码相加后的结果。参考[1]BCD码_百度百科[2]几种常见BCD码在同步时序逻辑电路中的对比分析 - 中国知网编辑于 2021-03-15 14:08字符编码数字逻辑学习赞同 306 条评论分享喜欢收藏申请 十进制与BCD码在线转换计算工具,在线计算,在线计算器,计算器在线计算 Toggle navigation 首页 文档 资源 地图 数据 计算 数学计算 物理计算 化学工具 生活计算与工具 换算工具 金融计算 IT计算与工具 工业计算 专业学科 教程 问答 专题 Python与开源GIS WebGIS在线教程 Python教程 GISLite: WebGIS静态发布系统 开源GIS中文文档 Python工具/类库中文文档 其它技术文档 开源地理空间基金会中文分会文档 实验室 空间数据可视化 公众号 用户 最近使用 使用最多 我的收藏 我的信息 EN 十进制与BCD码在线转换计算工具 当前位置:首页 计算 计算机 十进制与BCD码在线转换计算工具 十进制与BCD码在线转换计算工具 发布日期: 2016-10-24 更新日期: 2019-11-28 编辑:wangqiuyuan 浏览次数: 157848 分类: 计算机 标签: 十进制BCD码 Help edit 输入二进制数 请选择转换 BCD到10进制的转换 十进制转换到BCD APP说明 BCD码(Binary-Coded Decimal)也称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。 BCD码是用4 位二进制数码来表示一位十进制数字。通常采用8421码(还有其他的比如2421码和余3码)。 这里就用8421码说明一下吧。 四位2进制。分别对应数字8、4、2、1四个数字。 例如:1010 那么对应的数字就是 8 0 2 1 加一起就是十一 例如:0101 那么对应的数字就是 0 4 0 1 加一起就是五 同样的道理 2421码就是对应 2、4、2、1四个数字 余3码用的是8421吗,但是用完之后 要减3. 使用说明 输入BCD值:01100000000 请选择转换: BCD到10进制的转换 点击"现在转换",输出结果。 十进制:300 请 登陆 后进行评论 Submit 评论列表 (0) 计算链接: 十进制与BCD码在线转换计算工具 评价 相关App ASCII,进位制在线转换工具 十六进制在线转至十进制与二进制 字符串转换为十进制,二进制和十六进制在线计算器 经纬度分秒格式在线转换为十进制 二进制与十进制在线转换工具 二进制与十进制,十六进制,八进制在线转换工具 罗马数字与十进制阿拉伯数字在线转换 二进制与十进制的补码,反码在线计算 计算分类 代数计算 几何计算 三角函数计算 概率统计 电力计算 电子计算 经典物理 分子原子 化学反应 健康计算 生活工具 时间日期换算 长度角度面积体积 速度速率换算 质量重量压力换算 功率、能量单位换算 其他换算 财务计算 保险计算 计算机 Web计算与工具 材料计算 机械计算 建筑计算 水力计算 地理计算与工具 测绘计算与工具 环境计算 环评计算 大气计算 农业计算 最近使用 子区域查询在线计算工具 十二星座运势查询在线计算工具 简体转繁体在线转换工具 pr在线查询工具 药企搜索在线查询工具 使用最多 三角函数反三角函数在线计算器 进制数在线转换工具 二进制与十进制在线转换工具 十进制与二进制在线转换工具 人体体表面积(BSA)在线计算器 Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号 Powered by TorCMS OSGeo 中国中心 邮件列表 问题讨论 : 要订阅或者退订列表,请点击 订阅 发言 : 请写信给: osgeo-china@lists.osgeo.org BCD编码理解 - 知乎
什么是BCD码?BCD码编码规则-CSDN博客
>什么是 BCD(二进制编码的十进制)-CSDN博客
>BCD代码(Binary-Coded Decimal) - 知乎
十进制与BCD码在线转换计算工具,在线计算,在线计算器,计算器在线计算