首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
某程序中有如下循环代码段p“for(int i=0;i<N;i++)sum+=A[i];”。假设编译时变量sum,和i分别分配在寄存器R1和R2中。常量N在寄存器R6中,数组A的首地址在寄存器R3中。程序段P起始地址为0804 8100H,对应的汇编代码和
某程序中有如下循环代码段p“for(int i=0;i<N;i++)sum+=A[i];”。假设编译时变量sum,和i分别分配在寄存器R1和R2中。常量N在寄存器R6中,数组A的首地址在寄存器R3中。程序段P起始地址为0804 8100H,对应的汇编代码和
admin
2015-12-30
18
问题
某程序中有如下循环代码段p“for(int i=0;i<N;i++)sum+=A
;”。假设编译时变量sum,和i分别分配在寄存器R1和R2中。常量N在寄存器R6中,数组A的首地址在寄存器R3中。程序段P起始地址为0804 8100H,对应的汇编代码和机器代码如下表所示。
执行上述代码的计算机M采用32位定长指令字,其中分支指令bne采用如下格式:
OP为操作码:Rs和Rd为寄存器编号;OFFSET为偏移量,用补码表示。
假设对以上的计算机M和程序P的机器代码,M采用页式虚拟存储管理;P开始执行时,(R1)=(R2)=0,(R6)=1000,其机器代码己调入主存但不在Cache中;数组A未调入主存,且所有数组元素在同一页,并存储在磁盘同一个扇区。
请回答下列问题并说明理由。
P在执行过程中,哪条指令的执行可能发生溢出异常?哪条指令的执行可能产生缺页异常?对于数组A的访问,需要读磁盘和TLB至少各多少次?
选项
答案
指令4为加法指令,即对应sum+=A[i],当数组A中元素的值过大时,则会导致这条加法指令发生溢出异常;而指令2、5虽然都是加法指令,但他们分别为数组地址的计算指令和存储变量i的寄存器进行自增的指令,而i最大到达1000,所以他们都不会产生溢出异常。 只有访存指令可能产生缺页异常,即指令3可能产生缺页异常。 因为数组A在磁盘的一页上,而一开始数组并不在主存中,第一次访问数组时会导致访盘,把A调入内存,而以后数组A的元素都在内存中,则不会导致访盘,所以该程序一共访盘一次。 每访问一次内存数据就会查TLB一次,共访问数组1000次,所以此时又访问TLB1000次,还要考虑到第一次访问数组A,即访问A[0]时,会多访问一次TLB(第一次访问A[0]会先查一次TLB,然后产生缺页,处理完缺页中断后,会重新访问A[0],此时又查TLB),所以访问TLB的次数一共是1001次。
解析
转载请注明原文地址:https://jikaoti.com/ti/rrfjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1901年6月,发表《立宪法议》,首先提出君主立宪要求的是()。
清朝,各地督抚将重大问题径寄军机处交皇帝审批,称为()。
杜鲁门总统执政时期,针对美国国内问题提出的计划是()。
30年代,美国政府对一系列国际问题执行中立政策,最主要的原因是()。
把变量引进数学。使解析几何成为数学发展史上转折点的科学家是()。
1628年出版了《心血运动论》一书,论证了血液在全身的循环运动,使生理学发展为科学的是()。
下图是某模型机CPU的组成框图。设该CPU采用同步控制逻辑,分取指周期、取第一操作数周期,取第二操作数周期、执行周期四个机器周期,每个机器周期有T0、T1、T2三个节拍。试写出如下双操作数运算指令的微操作命令及节拍安排。ADDR0,(R1)完成功
(1)所有事件的最早发生时间如下:Ve(1)=0Ve(2)==5Ve(3)=6Ve(4)=max{ve(2)+3,ve(3)+6}=12Ve(5)=max{ve(3)+3,ve(4)+3}=15Ve(6)=ve(4)+4=16Ve(7)=ve
以下()协议完成了从网卡到IP地址的映射。
随机试题
按可辨识程度,无形资产可以分为()
孕妇王某,孕G2PO,孕38周,临产入院,阴道顺娩一活男婴,婴儿生后阿氏评分为10分,查体正常,体重3300g。母乳含有婴儿所需的全部营养,是婴儿最适宜的食物,母乳喂养的好处不包括
急性阑尾炎腹痛起始于脐周或上腹的机制是
注册建造师申请延续注册的,应当提交的材料有( )。
()是所有创新体系的核心。
以近期的记忆代替整个测评时期的全部实际表现,导致的测评结果误差是()。
某商场在进行“满百省”活动.满100省10,满200省30,满300省50.大于400的消费只能折算为等同于几个100、200、300的加和。已知一位顾客买某款衬衫1件支付了175元,那么买3件这样的衬衫最少需要:
黑陶最早发现于()。
某国政府公布的数字显示,在2000年公共部门和私人部门雇佣了相同数量的人员。根据政府的数据,在2000年到2004年之间,公共部门减少的就业总数多于私人部门增加的就业总量。根据政府数据,如果在2000年和2004年该国的失业率相同,下面哪一项关于该国的陈述
Wherewastheletterprobablyplacedmanyyearsago?
最新回复
(
0
)