您好,欢迎访问三七文档
微机原理与接口技术2015-2016学年第1学期主讲:高荔●专业基础课●提高计算机应用技能输入设备输出设备总线控制器运算器存储器课程安排课程安排●考查方法:卷面笔答+平时+期中+实验●评分方法:卷面60%考查方式(平时、期中、实验)40%●上课时间:周二5-6节周四1-2节(双周)●地点:教三437教室教学●答疑时间:待定●地点:教三1017室gaoliksk@bupt.edu.cn学时安排课时安排●课程讲授(1)第一章微机基础(2)第二章微处理器的功能结构(3)第三章指令系统与寻址方式(4)第四章汇编语言程序设计(5)第五章处理器外部特性与输入输出(6)第六章存储器(7)第七章中断与定时技术(8)第八章常用接口技术(9)第九章外围设备接口(10)第十章总线技术●学时数3学时4学时6学时6学时4学时2学时8学时10学时3学时2学时48学时(1)DEBUG的使用(2)分支,循环程序设计(3)8255A并行接口应用……●课程实验16学时●学时数仿真软件emu8086仿真软件Proteusisis7《微型计算机接口技术及应用》(华中理工大学出版社)刘乐善编著《微机原理与接口技术》(人民邮电出版社)周明德主编《微型计算机原理与接口技术》(机械工业出版社)杨晓东编《16/32位微机原理、汇编语言及接口技术》(机械工业出版社)钱晓捷陈涛主编《微机原理与接口技术》(电子工业出版社)朱晓华,李彧晟主编参考书籍参考书籍参考书籍参考书籍参考书籍第1章第1章第一节计算机中的数和字符第二节微机的基本结构第三节微机软件系统第四节微机的发展微机基础数与字符第一节计算机中的数和字符●一、数制数制人们对数量计数的一种统计规律计数制中所用到的数码个数R一个数的大小与什么有关?进位计数的两个基本因素基数位权数码所处的位置逢R进一●1、十进制(Decimalnotation)mm1100112n2n1n1nRRK...RKRKRK...RKRK)N(逢十进一,借一当十有十个数码0,1,2,…91nmii1010K)N(1012310102100103108105)N(6342是多少?(6342)8=(3298)103298101是多少?5(101)2=(5)10表达式:特点:K是任意进制数码所允许数中的一个。10)2.5830(进制表示●2、二进制(Binarynotation)1012322121212021)N(●3、八进制(Octalnotation)1012388283858687)N(逢二进一,借一当二有两个数码0,11nmii22K)N(表达式:特点:逢八进一,借一当八有八个数码0,1,…7表达式:特点:1nmii88K)N(2)1.1011(8)2.7653(进制表示●4、十六进制(Hexadecimalnotation)101231616E16116416616A)N(逢十六进一,借一当十六有十六个数码0,1,…9,A,B,C,D,E,F表达式:特点:1nmii1616K)N(●二、进位计数制间的转换16)E.641A(小结公式展开计算整数:除小数:乘28162816取余法取整法三位并一位四位并一位一位拆三位一位拆四位二进制八进制十六进制十进制二进制八进制十六进制十进制八进制十六进制二进制八进制十六进制二进制转换类型转换方法例题CDAF例11466571100110110101111将二进制数转换为八进制和十六进制数例2(77.25)10=(1)(_____)2=(2)(_____)8=(3)(_____)16(1)(a)10101011.1(b)1001101.01(c)11010101.01(d)10001110.11(2)(a)120.4(b)107.5(c)115.2(d)141.2(3)(a)4D.4(b)5B.4(c)39.8(d)5A.C(a)(c)(b)八进制十六进制例题与11010101.1101B相等的数有()。A、325.64OB、B5.DHC、213.8125DD、223.14E、355.61OA、C3AF.EH=()B。3AF.EH=1110101111.1110B。OctalnotationDecimalnotationBinarynotationHexadecimalnotation例4例5例3在不同进制的四个数中最小的一个数是_____。a)(11011001)2b)(75)10c)(37)8d)(A7)16a)217b)75c)31d)167c)盘点全球最潮最酷的30款手表例题设计一个钟表,用二进制表示时钟的时,二进制表示时钟的分,请问各需要几位二进制数。例6数的机器表示计算机中数的表示要考虑的因素数的类型数值范围●二、数的机器表示定点数(小数、整数、实数、复数)数值精确度数据存储和处理所需要的硬件代价计算机常用的数据格式浮点数带符号数无符号数允许小数点的位置左右移动小数点的位置固定无符号数运●1、定点数●加法运算3AH+7CH=B6H58+124=182001110100111110010110110+用什么电路实现这个运算?BAH+FCH=1B6H1011101011111100110110110+进位标志Cy●减法运算12-6=6减法规则“借1当2”110001100110-6-12=?0110110011010-借位标志By已经超出无符号数的运算范畴在计算机系统中减法用加法来实现!无符号数的运算在微机中,小数点位置固定在最低位,即机器中所有的定点数都是纯整数。ABCinSCo乘法运算●乘法运算硬件电路具有高速乘法器专用乘法器加法器+硬件辅助电路软件实现实现方法74LS26174LS284MULALAH×AL→AX具有专用乘法指令没有乘法指令,通过算法编程实现投影乘法子程序.txt11011011X110111010000110110001111乘积的结果变成8位!问题:需要2n位长的加法器改进算法求本次部分积之和时,前一次部分积的最低位不参与计算,则可每求一次部分积之后使其右移一位。乘法运算=0.1a+0.00a+0.001a+0.0001a=0.1a+0.00a+0.001(a+0.1a)=0.1(a+0.1(0*a+0.1(a+0.1a))=0.1(a+0.1(0*a+0.1(a+0.1(a+0))=2-1(a+2-1(0*a+2-1(a+2-1(a+0))))例如:a*b=a*0.1011算法0.11011.00110.10010.1101+0.1101+0.011011010.100111100.0000+0.010011110.1101+1.00010.100011110.00001011部分积乘数4次移位和4次加法运算被乘数a=0.1101存入B寄存器C寄存器A累加器A累加器存放高位部分积C寄存器存放低位部分积永远是A+B只用n位加法器实现。乘法运算电路乘法器电路图原码0100010011000100正数数值部分负数数值部分符号数的表示方法符号(Sign)尾数(Mantissa)习惯上约定机器数的最高位为其符号位,0表示正数,1表示负数。●原码表示在数值前面增加了符号位。[X]原=(01101001)BY=-105X=+105[Y]原=(11101001)Bnn≥0[n]原=2k-1+nn≤0连同符号位在内用k位表示的原码范围(-2k-1+1)~(+2k-1-1)8位原码的整数范围:-127~+127符号数的表示和运算+68-68反码、补码●反码表示正数的反码为其本身,负数的反码是符号位不变,其余各位按位取反。[X]补=(01101001)BY=-105X=+105[Y]补=(10010111)B●补码表示正数的补码为其本身,负数的补码是符号位不变,其余各位按位取反加1。[X]反=(01101001)BY=-105X=+105[Y]反=(10010110)Bnn≥0[n]补=2k+nn≤02k为模负数的补码为模加上它本身[X]补=(00000001)BY=-1X=+1[Y]补=(11111111)B3126931211104578-9模12[+0]反=(0000)B[-0]反=(1111)B例如:标准时间是3点,现在是12点,可以12-9=3,也可以12+3=15去掉模12为3。12-9和12+3对于模12是等价的。(-9)与(+3)对于模12是互为补数。补码运算例:已知X=33、Y=45,用补码求X+Y、X-Y。(设机器位数为8位)[X]补=(00100001)B[Y]补=(00101101)B●补码运算补码加减法运算规则[X±Y]补=[X]补+[±Y]补[-Y]补=(11010011)B[X+Y]补=(01001110)B[X-Y]补=(11110100)BX-Y=-12补码加减法运算部件74LS283A3A2A1A0COCIB3B2B1B0S3S2S1S0KA3A2A1A0B3B2B1B0演示WBE补码加法/减法补码运算例:已知X=33、Y=45,用补码求X+Y、X-Y。(设机器位数为8位)[X]补=(00100001)B[Y]补=(00101101)B●补码运算补码加减法运算规则[X±Y]补=[X]补+[±Y]补[-Y]补=(11010011)B[X+Y]补=(01001110)B[X-Y]补=(11110100)BX-Y=-12补码加减法运算部件AiBiCi-1CiSiFA溢出判断●溢出的判断方法溢出运算结果超出机器数的表示范围两个异号数相加不会产生溢出,两个同号数相加有可能产生溢出。11+7=18-11-7=-181位符号+4位数值两个正数相加而绝对值超出允许的表示范围正溢(上溢)负溢(下溢)两个负数相加而绝对值超出允许的表示范围1001001011+00111[11+7]补=1810111010101+11001[(-11)+(-7)]补=-18正溢负溢溢出判断逻辑1、2溢出判断逻辑一(Overflow)溢出O=SASBSf+SASBSf两个负数相加SASB为1,本应得到负的和数,若最高有效位产生进位使得Sf=0,产生负溢。两个正数相加SASB为0,本应得到正的和数,若最高有效位产生进位使得Sf=1,产生正溢。溢出判断逻辑二溢出O=CfCOSA被加数的符号SB加数的符号Cf符号位运算后产生的进位CO最高有效数位产生的进位当最高有效位有进位而符号位无进位时产生正溢当最高有效位无进位而符号位有进位时产生负溢1001101011+0100010110110101+110001011101011+0110010110010111+10101溢出判断逻辑3溢出判断逻辑三溢出O=Sf1Sf2Sf1第1符号位Sf2第2符号位010011001011+001000111100000111+110101Sf1Sf2溢出情况00结果为正,无溢出01结果为正,正溢出10结果为负,负溢出11结果为负,无溢出第1符号位始终表示结果的正负符号位不一致表示有溢出101100110111+1101011000100000111+11110111+8=19-9-11=-207-3=47-11=-4补码运算[X]补=(1011)B[Y]补=(1100)BX+Y=-9例:已知X=-5、Y=-4,用补码求X+Y。(设机器位数为4位)01111011+11001出现溢出,超出4位的表示范围处理方法:把结果扩展一位。正数?0110001001+00011[9+3]补=1211010010111+11101[(-9)+(-3)]补=-1210011001001+11101[9-3]补=61101000011+10111[3-9]补=-6符号位运算产生的进位舍弃(因为是mod2k模运算)BCD码●补充:十进制数的二进制表示及运算BCD码(BinaryCodedDecimal)用4位二进制数码来表示1位十进制数的0~9这10个状态,这种关系称为二—十进制编码
本文标题:接口第一章-4学时
链接地址:https://www.777doc.com/doc-2377615 .html