2.2 数字技术
一、知识点综述
数字技术是采用有限个状态(主要是两个状态)来表示、处理、存储和传输信息的技术。
1.信息的基本单位——比特(****)
(1)比特的概念
数字技术的处理对象是“比特”,英文为“bit”,中文为“二进位数字”或“二进位”,简称“位”。比特目前只有两种取值状态,即0和1两个数字。
比特是组成数字信息的最小单位,用小写“b”表示。它既没有颜色,也没有大小和重量。
存储信息的基本单位是“字节”(byte),用大写“B”表示。一个字节包含8个比特。
用比特表示信息可以使计算机结构简单、速度快,并能表示数值、文字、符号、图像、声音等多种不同形式的信息,另外,还方便数据压缩及查错纠错。
(2)比特的存储
计算机中使用存储器来存储二进位信息,存储容量使用2的幂次作为单位,这有助于存储器的设计,经常使用的存储单位有:
千字节(KB),1KB = 210字节 = 1024B;
兆字节(MB),1MB = 220字节 = 1024KB;
吉字节(GB),1GB = 230字节 = 1024MB(千兆字节);
太字节(TB),1TB = 240字节 = 1024GB(兆兆字节)。
更大存储容量的单位依次为PB、EB、ZB、YB。
存储比特的有触发器(寄存器)、电容器(半导体存储器)、磁盘、光盘等。寄存器、高速缓存、内存、文件和文件夹的大小都使用210为进位计算其容量,而磁盘、光盘、U盘、存储卡等外存制造商采用103 为进位来计算其容量,所以,160GB的硬盘实际容量约为160,041,885,696 字节。
(3)比特的传输
在数据通信和计算机网络中传输二进位信息时,由于是一位一位串行传输的,传输速率采用10的幂次进行计算。经常使用的速率单位有:
比特/秒(b/s),也称“bps”,如9600bps(9600b/s);
千比特/秒(kb/s),1kb/s = 103比特/秒 = 1000b/s;
兆比特/秒(Mb/s),1Mb/s = 106比特/秒 = 1000kb/s;
吉比特/秒(Gb/s),1Gb/s = 109比特/秒 = 1000Mb/s;
太比特/秒(Tb/s),1Tb/s = 1012比特/秒 = 1000Gb/s。
很多书中小写k表示1000,大写K表示1024。
2.比特与二进制数(****)
(1)数制概念
① 各种不同的数制。
人们日常使用的数是十进制数,使用0~9十个数字符号,运算规则是“逢十进一”。用字母D表示十进制数,一般省略。
使用比特来表示的数称为二进制数,使用0和1两个不同的数字符号,运算规则是“逢二进一”。用字母B表示二进制数。
八进制数使用0~7八个数字符号,运算规则是“逢八进一”。用字母Q表示八进制数。
十六进制数使用0~9十个数字和A~F六个字母,其中A~F分别代表十进制的10~15。运算规则是“逢十六进一”。用字母H表示十六进制数。
计算机中只使用二进制一种计数制,并不使用其他计数制,但由于二进制数太长,书写、阅读、记忆均不便,为了方便,经常使用八进制数和十六进制数表示,简练、易写易记。
② 基数和权。
每种进位制都有固定的数码——基数,用R表示。按基数进位或借位,运算规则是“逢R进一”。如二进制数的基数为2,八进制数的基数为8。
在任何进位计数制中,数码所处的位置不同,代表的数值大小也不同。对每一个数位赋予的位值,在数学上叫做“权”。位权的值等于基数的若干次幂。如一个十进制数在百位上的权为102,一个二进制数在倒数第2位上的权为21。
(2)二进制数的运算
比特的算术运算与十进制相同,加法运算有进位,减法运算不够时有借位。运算规则如表2.1 所示。两个多位二进制数的加减法运算,由低位到高位逐位进行。例如,0101+0100=1001,1001-0100=0101。
表2.1 比特的加减运算规则
(3)数制转换
① 十进制数转换成R进制数。
整数和小数分开转换。整数部分除以R取余数,直到商为0,逆排。小数部分乘以R取整数,直到小数部分为0或者希望得到的位数为止,顺排。
例如,将十进制数29.625转换成二进制数:
29.625 = 11101.101 B
② R进制数转换成十进制数。
每一位乘以其相应的权值并相加,计算按权展开式的和。
例如,将二进制数11101.1011转换成十进制数:
11101.1011B = 1×24+1×23+1×22+0×21+1×20+1×2-1+0×2-2+1×2-3+1×2-4 = 29.6875
十进制小数转换时经常会出现二进制无穷小数,只能取近似值,例如:
0.63D=0.1010…B
③ 二进制数、八进制数、十六进制数间的相互转换。
将二进制数转换成八进制数,以小数点为界,往左往右三位二进制换一位八进制,不足三位,整数部分前面补0,小数部分后面补0。例如:
001101 001110.110100 B = 1516.64 Q
将八进制数转换成二进制数,一位八进制数变成三位二进制数,例如:
2467.32 Q = 010100 110111.011010 B = 10100 110111.011 01 B
二进制数与十六进制数之间的转换和二、八进制数转换类似,只是需要四位一组。例如:
001101001110.11001010 B = 34E.CA H
35A2.CF H = 0011010110100010.11001111 B = 11010110100010.11001111 B
十六进制数与八进制数的相互转换,以二进制数为媒介,即先将其转换成二进制数,再转换成另外的一个进制的数。例如:
1D.4 H = 00011101.0100 B = 011101.010 B = 35.2 Q
任意进制数间都可以相互转换,一般以十进制数或者二进制数为媒介。
3.信息在计算机中的表示(***)
计算机可以处理各种信息,如数值、文字、图形、声音、视频、命令、程序等。
(1)数值信息的表示
计算机中的整数和实数都用二进制表示,整数也叫“定点数”,实数也叫“浮点数”,实数是指既有整数部分又有小数部分的数。一般只要求掌握整数在计算机中的表示。
① 无符号整数。
无符号整数也称不带符号的整数,其取值范围如下。
8位无符号整数的取值范围为:0~255(28-1)。
16位无符号整数的取值范围为:0~65535(216-1)。
n位无符号整数的取值范围为:0~2n-1。
② 带符号整数。
带符号整数的最高位即最左边的一位为符号位,用“0”表示正号“+”,“1”表示负号“-”。
● 原码表示法:最高位为符号位,其余各位表示数的绝对值。
例如,十进制数43对应的二进制数为101011,若是8位机器数,数值部分补足7位,那么+43和-43的原码分别如下:
(+43)原 = 00101011
(-43)原 = 10101011
带符号整数的原码的取值范围如下。
8位原码的取值范围为:-127~+127(-27+1~+27-1)。
n位原码的取值范围为:-2n-1+1~+2n-1-1。
● 补码表示法:正数的补码与原码相同,负数的补码符号位是“1”,绝对值部分为原码的每一位取反后再在末位加“1”。例如:
将-43的原码10101011的绝对值部分每位取反后末位加1得到:(-43)补 = 11010101。
带符号整数的补码的取值范围如下。
8位补码的取值范围为:-128~+127(-27~+27-1)。
n位补码的取值范围为:-2n-1~+2n-1-1。
补码表示法可使加法与减法运算规则统一。通过补码也可以得到一个数的原值。
例如,若一个数在计算机中的补码为11110011,则其原值为多少?
这是求补码的逆运算,先将其减1,得11110010,再除了符号位外各位取反得10001101,最后将数值位0001101转换成十进制数后加上负号,得-13。
计算机中整数有多种,同一个二进制代码表示不同类型的整数时,其含义(数值)可能不同,一个代码到底代表哪种整数,是由指令决定的。
(2)文字符号的表示
字符是指记录语言的符号,包括字母、数字和符号等。字符集是按某种规则编码的一组字符的有序集合。字符集中每个字符都使用二进位表示,称为该字符的编码。不同的字符其编码各不相同。
ASCII码:西文字符一般采用ASCII码表示,即美国标准信息交换码。标准ASCII字符集采用7位编码,共有27=128个字符,其中有96个可打印(显示)字符,32个控制字符。每个ASCII字符以一个字节存放,最高位为0,数字、字母连续存放。
汉字的编码:汉字因为数量大,字形复杂,同形字多,异体字多,给汉字在计算机内的表示带来一定的困难,汉字的具体编码在第6章数字媒体及应用中介绍。
(3)图像等其他信息的表示
数字图像由M(列)× N(行)个取样点组成,取样点即像素。
① 黑白图像。
每个像素只有一个分量,只用1个二进位表示,其取值仅“0”(黑)和“1”(白)两种。
② 灰度图像。
每个像素只有一个分量,表示亮度,一般用8~12个二进位表示,若用n位表示,其取值范围是0~2n-1,可表示2n个不同的亮度。
③ 彩色图像。
像素通常是由3个彩色分量(红、绿、蓝)组成的矢量,三个分量分别表示三基色的亮度,假设3个分量分别用n、m、k个二进位表示,则可表示2n+m+k种不同的颜色。例如,真彩色的红、绿、蓝3个分量分别用8位表示,可表示28+8+8 =224,约1600万种不同的颜色。
4.比特的运算(***)
比特最基本的逻辑运算有三种:逻辑加、逻辑乘、逻辑取反。运算规则如表2.2所示。逻辑加也称“或”运算,用符号“OR”、“∨”或“+”表示。逻辑乘也称“与”运算,用符号“AND”、“∧”或“·”表示。逻辑取反也称为“非”运算,用符号“NOT”或“-”表示。
两个多位二进制数进行逻辑运算时,按位独立进行,相邻位之间不发生关系。例如,0101∨0100=0101,1001∧0101=0001。
用几个晶体管相互连接起来就可以实现各种基本逻辑运算,即门电路,速度极快。
表2.2 比特的逻辑运算规则
二、真题解析
1.下面关于比特的叙述中,错误的是________。(2007年秋基础第1题)
A.比特是组成数字信息的最小单位
B.比特只有“0”和“1”两个符号
C.比特既可以表示数值和文字,也可以表示图像和声音
D.比特“1”总是大于比特“0”
【解析】比特是组成数字信息的最小单位,目前只有两种状态:数字0 或数字1。比特能表示数值、文字、符号、图像、声音等多种不同形式的信息。比特既没有颜色,也没有大小和重量。D错,比特“1”和比特“0”不能比较大小,是两种状态。
【答案】D
2.使用存储器存储二进位信息时,存储容量是一项很重要的性能指标。存储容量的单位有多种,下面不是存储容量单位的是________。(2011年春基础第2题)
A.TB
B.XB
C.GB
D.MB
【解析】经常使用的存储容量的单位有:千字节(KB)、兆字节(MB)、吉字节(GB)、太字节(TB)。更大存储容量单位依次为PB、EB、ZB、YB。
【答案】B
3.数据传输速率是数据通信中重要的性能指标。Gb/s是数据传输速率的计量单位之一,其正确含义是________。(2010年秋基础第2题)
A.每秒兆位
B.每秒千兆位
C.每秒百兆位
D.每秒百万位
【解析】传输速率的度量单位使用10的幂次进行计算,1kb/s=1000b/s、1Mb/s=1000kb/s、1Gb/s=1000Mb/s(即每秒千兆位)、1Tb/s=1000Gb/s(即每秒兆兆位)。
【答案】B
4.与十六进制数AB等值的八进制数是________。(2009年秋基础第3题)
A.253
B.254
C.171
D.172
【解析】十六进制数与八进制数转换,以二进制数为媒介,一位十六进制数对应四位二进制数,AB对应的二进制数为10101011,三位二进制数对应一位八进制数,不足三位前面补0,即10101011,对应的八进制数为253。
【答案】A
5.二进制数10111000和11001010进行逻辑“与”运算,结果再与10100110进行逻辑“或”运算,最终结果的十六进制数形式为________。(2008年秋基础第2题)
A.A2
B.DE
C.AE
D.95
【解析】逻辑“与”运算的规则是除了1与1为1外,其余都为0,10111000和11001010“与”的结果为10001000。逻辑“或”运算规则是除了0或0外,其余都为1,10001000和10100110“或”的结果为10101110,将其转换成十六进制为AE。
【答案】C
6.二进制数(1010)2与十六进制数(B2)16相加,结果为________。(2007 年春基础第3题)
A.(273)8
B.(274)8
C.(314)8
D.(313)8
【解析】先将不同的进制转换成相同的进制,本题以二进制数为媒介比较方便。将十六进制数B2转换为二进制,为10110010,将其与(1010)2相加,有进位,为10111100,对应的八进制数为274。
【答案】B
7.最大的10位无符号二进制整数转换成八进制数是________。(2009年春基础第2题)
A.1023
B.1777
C.1000
D.1024
【解析】最大的10位无符号二进制整数为1111 111111,转换成八进制数,从右到左,三位一组,为1777。
【答案】B
8.在下列有关数字技术的一些叙述中,错误的是________。(2010年春基础第3题)
A.数字技术是采用有限个状态(如“0”和“1”)来表示、处理、存储和传输信息的
B.在逻辑代数中,1与1进行逻辑加(∨)和逻辑乘(∧)的结果相同
C.任何一个十进制数,均可以精确地转换成等值的二进制数
D.在PC机中,通常用原码表示正整数,用补码表示负整数
【解析】计算机中,信息的表示、处理、存储、传输等都是二进制,二进制数只有0和1。1与1的逻辑加、逻辑乘的结果都是1。十进制小数转换成二进制数,乘2取整,直到小数部分为0或希望的位数为止,有的数只能得到一个近似值。PC机中,负整数一般用补码表示,正整数的原码、补码相同。
【答案】C
9.在计算机中,若某带符号整数的8位补码表示为10000001,则该整数为________。(2006年春基础第4题)
A.129
B.-1
C.-127
D.127
【解析】本题是求补码的逆运算。最高位是1,为负数。负数的补码为原码除符号位外取反加1。反过来,根据补码求原码,减1取反,减1后为10000000,后7位取反得1111111,即十进制的127,结果是-127。
【答案】C
10.设有补码表示的两个单字节带符号整数a=01001110和b=01001111,则a-b的结果用补码表示为________。(2011年春基础第3题)
A.11111111
B.10011101
C.00111111
D.10111111
【解析】方法一:a、b的最高位都为0,为正数。因为a<b,所以,结果为负数。先求b-a,得0000001,即十进制的1,因此,a-b的结果为-1,用补码表示为11111111。
方法二:根据公式[a-b]补=[a]补+[-b]补计算a-b的补码。a的补码题目中已知,,-b的补码为b的补码取反末位加1,得10110001。[a-b]补=[a]补+[-b]补=01001110+10110001=11111111。
【答案】A
11.所谓“变号操作”,是指将一个整数变成绝对值相同但符号相反的另一个整数。假设使用补码表示的8位整数X=10010101,则经过变号操作后,结果为________。(2006年秋基础第3题,2010年秋基础第3题)
A.01101010
B.00010101
C.11101010
D.01101011
【解析】补码为10010101,减1后除了最高位取反得原码,为11101011,变号就是将最高位符号取反,得01101011。
【答案】D