1、第二章运算方法和运算器定点表示 某机字长32位,其中1位符号位,31位表示尾数。若用定点小数表示,则最大正小数为:
A、+(1 -2-32 ) B、+(1 -2-31 ) C、2-32 D、2-31
定点小数即纯小数,小数点的位置固定在最高有效数位之前,符号位之后,如图2-3所示。定点小数的小数点位置是隐含约定的,小数点并不需要真正地占据一个二进制位。
当
表示X为负数,此时情况要稍微复杂一些,这是因为在计算机中带符号数可用
补码表示,也可用原码表示,原码和补码的表示范围有一些差别。 若机器数为原码,当最小负数,其真值等于:
均等于1时,X为绝对值最大的负数,也称为最负的数或
综上所述,设机器字长有n+1位,原码定点小数的表示范围为点小数的表示范围为
补码定
在本题中,要求32位字长所表示定点小数的数值范围,它只要我们给出其数值的表示范围,并不是整个表示范围,从上面的分析中可以看出,32位字长的数值表示范围是
2、浮点数加、减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。若有两个数X=27×29/32,Y=25×5/8,则用浮点加法计算X+Y的最终结果是2009原题、第一章:计算机系统概述 A、00111 1100010 B、00111 0100010 C、01000 0010001 D、发生溢出
也浮点加法的第一步是对阶,对阶原则为小阶向大阶看齐。因此将Y对阶后得到:Y=27×5/32,然后将尾数相加,得尾数之和为34/32。因为这是2个同号数相加,尾数大于1,则需要右规,阶码加1。由于阶码的位数为5位,且含2位符号位,即阶码的表示范围在-8~+7之间。而阶码本身等于7,再加1就等于8。因此,最终结果发生溢出。
3、某计算机有五级中断L4~L0,中断屏蔽字为M4M3M2M1M0,Mi=1(0i4)表示对Li
级中断进行屏蔽。若中断响应优先级从高到低的顺序是L4L0L2L1L3 ,则L1的中断处理程
序中设置的中断屏蔽字是2011年原题、第八章:输入输出系统 A、11110 B、01101 C、00011 D、01010
首先看L1所在的位置。后面只有L3比自己低,所以把自己和L3位置的屏蔽触发器的内容置为1,其余为0,即01010。
4、采用串行接口进行7位ASCII码传送,带有1位奇校验位,l位起始位和1位停止位,当传输率为9600波特时,字符传送速率为: A、960 B、873. C、1372 D、480 9600/(7+1+1+1=10)=960
5、float型数据通常用IEEE754单精度浮点数格式表示.若编译器将float型变量x分配在一个32位浮点寄存器FR!
中,且x=-8.25, 则FR1的内容是 A、C1040000H B、C2420000H C、C1840000H D、C1C20000H
【解析】A。此题着重考查了IEEE754单精度浮点数格式。只要知道格式,基本上就是硬套公式了。首先,将x表示成二进制,即-1000.01=-1.00001×2【3】。其次应该计算阶码(不妨设为E),根据IEEE754单精度浮点数格式有E-127=3,故E=130,换成二进制为10000010。最后,要记住最高位“1”是被隐藏的。
所以,根据IEEE754格式:符号(1位)+偏移的阶码(8位)+尾数(23位),即:1+10000010+0000100000000000000 转换成十六进制:11000001000001000000000000000000,即C1040000H。
第二章:运算方法和运算器 浮点规格化
6、某浮点数采用IEEE754单精度格式表示为C5100000H,则该数的值是 注:选项中[ ]内的值为上标 A、-1.125*2[10] B、-1.125*2[11] C、-0.125*2[10] D、-0.125*2[11] 1100 0101 0001 00000000000000000000
黄色部分的值为138=E,∴e=138-127=11,紫色部分是尾数,∴尾数为.001 ∴二进制表示为-1.001*2[11],然后把1.001转换为10进制就得到1.125
第二章:运算方法和运算器 定点运算
7、在C程序中,int类型的变量x的值为-1088。程序执行时,x先被存放在16位的寄存器R1中,然后被算术右移4位。则此时R1 中的内容以16进制表示是( ) A、FBC0H B、FFBCH C、0FBCH D、87BCH
-1088的原码形式为00000 10001000000,补码为1111101111000000,算数右移4位后 变为1111 111110111100,转换成16进制为FFBC
第二章:运算方法和运算器 定点表示
8、补码表示的8位二进制定点小数所能表示数值的范围是 A、-0.1111111B~0.1111111B B、
-1.0000000B~0.1111111B C、-0.1111111B~1.0000000B D、-1.0000000B~1.0000000B
虚拟存储器
9、下列命令组合情况中,一次访存过程中,不可能发生的是( )2012年原题、第三章:存储系统 A、TLB未命中,Cache未命中,Page未命中 B、TLB未命中,Cache命中,Page命中 C、TLB命中,Cache未命中,Page命中 D、TLB命中,Cache命中,Page未命中
TLB是缓存曾经访问过的虚拟地址所指向的物理地址,以使将来快速得到相同物理地址的高速存储器,可以与Cache的作用相类比。 在一次访问存储器的过程中,如果能够Cache命中,很显然,说明就访问到了需要的页(Page),即Page命中。同样的道理,如果能够TLB命中,也说明访问到了需要的页,如果这两者都命中,那么页肯定命中。因此本题中选项D的情况是不可能发生的。
存储器扩展
10、假定用若干个2k4位芯片组成一个8k8位存储器,则地址0B1FH所在芯片的最小地址是( )2010年原题、第三章:存储系统) A、0000H B、0600H C、0700H D、0800H
芯片的大小为2K×4位,而存储器的大小为8K×8位,不难得出要获得这样一个大小的存储器,需要8片2K×4位的芯片。 如果按字节编址,对应一个大小为8K×8位的存储器,需要13位地址,其中高3位为片选地址,低10位为片内地址,而题目给出的地址0B1FH转换为二进制为0 1011 0001 1111,其高3位为010,即片选地址为2。因此,地址0B1FH对应第2片芯片,该芯片的起始地址(最小地址)为0 1000 0000 0000,即0800H。
11、假设某计算机的存储系统由Cache和主存组成。某程序执行过程中访存1000次,其中访问Cache缺失(未命中)50次,则Cache的命中率是2009年原题、第三章:存储系统 A、5% B、9.5% C、50% D、95%
程序中断方式
12、某计算机处理器主频为50MHz,采用定时查询方式控制设备A的IO,查询程序运行一次所用的时钟周期数至少为500。在设备A工作期间,为保证数据不丢失,每秒需对其查询至少200次,则CPU用于设备A的IO的时间占整个CPU时间的百分比至少是 2011年原题、第八章:输入输出系统 A、0.02% B、0.05% C、0.20% D、0.50%
由于CPU每秒需对其查询至少200次,每次500个时钟周期。所以CPU用于设备A的I/O时间每秒最少500×200=100000个时钟周期。100000除以50M=0.002
指令周期
13、假定不采用Cache和指令预取技术,且机器处于开中断状态,则在下列有关指令执行的
叙述中,错误的是 2011年原题、第八章:输入输出系统 A、每个指令周期中CPU都至少访问内存一次 B、每个指令周期一定大于或等于一个CPU时钟周期 C、空操作指令的指令周期中任何寄存器的内容都不会被改变 D、当前程序在每条指令执行结束时都可能被外部中断打断
由于不采用Cache和指令预取技术,所以不可能从Cache以及在前一个指令执行的时候取指令,所以每个指令周期中CPU必须访问一次主存取指令,故A正确。B是显然正确。至少PC寄存器的内容会自加1,故C错误。由于机器处于“开中断”状态,所以当前程序在每条指令执行结束时都可能被外部中断打断
寄存器
14、某机器有一个标志寄存器,其中有进位借位标志CF、零标志ZF、符号标志SF和溢出标志OF,条件转移指令bgt(无符号整数比较大于时转移)的转移条件是 2011年原题、第五章:中央处理器 A、CF+OF=1 B、SF+ZF=1 C、CF+ZF=0 D、CF+SF=1
C。假设有两个无符号整数x、y,bgt为无符号整数比较大于时转移,不妨设x>y,那么x-y就肯定大于0且不会溢出,故符号标志SF和溢出标志OF用不上。根据排除法答案自然选C。因为x-y>0,所以肯定不会借位和进位,且x-y≠0。故CF和ZF标志均为0。
存储器扩展
15、某计算机存储器按字节编址,主存地址空间大小为64MB,现用4M8位的RAM芯片组成32MB的主存储器,则存储器地址寄存器MAR的位数至少是 2011年原题、第三章:存储系统 A、22位 B、23位 C、25位 D、26位
本题有个陷阱,相信不少考生会以32MB的实际主存来计算,从而得到答案25位,这种解法是错误的。尽管多余的32MB没有使用,但是你也得防备以后要用。不能只看眼前呀!知道以64MB来计算就很好做了。由于采用字节寻址,所以寻址范围是64M,而226=64M。故存储器地址寄存器MAR的位数至少是26位。
显示器
16、假定一台计算机的显示存储器用DRAM芯片实现,若要求显示分辨率为1600*1200,颜色深度为24位,帧频为85HZ,显示总带宽的50%用来刷新屏幕,则需要的显存总带宽至少约为( )2010年原题、第七章:外围设备 A、245 Mbps B、979 Mbps C、1958 Mbps D、7834 Mbps=1600*1200*24*85除以50%
Cpu结构
17、下列关于RISC的叙述中,错误的是2009年原题、第五章:中央处理器 A、RISC普遍采用微程序控制器 B、RISC大多数指令在一个时钟周期内完成 C、RISC的内部通用寄存器数量相对CISC多 D、RISC的指令数、寻址方式和指令格式种类相对CISC少
相对地址
18、某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加
1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是2009年原题、第四章:指令系统 A、2006H B、2007H C、2008H D、2009H PC=PC+D(位移量)+2 那么每取一个字节,PC自动加1
解析:相对寻址通过将形式地址与程序计数器PC的内容相加得到有效地址,即EA=(PC)+A;又机器字长16位,主存按字节编址,故该转移指令取出后的PC值为2000H+2=2002H;所以该转移指令成功后的目标地址为06H+2002H=2008H,选C。
存储器扩展
19、某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址。现要用2K8位的ROM芯片和4K4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是2009年原题、第三章:存储系统 A、1,15 B、2,l5 C、1,30 D、2,30
因为1B=8位,ROM区的总大小为4KB,即为4K×8位,那么需要的ROM芯片数为:(4K×8位)/(2K×8位)=2片。 RAM区的总大小为64KB?4KB=60KB,即60K×8位,那么需要的RAM芯片数为:(60K×8位)/(4K×4位)=30片。
定点运算
20、一个C语言程序在一台32位机器上运行。程序中定义了三个变量x、y和z,其中x和z为int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,x、y和z的值分别是2009原题、第二章:运算方法和运算器 A、x=0000007FH,y=FFF9H,z=00000076H B、x=0000007FH,y=FFF9H,z=FFFF0076H C、x=0000007FH,y=FFF7H,z=FFFF0076H D、x=0000007FH,y=FFF7H,z=00000076H
C语言的数据在内存中以补码形式存放,根据题目的条件,可将x、y、z的值由十进制转为二进制补码 x为int型,且在32位的机器上运行,因此x字长为32位,转换成二进制为0000 0000 0000 0000 0000 0000 0111 1111,再转换成十六进制为0000007FH。 y为short型,且在32位的机器上运行,因此y字长为16位,转换成二进制为1111 1111 1111 0111,(补码)再转换成十六进制为FFF7H。 z为int型,且在32位的机器上运行,因此z字长为32位,z=x+y=127-9=118,转换成二进制为0000 0000 0000 0000 0000 0000 0111 0110,再转换成十六进制为00000076H。
定点运算溢出判断
21、假定有4个整数用8位补码分别表示r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个8位寄存器中,则下列运算会发生溢出的是( )2010年原题、第二章:运算方法和运算器 A、r1×r2 B、r2×r3 C、r1×r4 D、r2×r4
根据试题已知条件,[r1]补=1111 1110,[r2]补=1111 0010,[r3]补=1001 0000,[r4]补=1111 1000,根据补码乘法运算规则及溢出的判断规则,不难知道发生溢出的是r2×r3。