x第2章 计算机运算基础_第1页
x第2章 计算机运算基础_第2页
x第2章 计算机运算基础_第3页
x第2章 计算机运算基础_第4页
x第2章 计算机运算基础_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 计算机运算基础计算机运算基础 进位计数制。进位计数制。 数的表示方法。数的表示方法。 数的运算方法。数的运算方法。 本节重点本节重点:数的表示方法数的表示方法,二进制加法电路。二进制加法电路。 本节难点本节难点:数的表示方法数的表示方法,二进制加法电路。二进制加法电路。 本节内容本节内容:第一节 数 制一、进位计数制:按进位的原则进行记数一、进位计数制:按进位的原则进行记数的数制,称为进位记数制。的数制,称为进位记数制。1、十进制、十进制(Decimal System): 逢十进一逢十进一 共有十个数码共有十个数码:0,1,2,.,952389十进制十进制010110210310

2、410万万 千千 百百 十十 个个进位记数制两个最基本概念进位记数制两个最基本概念a 权权:个,十,百,千等表示权。:个,十,百,千等表示权。十进制的权是十进制的权是以以10为底的幂,第为底的幂,第i 位的权为位的权为10i。 b 基基:所使用数码的个数。:所使用数码的个数。十进制的基是十进制的基是10。52389=5x104+2x103+3x102+8x101+9x1002、二进制、二进制(Binary System): 逢二进一逢二进一 共有共有2个数码个数码:0,1 10321012342)625.27(2120212121202121B101.11011)101.11011(权是权是2

3、i;基是;基是2。3、八进制、八进制(Octave System): 逢八进一逢八进一 共有共有8个数码个数码:0,1,2,.,7 权是权是8i;基是;基是8。3210188182858786O521.67)521.67(4、十、十 六六 进进 制制 (Hexadecimal System): 逢十六进一逢十六进一 共有共有16个数码个数码:0,1,.,9,A,.,F 权是权是16 i ;基是;基是16 。102101216)0664.939(16116116111610163)113(AB十进制十进制二进制二进制八进制八进制十六进制十六进制十进制十进制二进制二进制八进制八进制十六进制十六进制

4、000091001119111110101012A2102211101113B3113312110014C41004413110115D51015514111016E61106615111117F7111771610000201081000108表表2-1 常用记数制表示数的方法常用记数制表示数的方法 二、计算机中为什么要用二进制或十六进二、计算机中为什么要用二进制或十六进制记数制记数 能用最少的状态表示最大的数,这样计算机能用最少的状态表示最大的数,这样计算机硬件结构最简单硬件结构最简单十进制十进制八进制八进制二进制二进制状态数状态数40(4位)位)40(5位)位)40(10位)位)最大值最

5、大值999985-1=32767210-1=1048575采用采用x进制数,位数为进制数,位数为n,x.n为状态数。假设为状态数。假设x.n=c(常数),其表示的最大数为(常数),其表示的最大数为xn-1。设设f(x)=xn-1,显然,显然f(x)为最大时最节省状态。为最大时最节省状态。令令p(x)=f(x)+1=xn,显然,显然f(x)最大时最大时p(x)也最大。也最大。对对p(x)=xn=xc/x两边取对数并求导,两边取对数并求导,令导数为令导数为0即可取得极大值,经过推导得:即可取得极大值,经过推导得: ln x =1,即,即x=2.71828 理论上理论上3进制所用的状态量最少,其次为

6、进制所用的状态量最少,其次为2进进制。但因电路中一般只有制。但因电路中一般只有2种状态,故计算机种状态,故计算机中采用中采用2进制数是必然的。进制数是必然的。 因二进制表示数的位数很长,为了书写简短,因二进制表示数的位数很长,为了书写简短,便于记忆,也采用便于记忆,也采用16进制。如:进制。如:(1010 1101 1000 0101)2=(AD85)16 A D 8 5三三 数制之间的转换数制之间的转换 1 十进制十进制 二进制二进制 整数部分:整数部分:除除2取余法取余法2532613631001011122222低位低位高位高位(52)10=(110101)2整数部分整数部分 1整数部分

