区位码转换为国标码为啥要加十进制数32 而不是34, ASCII码里的控制符不是34个吗?难道SP和DEL被取代了?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了区位码转换为国标码为啥要加十进制数32 而不是34, ASCII码里的控制符不是34个吗?难道SP和DEL被取代了?相关的知识,希望对你有一定的参考价值。

加32的原因是,区位码是从1-94,加了32后,就是33-126,正好空出了0-32共33个控制符位置和127(DEL)的位置,巧妙地错开了冲突 参考技术A 我是这样理解的,ASCII中0~32、127共34个是需要兼容的,所以国标码前面应该空出33个编码,区位码是从01~94(不是从00开始的哟),所以加32(而非33),空出0~32这33个位置

十进制数如何换算成8421BCD码

十进制数如何换算成8421BCD码

把一位十进制数,转换成二进制,再凑足四位,即可。

参考技术A

十进制数换算成8421BCD码的方法如下:

1、十进制换算BCD码,整数从右边开始,每个数是4位二进制代码。比如:(195)10=(1 1001 0101)BCD,小数和其他进制转换不一样,是数位换算:(0.28)10=(0.0010 1000)BCD。

BCD码换算成十进制数的方法如下:

1、BCD码与十进制数的转换关系很直观,相互转换也很简单,将十进制数75.4转换为BCD码:7->0111,5->0101,4->0100所以拼成8421BCD码的结果是:(0111 0101.0100)BCD;若将BCD码1000 0101.0101转换为十进制数:1000->8,0101->5,0101->5所以结果是:(85.5)D。

二进制编码的十进制数,简称BCD码(Binarycoded Decimal)。

这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3,4,5,6,7,8,9 这十个数符。最常用的BCD码称为8421BCD码,8.4.2.1 分别是4位二进数的位取值。

以上是关于区位码转换为国标码为啥要加十进制数32 而不是34, ASCII码里的控制符不是34个吗?难道SP和DEL被取代了?的主要内容,如果未能解决你的问题,请参考以下文章

如何转换内码

16进制转汉字的原理是啥

彻底解决乱码问题(附一):简体中文编码中区位码国标码内码外码字形码的区别及关系

国标转区位码电路设计及汉字显示

中国的国家码,西安的区域码是多少?

java获得汉字的大写字母,其他字符不变