版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 计算机基础知识l第一节 计算机发展简史及PC机l第二节 计算机中的数和编码系统第一节 计算机发展简史及PC机一、设计思想的发展l珠算珠算l几千年以前,亚洲地区已经广泛使用l(计数工具计数工具)l机械计算器机械计算器l1642年,法布雷兹.帕斯卡尔l(用仪器操纵数字用仪器操纵数字)l可靠的机械计算器可靠的机械计算器l转动的罗盘和齿轮为动力l商业界得主要使用工具,直到电子计算机出现l分析机器分析机器l1830年,英国剑桥教授,查尔斯.巴比奇l信息转换成数字,蒸汽机为动力,磨坊+仓库l根据指令的改变实现不同的功能(指令控制)(指令控制)lENIACl1946年,美国宾夕法尼亚大学,第一台电子
2、数字计算机l按照“分析机器”的原理,使用6000个多芯导线表达指令,复杂繁琐l约翰.冯.诺依曼找到了一个好的解决方案:通过在内存中存储指令,来避免改变多芯导线。lEDVACl第二台电子数字计算机l在ENIAC研制的同时,冯.诺依曼与莫尔小组合作研制的。采用了1945年公布的冯冯.诺依曼原理诺依曼原理:1、计算机由运算器、控制器、存储器、输入设备、计算机由运算器、控制器、存储器、输入设备、输出设备组成输出设备组成2、使用二进制表示信息和进行处理、使用二进制表示信息和进行处理3、运用存储程序原理、运用存储程序原理二、计算机的发展l电子管计算机电子管计算机l1946-1957年,103 104次/秒
3、运算l1947年,美国贝尔实验室发明晶体管l晶体管计算机晶体管计算机l1958-1964年,104 105次/秒运算l1958年,德克萨斯州生产出第一片ICl集成电路计算机集成电路计算机l1965-1971年,105 106次/秒运算l70年代初,LSI诞生;77年,VLSI诞生l大、超大规模集成电路计算机大、超大规模集成电路计算机l1972年至今,106 1011次/秒运算l按处理能力分:巨型机、大型机、小型机、微型机l发展趋势:巨型化、微型化、网络化、智能化微处理器发展过程微处理器发展过程三、微处理器的发展l第一代第一代l71年,Intel 4004, 4040, 8008 l 4位/8位
4、 2000管/片 时钟频率:1MHz l第二代第二代l74年,Intel 8080, 8085 Zilog Z80 Motorola 6800 Rockwel 6502l8位 500010000管/片 时钟频率:24MHz l第三代第三代l78年,VLSI投入使用lIntel 8086, 8088 Zilog Z8000 Motorola 68000l16位 2000060000管/片 时钟频率:48MHz l第四代第四代l80年代初,向系列化方向发展lIntel公司推出性能更高、功能更强的微处理器l286386486PentiumPentiumMMXP IIP III AMD、Cyrix、T
5、IlPentium是划时代的产品是划时代的产品lPentium Pro适合于服务器结构适合于服务器结构lPC、XT、AT之后,习惯上人们直呼微机的之后,习惯上人们直呼微机的CPU型号型号l微处理器微处理器( P, CPU) : 控制器+运算器 集成在一片或几片芯片里,是微型计算机的核心部件,是衡量微型计算机性能的重要指标。l微计算机微计算机( C, MC) : 微处理器微处理器+外围芯片(外围芯片(RAM ROM I/O)等组成系统等组成系统。 单板机:单板机:将CPU,存储器,接口电路,键盘,显示屏等设计在一块电路板上。例如:Z80单板机。 单片机:单片机:将CPU,存储器,接口电路等集成在
6、一片芯片里。例如:MCS- 48 (Intel 8048) , MCS- 51 (Intel 8051)l微处理系统微处理系统( PS, MPS) : 微处理器构成的应用系统微处理器构成的应用系统英特尔微处理器芯片80386PentiumPentium 4四、PC机的历史l1981年、国际商用机器公司(年、国际商用机器公司(IBM)lIntel 8088 CPUl公开技术规范公开技术规范lMS-DOS 和和 PC-DOSl随后,随后,PC/XT 10MB HD 5.25”FD,1984年,年, PC/ATl1978 8086/8088l1982 80286l1985 80386DX、SXl19
7、89 80486DX2、DX4l1993 Pentiuml1995 Pentium Prol1997 Pentium MMXl1997 Pentium IIl1998 赛扬、至强简化的赛扬、至强简化的P IIl1999 P III 微型计算机系统的主要性能指标 一、字长一、字长 字长字长是是CPUCPU内部内部一次能并行处理二进制数一次能并行处理二进制数码的位数,字长取决于码的位数,字长取决于CPUCPU内部寄存器、运算内部寄存器、运算器和数据总线的位数。字长越长,一个字所器和数据总线的位数。字长越长,一个字所能表示数据的精度就越高,处理速度也加快。能表示数据的精度就越高,处理速度也加快。字长
8、字长= =计算机位数。(表示计算机数据总线上计算机位数。(表示计算机数据总线上一次能处理的信息的位数即字长)一次能处理的信息的位数即字长) 现在主流微机现在主流微机CPUCPU是是6464位。位。 Itanium(安腾安腾) -64 CPUCPU的时钟频率的时钟频率也称也称CPUCPU的的主频主频。CPUCPU是是按照严格的时序进行工作的,产生时序的按照严格的时序进行工作的,产生时序的脉冲源是脉冲源是CPUCPU的时钟脉冲,的时钟脉冲,CPUCPU的时钟频率的时钟频率越高,越高,CPUCPU的工作节律加快,计算机系统的工作节律加快,计算机系统的速度越快。的速度越快。二、二、CPUCPU的时钟频
9、率的时钟频率 主存也称内存,主存也称内存,主存的容量以字节(主存的容量以字节(ByteByte)为单元,)为单元,简写为简写为B B,字节数量的大小,由,字节数量的大小,由CPUCPU能发出地址线位数能发出地址线位数多少来确定。多少来确定。 CPU CPU只能访问内存,所有存放在外存中的程序与数只能访问内存,所有存放在外存中的程序与数据必须调入内存后才能被据必须调入内存后才能被CPUCPU执行与处理,主存容量越执行与处理,主存容量越大,则从外存调入内存所占用时间越少,大,则从外存调入内存所占用时间越少,CPUCPU处理数据处理数据的效率就越高。并且内存容量越大,存放信息量越多,的效率就越高。并
10、且内存容量越大,存放信息量越多,便于执行复杂的程序。便于执行复杂的程序。注意:包括主存、外存,所有存储器的容量都是以字节注意:包括主存、外存,所有存储器的容量都是以字节为单位来表示,除非特别注明用位数(为单位来表示,除非特别注明用位数(BitsBits)为单位)为单位三、主存储器容量三、主存储器容量微型计算机一般配有硬、软盘驱动器,微型计算机一般配有硬、软盘驱动器,分别可以驱动硬盘和软盘。还配有光盘分别可以驱动硬盘和软盘。还配有光盘驱动器可驱动光盘,驱动器可驱动光盘,USBUSB接口可以外接接口可以外接U U盘,这些外存储器中,硬盘容量最大,盘,这些外存储器中,硬盘容量最大,决定了微机能存放系
11、统软件和应用软件决定了微机能存放系统软件和应用软件的多少,当前微机一般配接的多少,当前微机一般配接320G320G硬盘硬盘四、外存储器容量四、外存储器容量 要求微机配接外设种类齐全,配接方便要求微机配接外设种类齐全,配接方便灵活,而且扩展能力强。势必要求微机主灵活,而且扩展能力强。势必要求微机主板上硬件接口功能齐全,软件驱动程序功板上硬件接口功能齐全,软件驱动程序功能要强能要强五、外设的配置与扩展能力五、外设的配置与扩展能力第二节第二节 计算机中的数和编码系统计算机中的数和编码系统l目的要求目的要求(1)掌握二进制、十进制、十六进制数的运算掌握二进制、十进制、十六进制数的运算与它们之间的转换;
12、与它们之间的转换;(2)掌握无符号数与有符号数的原码、反码、掌握无符号数与有符号数的原码、反码、补码的运算;补码的运算;(3)掌握掌握8421 BCD码的定义,加、减运算与码的定义,加、减运算与修正法则;修正法则;(4)掌握计算机中加、减运算结果的进位、溢掌握计算机中加、减运算结果的进位、溢出的判断方法;出的判断方法;(5)了解计算机中浮点的表示法与运算。了解计算机中浮点的表示法与运算。一、数据的表示一、数据的表示l位置计数法位置计数法l数码:数字符号 ail基数:数码的个数 Xl计数规则:逢基数进一l权:由位置所决定的权重 Xil例:l计算机中使用二进制计算机中使用二进制l二进制只有两种状态
13、、容易用电路表示双稳态触发器、电容、电路通断等都可表示l二进制运算规则简单,容易用数字逻辑电路实现l二进制可以方便的表示逻辑值,进行逻辑运算l字节(字节(Byte)和和 位(位(bit)lIBM约定约定 1 Byte = 8 bit 1个个Byte 表示表示10进制的进制的 0255lK=210 , M=220,G=230,T=240 1nmiiiXXaN102101222101210)25.5(2120212021)01.101(105104103102101)45.123(信息的表示lASCII码码l美国标准信息交换代码l7位二进制数表示128个字符和控制符09, AZ, az, !#$%
14、&*()_+, 控制符 l使用1个字节的低7位lGB-2312码码l中华人民共和国国家标准信息交换代码l3755+3008+700l双字节表示(开始用点阵、现在用矢量)lCJK大字符集大字符集l20902个编码,中、日、韩、各种语言、符号等l指令代码、校验码、字模编码、扫描码、自定义信息代指令代码、校验码、字模编码、扫描码、自定义信息代码等等码等等ASCII码码 微机中常用的是微机中常用的是ASCASC码(美国信息交换标准代码)码(美国信息交换标准代码), ,如表所示如表所示 它包括它包括1010个十进制数码,个十进制数码,2626个英文字母和一些专用符号,总个英文字母和一些专用符号,
15、总共共128128个字符的个字符的ASCASC码,因此,只需要一个字节中的低码,因此,只需要一个字节中的低7 7位编码,位编码,最高位可用作奇偶校验位,当最高位恒取最高位可用作奇偶校验位,当最高位恒取1 1,称为标记校验,当,称为标记校验,当最高位恒取最高位恒取0 0,称作空格校验,称作空格校验 128 128个个ASCASC字符中有字符中有9595个编码,它们分别对应计算机中在个编码,它们分别对应计算机中在输入输入/ /输出终端设备上能键入和输出显示以及输出打印的输出终端设备上能键入和输出显示以及输出打印的9595个字个字符,包括大小写英文字母,其余符,包括大小写英文字母,其余3333个编码
16、,其编码值为个编码,其编码值为0 0 3131和和127127,则不对应任何显示与打印实际字符,它们被用作为控制码,则不对应任何显示与打印实际字符,它们被用作为控制码,控制计算机控制计算机I/OI/O设备的操作以及计算机软件的执行情况设备的操作以及计算机软件的执行情况NUL 空HT 横向列表(穿孔卡片指信令)FF 走纸控制DC4 设备控制4SOH 标题开始LF 换行CR 回车NAK 否定应答STX 正文结束SYN 空转同步SO 移位输出FS 文字分隔符ETX 本文结束ETB 信息组传送结束SI 移位输入GS 组分隔符EOT 传输结果CAN 删去符SP 空格RE 记录分隔符ENQ 询问EM 纸尽
17、DLE 数据链换码US 单元分隔符ACK 承认SUB 减DC1 设备控制1DEL 作废VEL 报警符ESC 换码DC2 设备控制2BS 退一格VT 垂直制表DC3 设备控制3l表示数据表示数据l无符号数:直接表示l有符号数:原码、反码、补码l机器数与真值机器数与真值 机器数:带符号的二进制数称之为机器数 二进制数最高位作为符号位 :1表示负数,0表示正数例: 取8位字长时10001111B则可以代表-1500001111B则可以代表+15 真值:机器数所能表示的值机器数所能表示的值在微机中,机器数有三种表示方法,即原码、反码与补码在微机中,机器数有三种表示方法,即原码、反码与补码正数负数范围正
18、0负0原码“0 ” + 数值“1”+绝对值-127+127 00000000 10000000反码“0”+ 数 值“1 ” + 按位 取反-127+127 00000000 11111111补码“0”+ 数 值“1 ” + 按位 取反+ 1-128+127 00000000 00000000l浮点数:类似科学计数法 阶码+尾数lBCD码:用半个字节表示1位十进制数JSN2阶码 尾数符号位数值位00111001 001110013 9 9 组合BCD码 (一个字节描述两位十进制数) 组合BCD码 (忽略高字节) (一个字节描述一位十进制数)l十六进制十六进制l数码:09 、AFl1位十六进制数可
19、以表示4位二进制、半个字节,转换方便l八进制八进制l数码:07l1位八进制数可以表示3位二进制l进制的简化符号进制的简化符号l二进制 B, 十六进制 H, 八进制 Q, 十进制 D binary hex octal decimall数制转换数制转换l其他进制 =十进制 按公式展开计算就得到十进制l二进制 =十六进制 四位二进制对应一位十六进制 l整数部分除基数取余、小数部分乘基数取整例:例:(101.101)2 转换成十进制。转换成十进制。按公式展开:按公式展开:例:例:(11.375)10转换成二进制。转换成二进制。整数部分:整数部分:小数部分:小数部分:10321012)625. 5(2*
20、12*02*12*12*02*1210)011.1011()375.11(例如: 将十进制数 20 16384 4096 1024 256 64 16 4 10063 转换为四位十六进制数。A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 20063 - 16384 36791 - 204801 1631 - 10241 6050 - 512 930 - 64 25110 1 100100 20063D= 0100 1110 0101 1001B= 4E59H 32768 8192 2048 512 128 32 8 2 - 16 91
21、.数为20时,可应用除法求余法;2.数为20063时,可应用降幂法。原码表示法原码表示法采用原码表示法简单易懂,但它最大缺点是加采用原码表示法简单易懂,但它最大缺点是加法运算电路复杂,不容易实现法运算电路复杂,不容易实现 若定点整数的原码形式为若定点整数的原码形式为X X0 0X X1 1X X2 2XXn n,则原码表示的,则原码表示的定义是定义是 X 2X 2n n X0 X0 X X原原= = 2 2n n-X=2-X=2n n + + X X 0X-2 0X-2n n X X0 0为符号位,若为符号位,若n=7n=7,即字长,即字长8 8位,则位,则 X X取值范围:取值范围:-127
22、-127+127+127 +0+0原原=00000000=00000000 -0-0原原=10000000=10000000 反码表示法 对于定点整数,反码表示的定义是:对于定点整数,反码表示的定义是: X 2X 2n n X0 X0 X X反反= = (2 (2n+1n+1-1) +X 0X-2-1) +X 0X-2n n 同样同样n n取取7 7,即字长,即字长8 8位,那么位,那么 X X取值范围:取值范围:-127-127+127+127 +0+0反反= 00000000= 00000000 -0-0反反= 11111111 = 11111111 补码表示法 对于定点整数,补码表示的定
23、义是:对于定点整数,补码表示的定义是: X 2X 2n n X0 X0 X X补补= = 2 2n+1n+1 +X=2 +X=2n+1n+1 -X 0X-2 -X 0X-2n n (1-10) (1-10) 同样如果同样如果n n取取7 7,即字长,即字长8 8位,那么位,那么 X X取值范围:取值范围:-128-128+127+127 +0+0补补=-0=-0补补=00000000=00000000 -10000000-10000000补补=10000000=10000000 XX补补 补补=X=X,对已知的一个补码通过再一次求其补,便,对已知的一个补码通过再一次求其补,便可还原出真值可还原
24、出真值 模,即一个系统的量程或此系统所能表示的最大数。 对于某一确定的模,若计算某数A减去小于模的一数B,总可以用数A加上数B的负数加上模(即B的补数)来代替。 利用补数就可以实现减法变加法。例如:对于钟表 10-4(倒拨) = 10+8(顺拨)如里程表、煤气表、电表等二二. .原码、反码、补码 2.计算机中有符号数的表示法 符号 真值 0 1 0 1 1 0 1 1+ 1 1 0 1 1 0 1 1 1 0 0 1 1 0 1 1 0自动丢失 机器数 0 0 0 0 0 0 0 0- - 0 1 0 1 1 0 1 1 1 0 1 0 0 1 0 1与有符号数原码 1 1 0 1 1 0 1
25、 1 对位比较 1.计算机数的运算过程 带符号二进制数 例:计算 91+ (-91) = ? 带符号十进制数数的补码 数的补码运算数的补码带符号二进制数带符号十进制数 X1=(+91)10= ( 0 1 0 1 1 0 1 1)2 X2=(-91)10= ( 1 1 0 1 1 0 1 1)2 1 0 1 0 0 1 01 = 1 0 1 0 0 1 0 0 + 1 可知: 有符号数补码 =有符号数反码 + 1结果不为零 (符号位不变)有符号数真值两原码相加零减有符号数真值有符号数补码-91-91的原码的原码 求二进制负数补码的通用公式:求二进制负数补码的通用公式: 负数补码求负数的原码:负数
26、补码求负数的原码: 正数的原码、反码、补码的关系:正数的原码、反码、补码的关系:(X X)负数的补码负数的补码 = 2= 2n n - -(X X)负数的真值负数的真值 (n n为包括符号位的二进制数的位数)为包括符号位的二进制数的位数) (X X)负数的反码负数的反码 = =(X X)负数的补码负数的补码 -1-1 (X X)负数的补码负数的补码 = =(X X)负数的反码负数的反码 +1+1 (X X)负数的原码负数的原码 = =(X X)负数补码的反码负数补码的反码 +1+1 (X X)正数的原码正数的原码 = =(X X)正数的反码正数的反码 = =(X X)正数的补码正数的补码1 1
27、 1 0 1 1 0 1 1 1 0 1 1 0 1 1-91-91的反码的反码-91-91的补码的补码1 1 0 1 0 0 1 0 0 0 1 0 0 1 0 01 1 0 1 0 0 1 0 1 0 1 0 0 1 0 1 有符号数1 1 0 1 1 0 1 1 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 1 无符号数1 1 0 1 1 0 1 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 13.无符号数的原码、反码、补码例:写出A7H的有符号数与无符号数的原码、反码与 补码。 无符号数 A7H = 167D反码 无符号数与负数求原、反、补码的运算方法基
28、本相同。 特点:无符号数的反码为原码的全部二进制位数求反。原码反码补码 1 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 1 1 0 1 1 0 0 10 1 0 1 1 0 0 1原码补码 有符号数 A7H = -39D 1.8421 BCD码的定义 2.8421 BCD码的运算三. . 8421 BCD码 所谓8421 BCD码,是遵循二进制数8421的编码原则,以四位二进制数表示一位十进制数的码制。四位二进制数的值不能超过“9”。一个二进制数书写起来太长,容易出错也不直观,所以靠人工将十进制数转换为二进制数输入
29、到计算机是非常麻烦的。因此,在计算机输入和输出时,还是采用十进制表示,让计算机完成十进制到二进制的转换和二进制到十进制的转换工作。为了便于计算机识别和转换,通常是把十进制数的每1位变成二进制形式输入给计算机,这种用二进制形式表示1位十进制数的方法,称为二进制编码的十进制数,简称二十进制编码或称BCD编码(Binary Coded Decimal)。例1:计算机如何表示十进制数78D? 在输入数据入计算机时,键入78H。 1 1 0 0 0 0 0 0例3:求(59)BCD+(67)BCD =(126)BCD 0 1 0 1 1 0 0 1 + 0 1 1 0 0 1 1 1 + 0 1 1 0
30、 0 1 1 0结果 = C0H,低四位进位,高四位超过9 0 0 0 1 0 0 1 0 0 1 1 0 1 2 6高四位与低四位都加六修正 0 0 0 0 0 1 1 1 + 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 1例2:求(7)BCD+(6)BCD =(13)BCD结果 = 0DH,低四位超过9 加六修正 + 0 1 1 0 0 0 0 1 0 0 1 1 1 33.8421 BCD码的修正法则 0 0 0 1 1 0 0 1例4:求(72)BCD -(59)BCD =(13)BCD 0 1 1 1 0 0 1 0 - 0 1 0 1 1 0 0 1 (1)四位二进
31、制数为单位,和数大于9或大于15,加6修正; (2)四位二进制数为单位,差数大于9或有借位,减6修正; (3)二次修正,只考虑结果的四位二进制数是否大于9。 - 0 1 1 0结果 = 19H,低四位未超过9,但有借位 0 0 0 1 0 0 1 1 1 3低四位减六修正n加加6修正的原因是:运算电路只能逢十六进一,不能逢十进一修正的原因是:运算电路只能逢十六进一,不能逢十进一n若低位向高位发生了借位,表示借若低位向高位发生了借位,表示借16,而不是借,而不是借10,在低位上,在低位上要作减要作减6修正修正四.进位、溢出的判断 运算结果是否有进位(借位),是否有溢出,应该是对应于不 同类型的数
32、,即先确定运算数的类型。 对于无符号数无符号数的运算结果,只考虑是否有进(借)位只考虑是否有进(借)位; 对于有符号数有符号数的运算结果,只考虑是否有溢出只考虑是否有溢出。1)、判断溢出的方法一(主要方法),必须掌握) D7 D6 D5 D4 D3 D2 D1 D0 加法运算结果:D6有进位,CS = 1;反之,CS = 0。判断有无进/借位: CS+1 = 1,表示有进/借位;减法运算结果:D6有借位,CS = 1;反之,CS = 0。 加法 减法 CS+1(进位) (借位) D7有进位,CS+1 = 1;反之,CS+1 = 0。 D7有借位,CS+1 = 1;反之,CS +1= 0。 CS
33、+1 = 0,表示无进/借位。 CS CS+1 CS 通过两参与运算数结果的高两位是否有进(借)位进行判断。CS+1 CF 判断有无溢出: CS+1 CS = 1,表示有溢出; CS+1 CS = 0,表示无溢出。 CS OF CS+1 2)、判断溢出的方法二 X补码 = XS Xn-2X1X0 + Y补码 = YS Yn-2Y1Y0 Z补码 = ZS Zn-2Z1Z0例:ABH + 8BH = 1 36H 1 0 1 0 1 0 1 1 + 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 0自然丢失V = 1 1 1 + 0 0 0 = 1 通过两参与运算数的符号与结果数的符
34、号位进行判断。如果两正数运算的结果为负数称为正溢出正溢出。溢出判断条件:V= XS YS ZS + XS YS ZS有溢出。两负数之和为正数,为负溢出。负溢出。3)、判断溢出方法三 X补码 = Xf1Xf2 Xn-2 X1X0 + Y补码 = Yf1Yf2 Yn-2 Y1Y0 Z补码 = Zf1 Zf2 Zn-2 Z1Z0例:D5H + CBH = ? 9FH 8DH 自然丢失与方法一同理:两负数运算有溢出,称为负溢出。 使用双符号数进行运算,通过观察结果的双符号是否相同,以判断是否溢出。两符号相同,则无溢出;如两符号异号,则有溢出。溢出判断条件: V = Zf1 Zf2 Zf1 Zf2 Zf
35、1 Zf2 1 1 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 + 1 1 1 0 0 1 0 1 1 + 1 1 0 0 0 1 1 0 1 V= 1 1 = 0;无溢出。 V= 1 0 = 1;有溢出。 1 1 1 0 1 0 0 0 0 0 1 1 0 0 1 0 1 1 0 0 V=1,判为有溢出;V=0,判为无溢出。 两正数运算有溢出,称为正溢出。4)、“溢出”的实质所谓“溢出”,表示有符号运算的结果超过补码的范围。例:补码求和 原码真值求和 将原8位数扩展为16位数再作加: FFABH + FF8BH = FF36H 1 1 1 1 1 1 1 1 1 0 1
36、0 1 0 1 1 + 1 1 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 0(补码) 1 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1(取反)补码的范围:-128 +127(以8位二进制数为例) 1 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0(原码) ABH + 8BH = 1 36H结果已超过7位数有溢出,结果不正确 1 0 1 0 1 0 1 1 + 1 0 0 0 1 0 1 1 0 0 1 1 0 1 1 0 55H + 75H = CAH 0 1 0 1 0 1 0 1 + 0 1
37、 1 1 0 1 0 1 1 1 0 0 1 0 1 0点击该行点击该行补码的范围(以8位二进制数为例) 原码 补码 +127 (0111 1111) +127 (0111 1111) : : : : : : +1 (0000 0001) +1 (0111 1111) +0 (0000 0000) +0 (0000 0000) -1 (1000 0001) -127 (1111 1111) : : : : : : -127(11111111) -1 (1000 0001) -0-0 (1000 0000) -0 - -128 (1 0000 0000)l若参与操作的两数在定义域内,但运算结果超
38、出了若参与操作的两数在定义域内,但运算结果超出了字长范围内补码所能允许表示的值,所计算出的结字长范围内补码所能允许表示的值,所计算出的结果产生了错误,称之为溢出果产生了错误,称之为溢出l例如字长例如字长8 8位,补码表示数的范围是:位,补码表示数的范围是: -128x+127 -128x+127,若字长,若字长n n位,补码所能表示数的范位,补码所能表示数的范围是围是-2-2n-1n-1x2x2n-1n-1-1-1,当运算结果超出这个范围时,当运算结果超出这个范围时,便产生溢出,两个正数相加可能产生正的溢出,两便产生溢出,两个正数相加可能产生正的溢出,两个负数相加可能会产生负的溢出,正负两数相
39、加不个负数相加可能会产生负的溢出,正负两数相加不会产生溢出会产生溢出 C C7 7C C6 6 0 1 0 0 0 0 0 0 + 64 0 1 0 0 0 0 0 0 + 64 + 0 1 0 0 0 0 0 1 + 65 + 0 1 0 0 0 0 0 1 + 65 1 0 0 0 0 0 0 1 + 129+127 1 0 0 0 0 0 0 1 + 129+127, 结结果错误,产生了溢出果错误,产生了溢出 两个正数相加,结果为负数形式,这是两个正数相加,结果为负数形式,这是由于由于+129+127+129+127的原因,从上式可看出的原因,从上式可看出C C6 6=1=1,C C7
40、7=0=0,OF=COF=C6 6CC7 7=10=1=10=1,溢出标志,溢出标志OF=1OF=1,表示有溢出。表示有溢出。 C C7 7C C6 6 -128 -128补补 = 1 0 0 0 0 0 0 0 = 1 0 0 0 0 0 0 0 + -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 1 1 1 1 1 1 1 两个负数相加,结果为正数形式,这是由两个负数相加,结果为正数形式,这是由于于-128-1=-129-128-128-1=-129-128的原因,从上式可看出的原因,从上式可看出C C
41、6 6=0=0,C C7 7=1=1,OF=COF=C6 6CC7 7=01=1=01=1,表示有溢出,表示有溢出 C C7 7C C6 6 +64 +64补补=0 1 0 0 0 0 0 0 =0 1 0 0 0 0 0 0 + -1 + -1补补=1 1 1 1 1 1 1 1 =1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 运算结果正确。运算结果正确。C C7 7=1=1,C C6 6=1=1,则,则OF=COF=C6 6CC7 7=1=11=01=0,无溢出,无溢出65 (计算机存储数)注意:判断进位或溢出的定位注意:判断进位或
42、溢出的定位计算机以相同数进行运算: BFH + 41H 1 0 0 0 0 0 0 0 0(1)加法运算 同学甲 计算: -65 + 65 = 0 (有符号数运算) 运算数后,你怎么知道应该判断进位,或是判断溢出?结果的16进制数:00H 同学甲 1 0 1 1 1 1 1 1 + 0 1 0 0 0 0 0 1 同学乙 1 0 1 1 1 1 1 1 + 0 1 0 0 0 0 0 1 CS+1 CS = 1 1 = 0 CS+1=1 ,则CF = 11 0 0 0 0 0 0 0 0送CF送CF(-65)补码 191 同学乙 191 + 65 = 256 (无符号数运算)100HBFH 4
43、1H OF = 0 无溢出, 其结果为00H正确。有进位,保存结果100H,必须增加高字节。(2)减法运算 1 1 1 0 0 0 0 1 通过变换减法运算为带符号变补作加运算后,进位的判断有误;所以,应用后面的方法运算,其结果应对CF求反。在微机中对于加法和减法使用不同指令(运算过程不一样) 请同学应用以上两种方法运算: 5CH-3DH 检查运算数的结果、OF与CF的值是否相同? 带符号变补作加 直接法 得:CS+1 = 1 1 1 1 0 0 0 0 1 得:CS+1 = 0 则:CF = 1, OF = CS+1 CS = 0, CS = 1 则:CF = 0, OF = CS+1 CS
44、 = 0 计算:3DH-5CH 计算:3DH+(-5CH)有符号数补码 =3DH+A4H 0 0 1 1 1 1 0 1 - 0 1 0 1 1 1 0 0 0 0 1 1 1 1 0 1 + 1 0 1 0 0 1 0 0 1 0 0 1 .1 1 0 0 + 0 0 1 0 .0 1 1 1五五. .数的浮点表示法与运算数的浮点表示法与运算1.浮点数的表示 (1)定点运算 (2)数的浮点表示 阶符 0 0000100 0 1001110 1001.11 = 2 +100 0.1001110 10.0111 = 2 +10 0.1001110 2 +100 与 2 +10中的100与10均为
45、二进制数。(值表示移位数)阶码尾符尾数2 J S 1 1 0 0 .0 0 1 1 小数点对齐,正数与小数分别运算。 例:计算1001.11+10.0111=?如果阶与数在计算机中都以8位二进制表示: 25位 例:- 0.0011101= 2 -10 1.11101002.定点数与浮点数的范围 以32位为例,表示定点数与浮点数。 (1)定点数的范围 -(231-1) +(231-1) (2)浮点数的范围 浮点数范围的大小主要决定于阶码的位数,数的 精度由尾 数的位数确定。 阶码为r 位,尾数为m位,浮点数的范围: 2- (2r-1) -2m-1 N 2+(2r-1) + 2m-1 如:r =
46、5,m = 25,其数的范围: 2 - (25-1) -225 -1 N 2 + (25-1) + 225-1 最小数为:2 -11111 -0.111111 最大数为:2 +11111 +0.1111111 0 0 0 0 0 1 0 1 1 1 1 0 1 0 0浮点数原码表示如下: 3.浮点数的加法运算例1:计算1001.11+10.0111=? (9.75+2.4375=12.1875) 0 .1 0 0 1 1 1 0 + 0 .0 0 1 0 1 0 0 2 +100 0.0010100 (舍入) 0 .1 1 0 0 0 1 0例2:计算-1001.11+10.0111=? (-
47、9.75+2.4375=-7.3125) 1 .0 1 1 0 0 1 0 + 0 .0 0 1 0 1 0 0 1 .1 0 0 0 1 1 0 结果= 2 +100 1.0111010=-111.010(-7.25) 结果= 2 +100 0.1100010=1100.01(12.25) 1001.11 = 2 +100 0.1001110 10.0111 = 2 +10 0.1001110 -1001.11 = 2 +100 1.1001110 求补:(-1001.11)补码 = 2 +100 1.0110010 10.0111 = 2 +10 0.1001110 = 2 +100 0.001001110 (对阶)OF=0,SF=0(正数)OF=0,SF=1(补码为负数) 2 +100 0.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 线性代数简明教程(第二版)-电子课件
- 2026年金华市婺城区政务服务中心(窗口人员)招聘笔试参考题库及答案详解
- 2026年渝中区北碚区工会人员招聘考试参考试题及答案详解
- 2026年四川省广元市政务服务中心(窗口人员)招聘考试模拟试题及答案详解
- 建筑材料购销合同范本
- 2026年西藏自治区日喀则市政务服务中心(窗口人员)招聘考试参考题库及答案详解
- 2026年8月珠海市南水集团有限公司公开招聘就业见习生1人笔试备考题库及答案详解
- 2026年武汉市汉南区政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年呼和浩特市回民区工会人员招聘考试备考试题及答案详解
- 2026年株洲市荷塘区政务服务中心(窗口人员)招聘笔试参考题库及答案详解
- 2025-2026学年小学一年级(下)期末数学试卷
- 云计算平台建设验收规范
- 2026年共产党党章知识竞赛试题库(附答案)
- 超声三基考试试题及答案
- 施工现场临时排水施工方案
- GB/T 47592-2026塑料胺类环氧固化剂伯、仲、叔胺基氮含量的测定
- 2026年云南省中考英语试卷(含答案及解析)
- 2025-2026学年浙江省金华市八年级下册期末教学质量评价卷数学试题 含答案
- 2026年昆山初中分班测试题及答案
- 2026年军队考核笔押题宝典考试题库及参考答案详解(综合卷)
- 2026安徽师范大学工作人员招聘29人笔试备考题库及答案解析
评论
0/150
提交评论