文档介绍:中级软件设计师 2008 下半年上午试题 1. 计算机内存一般分为静态数据区、代码区、栈区和堆区,若某指令的操作数之一采用立即数寻址方式,则该操作数位于(1) 。?A .静态数据区?B .代码区?C .栈区?D .堆区这道题您没有回答【回答错误】答案:B[ 分析] 本题考查运行过程中计算机内存布局及指令寻址方式。计算机运行时的内存空间划分情况如下图所示。可执行代码静态数据区栈↓↑堆运行时为名字分配存储空间的过程称为绑定。静态数据区用于存放一对一的绑定且编译时就可确定存储空间大小的数据, 栈用于存放一对多的绑定且与活动同生存期的绑定; 堆用于存储由程序语句动态生成和撤销的数据。程序运行时, 需要将程序代码( 机器指令序列) 和代码所操作的数据加载至内存。指令代码加载至代码区,数据则根据绑定关系可能位于静态数据区、栈或堆区。立即数寻址方式是指指令所需的操作数由指令的地址码部分直接给出, 其特点是取指令时同时取出操作数,以提高指令的执行速度。 2. 计算机在进行浮点数的相加(减) 运算之前先进行对阶操作,若 x 的阶码大于 y 的阶码,则应将(2) 。? 的阶码缩小至与 y 的阶码相同,且使 x 的尾数部分进行算术左移? 的阶码缩小至与 y 的阶码相同,且使 x 的尾数部分进行算术右移? 的阶码扩大至与 x 的阶码相同,且使 y 的尾数部分进行算术左移? 的阶码扩大至与 x 的阶码相同,且使 y 的尾数部分进行算术右移这道题您没有回答【回答错误】答案:D[ 分析] 本题考查浮点数的运算特点。浮点数的表示由阶和尾数两部分组成,其一般表示形式如下所示( 不同系统的具体安排可能不同) ,阶码通常为带符号的纯整数,尾数为带符号的纯小数。阶符阶码数符尾数设有浮点数 X=M×2 i,Y=N×2 j ,求 X±Y 的运算过程如下。①对阶:使两个数的阶码相同。令K= |i-j| ,将阶码小的数的尾数右移 K 位,使其阶码加上 K。②求尾数和(差)。③结果规格化并判溢出: 若运算结果所得的尾数不是规格化的数, 则需要进行规格化处理。当尾数溢出时,需要调整阶码。④舍入: 在对结果右规时, 尾数的最低位将因移出而丢掉。另外, 在对阶过程中也会将尾数右移使最低位丢掉。这就需要进行舍入处理,以求得最小的运算误差。 CPU 中, (3) 可用于传送和暂存用户数据,为 ALU 执行算术逻辑运算提供工作区。?A .程序计数器?B. 累加寄存器?C .程序状态寄存器?D .地址寄存器这道题您没有回答【回答错误】答案:B[ 分析] 本题考查寄存器的类型和特点。寄存器是 CPU 中的一个重要组成部分, 它是 CPU 内部的临时存储单元。寄存器既可以用来存放数据和地址, 也可以存放控制信息或 CPU 工作时的状态。在 CPU 中增加寄存器的数量, 可以使 CPU 把执行程序时所需的数据尽可能地放在寄存器件中, 从而减少访问内存的次数, 提高其运行速度。但是, 寄存器的数目也不能太多, 除了增加成本外, 由于寄存器地址编码增加也会相对增加指令的长度。 CPU 中的寄存器通常分为存放数据的寄存器、存放地址的寄存器、存放控制信息的寄存器、存放状态信息的寄存器和其他寄存器等类型。程序计数器用于存放指令的地址。令当程序顺序执行时,每取出一条指令, PC 内容自动增加一个值, 指向下一条要取的指令。当程序出现转移时, 则将转移地址送入 PC , 然后由 PC 指向新的程序地址。程序状态寄存器用于记录运算中产生的标志信息,典型的标志为有进位标志位、零标志位、符号标志位、溢出标志位和奇偶标志等。地址寄存器包括程序计数器、堆栈指示器、变址寄存器和段地址寄存器等, 用于记录各种内存地址。累加寄存器是一个数据寄存器, 在运算过程中暂时存放被操作数和中间运算结果, 累加器不能用于长时间地保存一个数据。 4. 下面关于在 I/O 设备与主机间交换数据的叙述, (4) 是错误的。?A .中断方式下, CPU 需要执行程序来实现数据传送任务?B .中断方式和 DMA 方式下, CPU 与 I/O 设备都可同步工作?C .中断方式和 DMA 方式中,快速 I/O 设备更适合采用中断方式传递数据?D .若同时接到 DMA 请求和中断请求, CPU 优先响应 DMA 请求这道题您没有回答【回答错误】答案:C[ 分析] 本题考查 I/O 设备与主机间交换数据的方式和特点。 I/O 设备与主机间进行数据输入输出主要有直接程序控制方式、中断方式、 DMA 方式和通道控制方式。直接程序控制方式的主要特点是: CPU 直接通过 FO 指令对 I/0 接口进行访问操作,主机与外设之间交换信息的每个步骤均在程序中表示出来,整个输入输出过程是由 CPU 执行程序来完成的。中断方式的特点是:当