内容部分摘抄于朱有朋老师

  1. BCD码本质是对数字的一种编码,用来解决这种问题:由56得到0x56(或者反过来)。也就是说我们希望十进制的56被编码成56(这里56不是十进制的56,而是两个数字5和6)。

  1. BCD的作用可以将十进制数拆成组成这个十进制的各个数字的编码,变成编码后就没有位数的限制了。譬如由一个很长的数123456789123456789,如果这个数当数字肯定超出int范围,计算机无法处理。想要让计算机处理这个数,计算机首先得能表达这个数,表达得方式是将这个数转成对应得BCD(123456789123456789 类似于字符串)

  1. 如何表示BCD编码?BCD码可以在计算机用十六进制形式表示,也就是十进制得56转成BCD后是56,在计算机中用0x56来表达。

简洁的地说BCD就是用16进制表示10进制的数 如99(1001 1001)

所以在编程中想让其表示10进制数, (x/10)*16 +(x)%100

如x是99 那么得到的结果是153,153的二进制是1001 1001(16进制表示出来的结果就是99),

当然如果是111呢,其16进制是6F,无法用16进制形式表示111,因为一个字节(8位)只能表示2个数。解决这个办法就是增加表示位数,第一步得到百位 x /100 ,(x/10)*16 +(x)%100,第二步得到个位和十位 x%100,(x/10)*16 +(x)%100。那么得到就是二进制(0001 0001 0001)。

百位 十位 个位

BCD码的作用和实现相关推荐

  1. 《计算机组成原理》BCD码 8421编码原理剖析

    「作者主页」:士别三日wyx BCD码 1. BCD码的作用 2. BCD码的转换原理 3. 8421编码 3.1 8421编码的权重划分 3.2 8421编码的加法运算 3.3 8461编码的加6修 ...

  2. 什么是bcd码数据传输通讯_传输障碍| 数据通讯

    什么是bcd码数据传输通讯 传输障碍 (Transmission Impairment) In the data communication system, analog and digital si ...

  3. C语言学习笔记06-占位符格式、C基本类型及逃逸字符一些细节(附介绍BCD码)

    主要整理有关占位符格式与逃逸字符的一些细节 朋友们,看栗子--"BCD解码" (文末附BCD码介绍) 一个BCD数的十六进制是0x12(对应二进制表示:0001 0010),它表达 ...

  4. 什么是BCD码?BCD码的用处。怎么把BCD码转换成二进制值?

    含义:用4位二进制数来表示数值中的1位(十进制数中的0~9这10个数字),简称BCD码,即BCD代码 也可以这样理解:就是将十进制的数以8421的形式展开成二进制(14 以8421形式展现成二进制就是 ...

  5. 从字符串中提取BCD码,转换为UINT数据并返回

    C++ code: #include <iostream> #include <iomanip> #include <windows.h>using namespa ...

  6. HDLBits 系列(18) BCD码计数器的设计

    目录 原题复现 审题 我的设计 原题复现 先给出原题: Build a 4-digit BCD (binary-coded decimal) counter. Each decimal digit i ...

  7. 单片机中如何将BCD码拆开_单片机二进制BCD码转换实验程序流程图

    二进制BCD码转换 一.实验目的 1.掌握简单的数值转换算法 2.基本了解数值的各种表达方法 二.实验说明 单片机中的数值有各种表达方式,这是单片机的基础.掌握各种数制之间的转换是一种基本功.我们将给 ...

  8. 8086汇编4位bcd码_51单片机用汇编语言实现BCD码转换

    一.BCD码简介: BCD码(Binary-Coded Decimal‎)亦称二进码十进数或二-十进制代码.用4位二进制数来表示1位十进制数中的0~9这10个数码.是一种二进制的数字编码形式,用二进制 ...

  9. [计组]压缩BCD码指二进制编码的十进制

    压缩BCD码指二进制编码的十进制 压缩BCD码指一个字节8位存储2位BCD码.比如32用8421BCD码表示如下:非压缩BCD码表示:00000011 00000010:压缩BCD码表示:0011 0 ...

最新文章

  1. 不懂复盘,十年经验等于零
  2. Entity Framework 4.1/4.3 之五 (DBContext 之 2 查询功能)
  3. 王者荣耀s15服务器维护,王者荣耀16日S15赛季更新内容
  4. php 简繁体转换类库,OpenCC for PHP 优雅的简繁体转换
  5. 把地图中的道路以线条提取出来_入围 ICRA 2019 最佳论文:MIT利用粗粒度地图实现自动驾驶...
  6. Android中访问通讯录,数据的增删改查
  7. nodejs计算时间间隔_Javascript计算时间差的函数分享
  8. python调用caffe时,出现ImportError: No module named _caffe
  9. ccf小明种苹果(续)
  10. Chrome插件:OneNote Web Clipper 搜集和整合碎片信息的神器
  11. 【斗地主 javascript js 斗地主 AI 人机 网页在线】基于专家系统的斗地主AI算法
  12. 苹果绕过ID_亲测:苹果手机绕过ID,到底能不能用?结果不太理想
  13. 优盘中发现计算机病毒怎么办,u盘插电脑中了病毒怎么办
  14. 软件设计师-6.结构化开发方法
  15. DM8168 Uboot使用EMAC1(TI源码使用默认的EMAC0)
  16. [OHIF-Viewers]医疗数字阅片-医学影像-es6解构赋值-const{}=-let{}=
  17. python中的占位符
  18. python的post请求中加参数_Python 模拟post请求
  19. 三轮DES差分攻击(免费完整代码)
  20. MVP模式 项目练习 Pas --新闻 音乐 图片 三个模块

热门文章

  1. ./和../以及/之间的区别?终于弄懂,写的很详细!!!
  2. SQLTableSource
  3. 毕设java 电脑配件购物商城论文
  4. c ajax 500,Ajax和jQuery中的C:\ fakepath \ *。*
  5. 【网易实习准备】往年笔试题目练习
  6. 对数组进行“整体赋值”
  7. 切断电源之后计算机丢失的,电脑断电重启找不到硬盘该咋办?
  8. 计算机教室是使用计划书,教师个人计算机学习计划书_老师计算机学习计划范文...
  9. 如何看待 Google 最新的系统 Fuchsia?
  10. Android 文字测量