微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 二进制数及其他

二进制数及其他

时间:11-17 来源:互联网 点击:

9)来表示十进制数的 0~9,从高位到低位的权值分别是

8,4,2,1,所以就称作 8421BCD 码。在 8421BCD 码中,每组二进制数各位按照加权系数展开便是它

所对应的十进制数。如 8421BCD 码的 0110 安权展开为

0110=0X8+1X4+1X2+0X1=6

所以 8421BCD 码 0110 表示十进制数 6。 这里一定要注意代码和我们前面讲的十进制数转换为二进制数相区别,对于同一个数,两种运算结果

是不一样的,例如十进制数 12,如果转换为对应的二进制数,那么结果是 1100 ,而如果转换为

8421BCD 码,那么结果为 0001 0010,也就是说,8421BCD 码就是严格的按照一位十进制数对应着 4 位二进制数来写,2 位十进制数,必然对应着 8 位二进制数,他们之间只有我们在进行 8421BCD 码编写的 时候给的对应关系,12 和 0001 0010 没有数值上的任何关系。

BCD 码还有 5421 码、余 3 码等等,大家可以看看数字电子技术的教材,我不一一的讲解了。

ASCII 码

ASCII 码(美国标准信息交换码),适用于所有的拉丁文字母,被国际标准化组织(ISO)批准为国 际标准,称为 ISO646 标准。我国相应的国家标准是 GB1988-80(即《信息处理交换用的七位编码字符 集》)。这里的 GB 读作“guo biao”(国标)而不是两个英文字母 ”G“ ”B“。ASCII 码 规定了信息交换用的

128 个字符。每个字符用 b7b6b5b4b3b2b1 七位来标识,通常最高位用 0 表示,使用 7 位二进制数来表 示所有的大写和小写字母,数字 0 到 9、标点符号, 以及在美式英语中使用的特殊控制字符。表 4 是 7 位

的 ASCII 码表。

表 4 7 位的 ASCII 码表

查看上面的表,我们可以看到字母“A”的 ASCII 码为 100 0001B,最高位为 0,即 0100 0001B(41H, 十进制数是 65)。

对于 ASCII 码,我们不要去记忆什么,只需要知道如何查看就好。


汉字编码

GB 2312 是一个简体中文字符集的中国国家标准,全称为《信息交换用汉字编码字符集基本集》, 又称为 GB0,由中国国家标准总局发布,1981 年 5 月 1 日实施。GB2312 编码通行于中国大陆;新加坡 等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持 GB 2312。

GB 2312 标准共收录 6763 个汉字,其中一级汉字 3755 个,二级汉字 3008 个;同时,GB

2312 收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的 682 个全角字

符。

GB 2312 的出现,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆

99.75%的使用频率。

对于人名、古汉语等方面出现的罕用字,GB 2312 不能处理,这导致了后来 GBK 及 GB 18030 汉 字字符集的出现。

GB 2312 中对所收汉字进行了“分区”处理,每区含有 94 个汉字/符号。这种表示方式也称为区位

码。

01-09 区为特殊符号。

16-55 区为一级汉字,按拼音排序。

56-87 区为二级汉字,按部首/笔画排序。

10-15 区及 88-94 区则未有编码。

举例来说,“啊”字是 GB2312 之中的第一个汉字,它的区位码就是 1601。 对于汉字编码,我们也不需要去管它,自然有计算机帮我们处理与之相关的问题,从信息处理的角度

来看,汉字处理也是非数值处理,和英文字母一样,需进行编码才能被计算机处理。 同样的,今天我们在计算机中所看到的每一样东西,包括图片、声音、视频等等都需要编码,也只有

进行了编码,我们才能在计算机中进行处理。我们的计算机不仅处理数值数据,还要处理大量的非数值数

据,而实际上,处理非数值数据要多的多。关于图片、声音、视频等的编码不是我今天的主题,请查阅相关

的专业书籍。

后记

上周有单片机课,讲到了二进制数,课堂上比较激动,下课后考虑到 09 级的学生在这个学期数电 、C 语言、单片机同时上课,对于二进制数可能会有理解上的难题,便决定把课堂上的讲课思路写下来,于是 就有了这篇文章。从上周四到现在,除开中间有其他的杂事,一共用了 2 天的时间写完。主要讲解了二进 制、十进制、十六进制的相互转换,带符号数的补码表示方法,编码的概念以及 8421BCD 码,ASCII 码, 简单的介绍了汉字的编码。对于八进制数,进制转换时小数的处理,因为我觉得这些不是最主要的,知道了十六进制数那么八进制数也就没什么困难了,至于小数的进制转换,原理和整数一样,在后续的学习中很少使用,所以不讲,上课的时候跟着老师听一遍就会的。补码运算,溢出没有过多的讲解,因为这部分理解上 有些困难,等这个学期结束了,再来看这两个问题比较好。我在写的时候就在不断

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top