7、整数部分 0整数部分整数部分 10.625 21.250.250.50 21.0 2(0.625)10=(0.101)2 小数部分:小数部分:乘乘2取整法取整法注:如果小数部分不是注:如果小数部分不是0,则要继续乘下去。对于有些数,则要继续乘下去。对于有些数,小数部分不可能为小数部分不可能为0,则只能根据精度要求取近似值。,则只能根据精度要求取近似值。 2 二进制二进制 十进制十进制 104321012342)5625.25(212120212120202121B1001.11001)1001.11001(按权展开即可按权展开即可:按权展开即可按权展开即可:3 二进制二进制 十六进制十六进制

8、将二进制数将二进制数4位一组,用相应位一组,用相应16进制数表示,进制数表示,不足部分添不足部分添0。(0001 0110 1101 . 0100 1010)2 = (16D.4A)164 十六进制十六进制 二进制二进制 一位十六进制数可以用四位二进制数表示。一位十六进制数可以用四位二进制数表示。(0001 1000 0110 0011 . 0101 1011)2(1 8 6 3 . 5 B)16所以所以(1863.5B)16=(0001100001100011.01011011)2第二节第二节 数的表示方法数的表示方法一、真值与机器数一、真值与机器数 机器数:一个数在机器中的表示形式;机器数

9、:一个数在机器中的表示形式; 真真 值:这个数本身,即用值:这个数本身,即用+-号表示的数;号表示的数;N1=+1001010BN2= -1001010B0100101011001010符号位符号位数值部分数值部分 带符号数:在符号位用带符号数:在符号位用0表示正,表示正,1表示负。表示负。比如上面的比如上面的N1=74,N2=-74。 无符号数:全部有效位均表示数的大小,无无符号数:全部有效位均表示数的大小,无符号位。符号位。01001010表示无符号数表示无符号数7411001010表示无符号数表示无符号数202 二、数的定点和浮点表示方法二、数的定点和浮点表示方法 定点表示法:小数点在数

10、中的位置是定点表示法:小数点在数中的位置是固定不变的。固定不变的。 浮点表示法:小数点在数的位置是浮浮点表示法:小数点在数的位置是浮动的。动的。n定点表示法:定点表示法:n对于一十进制数:对于一十进制数:231.6=0.2316*103n类似的,对于二进制类似的,对于二进制N有有 N=2P*SP:数:数N的阶码,指明了小数点的位置;的阶码,指明了小数点的位置;S:数:数N的尾数,表示数的尾数,表示数N的全部有效数字。的全部有效数字。n计算机中通常有两种约定:计算机中通常有两种约定:假定假定P=0,且尾数,且尾数S为纯整数,这时定点数只能为纯整数,这时定点数只能表示整数。表示整数。假定假定P=0

11、,且尾数,且尾数S为纯小数,这时定点数只能为纯小数,这时定点数只能表示小数。表示小数。符号位符号位尾数尾数S.符号位符号位尾数尾数.SN=-101 111111011111符号位符号位尾数(纯整数)尾数(纯整数)n2 浮点表示法:阶码是个可变的数值浮点表示法:阶码是个可变的数值 设设 N=2P*SP正负用阶符正负用阶符Pf表示:表示: Pf =0时阶码为正,时阶码为正, Pf =1时阶码为负。时阶码为负。S正负用数符正负用数符Sf表示:表示:Sf =0时尾数为正,时尾数为正, Sf =1时尾数为负。时尾数为负。数符数符阶符阶符阶码阶码尾数高尾数高8位位尾数低尾数低8位位AddrAddr+1Ad

12、dr+2 7 6 5 4 3 2 1 0三、原码、反码、补码三、原码、反码、补码n原码、反码、补码是带符号机器数的表示原码、反码、补码是带符号机器数的表示方法。方法。n1、模模的概念的概念 我们把一个计量器的容量称为我们把一个计量器的容量称为模或模数模或模数,记为记为M或或modM。 一个一个n位位2进制寄存器的模为进制寄存器的模为M= 2n。模的特点:模的特点:当模为当模为2n时,时, 2n和和0在机器中表在机器中表示方法是相同的。示方法是相同的。n=4,24=16=10000000010=00000000n2、原码表示法、原码表示法D7D6D5D4D3D2D1D0符号位符号位数的大小数的大

13、小0 正数正数1 负数负数+1001010B原原=01001010B- 1001010B原原=11001010B原码的特点:原码的特点:(1) 数值部分即为带符号数的二进制数数值部分即为带符号数的二进制数(2) “0” 有有+0 和和 0之分之分(+0)原原 = 0000 0000B( 0)原原 = 1000 0000B(3) 8位二进制原码表示数的范围位二进制原码表示数的范围1111,1111B 0111 1111B即即 127 +127n3 反码表示法反码表示法n正数的反码与其原码相同。正数的反码与其原码相同。n负数的反码:符号位不变,数字位按位取反。负数的反码:符号位不变,数字位按位取反

14、。 +127原原 = +127反反 = 0111 1111B 127原原 = 1 111 1111B 127反反 = 1 000 0000Bn反码的特点:反码的特点:“0” 有有 0 和和 0之分之分 +0反反 = 0000 0000B, 0反反 = 1111 1111B8位二进制反码表示数的范围位二进制反码表示数的范围1000 0000B 0111 1111B即即 127 +127n4 补码的表示补码的表示0123456789顺时针为加顺时针为加逆时针为减逆时针为减A=5,B=3 A-B=2如果顺时针转动如果顺时针转动7格,格,即即A+B=5+7=12指针指针仍然指仍然指2。称称B=-3与与

15、B=7对模对模10同余,同余, B称为称为B对模对模10的的补数或补码。补数或补码。n设设B为一负数,其模为为一负数,其模为M,则,则B的补码为的补码为M+B。在。在2进制中,通常以进制中,通常以2n为模,因此:为模,因此: X补补= 2n +XX为正数,为正数, X补补就是就是X本身;本身;X为负数,为负数, X补补就是从就是从2n减去减去|X|例:当例:当X1=-1010011,求其补码?,求其补码?X1补补=-1010011=28-1010011=(11111111+1)-1010011=(1111 1111-1010011)+1= X1反反+1所以有:所以有: X1补补= X1反反+1

16、正数的补码与其原码相同。正数的补码与其原码相同。负数的补码:符号位不变,数字位取反最低位负数的补码:符号位不变,数字位取反最低位加加1,也即反码,也即反码+1。结论:结论:(2) 8位二进制补码表示数的范围:位二进制补码表示数的范围:1000 0000B 0111 1111B即即 128 +127(1) +0补补= -0补补= 0000 0000B +0补补= +0原原=0000 0000-0补补= -0反反+1=11111111+1 =1 0000 0000补码的特点:补码的特点:n对于负数:对于负数:n(1)已知)已知X原原,求,求X补补n符号位不变,数字位取反符号位不变,数字位取反,最低

