大学计算机基础(第二版)
上QQ阅读APP看书,第一时间看更新

1.2.1 数制

1.数制的概念

数制又称进位计数制,是指用统一的符号规则来表示数值的方法,它有3个基本术语:

①数符:用不同的数字符号来表示一种数制的数值,这些数字符号称为“数符”。

②基数:数制所允许使用的数符个数称为“基数”。

③权值:某数制中每一位所对应的单位值称为“权值”,或称“位权值”,简称“权”。

在进位计数制中,使用数符的组合形成多位数,按基数来进位、借位,用权值来计数。一个多位数可以表示为

式中,i为某一位的位序号;Ai为i位上的一个数符,0≤Ai≤R-1,如十进制有0、1、2……8、9共10个数符;R为基数,将基数为R的数称为R进制数,如十进制的R为10;m为小数部分最低位序号;n为整数部分最高位序号(整数部分的实际位序号是从0开始,因此整数部分为n+1位)。

式(1-1)将一个数表示为多项式,也称为数的多项式表示。例如,十进制数786,它可以根据式(1-1)表示为786=7×102+8×101+6×100,等式的左边为顺序计数,右边则为按式(1-1)的多项式表示。实际上把任何进制的数按式(1-1)展开求和就得到了它对应的十进制数,所以式(1-1)也是不同进制数之间相互转换的基础。

由此,可以将进位计数制的基本特点归纳为:

①一个R进制的数有R个数符。

②最小的数符为0,最大的数符为R-1。

③计数规则为“逢R进1,借1当R”。

2.常用数制

在日常生活中,人们通常使用十进制数,但实际上存在着多种进位计数制,如二进制(2只手为1双手)、十二进制(12个信封为1打信封)、十六进制(成语“半斤八两”,中国古代计重体制,1斤=16两)、二十四进制(1天有24小时)、六十进制(60秒为1分钟,60分钟为1小时)等。在计算机内部,一切信息的存储、处理与传输均采用二进制的形式,但由于二进制数的阅读和书写很不方便,因此在阅读和书写时又通常采用八进制数和十六进制数来表示。表1-2列出了常用的进位计数制。

表1-2 常用进位计数制

(1)十进制

十进制(Decimal System)有0~9共10个数符,基数为10,权系数为10i(i为整数),计数规则为“逢10进1,借1当10”。对十进制的特点我们非常熟悉,因此不再详细介绍。

(2)二进制

二进制(Binary System)是计算机内部采用的数制。二进制有两个数符0和1,基数为2,权系数为2i(i为整数),计数规则为“逢2进1,借1当2”。一个二进制数可以使用式(1-1)展开,例如:

(10101101)2=1×27+0×26+1×25+0×24+1×23+1×22+0×21+1×20

(3)八进制

八进制(Octal System)有8个数符,分别用0、1、2、3、4、5、6、7共8个数符表示,基数为8,权系数为8i(i为整数),计数规则是“逢8进1,借1当8”。由于8=23,因此1位八进制数对应于3位二进制数。一个八进制数可以使用式(1-1)展开,例如:

(753.64)8=7×82+5×81+3×80+6×8-1+4×8-2

(4)十六进制

十六进制(Hexadecimal System)有16个数符,分别用0、1……9、A、B、C、D、E、F表示,其中A、B、C、D、E、F分别对应十进制的10、11、12、13、14、15。十六进制的基数为16,权系数为16i(i为整数),计数规则是“逢16进1,借1当16”。由于16=24,因此1位十六进制数对应于4位二进制数。一个十六进制数可以使用式(1-1)展开,例如:

(3EC.B9)16=3×162+14×161+12×160+11×16-1+9×16-2

注意:为了区分不同进制的数,我们在数字(外加括号)的右下角加脚注10、2、8、16分别表示十进制、二进制、八进制和十六进制。或将D、B、O、H4个字母放在数的末尾以区分上述4种进制。例如,256D或256表示十进制数,1001B表示二进制数,427O表示八进制数,4B7FH表示十六进制数。

3.计算机采用二进制的原因

人们日常使用的是十进制,但是由于技术上的原因,计算机内部一律采用二进制表示数据和信息,选择二进制的主要原因是:

(1)二进制容易被物理器件所实现

例如,开关的两个状态(ON/OFF)可以用来表示二进制两个数符0和1,一个二极管的截止和导通也能够与二进制状态对应。

(2)二进制数可靠性高

两种状态表示二进制两个数符,数字传输和处理不容易出错,电路工作可靠,抗干扰能力强。

(3)二进制运算规则简单

例如,二进制的加法法则只有3个,乘法法则也只有3个,简化了计算机内部器件的电路,提高了机器运算的速度。

(4)二进制逻辑性强

计算机工作原理是建立在逻辑运算基础上的,逻辑代数是逻辑运算的理论依据。二进制只有两个数符0和1,正好代表逻辑代数中的“真”和“假”。

4.二进制的运算规则

二进制运算有算术运算、逻辑运算和移位运算等,这里主要介绍加法、乘法和逻辑运算。

(1)加法运算规则

0+0=0,0+1=1,1+1=10

注意:1+1=10,等号右边10中的1是进位。

(2)乘法运算规则

0×0=0,0×1=0,1×1=1

【例1-1】计算10110101+10011010的值。

【例1-2】计算1101×110的值。

(3)逻辑运算规则

二进制数1和0在逻辑上可以代表“真”与“假”、“是”与“否”、“有”与“无”。这种具有逻辑属性的变量称为逻辑变量。计算机的逻辑运算和算术运算的主要区别是:逻辑运算是按位进行的,位与位之间不像加减运算那样有进位或借位的联系。逻辑运算主要包括3种基本运算:逻辑加法(又称“或”运算)、逻辑乘法(又称“与”运算)和逻辑否定(又称“非”运算)。此外,“异或”运算也很有用。

①逻辑加法(“或”运算)。逻辑加法通常用符号“+”或“∨”来表示。逻辑加法运算规则如下:

0+0=00∨0=0;0+1=10∨1=1;1+0=11∨0=1;1+1=11∨1=1。

可以看出,逻辑加法有“或”的意义。也就是说,在给定的逻辑变量中,A或B只要有一个为1,其逻辑加的结果为1;两者都为1则逻辑加的结果为1。

②逻辑乘法(“与”运算)。逻辑乘法通常用符号“×”或“∧”或“·”来表示。逻辑乘法运算规则如下:

0×0=00∧0=00·0=0;0×1=00∧1=00·1=0;

1×0=01∧0=01·0=0;1×1=11∧1=11·1=1。

不难看出,逻辑乘法有“与”的意义。它表示只当参与运算的逻辑变量都同时取值为1时,其逻辑乘积才等于1。

③逻辑否定(非运算)。逻辑非运算又称逻辑否运算。其运算规则为:

④异或逻辑运算(半加运算)。异或运算通常用符号“⊕”表示,其运算规则为:

0⊕0=00同0异或,结果为00⊕1=10同1异或,结果为1

1⊕0=11同0异或,结果为11⊕1=01同1异或,结果为0

即两个逻辑变量相异,输出才为1。