《计算机中的数学问题.ppt》由会员分享,可在线阅读,更多相关《计算机中的数学问题.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机中的数学问题计算机中的数学问题1现在学习的是第1页,共54页计算机中的数制计算机中的数制l了解了解l 特点;l 表示方法;l 相互间的转换。2现在学习的是第2页,共54页一、常用记数制一、常用记数制 l十进制十进制符合人们的习惯符合人们的习惯l二进制二进制便于物理实现便于物理实现l十六进制十六进制便于识别、书写便于识别、书写l八进制八进制3现在学习的是第3页,共54页1.十进制十进制特点:以十为底,逢十进一;特点:以十为底,逢十进一;共共有有0 0-9 9十个数字符号十个数字符号。表示:表示:4现在学习的是第4页,共54页2.二进制二进制特点:以特点:以2为底,逢为底,逢2进位;进位;只
2、有只有0和和1两个符号。两个符号。表示:表示:5现在学习的是第5页,共54页3.十六进制十六进制特点:以特点:以16为底,逢为底,逢16进位;进位;有0-9及A-F共16个数字符号。表示:表示:6现在学习的是第6页,共54页进位计数制的一般表示进位计数制的一般表示一般地,对任意一个一般地,对任意一个K进制数进制数S都可表示为都可表示为其中:Si-S的第i位数码,可以是K个符号中任何一个;n,m 整数和小数的位数;K-基数;Ki-K进制数的权7现在学习的是第7页,共54页如何区分不同进位记数制的数字如何区分不同进位记数制的数字在数字后面加一个字母进行区分:在数字后面加一个字母进行区分:l二进制:
3、数字后面加B,如1001Bl八进制:数字后面加O,如1001Ol十进制:一般不加,如1001l十六进制:数字后面加H,如1001Hl在明显可以区分其记数制的情况下,可以省略在明显可以区分其记数制的情况下,可以省略数字后面的字母数字后面的字母8现在学习的是第8页,共54页二、各种数制间的转换二、各种数制间的转换1.非十进制数到十进制数的转换非十进制数到十进制数的转换 按相应按相应进位计数制的权表达式展开,再进位计数制的权表达式展开,再按十进制求和。按十进制求和。例:例:10110010B10110010B =(?)=(?)1010 13FAH13FAH =(?)=(?)10109现在学习的是第9
4、页,共54页2.十进制到非十进制数的转换十进制到非十进制数的转换l十进制十进制 二进制的转换:二进制的转换:整数部分:除整数部分:除2取余;取余;小数部分:乘小数部分:乘2取整。取整。l十进制十进制 十六进制的转换:十六进制的转换:整数部分:除整数部分:除16取余;取余;小数部分:乘小数部分:乘16取整。取整。以小数点为起点求得整数和小数的各个位。以小数点为起点求得整数和小数的各个位。10现在学习的是第10页,共54页例:将十进制数25.75转换为二进制数最终结果:最终结果:2521221余数06203211210低位(靠右)停止条件:商为0转换结果:(25)10=(11001)2高位(靠左)
5、11现在学习的是第11页,共54页3.二进制与十六进制间的转换二进制与十六进制间的转换l用用4位二进制数表示位二进制数表示1位十六进制数位十六进制数 例:例:10110001001.110=(?)H 0101 1000 1001.1100 5 8 9 .C 注意:位数不够时要补注意:位数不够时要补012现在学习的是第12页,共54页无符号二进制数的运算无符号二进制数的运算 无符号数无符号数 算术运算算术运算 有符号数有符号数 逻辑运算逻辑运算13现在学习的是第13页,共54页一、无符号数的运算一、无符号数的运算l算术运算算术运算 包括:包括:加法运算加法运算 减法运算减法运算 乘法运算乘法运算
6、 除法运算除法运算14现在学习的是第14页,共54页1.规则规则l加法:加法:1+1=0(有进位)(有进位),l减法:减法:0-1=1(有借位)(有借位),l乘除法:乘除法:一个数乘以一个数乘以2相当于该数左移一位;除以相当于该数左移一位;除以2则则相当于该数右移相当于该数右移1位。位。15现在学习的是第15页,共54页例例:l000010110100=00101100B l000010110100=00000010B11B 即:即:商商=00000010B 余数余数=00000011B16现在学习的是第16页,共54页2.无符号数的表示范围无符号数的表示范围 一个一个n位的无符号二进制数位的
7、无符号二进制数X,其表示范围为,其表示范围为 0 X 2n-1若运算结果超出这个范围,则产生溢出。若运算结果超出这个范围,则产生溢出。(或者说运算结果超出(或者说运算结果超出n n位,则产生溢出)位,则产生溢出)判别方法:判别方法:运算时,运算时,当最高位向更高位有进位(或当最高位向更高位有进位(或 借位)借位)时则产生溢出时则产生溢出。17现在学习的是第17页,共54页例例:1111111111111111 +00000001+00000001 1 1 00000000 00000000结果超出位(最高位有进位),发生溢出。结果超出位(最高位有进位),发生溢出。(结果为(结果为256256,
8、超出位二进制数所能表示的,超出位二进制数所能表示的范围范围255255)18现在学习的是第18页,共54页3.逻辑运算逻辑运算l与与()、或、或()、非、非()、异或、异或()l特点:按位运算,无进借位特点:按位运算,无进借位l运算规则运算规则.例:例:A=10110110,B=01101011求:求:AB,B,AB,B,ABB 19现在学习的是第19页,共54页4.逻辑门逻辑门逻辑门:完成逻辑运算的电路逻辑门:完成逻辑运算的电路掌握:掌握:l与、或、非门逻辑符号和逻辑关系与、或、非门逻辑符号和逻辑关系(真值表);(真值表);l与非门、或非门的应用。与非门、或非门的应用。20现在学习的是第20
9、页,共54页与门(与门(AND Gate)Y=A BABY000010100111&ABY注:基本门电路仅完成注:基本门电路仅完成1位二进制数的运算位二进制数的运算21现在学习的是第21页,共54页或门(或门(OR Gate)Y=ABABY000011101111YAB1122现在学习的是第22页,共54页非门(非门(NOT Gate)1AYY=AAY011023现在学习的是第23页,共54页异或门(异或门(eXclusive OR Gate)Y=ABYABABY00001110111024现在学习的是第24页,共54页5.译码器译码器l74LS138译码器:译码器:G1G2AG2BCBAY0
10、Y7 译码输出译码输出译码输入译码输入译码使能译码使能25现在学习的是第25页,共54页74LS138真值表真值表 使 能 端输 入 端输 出 端G1#G2A#G2B C B A#Y0#Y1#Y2#Y3#Y4#Y5#Y6#Y7 0 1 1 0 1 1 0 1 0 01 0 01 0 01 0 01 0 01 0 01 0 01 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0
11、 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 现在学习的是第26页,共54页带符号二进制数的运算带符号二进制数的运算l计算机中的带符号二进制数计算机中的带符号二进制数l把二进制数的把二进制数的最高位最高位定义为符号位定义为符号位l符号位为符号位为 0 表示表示正数正数,符号位为,符号位为 1 表示表示负数负数l连同符号位一起数值化了的数,称为连同符号位一起数值化了的数,称为机器数机器数。l机器数所表示的真实的数值,称为机器数
12、所表示的真实的数值,称为真值真值。(在以下讲述中,均以位二进制数为例)27现在学习的是第27页,共54页例例:+52=+0110100=0 0110100 符号位符号位数值位数值位 -52=-0110100=1 0110100 真值真值机器数机器数28现在学习的是第28页,共54页1.符号数的表示符号数的表示l对于符号数,机器数常用的表示方对于符号数,机器数常用的表示方法有法有原码原码、反码反码和和补码补码三种。数三种。数X的原码记作的原码记作 X 原原,反码记作,反码记作 X 反反,补码记作补码记作 X 补补。注意:对正数,三种表示法均相同。注意:对正数,三种表示法均相同。它们的差别在于对负
13、数的表示。它们的差别在于对负数的表示。29现在学习的是第29页,共54页原码原码X原l定定义义符号位:符号位:0表示正,表示正,1表示负;表示负;数值位:真值的绝对值。数值位:真值的绝对值。30现在学习的是第30页,共54页原码的例子原码的例子真值X=+18=+0010010X=-18=-0010010原码X原=0 0010010X原=1 0010010符号符号位n位原码表示数值的范围是位原码表示数值的范围是对应的原码是对应的原码是1111 0111。31现在学习的是第31页,共54页数数0的原码的原码l8位数位数0的原码:的原码:+0=0 0000000 -0=1 0000000 即:数即:
14、数0的原码不唯一。的原码不唯一。32现在学习的是第32页,共54页反码反码X反定义定义l 若若X0,则则 X反反=X原原l 若若X0,则则X补补=X反反=X原原l若若X0,则则X补补=X反反+137现在学习的是第37页,共54页例例:lX=52=0110100 X原原=10110100 X反反=11001011 X补补=X反反+1=11001100n位补码表示数值的范围是位补码表示数值的范围是对应的补码是对应的补码是1000 0111。38现在学习的是第38页,共54页0的补码:的补码:l+0补补=+0原原=00000000l-0补补=-0反反+1=11111111+1 =1 00000000
15、 对对8 8位字长,进位被舍掉位字长,进位被舍掉l+0补补=-0补补=0000000039现在学习的是第39页,共54页特殊数特殊数10000000l该数在原码中定义为:该数在原码中定义为:-0l在反码中定义为:在反码中定义为:-127l在补码中定义为:在补码中定义为:-128l对无符号数:对无符号数:(10000000)=12840现在学习的是第40页,共54页8位有符号数的表示范围:位有符号数的表示范围:l对对8位二进制数:位二进制数:l原码:-127 +127l反码:-127 +127l补码:-128 +127l想一想:想一想:16位有符号数的表示范围是多少?位有符号数的表示范围是多少?
16、41现在学习的是第41页,共54页2.有符号二进制数与十进制的转换有符号二进制数与十进制的转换对用补码表示的二进制数:对用补码表示的二进制数:1)求出真值)求出真值 2)进行转换)进行转换42现在学习的是第42页,共54页例例:l将一个用补码表示的二进制数转换为十进制数。将一个用补码表示的二进制数转换为十进制数。1)X补补=0 0101110B 真值为:真值为:+0101110B 正数正数 所以:所以:X=+46 2)X补补=1 1010010B 负数负数 X=X补补补补=11010010补补 =-0101110B 所以:所以:X=-4643现在学习的是第43页,共54页3.补码加减法的运算规
17、则补码加减法的运算规则l通过引进补码,可将减法运算转换为通过引进补码,可将减法运算转换为加法运算。规则如下:加法运算。规则如下:X+Y补补=X补补+Y补补 X-Y补补=X补补-Y补补 其中其中X,Y为正负数均可,符号位参与运算。为正负数均可,符号位参与运算。44现在学习的是第44页,共54页*补码的运算原理补码的运算原理 模模(module)就就是是一一个个计计数数系系统统的的最最大大容容量量。例例如如,钟钟表表的的模模为为12,8位二进制数的模为位二进制数的模为28。凡凡是是用用器器件件进进行行的的运运算算都都是是有有模模运运算算,运运算算结结果果超超过过模模的的部部分分会被运算器会被运算器
18、自动丢弃自动丢弃。因此,当。因此,当器件为器件为n位时,有位时,有X=2n+X (mod 2n)不难验证,不难验证,X补补=2n+X (mod 2n)因此,因此,X Y补补=2n+(X Y)(mod 2n)=(2n+X)+(2n Y)(mod 2n)=X补补+Y补补45现在学习的是第45页,共54页例例:lX=-0110100,Y=+1110100,求求X+Y补补lX原原=10110100 lX补补=X反反+1=11001100lY补补=Y原原=01110100l所以:所以:X+Y补补=X补补+Y补补 =11001100+01110100 =0100000046现在学习的是第46页,共54页4
19、.符号数运算中的溢出问题符号数运算中的溢出问题l进(借)位l在加法过程中,符号位向更高位产生进位;l在减法过程中,符号位向更高位产生借位。l溢出l运算结果超出运算器所能表示的范围。47现在学习的是第47页,共54页溢出的判断方法溢出的判断方法l方法:方法:l同号相减或异号相加不会溢出。l同号相加或异号相减可能溢出:l两种情况:两种情况:同号相加时,结果符号与加数符号相反溢出;异号相减时,结果符号与减数符号相同溢出。l方法:方法:l两个8位带符号二进制数相加或相减时,若 C7C61,则结果产生溢出。C7为最高位的进(借)位;C为次高位的进(借)位。48现在学习的是第48页,共54页例例:l有符号
20、数运算,有溢出表示结果是错误的有符号数运算,有溢出表示结果是错误的l无符号数运算,有进位表示结果无符号数运算,有进位表示结果是是错误的错误的 1 0 1 1 0 1 0 1 +1 0 0 0 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 +0 1 1 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 0 0 0 0 1 0 +1 1 0 0 1 1 0 1 1 0 0 0 0 1 1 1 1CASE1:CASE2:CASE3:49现在学习的是第49页,共54页1.5 二进制编码二进制编码一、十进制数的表示一、十进制数的表示BCD码l用用4位二进制
21、数表示一位十进制数。有两种表位二进制数表示一位十进制数。有两种表示法:示法:压缩压缩BCD码码和和非压缩非压缩BCD码码。l压缩压缩BCD码的每一位用码的每一位用4位二进制表示,位二进制表示,00001001表示表示09,一个字节表示两位十进,一个字节表示两位十进制数。制数。l非压缩非压缩BCD码用一个字节表示一位十进制数,码用一个字节表示一位十进制数,高高4位总是位总是0000,低,低4位的位的00001001表示表示09。50现在学习的是第50页,共54页l计算机中除了能够处理数值数据以外,还可以处理文字、语音、图像等各种信息,这些信息统称为非数值数据。l非数值数据在计算机中也必须以二进制
22、形式二进制形式表示,非数值数据的表示本质上是编码的过程。l最常用的数据编码:美国标准信息交换代码(American Standard Code for Information Interchange,ASCII码)(见下页ASCII编码表,教材中的附录A)二、非数值数据的表示二、非数值数据的表示51现在学习的是第51页,共54页ASCII码美国标准信息交换代码美国标准信息交换代码现在学习的是第52页,共54页 ASCII码码l采用采用7位二进制代码对字符进行编码位二进制代码对字符进行编码l数字数字09的编码是的编码是01100000111001(30H39H),它们的,它们的高高3位均是位均是
23、011,后,后4位正好与其对应的二进制代码(位正好与其对应的二进制代码(BCD码)码)相符。相符。l英文字母英文字母AZ的的ASCII码从码从1000001(41H)开始顺序递增,)开始顺序递增,字母字母az的的ASCII码从码从1100001(61H)开始顺序递增,这样的)开始顺序递增,这样的排列对信息检索十分有利。排列对信息检索十分有利。l最高位通常总为最高位通常总为0,有时也用作奇偶校验位。,有时也用作奇偶校验位。53现在学习的是第53页,共54页 计算机中常用数据单位计算机中常用数据单位1、位bit 位是计算机所能表示的最基本最小的数据单元。位就是一个二进制数,它只能有两种状态:0和1。2、字节byte 1byte=8bit,如:ABH,12H,FFH3、字word 若干字节构成。计算机的每一个字所包含的bit数,称 为字长。不同档次的计算机有不同的字长。IBM-PC系列的字长为16bit,即:1word=2byte=16bit54现在学习的是第54页,共54页
限制150内