17、位加最低位加1。n(2)已知)已知X补补,求,求X原原nX补补补补=X原原n(3)求补:已知)求补:已知X补补,求,求-X补补n连同连同符号位符号位一起一起取反取反,最低位加最低位加1。8 8位有符号数的表示范围位有符号数的表示范围 对对8位二进制数:位二进制数: l原码:原码: -127 +127 l反码:反码: -127 +127 l补码:补码: -128 +127 想一想:想一想:16位有符号数的表示范围是多少?位有符号数的表示范围是多少? n5 常用编码常用编码n(1)二)二-十进制(十进制(BCD)码)码用二进制编码表示十进制数称为用二进制编码表示十进制数称为BCDBCD码码 。一位

18、十进制数需要用一位十进制数需要用4 4位二进制编码表示。位二进制编码表示。例如:例如:(0100 1001 0111 1000.0001 0100 1001)BCD ( 4 9 7 8 . 1 4 9 )DBCD码优点码优点:与十进制转换方便,容易阅读;:与十进制转换方便,容易阅读;缺点:缺点:表示的数位长,增加电路复杂性,减慢运算速度。表示的数位长,增加电路复杂性,减慢运算速度。n当希望计算机直接用十进制进行运算时,应当希望计算机直接用十进制进行运算时,应将数用将数用BCD码来存储和运算。但要对二进制码来存储和运算。但要对二进制运算结果进行十进制调整。运算结果进行十进制调整。0 1 0 0+

