2017年深圳大学FS30专业基础知识综合(软件工程专业型)复试实战预测五套卷
● 摘要
一、应用题
1. 某程序中有如下循环代码段p :
P 起始地址 为0804 8100H,对应的汇编代码和机器代码如下表所示
假设编译时变量sum 和i 分别分配在寄存器R1和R2中。常量N 在寄存器R6中,数组A 的首地址在寄存器R3中,程序段
执行上述代码的计算机M 采用32位定长指令字,其中分支指令Bne 采用如下格式,
Op 为操作码:Rs 和Rd 为寄存器编号:OFFSET 为偏移量,用补码表示。请回答下列问题,并说明理由。
(1)M 的存储器编址单位是什么?
(2)已知sll 指令实现左移功能,数组A 中每个元素占多少位?
(3)表中bne 指令的OFFSET 字段的值是多少?已知bne 指令采用相对寻址方式,当前PC 内容为bne 指令地址,通过分析表中指令地址和bne 指令内容,推断出bne 指令的转移目标地址计算公式。
(4)若M 采用如下“按序发射、按序完成”的5级指令流水线:IF (取指)、ID (译码及
,且硬件不采取任何转发措施,分取数)、EXE (执 行)、MEM (访存)、WB (写回寄存器)
支指令的执行均引起3个时钟周期阻塞,则P 中哪些指令的执行会由于数据相关而发生流水线阻塞?哪条指令的执行会发生控制冒险?为什么指令1 的执行不会因为与指令5的数据相关而发生阻塞?
【答案】(1)由题可知,指令为32为即4个字节,而程序执行时是以4为间隔逐条取指令的,故可知M 的存储器是采用字节编址。
(2)32位,因为sll 中实现左移,而(R2) <<2 R4即左移两位就是乘以4,所以是
位
(3)由Bne 的指令格式可知其OFFSET 为指令的后16位,而Bne 的机器码码为1446 FFFAH,所以Bne 的OFFSET 为FFFAH 即-6。
由题可知Bne 采用相对寻址方式,故有效地址
第 2 页,共 38 页 而PC 的值
为当前Bne 指令的地址
即而取完Bne 指令后
,
而要跳转到指令1的地址08048100H ,两者相差了18H 也
就是24个字节,而OFFSET 是-6, 故转移目标地址计算公式为(PC
)
(4)由指令序列可知,指令1需写R4而指令2需读R4, 故指令2会因为数据相关而发生阻塞,同理指令3、指令4也会因为数据相关而发生阻塞;而指令6为分支指令,故其存在控制冒险。因为分支指令会有3个时钟周期的阻塞,故指令1的执行不会因为指令5的数据相关而发生阻塞。
2. 写出下列排序算法的基本思想,并写出对序列(23,12,35,47,16,25,36,19,21,16)进行排序时每一趟的结果。
【答案】此排序为双向起泡排序:从前向后一趟排序下来得到一个最大值,若其中发生交换,则再从后向前一趟排序,得到一个最小值。
第一趟:12,23,35,16,25,36, 19,21,16, 47
第二趟:12,16,23,35,16,25,36, 19,21,47
第三趟:12,16,23,16,25,35, 19,21,36, 47
第四趟:12, 16, 16,23, 19, 25, 35, 21, 36,47
第五趟:12,16,16,19,23,25,21,35, 36, 47
第六趟:12,16,16,19,21, 23,25,35, 36, 47
第七趟:12,16,16,19,21,23,25,35, 36, 47
3. 主机H 通过快速以太网连接Internet , IP地址为
题 a 表 服务器S 的IP 地址为211.68.71.80。H 与S 使用TCP 通信时,在H 上捕获的其中5个IP 分组如题a 表所示。
第 3 页,共 38 页
请回答下列问题。
(1)题a 表中的IP 分组中,哪几个是由H 发送的? 哪几个完成了TCP 连接建立过程? 哪几个在通过快速以太网传输时进行了填充?
(2)根据题a 表中的IP 分组,分析S 已经收到的应用层数据字节数是多少?
(3)若题a 表中的某个IP 分组在S 发出时的前40字节如题b 表所列,则该IP 分组到达H 时经过了多少个路由器?
题 b 表
注:IP 分组头和TCP 段头结构分别如题a 图、题b 图所示:
题a 图IP 分组头结构
题b 图TCP 段头结构
【答案】(1)由于题a 表中1、3、4号分组的源IP 地址(第13〜16字节)均为192.168.0.8
,所 以1、3、4号分组是由H 发送的。 (coa80008H )
第 4 页,共 38 页
相关内容
相关标签