《第二讲运算方法与运算器.ppt》由会员分享,可在线阅读,更多相关《第二讲运算方法与运算器.ppt(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二讲运算方法与运算器现在学习的是第1页,共14页知识点(二)定点数的乘定点数的乘/除运算;除运算;溢出概念和判别方法;溢出概念和判别方法;3、浮点数的表示与运算、浮点数的表示与运算(1)浮点数的表示:浮点数的表示范围;)浮点数的表示:浮点数的表示范围;IEEE754标准标准(2)浮点数的加)浮点数的加/减运算减运算4、算术逻辑单元、算术逻辑单元ALU(1)串行加法器和并行加法器)串行加法器和并行加法器(2)算术逻辑单元)算术逻辑单元ALU的功能和结构的功能和结构现在学习的是第2页,共14页误点疑点解惑(一)1、真值和机器数的区别、真值和机器数的区别2、模与补码表示法、模与补码表示法3、原码和
2、补码的区别、原码和补码的区别4、定点数的表示范围、定点数的表示范围5、浮点数的表示范围、浮点数的表示范围6、浮点数规格化、浮点数规格化7、移码偏置值的选择、移码偏置值的选择8、定点数与浮点数的比较、定点数与浮点数的比较9、3种汉字编码的区别种汉字编码的区别10、十进制数的、十进制数的BCD编码编码现在学习的是第3页,共14页误点疑点解惑(二)11、奇偶校验位的形成和奇偶校验码的检测、奇偶校验位的形成和奇偶校验码的检测12、并行加法器的进位产生和传递、并行加法器的进位产生和传递13、并行加法器的进位传递方式和传递时间、并行加法器的进位传递方式和传递时间14、补码加减运算及其实现、补码加减运算及其
3、实现15、补码、补码Booth乘法乘法16、补码加减交替除法、补码加减交替除法17、浮点加减运算中的対阶和结果规格化、浮点加减运算中的対阶和结果规格化18、浮点除法运算中的尾数调整、浮点除法运算中的尾数调整19、BCD码的加法运算码的加法运算20、基本逻辑运算及其应用、基本逻辑运算及其应用现在学习的是第4页,共14页相关知识介绍1、海明码2、循环冗余码(CRC)现在学习的是第5页,共14页巩固习题1、“春春”字机器内码是字机器内码是B4BAH,则其区位码为(),则其区位码为()2、关于、关于ASCII编码的正确描述是()编码的正确描述是()3、设有、设有7位信息码位信息码0110101,则低位
4、增设偶校验位后的,则低位增设偶校验位后的代码为();如设奇校验位后的代码是()代码为();如设奇校验位后的代码是()4、关于奇偶校验功能的描述是()、关于奇偶校验功能的描述是()5、用、用1位奇偶校验能检测出位奇偶校验能检测出1位的主存错误的百分比为()位的主存错误的百分比为()6、信息序列、信息序列16位,若构成能纠正一位错发现两位错的位,若构成能纠正一位错发现两位错的海明码,至少需要()位检验位。海明码,至少需要()位检验位。7、在、在CRC校验中,接收端检查出某一位数据错误后,校验中,接收端检查出某一位数据错误后,纠正的方法是()纠正的方法是()8、采用、采用CRC校验码时,若生成多项式
5、校验码时,若生成多项式则对应的二进制编码为(),其校验位的位数是()则对应的二进制编码为(),其校验位的位数是()现在学习的是第6页,共14页9、在大量数据传送中常用且有效的检验法是()、在大量数据传送中常用且有效的检验法是()10、简述、简述CRC码的纠错原理码的纠错原理11、9位原码(含一位符号位)能表示的数据个数是()位原码(含一位符号位)能表示的数据个数是()12、若、若X补补=x0 x1x2xn,则模是(),若,则模是(),若X补补=x0 x1x2xn,则模是()则模是()13、假定一个十进制数为、假定一个十进制数为-66,按补码形式存放在一个,按补码形式存放在一个8位寄存位寄存器中
6、,该寄存器的内容用十六进制表示为()器中,该寄存器的内容用十六进制表示为()14、设机器数采用补码表示(含、设机器数采用补码表示(含1位符号位),若寄存器的内位符号位),若寄存器的内容为容为9BH,则对应十进制数为(),则对应十进制数为()15、若寄存器内容为、若寄存器内容为10000000,若它等于,若它等于0,则寄存器内容为,则寄存器内容为()码;若它等于()码;若它等于-0,则为()码。,则为()码。16、若寄存器内容为若寄存器内容为11111111,若它等于,若它等于+127,则寄存器内容,则寄存器内容为()码;若它等于为()码;若它等于-1,则为()码。,则为()码。17、若寄存器内
7、容为、若寄存器内容为00000000,若它等于,若它等于-128,则寄存器内容,则寄存器内容为()码;为()码;现在学习的是第7页,共14页18、若寄存器内容为若寄存器内容为10000000,若它等于,若它等于-128,则寄存器内,则寄存器内容为()码;容为()码;19、下列为、下列为8位移码机器数位移码机器数X移移,当求,当求-X移移时,()会发生溢出。时,()会发生溢出。(11111111;00000000;10000000;01111111)20、一个、一个C语言程序在一台语言程序在一台32位机器上运行。程序中定义了三位机器上运行。程序中定义了三个变量个变量x,y,z,其中其中x和和z为
8、为int型,型,y为为short型。当型。当x=127,y=-9时,执行语句时,执行语句z=x+y后,后,x,y和和z的值分别是()(的值分别是()(09年考题年考题)21、一个、一个16位无符号数二进制数的表示范围是()位无符号数二进制数的表示范围是()22、若定点整数、若定点整数64位,含位,含1位符号位,采用补码表示,则所能表位符号位,采用补码表示,则所能表示的绝对值最大负数为(),所能表示的最大正数是()示的绝对值最大负数为(),所能表示的最大正数是()23、一个、一个n+1为整数为整数x原码的数值范围是()原码的数值范围是()24、设、设X补补=1.x1x2 x3x4,当满足()时,
9、当满足()时,x-1/2成立成立26、设、设X补补=1 x1x2 x3x4 x5x6,当满足()时,当满足()时,x-32成立成立27、补码定点整数、补码定点整数10010101右移一位后的值是()右移一位后的值是()28、补码定点整数、补码定点整数0101 0101左移左移2位后的值是()位后的值是()29、补码的加减法是指()、补码的加减法是指()30、在补码加减法中,用两位符号位判断溢出,判断规则是怎样的、在补码加减法中,用两位符号位判断溢出,判断规则是怎样的?31、补码相加,采用一位符号位,什么情况表示溢出?、补码相加,采用一位符号位,什么情况表示溢出?32、变补操作的含义是(),如何
10、实现变补操作?、变补操作的含义是(),如何实现变补操作?33、原码乘法的运算规则是怎样的?、原码乘法的运算规则是怎样的?34、假设有、假设有4个整数用个整数用8为补码分别表示,为补码分别表示,r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个若将运算结果存放在一个8位寄存器中,则位寄存器中,则下列运算会发生溢出的是()(下列运算会发生溢出的是()(r1Xr2;r2Xr3;r1Xr4;r2Xr4;)现在学习的是第9页,共14页35、原码加减交替法、原码加减交替法36、补码加减交替法、补码加减交替法37、在高级语言编程中所定义的、在高级语言编程中所定义的unsigned
11、数据类型是怎么表示的?数据类型是怎么表示的?Short/int/long数据类型是怎么表示的?数据类型是怎么表示的?38、为什么现代计算机都用补码来表示整数?、为什么现代计算机都用补码来表示整数?39、假设有两个整数、假设有两个整数x和和y,x=-68,y=-80,采用补码表示(含采用补码表示(含1位符号位),位符号位),x和和y分别存放在寄存器分别存放在寄存器A和和B中。另外,还有两个寄存器中。另外,还有两个寄存器C和和D。A,B,C,D都是都是8位寄存器。请回答下列问题(用十六进制表示二进制序位寄存器。请回答下列问题(用十六进制表示二进制序列):列):(1)寄存器)寄存器A和和B中的内容分
12、别是什么?中的内容分别是什么?(2)x和和y相加后的结果存放在相加后的结果存放在C寄存器中,寄存器寄存器中,寄存器C中的内容是什么?此时,中的内容是什么?此时,溢出标志位溢出标志位OF是什么?符号标志是什么?符号标志SF是什么?进位标志是什么?进位标志CF是什么?是什么?(3)x和和y相减后的结果存放在相减后的结果存放在D寄存器中,寄存器寄存器中,寄存器D中的内容是什么中的内容是什么?此时,溢出标志位?此时,溢出标志位OF是什么?符号标志是什么?符号标志SF是什么?进位标志是什么?进位标志CF是什么?是什么?现在学习的是第10页,共14页40、假设在一个、假设在一个8位字长的计算机中运行如下类
13、位字长的计算机中运行如下类C程序段:程序段:Unsigned int x=134;Unsigned int y=246;Ing m=x;Int n=y;Unsigned int z1=x-y;Unsigned int z2=x+y;Int k1=m-n;Int k2=m+n;若编译器编译时将若编译器编译时将8个个8位寄存器位寄存器R1R8分别分配给变量分别分配给变量x,y,m,n,z1,z2,k1和和k2。请回答下列问题(带符号整数用补。请回答下列问题(带符号整数用补码表示)码表示)(1)执行上述程序断后,寄存器)执行上述程序断后,寄存器R1,R5和和R6的内容分别是什的内容分别是什么?(用十
14、六进制表示)么?(用十六进制表示)(2)执行上述程序断后,变量执行上述程序断后,变量m和和k1的内容分别是什么?的内容分别是什么?(用十进制表示)(用十进制表示)现在学习的是第11页,共14页(3)上述程序段涉及带符号整数加上述程序段涉及带符号整数加/减、无符号数整数加减、无符号数整数加/减运算,这四种运减运算,这四种运算能否利用同一个加法器及辅助电路实现?简述理由。算能否利用同一个加法器及辅助电路实现?简述理由。(4)计算机内部如何判断带符号整数加)计算机内部如何判断带符号整数加/减运算的结果是否发生溢出?上述减运算的结果是否发生溢出?上述程序段中,哪些带符号整数运算语句的执行结构会发生溢出
15、?程序段中,哪些带符号整数运算语句的执行结构会发生溢出?41、采用规格化的浮点数是为了()、采用规格化的浮点数是为了()42、浮点数运算中,下溢出指的是()、浮点数运算中,下溢出指的是()43、假定采用、假定采用IEEE754单精度浮点数格式表示一个数为单精度浮点数格式表示一个数为45100000H,则该,则该数的值是()数的值是()44、设某浮点数共、设某浮点数共12位,其中阶码含位,其中阶码含1位阶符共位阶符共4位,以位,以2为底,补码表示;为底,补码表示;尾数含尾数含1位数符共位数符共8位,补码表示,规格化。则该浮点数所能表示的范围是位,补码表示,规格化。则该浮点数所能表示的范围是多少?
16、多少?45、IBM370的短浮点数格式中,总位数为的短浮点数格式中,总位数为32位,左边第一位为数符,位,左边第一位为数符,随后随后7位为阶码,用移码表示,偏置常数为位为阶码,用移码表示,偏置常数为64,右边,右边24位为尾数(位为尾数(6位位16进制),原码表示,采用规格化形式表示。若将十进制数进制),原码表示,采用规格化形式表示。若将十进制数-265.625用该用该浮点数格式表示,则应表示为()(浮点数格式表示,则应表示为()(16进制表示)进制表示)现在学习的是第12页,共14页46、假定两种浮点数表示格式的位数都是、假定两种浮点数表示格式的位数都是32位,但格式位,但格式1的阶码长,尾
17、数短,的阶码长,尾数短,而格式而格式2的阶码短,尾数长,其他所有规定都相同。则它们可表示的精度和的阶码短,尾数长,其他所有规定都相同。则它们可表示的精度和范围有什么不同?范围有什么不同?47、假设、假设i,f,d数据类型分别是数据类型分别是int,float和和double(int用补码表示,后两种分别用补码表示,后两种分别用用IEEE754的单精度和双精度浮点格式表示的单精度和双精度浮点格式表示),已知,已知i=785,f=1.5678E3,d=1.5E100,若在若在32位计算机中执行下列关系表达式,则结果为真的是()位计算机中执行下列关系表达式,则结果为真的是()(1)i=(int)(f
18、loat)I(2)f=(float)(int)f(3)f=(float)(double)f (4)(d+f)-d=f48、设浮点数的阶码和尾数均采用补码表示,且数位分别为、设浮点数的阶码和尾数均采用补码表示,且数位分别为5位和位和7位位(均含(均含2位符号位)。若有两个数位符号位)。若有两个数x=27*29/32,y=25*5/8,则用浮点加法计则用浮点加法计算算x+y的结果是()的结果是()。49、float型数据通常用IEEE754单精度浮点格式表示。若编译器将float型变量x分配在一个32位浮点寄存器FR1中,且x=-8.25,则FR1的内容是()50、设字长32位浮点数,阶码10位用
19、移码表示,尾数22位用补码表示,基数为2,格式如下,(1)求最大数的二进制表示;(2)求最小数的二进制表示;(3)求规格化的范围。现在学习的是第13页,共14页51、两规格化浮点数相乘,是否可能需要右归?为什么?是否可能需要左归?若需要,能否确定左归的次数?52、两规格化浮点数相除,是否可能需要左归?为什么?是否可能需要右归?若需要,能否确定右归的次数?53、算术/逻辑运算单元74181的功能。54、使用74LS181构成一个16位的ALU,则需要几片?55、使用4片74181和1片74182相配合,可以构成()传递功能。56、使用8片74181和2片74182相配合,可以构成()传递功能。57、一个有4个一位全加器构成的加法器,其进位链小组信号为C4,C3,C2和C1,各个全加器的操作数为Ai,Bi(1 i4),低位来的信号为C0,请分别写出串行进位和并行进位方式下C1,C2,C3,C4的表达式。现在学习的是第14页,共14页
限制150内