19、 0 0 1 10 1 1 14370 1 0 0+ 1 0 0 01 1 0 0481212的的BCD码:码:0001 0010例例 BCD码加法码加法nBCD加法调整规律:加法调整规律:若两个若两个BCD数相加结果大于数相加结果大于1001,亦即十进制数大,亦即十进制数大于于9,则应做加,则应做加0110(即加(即加6)调整。)调整。若两个若两个BCD数相加结果并不大于数相加结果并不大于1001,但却产生了,但却产生了进位,相当于十进制运算大于等于进位,相当于十进制运算大于等于16,则也要做加,则也要做加0110 (加(加6)调整。)调整。0101 01000100 10001001 11

20、00 01101010 001001100001 0000 0010+)+)+)例例加加6调整调整5448高高4位加位加6调整调整102nBCD减法调整规律:减法调整规律:若两个若两个BCD数相减时,低数相减时,低4位向高位向高4位有借位,位有借位,在低在低4位就要做减位就要做减0110(即减(即减6)调整。)调整。n(2)字母数字代码)字母数字代码-ASCII码及通用字符码及通用字符编码编码nASCII:American Standard Code for Information Interchange, 即美国信息交换标准代码。即美国信息交换标准代码。n采用采用7位二进制代码对字符进行编码

21、位二进制代码对字符进行编码 n数字数字09的编码是的编码是0110000(30H)0111001,它,它们的高们的高3位均是位均是011,后,后4位正好与其对应的二进制位正好与其对应的二进制代码(代码(BCD码)相符。码)相符。 n最高位通常最高位通常做奇偶校验用做奇偶校验用。 0000010100111001011101110000NULDLESP0Pp0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB7GWgw1000BS

22、CAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;Kk1100FFFS,Nn1111SIUS/?O_oDELNUL 空空SOH 标题开始标题开始STX 正文结束正文结束ETX 本本文结束文结束EOT 传输结束传输结束ENQ 询问询问ACK 承认承认BEL 报警符报警符BS 退格退格HT 横向列表横向列表LF 换行换行VT 垂直制表垂直制表FF 走纸控制走纸控制CR 回车回车SO 移位输出移位输出SI 移位输入移位输入SP 空格空格低四位低四位高三位高三位例:例:1101+1001=10110 1 1 0 1 +) 1 0 0 1 1 0 1 1

23、0第三节第三节 数的运算方法数的运算方法一一 基本运算基本运算加法:加法:0+0=0 0+1=1+0=1 1+1=10乘法:乘法:0*0=0 0*1=1*0=0 1*1=1例:例:1101-0111=0110 1 1 0 1 -) 0 1 1 1 0 1 1 0例:例:1101*110=1001110 1 1 0 1 +) 1 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 0 0 1 1 1 0例:例:11011101=101余余10 1 0 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 0二、补码的加减法运算二、补码的加减法运算n特点:符号位与数值

24、部分一起参加运算,并特点:符号位与数值部分一起参加运算,并且自动获得结果(包括符号和数值部分)。且自动获得结果(包括符号和数值部分)。1、补码的加法运算、补码的加法运算因为因为X补补+Y补补=2n+X+ 2n +Y= 2n+(X+Y) =X+Y补补所以有:所以有: X补补+Y补补= X+Y补补例:例:X=+10010B,Y=-01111B,则,则 X补补 = 0 1 0 0 1 0 +) Y补补 = 1 1 0 0 0 1 X+Y补补 = 1 0 0 0 0 1 1符号位的进位,丢掉符号位的进位,丢掉2、补码的减法运算、补码的减法运算 X补补-Y补补= X补补+-Y补补= X-Y补补例:例:X

25、= -0111000B,Y= -0010001B X补补=1 1001000 Y补补=1 1101111 -Y补补=0 0010001 X补补=1 1001000 +) -Y补补=0 0010001X补补+-Y补补=1 1011001X-Y补补= X补补+-Y补补=11001001三、定点乘法运算三、定点乘法运算n实现定点乘法运算就是确定乘积的符号和乘实现定点乘法运算就是确定乘积的符号和乘积的数值。积的数值。符号:同号相乘,乘积为正;符号:同号相乘,乘积为正; 异号相乘,乘积为负。异号相乘,乘积为负。数值:两数尾数之积。数值:两数尾数之积。例:两个无符号数例:两个无符号数A=1011,B=11

