哈尔滨工业大学试题-计算机基础

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

-1-哈尔滨工业大学2017学年秋季学期计算机系统(A)试题一、单项选择题(每小题1分,共20分)1.计算机系统抽象时()是对处理器、主存和I/O设备的抽象表示。A.进程B.虚拟存储器C.文件D.虚拟机2.Intel桌面CPUI7没有采用如下现代CPU设计技术()A.流水线B.超线程C.超标量D.向量机3.当调用malloc这样的C标准库函数时,()可以在运行时动态的扩展和收缩。A.堆B.栈C.共享库D.内核虚拟存储器4.C语句中的有符号常数,在()阶段转换成了补码A.编译B.连接C.执行D.调试5.计算机信息常用编码中,字符0的编码不可能是16进制数()A.30B.3000C.00D.00306.C语言中float数据0.1的机器数表示错误的是()A.规格化数B.不能精确表示C.与0.2有1个二进制位不同D.唯一的7.程序中的2进制、10进制、16进制数,在()时变成2进制(A)汇编时(B)连接时(C)执行时(D)调试时8.Y86-64的CPU顺序结构设计与实现中,分成()个阶段A.5B.6C.7D.89.关于Intel的现代X86-64CPU正确的是()A.RiscCPUB.CiscCPUC.MiscCPUD.NiscCPU10.位于存储器层次结构中的最顶部的是(a)。A.寄存器B.主存C.磁盘D.高速缓存11.连接时两个文件同名的弱符号,以()为基准A.连接时先出现的B.连接时后出现的C.任一个D.连接报错12.IntelX86-64的现代桌面CPU,采用()级页表A.2B.3C.4D.由BIOS设置确定13.存储器垃圾回收时堆使用的内存有向图的根节点错误的()A.寄存器B.栈里的局部变量C.全局变量D.堆里的变量14.连接过程中,赋初值的局部变量名,正确的是()-2-A.强符号B.弱符号C.若是静态的则为强符号D.以上都错15.cpu的存储管理单元用于访问L1、L2、L3的地址A1、A2、A3的关系()A.A1A2A3B.A1=A2=A3C.A1A2A3D.A1=A2A316.程序执行到变量除以0会发生()A.显示除法溢出错直接退出B.无任何直接影响C.可由用户程序确定处理办法D.以上都可能17.“HelloWorld”执行程序很小不到4k,在其首次执行时产生缺页中断次数()A.0B.1C.2D.多于2次18.同步异常不包括()A.终止B.陷阱C.停止D.故障19.进程上下文切换发生在如下()情况A.当前进程时间片用尽B.外部硬件中断C.当前进程调用系统调D.当前进程发送了某个信号20.一台主流配置的PC上,调用f(35)所需时间大概是()A.几毫秒B.几秒C.几分钟D.几小时二、填空题(每空1分,共10分)21.int数-2的机器数二进制表示__________________________________。22.C语言printf中的格式串是都存放在内存的________________________段。23.C语言64位系统中参数传递采用___________________________________。24.C语言的常量表达式的计算是由__________________________完成的25.IntelI7的CPU其TLB的每行的存储块Block是______________________字节。26.虚拟页面的状态有__________________________、已缓存、未缓存共3种27.I7的CPU,L2Cache为8路的2M容量,则其Cache组的位数s=________________。28.程序执行到A处继续执行后,想在程序任意位置还原到执行到A处的状态,通过__________________这一类型的异常进行实现。29.进程创建函数fork执行后返回_____________________次。30.Intel桌面X86-64CPU采用________________________端模式。-3-三、判断对错(每小题1分,共10分)31.()现代超标量CPU指令的平均周期接近于1个但大于1个时钟周期。32.()CPU无法判断参与加法运算的数据是有符号或无符号数。33.()浮点常数编译时缺省舍入规则是四舍五入。34.()C语言中int的个数比float个数多。35.()Y86-64的顺序结构实现中,寄存器是时序逻辑器件。36.()全相联Cache不会发生冲突不命中的情况。37.()Linux系统调用中的功能号n就是异常号n。38.()fork的子进程与其父进程同名的全局变量始终对应同一物理地址。39.()动态存储器分配时显式空闲链表比隐式空闲链表的实现节省空间40.()C的标准IO函数都是带缓冲的,Unix的IO函数不带缓冲四、简答题(每小题4分,共20分)41.请在数轴上画出非负float数的各区间的密度分布,并标示各区间是规格化还是非规格化数、浮点数密度、最小值、最大值。-4-42.简述C编译过程对非寄存器形式的int全局变量与int局部变量处理的区别。包括存储区域、赋初值、生命周期、指令中寻址方式等。43.什么是动态连接库?简述动态链接的实现方法。-5-44.简述流水线CPU中的冒险的种类与处理方法。45.简述程序的局部性原理,如何编写局部性好的程序?五、系统分析题(每小题5分,共20分)46.某C程序(64位模式)的main函数参数argv地址为0x0000413433323110,其内容如下:30313233344100003331323334410000353132333441000000000000000000003143003000324200380031313232003032330061410031003200330031000031请写出程序名:___________________,本程序的参数个数_______________________按顺序写出各个参数为___________________________________________-6-47.某C函数(函数体只有一条C语句)的64位与32位的反汇编结果分别如下:4005d6:push%rbp4005d7:mov%rsp,%rbp4005da:mov%rdi,-0x8(%rbp)4005de:mov-0x8(%rbp),%rax4005e2:mov(%rax),%rax4005e5:lea0x4(%rax),%rcx4005e9:mov-0x8(%rbp),%rdx4005ed:mov%rcx,(%rdx)4005f0:mov(%rax),%eax4005f2:pop%rbp4005f3:retq804849b:push%ebp804849c:mov%esp,%ebp804849e:mov0x8(%ebp),%eax80484a1:mov(%eax),%eax80484a3:lea0x4(%eax),%ecx80484a6:mov0x8(%ebp),%edx80484a9:mov%ecx,(%edx)80484ab:mov(%eax),%eax80484ad:pop%ebp80484ae:ret请写出函数f的返回值类型_____________,参数p的类型___________________函数体的唯一一条C语句__________________________________________。48.IntelI7CPU的虚拟地址48位,物理地址52位。其内部结构如下图所示,依据此结构,每一页面4KB,分析如下项目:虚拟地址中的VPN占_____位;其一级页表为______项。L1数据TLB的组索引位数TLBI为_______位。L1数据Cache共_____组。用物理地址访问L1数据Cache时,Cache标记CT占______位-7-49.设一个C语言源程序p.c,编译连接后生成执行程序p,反汇编如下:C程序反汇编程序的main部分(还有系统代码)如下:#includestdio.hmain的地址为0x80482C0:(short占2字节)unsignedshortb[2500];1movw$0x3ff,0x80497d0unsignedshortk;2movw0x804a324,%cx;k=cxvoidmain()3mov$0x801,%eax{4xorw%dx,%dxb[1000]=1023;5div%ecx;2049/kb[2000]=2049%k;6movw%dx,0x804a324b[10000]=20000;7movw$0x4e20,0x804de20}8ret现代Intel桌面系统,采用虚拟页式存储管理,每页4K,p首次运行时系统中无其他进程。请阅读如上C与汇编程序,结合进程与虚拟存储管理的知识,分析:(1)上述程序的执行过程中,在取指令时发生的缺页异常次数为_________.(2)写出已恢复的故障指令序号与故障类型_______________________(3)写出没有恢复的故障指令序号与故障类型_______________________-8-六、综合设计题(每小题10分,共20分)50.计算机的FPU是采用堆栈架构实现的(其运算在栈顶附近的数据进行),中间层语言如MSIL、JavaByteCode也采用类堆栈CPU。请按照Y86-64的顺序结构实验原理,设计一个S86-64的StackCPU,完成堆栈的压栈与出栈等基本操作。CPU要求的指令系统如下:halt:00nop:10pushimm:2064位立即数pushrA:3|rApoprA:4|rA注:先期不用考虑堆栈的初始化、空、满的判断、运算的支持等等,以后可逐步扩展指令与标志位等等。且S86-64的寄存器与Y86-64一样,硬件结构与指令执行的阶段可根据需要进行优化。(1)请写出POPrA指令在各阶段的微操作。(2)画出访存阶段的硬件结构图(3)用HCL语言写出存储器地址与数据的控制逻辑。-9-51程序优化:矩阵c[n,n]=a[n,n]*b[n,n],采用48题I7CPU。块64B。for(inti=0;in;i++)for(intj=0;jn;j++){c[i,j]=0;for(intk=0;kn;k++)c[i,j]+=a[i,k]*b[k][j];}请给出基于编译、CPU、存储器的三种优化方法,并编写程序。-10-七、附加题(共10分)51.在终端中的命令行运行显示“HelloWorld”的执行程序hello,结合进程、虚存、系统级论述hello是怎么一步步执行的。-11-CSAPP各章练习题(1~6章)第一章单选题1hello.c在()阶段在编译过程中生成hello.oA.预处理阶段B.编译阶段C.汇编阶段D.链接阶段2hello.c在编译过程中通过编译器(ccl)翻译为文本文件()A.hello.oB.hello.sC.hello.iD.hello.c3处理器执行程序时,用()来存放程序和程序处理的数据A.主存B.寄存器C.磁盘D.网盘4处理器在指令的要求下将一个字节从主存复制到寄存器的操作是()A.存储B.加载C.操作D.跳转5利用()技术,数据可以不通过处理器直接从磁盘到达主存。A.随机存储器B.高速缓存存储器C.物理存储器D.直接存储器6代码和数据被加载到()处理器就开始执行main程序中的机器语言指令。A.寄存器B.主存C.磁盘D.程序计数器7位于存储器层次结构中的最顶部的是()。A.寄存器B.主存C.磁盘D.高速缓存8下面()是对处理器、主存和I/O设备的抽象表示。A.进程B.虚拟存储器C.文件D.虚拟机9当系统从主存将一串字节复制到网络适配器时,数据流经过网络到达()。A.本地寄存器B.另一台主机C.本地磁盘D.网盘10当调用malloc这样的C标准库函数时,()可以在运行时动态的扩展和收缩。A.栈B.堆C.共享库D.内核虚拟存储器11我们通常所说的“字节”由()个二进制位构成。A2B4C6D812微型计算机硬件系统中最核心的部位是()

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功