2016 年 408 真题2016 年 408 计算机组成原理 · 第 12 题选中文字高亮 · 下划线将高级语言源程序转换为机器目标代码文件的程序是( )。A汇编程序B链接程序C编译程序D解释程序←上一题在按字节编址的计算机 M 上,题 43 中 f1 的部分源程序(阴影部分)与对应的机器级代码(包括指令的虚拟地址)如下图所示。 int f1(unsigned n) 1 00401020 55 push ebp ... ... ... for (unsigned i = 0; i <= n-1; i++) { ... ... ... 20 0040105E 39 4D F4 cmp dword ptr [ebp-0Ch],ecx ... ... ... power *= 2; ... ... ... 23 00401066 D1 E2 shl edx,1 ... ... ... return sum; ... ... ... 35 0040107F C3 ret 其中,机器级代码行包括行号、虚拟地址、机器指令和汇编指令。 请回答下列问题。 (1) 计算机 M 是 RISC 还是 CISC?为什么? (2) f1 的机器指令代码共占多少字节?要求给出计算过程。 (3) 第 20 条指令 cmp 通过 i 减 n-1 实现对 i 和 n-1 的比较。执行 f1(0) 过程中,当 i=0 时,cmp 指令执行后,进/借位标志 CF 的内容是什么?要求给出计算过程。 (4) 第 23 条指令 shl 通过左移操作实现了 power*2 运算,在 f2 中能否也用 shl 指令实现 power*2?为什么?下一题有如下 C 语言程序段 short si = -32767; unsigned short usi = si; 执行上述两条语句后,usi 的值为( )。→