26、01 1 0 1 1 被乘数被乘数 *)1 1 0 1 乘数乘数 1 0 1 1 0 0 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 部分积部分积乘积乘积结论:结论:两个两个n位无符号数相乘,乘积的位数为位无符号数相乘,乘积的位数为2n位;乘积等于各部分积之和。位;乘积等于各部分积之和。四、逻辑运算(布尔代数)四、逻辑运算(布尔代数)n布尔代数也称逻辑代数。和普通代数一样,布尔代数也称逻辑代数。和普通代数一样,可以写成下面这样的表达式:可以写成下面这样的表达式: Y= f (A,B,C,D)特点:特点:1. 变量只有两种可能的数值:变量只有两种可能的数值:0 , 1

27、2. 函数函数 f 只有三种基本方式:只有三种基本方式:“与与”“”“或或”“”“非非”。由此可导出其他的逻。由此可导出其他的逻辑运算:辑运算:“异或异或”,“同或同或”,“与或非与或非”。1. 与运算(与运算(Y=AB Y=AB Y=AB )与运算也称为逻辑乘法。运算规则为与运算也称为逻辑乘法。运算规则为 Y=0 0 = 0 Y=1 0 = 0 Y=0 1 = 0 Y=1 1 = 1 Y=1结论:结论:二者皆真二者皆真(1)结果为真结果为真(1) ,有一伪者,有一伪者(0)结果必为伪结果必为伪(0) 。“见见0得得0,全,全1为为1 ” 。例:例:1 1 0 0 1 0 1 0 A)0 0

28、0 0 1 1 1 1 B 0 0 0 0 1 0 1 0 YY=AB=00001010Y=02. 或运算(或运算(Y=A+B Y=AB)或运算也称为逻辑加法。运算规则为或运算也称为逻辑加法。运算规则为 Y=0 + 0 = 0 Y=0 Y=1 + 0 = 1 Y=0 + 1 = 1 Y=1 + 1 = 1结论:结论:二者皆伪二者皆伪(0)结果必伪结果必伪(0) ,有一真者,有一真者(1)结果为真结果为真(1) 。 “见见1得得1,全,全0为为0 ” 。Y=1例:例:1 0 1 0 1 A+) 1 1 0 1 1 B 1 1 1 1 1 YY=A+B=111113. 反运算(反运算(Y= )反运

29、算也称为非运算,逻辑否定。运算规为:反运算也称为非运算,逻辑否定。运算规为: = 0 = 1 当当A为多位时,为多位时,A=A1A2A3A4.An。则逻辑反。则逻辑反A01nAAAAY321例:设例:设A=11010000,则,则Y= = 00101111A4. 异或运算(异或运算(Y=A B )或运算也称为逻辑加法。运算规则为或运算也称为逻辑加法。运算规则为 Y=0 0 = 0 Y=0 Y=1 0 = 1 Y=0 1 = 1 Y=1 1 = 0 Y=0结论:结论:两变量相同,结果为两变量相同,结果为0 ;两变量不同结;两变量不同结 果为果为1。Y=1例:例:1 0 1 0 A ) 1 1 0 1 B 0 1 1 1 YY=A B=01115. 布尔代数的基本运算规律布尔代数的基本运算规律v恒等式恒等式 A0=0 A1=A AA=A A+0=A A+1=1 A+A=A A+ =1 A =0 =Av运算规律运算规律 交换律交换律 AB=BA A+B=B+A 结合律结合律 (AB)C=A(BC)= (AB)C (A+B)+C= A+(B+C)= A+B+C 分配律分配律 A(B+C)=AB+AC (A+B)(C+D)=AC+AD+BC+BDAAA 例:例: A+AB=A(1+B)=A A+ B=A+AB+ B=A+(A+ )B =A+B6. 摩根定理摩根定理 式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论