数制与编码
计算机中的数制与编码
计算机中的数制与编码在计算机科学中,数制和编码是非常重要的概念。
数制是一种数学表示法,用于表示不同类型的数值。
而编码是将字符、符号或信息转化为特定形式的过程。
数制和编码在计算机中扮演着至关重要的角色,它们用于存储、传输和处理数字和数据。
数制(Number System)在计算机中,常见的数制有二进制、十进制、八进制和十六进制。
每种数制有其各自的特点和用途。
1. 二进制(Binary System):二进制是最常见和基础的数制,在计算机中广泛使用。
它只包含两个数字0和1,以2为基数。
计算机内部存储和处理的数据都是以二进制形式表示的。
每个二进制位称为一个bit(二进制位),每8位为一个字节(Byte)。
2. 十进制(Decimal System):十进制是我们日常生活中最常用的数制,以10为基数,包含0-9的数字。
在计算机中,通常使用十进制数制进行人机交互和显示。
3. 八进制(Octal System):八进制以8为基数,包含0-7的数字。
在计算机中,八进制表示法不太常用,但是在Unix操作系统中仍然使用八进制权限表示法。
4. 十六进制(Hexadecimal System):十六进制以16为基数,包含0-9的数字和A-F的字母。
在计算机中,十六进制数制常用于表示内存地址和字节编码。
十六进制数更加简洁和紧凑,便于人们阅读和理解。
编码(Coding)在计算机中,数据和字符需要以特定的方式进行编码,以便计算机可以正确存储和处理它们。
常见的编码方式包括ASCII码、Unicode、UTF-8和UTF-16等。
1.ASCII码:ASCII(American Standard Code for Information Interchange)是一种最早的字符编码标准,用于将字符映射为对应的数字编码。
ASCII码使用7位二进制数表示128个字符,包括英文字母、数字、标点符号和控制字符等。
2. Unicode:Unicode是一种字符编码标准,为世界上几乎所有的字符建立了唯一的数字表示。
计算机中的数值和编码
计算机中的数制和编码一、数制的概念:数制是用一组固定的数字和一套统一的规则来表示数目的科学方法。
按照进位方式计算的数制叫做进位数制。
例如:逢十进一即为十进制,逢二进一为二进制,逢八进一为八进制,逢十六进一为十六进制。
进位计数制有两个要素:基数和权值。
1、基数:它是指各种进位计数制中允许选用基本数码的个数。
例如:十进制的数码有0、1、2、3、4、5、6、7、8、9十个数码,所以十进制的基数为10;二进制的数码有0、1两个数码,所以二进制的基数为2;八进制的数码有0、1、2、3、4、5、6、7八个数码,所以八进制的基数为8;十六进制的数码有0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F十六个数码,所以十六进制的基数为16。
2、权值:每个数码所表示的数值等于该数码乘以一个与数码所在位置相关的常数,这个常数叫权值。
其大小是以基数为底,数码所在位置的序号为指数的整数次幂。
例如:十进制数356.4=3×100+5×10+6×1+0.4=3×102+5×101+6×100+4×10-1(3在百位上,所以3×100=3×102;5是在十位上,所以5×10=5×101;6是在个位上,所以6×1=6×100;0.4为小数,所以0.4=4×10-1)。
二、十进制(D ecimal notation)及其特点:1、两个特点:①、十个数码:0、1、2、3、4、5、6、7、8、9;②、进位方法:逢十进一,借一当十。
(满了10个就得进一位)2、基数:103、按权展开式:任意一个a位整数和b位小数的十进制数D可以表示为:D=D a-1×10a-1+D a-2×10a-2+…+D0×100+D-1×10-1+D-2×10-2+…+D-b×10-b4、十进制在书写中的三种表达方式:128或者128D或(128)10三、二进制(B inary notation)及其特点:1、两个特点:①、两个数码:0、1;②、进位方法:逢二进一,借一当二。
计算机中的数制与编码
计算机中的数制与编码
(2)定点小数 定点小数规定小数点的位置固定在符号位之后,但不占一个二进制位。那么,符号位的右边表示的是一 个纯小数。
定点小数的表示形式
例如,用8位二进制定点整数表示(-0.6875)10,应为: (-0.6875)10=(11011000)2
计算机中的数制与编码
2 浮点数
浮点数是指小数点的位置不固定的数。对于既有整数部分又有小数部分的数,一般用浮点数表示。 任意一个二进制数N都可以表示成如下形式:
微机原理与接口技术
计算机中的数制 与编码
计算机中的数制与编码
1.1 计算机中的数制
1 数制的概念
数制是人们按进位的原则进行计数的一种科学方法。在日常生活中,经常要用到数制,除了最常见的十进 制计数法,有时也采用别的进制来计数。
一种计数制所使用的数字符号的个数称为基数,某个固定位置上的计数单位称为位权。同一数字符号处 在不同位置上所代表的值是不同的,它所代表的实际值等于数字本身的值乘以所在位置上的位权。例如,十 进制数345中的数字3在百位上,表示位权为100,故此时的3表示的是300。又如,十进制数123.45用位权可以 表示为
整数部分:
小数部分:
所以,(69.625)10=(1000101.101)2。
计算机中的数制与编码
② 转换成八进制数
③ 转换成十六Βιβλιοθήκη 制数计算机中的数制与编码3 二进制数与八进制数、十六进制数之间的转换
二进制、八进制、十六进 制之间存在特殊的关系:1位 八进制数对应3位二进制数,1 位十六进制数对应4位二进制 数,因此转换比较容易。
(2)小数部分的转换。
• 小数部分的转换采用“乘基取整法”,方法 是:将十进制数的小数部分反复乘以基数R, 将每次乘积的小数部分作为被乘数,并取得 相应的整数部分,直到乘积的小数部分为0。 将每次得到的整数部分顺序排列在小数点后, 即为转换后的R进制小数。
数字电路-数制与编码
数码的个 数和计数 规律是进 位计数制 的两个决 定因素
一、 十进制数的表示 数码个数10: ⒈ 数码个数 :
0,1,2,3,4,5,6,7,8,9
计数规律: 计数规律
逢十进 1,借一当10
2.基与基数 2.基与基数
用来表示数的数码的集合称为基 用来表示数的数码的集合称为基(0—9), ) 称为基数 十进制为10)。 称为基数(十进制为 。 基数 十进制为 集合的大小
lg α j≥i lg β
取满足不等式的最小整数
)16 ,已知精度为±(0.1)410
例: (0.3021)10→(
解: α=10,β=16,i=4
lg10 j≥ 4 = 3.32 取 j=4 lg16
⑵按题意要求
例: (0.3021)10→( 解:
)2 ,要求精度 0.1% ∴取 j=10
1 1 0.1% = ≥ 10 1000 2
X ;0 ≤ X < 2n [ X ]补= 2n +1 + X ;-2n ≤ X < 0
例 2:
(321.4)8 = ( )10 =3×82+2×81+1×80 +4×8-1 =(209.5)10 192 16 1 0.5
基数乘除法( 10 → R )
分整数部分和小数部分分别转换。 ⒈整数的转换——基数除法 规则:除基取余, 规则:除基取余,商零为止 例1:(25) 10 = ( ) 2
例:已知 X1=1100 X2=1010 求 Y1= X1- X2 ; Y2= X2- X1
01100 +10101 100001 + 1 00010 01010 +10011 11101
数制与编码
8421BCD码和十进制的之间的转化
例:将十进制数768用8421BCD码表示。 十进制数 7 6 8 8421码 0111 0110 1000 (768)10=(0111 0110 1000)8421
注意:
1.编码是一种符号表示某个具体的实物,所以编码不能比较大小。 2.8421BCD码是使用最广泛的 一种编码,在用4位二进制数码来表示1位十制 数时,每1位二进制数的位权依次为23、22、21、20,即8421,所以称为8421码 8421码选取0000—1001前十种组合来表示十进制数,而后六种组合舍去不用,称 为伪码。
可将每个八进数用3位二进制数表示,然后按八进制的排序将这些3位二进
制数排列好,就可得到相应的二进制数。
例:将八进制数475转化为二进制数。
解: 八进制数 4
7
5
二进制数 100 111
101
所以(475)8=(100111101)8
二进制数换为十六进制数
可将二进制整数自右向左每4位分为一组,最后不足4位的,高位用零补
6、将下列的二进制转化为十进制
(1011)2
(11011)2
(110110)2
(110011110)2
7、将下列的十进制转化为二进制
(20) (38)
(100) (184)
8、完成下列二进制的运算
101+11
11111+101
110-11
1101-111
9、什么是二进制代码? 什么是8421编码?列出8421BCD码的真 值表?
二进制数换为八进制数
可将二进制整数自右向左每3位分为一组,最后不足3位的,高位用零补足,
再把每3位二进制数对应的八进制数写出即可。
计算机中的数制与编码
计算机中的数制与编码一、数制1、什么是进位计数制数制也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法。
按进位的原则进行计数的方法,称为进位计数制。
比如,在十进位计数制中,是按照“逢十进一”的原则进行计数的。
常用进位计数制:a、十位制(Decimal notation);b、二进制(Binary notation);c、八进制(Octal notation);d、十六进制数(Hexdecimal notation)2、进位计数制的基数与位权"基数"和"位权"是进位计数制的两个要素。
(1)基数:所谓基数,就是进位计数制的每位数上可能有的数码的个数。
例如,十进制数每位上的数码,有"0"、"1"、"3",…,"9"十个数码,所以基数为10。
(2)位权:所谓位权,是指一个数值的每一位上的数字的权值的大小。
例如十进制数4567从低位到高位的位权分别为100、101、102、103。
因为:4567=4x103+5x 102+6x 101 +7x100(3)数的位权表示:任何一种数制的数都可以表示成按位权展开的多项式之和。
比如:十进制数的435.05可表示为:435.05=4x102+3x 101+5x100+0x10-1 +5x 10-2位权表示法的特点是:每一项=某位上的数字X基数的若干幂次;而幂次的大小由该数字所在的位置决定。
3、二进制数计算机中为何采用二进制:二进制运算简单、电路简单可靠、逻辑性强(1)定义:按“逢二进一”的原则进行计数,称为二进制数,即每位上计满2 时向高位进一。
(2)特点:每个数的数位上只能是0,1两个数字;二进制数中最大数字是1,最小数字是0;基数为2;比如:10011010与00101011是两个二进制数。
(3)二进制数的位权表示:(1101.101)2=1x23+1x 22+0x 21+1x 20+1x2-1 +0x 2-2+1x2-3(4)二进制数的运算规则1 加法运算① 0+0=0 ③ 1+1=10② 0+1=1+0=12 乘法运算① 0×0=0 ③ 1×1=1② 0×1=1×0=04、八进位制数(1)定义:按“逢八进一”的原则进行计数,称为八进制数,即每位上计满8时向高位进一。
数制及编码
∴(0.3125)10 =(0.0101)2
说明:有时可能无法得到0的结果,这时应
根据转换精度的要求适当取一定位数。
2024/2/21
7
2. 二进制与八进制、十六进制之间的转换
(1)二进制与八进制之间的转换 三位二进制数对应一位八进制数。
(6574)8 =(110,101,111,100)2 =(110101111100)2
12
(1)8421码
选取0000~1001表示十进制数0~9。 按自然顺序的二进制数表示所对应的十进制数字。 是有权码,从高位到低位的权依次为8、4、2、1,
故称为8421码。 1010~1111等六种状态是不用的,称为禁用码。
例:
(1985)10 =(0001 1001 1000 0101)8421BCD
(101011100101)2 =(101,011,100,101)2 =(5345)8
2024/2/21
8
(2)二进制与十六进制之间的转换 四位二进制数对应一位十六进制数。
例如: (9A7E)16 =(1001 1010 0111 1110)2
=(1001101001111110)2
(10111010110)2 =(0101 1101 0110)2
2024/2/21
19
表1-5 美国标准信息交换码(ASCII码)
2024/2/21
20
b2
2∣27 …………余1
b3
2∣13 …………余1
b4
2∣6 …………余0
b5
2∣3 …………余1
b6
2∣1 …………余1
b7
0
2024∴/2/21(217)10 =(11011001)2
计算机常用数制及编码
计算机常用数制及编码1.二进制数制:二进制是计算机中最基本的数制,只包含两个数字0和1、它是一种逢二进一的计数法,每位上的数值以2为底数的幂来表示。
例如,二进制数1101表示1*2^3+1*2^2+0*2^1+1*2^0=13、在计算机中,二进制数被广泛应用于存储和运算等操作。
2.八进制数制:八进制使用8个数字0-7来表示。
它是二进制数制的一种压缩表示方法,每3位二进制数可以表示为一位八进制数。
例如,二进制数1101可以表示为八进制数15、八进制数在计算机界并不常见,但在一些特定场景下仍然有一定的应用。
3.十进制数制:十进制是我们常用的数制,使用10个数字0-9来表示数值,每位上的数值以10为底数的幂来表示。
例如,十进制数123表示1*10^2+2*10^1+3*10^0=123、十进制数制通常用于人类的日常计算中,但在计算机中也会涉及到十进制的处理,例如在涉及到金额、日期和时间等数字的场景中。
4.十六进制数制:十六进制使用16个数字0-9和A-F来表示,其中A-F分别表示十进制数10-15、它是二进制数制的另一种压缩表示方法,每4位二进制数可以表示为一位十六进制数。
十六进制数常用于计算机领域,因为它们可以更紧凑地表示二进制数。
例如,二进制数1101可以表示为十六进制数D。
编码系统是为了实现计算机和人类之间的信息交流而发展的。
下面介绍几种常见的编码系统:1.ASCII码:ASCII(American Standard Code for Information Interchange)是最早和最广泛使用的字符编码系统之一、它使用7位二进制数(扩展ASCII使用8位二进制数)来表示128(或256)个字符,包括英文字母、数字、符号等。
ASCII码可以用于存储和表示文本文件中的字符。
2. Unicode编码:3.UTF-8编码:UTF-8(Unicode Transformation Format - 8-bit)是一种对Unicode进行可变长度编码的字符编码系统。
数制与编码精讲内容
数制与编码1.数制和编码的基本概念▪数制数制是用一组固定的数字和一套统一的规则来表示数的方法。
常用的进位计数制有二进制(B)、八进制(O)、十进制(D)、十六进制(H)。
▪进位计数制有两个基本要素:基数和权(1)基数:数制所使用数码的个数。
例如,二进制的基数为2,十进制的基数为10。
(2)权:以基数为底,以某一数字所在位置的序号为指数的幂,称为该数字在该位置的权。
▪编码编码是采用少量的基本符号,选用一定的组合原则,以表示大量复杂多样的信息的技术。
任何信息必须转换成二进制形式数据才能由计算机进行处理、存储和传输。
2. 不同进位数制的特点▪十进制(Decimal)十进制的特点是:用10个数码(0~9)表示所有的数,基数是10, 采用逢十进一的计数方法。
▪二进制(Binary)二进制的特点是:由0、1组成,基数是2,加法采用“逢二进一”、减法采用“借一当二”的运算规则。
▪十六进制(Hexadecimal)十六进制:由0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F组成,基数是16,加法用“逢十六进一”、减法采用“借一当十六”的运算规则。
▪八进制(Octal)八进制数的特点是:由0,1,2,3,4,5,6,7组成,基数是8,加法采用“逢八进一”、减法用“借一当八”的运算规则。
3. 进制数的转换(1)二进制<-->八进制数转换(2)十进制转为八进制(3)十六进制转为八进制4. 常见的信息编码▪BCD码二进制编码的十进制数,简称BCD码(Binarycoded Decimal)。
这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。
▪ASCII码ASCII(American Standard Code for Information Interchange,美国信息交换标准代码),它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
数字电子技术-数制与编码-
000 0 0
000 1 1
001 2 0
8
100 8
0
9
100 9
1
10 101 A 0
(0010
1111
1011.1110
10103)2
001 1
3
11 101 B 1
=(2FB.EA)16
4 010 4 12 110 C
0
0
5 010 5 13 110 D 例 1 - 9 : ( 4B E5 .9 7D )16 = ( 0 1 0 0 1 0 1 1 1 1 1 0 0 1 0 1 . 10101 0 1 1 1 1 1 0 11) 2
7
• 84由21B于CD是代码,代码本身不是数,没有大小之分; • 必须4位一组,最高位、最低位的0不可去掉;
10n
0.0 1
0.1 1
10
10 0
10
3
104 105 106 107
108 109 1010
2n 0.2 0.5 1 2 4 8 16 32 64 128 25 512 1024
5
6
请熟练记住上表中二进制的权,在数制转换时非常有用。
最小的10位二进制数(1000000000)2=(29)10=(512)
四位二进制代码
一位十进制数字
22
(1)8421BCD码
• 选取0000⁓1001表示十进制数0⁓9。
10进制数 0 1
• 按自然顺序的二进制数表示所对应的十进制数字。
2
• 是有权码,从高位到低位的权依次为8、4、2、1, 3
故称为8421码。
4
数制与编码
数制与编码数制是计数进位制的简称。
在日常生活和生产中,人们习惯用十进制数,而在数字电路和计算机中,只能识别“0”和“1”构成的数码,所以经常采用的是二进制数。
1.十进制十进制以10为基数,共有0〜9十个数码,计数规律为低位向高位逢十进一。
各数码在不同位的权不一样,故值也不同。
例如444,三个数码虽然都是4,但百位的4表示400,即4×102,十位的4表示40,即4×101,个位的4表示4,即4×10°,其中102、101、10°称为十进制数各位的权。
如一个十进制数585.5按每一位数展开可表示为:(585.5)10 = 5×102+8×101+5100+5×10-12. 二进制数字电路和计算机中经常采用二进制。
二进制的基数为2,共有0和1两个数码,计数规律为低位向高位逢二进一。
各数码在不同位的权不一样,故值也不同。
二进制数用下标或“2”表示,如一个二进制数101. 101按每一位数展开可表示为:(101. 101)2 = l×22+0×21+l×2°+l×2-1+0×2-2+l×2-33. 二进制数与十进制数的相互转换(1)二进制数转换成十进制数——按权相加法按权相加法是指将二进制数按位权展开后相加,即得等值的十进制数。
例如,将二进制数1011101转换为十进制数:(1011101)2=(1×26十0×25十1×24十1×23十1×22十0×21十1×20)10= (64 + 0 十 16+ 8 十 4 + 0 十 1)10 =(93)10(2)十进制数转换成二进制数——除2取余倒排法和乘2取整顺排法任意十进制数转换为二进制数,可将其分成整数部分和纯小数部分,整数部分采用除2取余倒排法,即十进制整数连续除以2,直到商等于0为止,然后把每次所得余数(1或者0)按相反的次序排列即得转换后的二进制整数。
数制和编码的概念及转换
数制和编码的概念及转换数制是一种表示数值的方式,常见的数制有十进制、二进制、八进制和十六进制等。
十进制是我们平时常用的数制,它使用基数为10的数字系统,由0到9共10个数字组成。
二进制是计算机使用的一种数制,它使用基数为2的数字系统,由0和1两个数字组成。
八进制是一种数制,它使用基数为8的数字系统,由0到7共8个数字组成。
十六进制是一种数制,它使用基数为16的数字系统,由0到9和A到F共16个数字组成,其中A表示10,B表示11,C表示12,D表示13,E表示14,F表示15。
编码是将字符、数字、符号等信息转化成特定的数字或符号的过程。
常见的编码方式有ASCII码、Unicode和UTF-8等。
ASCII码是英文字符编码的一种方式,它使用7位二进制数表示128个英文字符,包括字母、数字和常见的符号。
Unicode是一种编码系统,它为世界上各种文字字符规定了统一的编码,可以表示几乎所有的字符。
UTF-8是一种多字节编码方式,它是Unicode的一种实现方式,可以表示Unicode字符集中的任何字符。
数制转换是指将一个数值从一种数制表示转换成另一种数制表示的过程。
转换方法如下:1. 二进制转十进制:将每一位上的数乘以2的相应次幂,并求和。
2. 十进制转二进制:用除2取余法,将十进制数除以2,并将余数从低位到高位排列,直到商为0。
3. 八进制转十进制:将每一位上的数乘以8的相应次幂,并求和。
4. 十进制转八进制:用除8取余法,将十进制数除以8,并将余数从低位到高位排列,直到商为0。
5. 十六进制转十进制:将每一位上的数乘以16的相应次幂,并求和。
6. 十进制转十六进制:用除16取余法,将十进制数除以16,并将余数从低位到高位排列,直到商为0。
以上是一些常见的数制和编码的概念及转换方法,不同的数制和编码方式在不同的场景中有不同的应用。
第1章 数制与编码
常用BCD 常用 BCD 码
十进制数 8421 码 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 8421 权 余 3 码 格雷码 2421 码 0011 0000 0000 0100 0001 0001 0101 0011 0010 0110 0010 0011 0111 0110 0100 1000 0111 1011 1001 0101 1100 1010 0100 1101 1011 1100 1110 1100 1101 1111 2421 5421 码 0000 0001 0010 0011 0100 1000 1001 1010 1011 1100 5421
生 变 化 。 一 个 代 码 时 只 有 一 位 发 另 的 邻
相
格 雷 码 的 特 点 : 从 一 个 代 码 变 为
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2.奇偶校验码 奇偶校验码分为奇校验码和偶校验码两种。校验位的编码规 校验位的编码规 则是: 则是:对于奇校验码,若信息位中有偶数个1,则校验位为1; 对于偶校验码,若信息位中有奇数个1,则校验位为1。
5 5
5
5
5×100= 5 + =5555
同样的数码在不同的数 位上代表的数值不同。
即:(5555)10=5×103 +5×102+5×101+5×100 又如:(209.04)10= 2×102 +0×101+9×100+0×10-1+4 ×10-2
2、二进制 、
数码为:0、1;基数是2。 运算规律:逢二进一,即:1+1=10。 二进制数的权展开式: 如:(101.01)2= 1×22 +0×21+1×20+0×2-1+1 ×2-2 =(5.25)10
数制与编码
第一章 数制与编码§1.1进位计数制∑==-≤≤=110,i m i i i i r r a r a N当10≤r 时,借用十进制数数表示,r >10时,10以后的数用字母表示 §1.2二进制的特点1.状态简单,容易实现, 2.算术运算简单 3.运算方便 4.节省设备1)设n 是数的位数,R 是基数 n =3,R=10,R u =103=1000R n ——表示的最大倍数量 nR= ——表示R u 个信息量所用的设备量nR=3×10=30R n ≥1000 R=2 2n ≥1000 n =10 R n =1024n R=10×2=202)唯一性证明R=2 N=R n L n N=nLnR 令C=LnN C=nLnR两边同乘R ,RC=nRLnR LnR RC nR = 0)(='L n RRC R=e=2.718§1.3数制的转换1.3.1任意进制转换成十进制按幂展开(10111.1)2=1×24+0×23+1×22+1×21+1×20+1×2-1=(23.5)10(AD.8)16=10×161+13×160+8×16-1=(173.5)101.3.2十进制转换成任意进制N10→N 2一、整数转换(19)10=除2取余(10011)2二、小数转换 乘2取整1.3.3 基数为2k 进位制数之间的转换§1.4机器数——带符号数的代码表示1.4.1原码 1 92 9 12 4 12 2 02 1 02 0 1一、原码的表示符号位表示数的符号,其余位表示数的本身,和真值相同,只是符号位负数用1表示,正数用0表示。
N 3=+0.1011 [N 3]原=0.1011N 4=-0.1011 [N 4]原=1.1011原码形成规则对于n 位的整数N (含一位符号位),[N]原=对于小数[N]原= N2=-1011 [N 2]原=25-1-(-1011)=10000+1011=11011二、原码的性质1.若N ≥0时,[N]原=N ,若N ≤0时,符号位为1,尾数不变。
数制与编码
9
10 1010 12
A
11 1011 13
B
12 1100 14
C
13 1101 15
D
14 1110 16
E
15 1111 17
F
第1章 计算机基础
二、数制的表示方法
1、用下标表示: 如(10011.01)2 (101.11)10 (10011.01)8 (1011.11)16 2、用字母表示:
位权与基数的关系是:位权的值恰是基数的整数次幂。
第1章 计算机基础
1.常见的计数制
四种进位计数制的对应关系
十进 二进制 八进制 十六进制 制
0 000 0
0
十进制 二进制 八进制 十六进制
8 1000 10 8
1
001
1
1
2
010
2
2
3
011
3
3
4
100
4
4
5
101
5
5
6
110
6
6
7
111
7
7
9
1001 11
第1章 计算机基础
ASCII码值的大小
• 数字1的ASCII码值为49 字母A的ASCII码值为65 字母a的ASCII码值为97
• 比较字符ASCII码值的大小 空格<标点符号<数字<大写字母<小写 字母
第1章 计算机基础
字符的编码(一)
1.ASCⅡ码
高4位 低4位
0000
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
数制与编码
例如:819.18这个数,第一个8处于百位,代表800。第二个
1处于十位,代表10。第三个9处于个位,代表9。第四个1处 于十分位,代表1/10。第五个8处于百分位,代表8/100。 因此,十进制的819.18可以写成: 819.18=8×102+1 ×101+9 ×100+1 ×10-1+8 ×10-2
正元计算机培训中心
钱新平
三、计算机中字符的编码
3、汉字的编码: 、汉字的编码:
区位码:汉字也有一张国标码表,把7445个国标码放 ④ 区位码 在一个94行×94列的阵列中。阵列的行称为“区”, 列称为“位”,这样,区号范围和列号范围都是1~ 94。这样,一个汉字在表中的位置就可以用它所在 的区号和位号来确定。 如“中”的区位码为5448, 即54区48位。 区位码和国标码之间的关系: ⑤ 区位码和国标码之间的关系:将一个汉字的十进制 区号和十进制位号分别转换成十六进制数,再加上 20H,就成为此汉字的国标码。例如:“中”的区位 码是:5448,分别将区号54 ,位号48转为十六进制 为36H和30H。然后区号,位号分别加上20H,得 “中”的国标码:3630H+2020H=5650H
钱新平
三、计算机中字符的编码
1、字符编码: 、字符编码:
计算机所表示和使用的数据可分为两大 类:数值数据 字符数据 数值数据和字符数据 数值数据 字符数据。 数值数据: ① 数值数据:用以表示量的大小、正负。 如正整数、小数等。 ② 字符数据:用以表示一些符号、标记。 字符数据: 如英文字母、数字、标点符号、汉字、 声音、图形等等。
对于任意一个既有整数部分, 对于任意一个既有整数部分,又有小数部分的十进 制数,在转换为二进制数时: 制数,在转换为二进制数时:只要将它的整数部分 和小数部分分别按除2取余和乘2取整的法则转换, 最后把所得的结果用小数点连接起来即可。 必须注意: 必须注意:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章数制与编码1.1 数制数制是计数的方法,通常采用进位计数制。
在进位计数制的多位编码中,数制是:⏹ 每一位的构成方法,以及⏹ 从低位到高位的进位规则。
常用的数制:⏹ 二进制(Binary )、 ⏹ 八进制(Octal )、 ⏹ 十进制(Decimal )、 ⏹ 十六进制(Hex-decimal )。
例如:十进制:⏹ 每一位——十进制数由0~9个数字符号(数码)和小数点组成, ⏹进位规则——“逢十进一”(基数为10)。
1.1.1 记数法和分析方法记数法——位置记数法, 分析方法——按权展开式。
例如:十进制数(652.5)10=6×102+5×101+2×100+5×10-1左边为“位置记数法”,右边为“按权展开式”。
代数式为:∑⨯=iiikD 10说明:每一个数位上的数码有不同的权值, ⏹ 权值从左到右以基数的幂次由大到小, ⏹ 数位从左到右由高位到低位排列。
例如:二进制数(101.11)2 = 1×22+0×21+1×20+1×2-1+1×2-2任意进制(基数为R )记数法:∑--=----==110121).()(n mi iiR m n n R R kk k k k k k D八进制和十六进制的按权展开式以此类推。
位置记数法 按权展开式1.1.2 数制转换数值相等,记数方法(数值)不同的数之间的转换。
数制转换的本质是——权值的转换。
1.1.2.1 任意进制到十进制的转换利用任意进制数的按权展开式,可以将一个任意进制数转换成等值的十进制数。
例如:(1011.01)2 =1×23+0×22+1×21+1×20+0×2-1+1×2-2=(11.25)10例如:(8FA.C)16=8×162+F ×161+A ×160+C ×16-1=2048+240+10+0.75=(2298.75)101.1.2.2 “十 二”进制转换考查整数部分,数的二进制按权展开式:设:(D )10可以由n 位二进制数表示,即 (D )10=(k n -1k n -2,…,k 1k 0)2 存在:(D )10=k n -1×2n -1+k n -2×2n -2+…+k 1×21+k 0×20 (D )10/2= k n -1×2n -2+k n -2×2n -3+…+k 1×20 + k 0 / 2((D )10/2商的整数部分)/2= k n -1×2n -3+k n -2×2n -4+…+k 2×20 + k 1 / 2“孤立”余数后,整数的商再除以基数2,依次类推;余数依次为从低到高位的二进制数位。
故而,十进制整数转换为二进制数,采用“除2取余”法。
例1.1:将(173)10转换为二进制数 解:余数整数的商余数整数的商考查纯小数部分——将十进制纯小数转换为二进制数设:(D)10=k-1×2-1+k-2×2-2+…+k-(m-1)×2-(m-1)+k-m×2-m存在:(D)10= k-1 +k-2×2-1+…+k-(m-1)×2-(m-2)+k-m×2-(m-1)整数部分为k-1“孤立”整数部分,小数部分再乘以基数2,依次类推。
故而,十进制小数部分转换为二进制数,采用“乘2取整”法。
例1.2:将(0.6875)10转换为二进制数解:例1.3:将十进制转换成二进制——(219.723)10解:思考:转换误差为多少?考虑最低有效位对应的权:2-m,m是保留的位数,若要保持原数据的精度,二进制小数位的位数应保留几位?1.2.3 “二 十六”进制转换由于4位二进制数恰好代表0~15共16种取值,而且将4位二进制数看作一个整体时,它的进位输出恰好是逢十六进一,所以采用“分组对应”法。
例如:将(1011101.101001)2转换为十六进制数从小数点,⏹ 整数部分从低到高4位一组,最高一组如不足4位高位以0补齐; ⏹小数部分从高到低4位一组,最低一组如不足4位低位以0补齐。
( 101 1101.1010 0100 )2所以,(1011101.101001)2=(5D.A4)16 。
1.1.2.3 “十六→二”进制转换采用“等值代替”法。
例如:(8FA.C6)16=( 1000 1111 1010 . 1100 0110 )2=( 100011111010.1100 011)2。
1.1.2.4 小结二进制、十六进制、八进制 数之间的转换方法为:(图1. 1)图1. 1 进制之间的转换方法其中,十进制到二进制的转换:⏹ 整数部分:除2取余,⏹纯小数部分:乘2取整。
5 D A 41.1.3 二进制正负数的表示及运算1.1.3.1 二进制四则运算⏹加法:1+1=0 进位1,逢二进位;⏹减法:0-1=1 借位1,逢二借位;⏹乘法:1×1=1,0×1=0;多位乘法,结合加法;⏹除法:多位除法,乘法结合减法。
1.1.3.2 二进制正负数的表示1.1.3.2.1 原码对于给定的字长,最高位为符号位,表示正负号:⏹0 ——正,⏹ 1 ——负,其余各位表示数的绝对值。
例如:设8-bit(含符号)字长,[(+43)10]=(0 010 1011)2=(2B)16[(-43)10]=(1 010 1011)2=(AB)10正数的无符号和有符号的表示方法相同,正数的原码是它本身。
1.1.3.2.2 反码负数的反码是对其绝对值正数的编码(正数原码)求反。
方法1:对绝对值位域求反;符号为:正数原码为”0”,则负数反码为”1”;方法2(推荐):对整个码字逐位取反。
例如:[(+25)10]=(0 001 1001)2=(+19)16[(-25)10]原=(1 001 1001)2[(-25)10]反=(1 110 0110)21.1.3.2.3 补码计算补码的方法1——“反码加一”,确切地说是:给定某数,若已知相反符号数的二进制编码(有符号数的补码编码,对于正数,补码编码与原码编码相同),将相反符号数的码字含符号位逐位取反,然后从最低位加上1。
这也是求相反符号数补码的方法。
特例:对于0的取相反符号数的操作。
例如,设字长4 bit,则有:(0000)2 —(取反)→ (1111)2 —(+1)→ 1 0000补码的性质:“0”的补码编码是唯一的。
可以用补码表示有符号的定点数,例如:(设:含符号位字长为8-bit ) (+25)10 = (0 001 1001)2 —(取反)→ [(1 110 0110)2]反 —(+1)→ [(1 110 0111)2]补例如:含符号位字长为8-bit ,对于[(-25)10]补的码字实施补码意义下“取相反符号”操作, [(-25)10]补=[(1 110 0111)2]补 —(取反)→ (0 001 1000)2 —(+1)→ (0 001 1001)2 补码的性质:补数的补数是原数。
例1.4:设含符号位字长为8-bit ,求(-39)10的补码表示 解:例1.5:设含符号位字长为8-bit ,给定补码为[(1110 1010)2]补,求该数的十进制表示 解:1.1.3.2.3.1 补码的性质——加减法运算负数采用补码表示后,就可以把减法转换为加法。
例如:39-22=39+(-22)=17,设8-bit 字长,可知 (+39)10=(0010 0111)2,(+22)10=(0001 0110)2,[(-22)10]原=(1001 0110)2,[(-22)10]补=(1110 1010)2。
方法1:原码运算000100010110000101110010-方法2:补码运算0001000111010111001110010+两种运算方法比较:⏹ 方法1——舍去 保持字长舍去 保持字长◆需要先判断被减数与减数的大小,以保证被减数大于减数;否则,◆需要调整次序并记录结果的符号。
⏹方法2——◆减法转换为加法;◆“符号位”参与运算;◆(如果有)进位,则自动丢失;◆运算结果仍是补码。
1.1.3.2.3.2 补码的性质——模和补数研究进位后自动丢掉的数,相当于数值2n,其中n为(含“符号”的)字长,它是“模”。
日常例子:钟表的模是12,如果要从八点拨到三点,两种方法:顺拨相当于加法,逆拨相当于减法。
本例中:逆拨数——5顺拨数——7达到同样的效果,顺拨数和逆拨数是关于模12的补数(即:相加等于模)。
补码的性质:补码的作用就是对所有的负数以其关于模2n的补数表示。
由此,可以由补数的关系计算补码。
计算补码的方法2——由补数的关系计算补码1:[-X]补=2n-[X]补补码的范围如图1. 2:图1. 2 补码取值范围的示意图1.1.4 代码及其码制数字系统中常用二进制代码来表示相关的对象。
编制代码要遵循一定的规则。
代码不只可以用来表示自然二进制数值,也不只能够表示数量的大小。
1注意:①有时候也将“补数”叫作“补码”,但与前述的“补码”的语义不同,“补数”强调的是与模的关系;②值得注意的是,有的提法,如:“‘补码’的‘补码’是‘原码’”,其中,“原码”是指最初给定的码字,后面一个“补码”是指施行“反码加一”操作——“在补码码制系统中,按照补码的求相反符号数的操作,对于给定的码字执行两次这样的操作,还会得到与原先相同的码字。
”1.1.4.1 BCD码——Binary Coded Decimal(二——十进制代码)0~9这十个符号的二进制编码,用4-bit二进制码元,各个二进制码元对应的权值不一定取自然二进制。
可以分为恒权码和无权码。
恒权码——各位数码对应着固定的权值。
1.1.4.1.1 8421码四位自然二进制编码0~9,10(A)~15(F)非法码字。
一般“BCD码”即指“8421 BCD码”。
1.1.4.1.2 余3码相对于自然二进制码,加上3。
以0011~1100表示0~9个字符。
特点:加法可产生进位,但加法结果(不含进位)必须减去0011。
1.1.4.1.3 2421码最高bit的权值为2,且规定前5个和后5个镜像对称取反——前五个0+(0,1,2,3,4),后五个1+(3,4,5,6,7) ,镜像对称码字后3位的模为“8”。
1.1.4.1.4 余3循环码取4-bit格雷码中连续10个代码组成,且仍保持其“单位距离”特性。
1.1.4.2 格雷码(循环码)格雷码(Gray Code),又叫作循环码。