数制与编码
进位计数法
所谓进位计数法是一种计数方法,咱们最常用的莫过于十进制了,除此之外还有八进制、十六进制等。
这里不得不提几个概念术语:
- 基数:比如说十进制、八进制和十六进制,它们的基数分别为10(09)、8(07)、16(0~15)
- 数位:比如二进制数1010,这里就有4个数位,从高位到低位依次的数码值为1、0、1、1
- 数码:比如八进制,那么数码,即数码值的范围为(0~7)
- 基数和数码的关系:每个数位所用到的不同数码的个数称为基数
- 位权:每个数码所表示的数值等于该数码值乘以一个与它所在位有关的常数,这个常数称为位权。
二进制转换成八进制和十六进制
十进制转换成二进制数
十进制转N进制数,比较常用的方法是基数乘除法,这种方法分两步骤:整数部分用除基取余法,小数部分采用乘基取整法,最后将整数与小数部分拼接起来。
何为真值,何为机器数
- 真值:我们日常见到的,有“+”、“-”号的数为真值,比如:+5,-7。真值是机器数所代表的实际值,一般为十进制数。
- 机器数:将“符号->数字化”的数。一般为二进制数,比如带符号位的4位二进制数0110,最高位0就是符号位,这个数的真值就是+6。通常0代表“+”号,1代表-号。
BCD码
什么是BCD码
- 简单来说,就是用4位二进制数来表示1位十进制数(0~9),是一种二进制的数字编码形式,用二进制编码来代替十进制代码。
- BCD码可分为两类:有权码和无权码
- 为什么使用BCD码:这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免去使计算机作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。
8421码的计算
当两个8421码进行计算时,如果结果小于等于9,则不作任何操作,如果计算结果大于9则需要进行+6(0110)修正操作,并向高位进位。
字符和字符串
什么是ASCII码
- 我们知道我们日常见到的数字(09)、符号比如:#、%、+、@等、英语字母如:(Az)、(a~z),它们在计算机中都是以二进制来表示存储的,咱们可以用不同的二进制数来表示,但是为了统一化、使大家的相互通信可以正常进行,那么就必须制定一套统一的标准来规范它,由此ASCII码随之诞生,大家都遵从这一统一的标准进行数据的通信和交流。至于ASCII码代表的意思,可参考这篇文章。
汉字的表示和编码是怎么样的
汉字编码:Hanzi bianma汉字编码(Chinese character encoding )是为汉字设计的一种便于输入计算机的代码。由于电子计算机现有的输入键盘与英文打字机键盘完全兼容。因而如何输入非拉丁字母的文字(包括汉字)便成了多年来人们研究的课题。 汉字信息处理系统一般包括编码、输入、存储、编辑、输出和传输。编码是关键。不解决这个问题,汉字就不能进入计算机。
途径:汉字进入计算机的三种途径 分别为:
①机器自动识别汉字:计算机通过“视觉”装置(光学字符阅读器或其他),用光电扫描等方法识别汉字。
②通过语音识别输入:计算机利用人们给它配备的“听觉器官”,自动辨别汉语语音要素,从不同的音节中找出不同的汉字,或从相同音节中判断出不同汉字。
③通过汉字编码输入:根据一定的编码方法,由人借助输入设备将汉字输入计算机。
机器自动识别汉字和汉语语音识别,国内外都在研究,虽然取得了不少进展,但由于难度大,预计还要经过相当一段时间才能得到解决。在现阶段,比较现实的就是通过汉字编码方法使汉字进入计算机。
分类:计算机中汉字的表示也是用二进制编码,同样是人为编码的。根据应用目的的不同,汉字编码分为外码、交换码、机内码和字形码。
1.外码(输入码)
外码也叫输入码,是用来将汉字输入到计算机中的一组键盘符号。常用的输入码有拼音码、五笔字型码、自然码、表形码、认知码、区位码和电报码等,一种好的编码应有编码规则简单、易学好记、操作方便、重码率低、输入速度快等优点,每个人可根据自己的需要进行选择。
2.交换码(国标码)
计算机内部处理的信息,都是用二进制代码表示的,汉字也不例外。而二进制代码使用起来是不方便的,于是需要采用信息交换码。中国标准总局1981年制定了中华人民共和国国家标准GB2312–80《信息交换用汉字编码字符集–基本集》,即国标码。
区位码是国标码的另一种表现形式,把国标GB2312–80中的汉字、图形符号组成一个94×94的方阵,分为94个“区”,每区包含94个“位”,其中“区”的序号由01至94,“位”的序号也是从01至94。94个区中位置总数=94×94=8836个,其中7445个汉字和图形字符中的每一个占一个位置后,还剩下1391个空位,这1391个位置空下来保留备用。
3.机内码
根据国标码的规定,每一个汉字都有了确定的二进制代码,在微机内部汉字代码都用机内码,在磁盘上记录汉字代码也使用机内码。
4.汉字的字形码
字形码是汉字的输出码,输出汉字时都采用图形方式,无论汉字的笔画多少,每个汉字都可以写在同样大小的方块中。通常用16×16点阵来显示汉字。
5.汉字地址码
汉字地址码是指汉字库中存储汉字字形信息的逻辑地址码。它与汉字内码有着简单的对应关系,以简化内码到地址码的转换。
奇偶校验码
数据在计算机系统内形成、存取和传送过程中,可能会因为某种原因而产生错误。为减少和避免这类错误,一方面需要从电路、电源、布线等硬件方面采取措施,提高计算机硬件本身的抗干扰能力和可靠性;另一方面可以在数据编码上采取检错纠错的措施,即采用某种编码方法,使得机器能够发现、定位乃至纠正错误。