首页 > 试题广场 >

如下C程序,被编译成LC-3机器语言,且执行前的加载地址为x

[问答题]
如下C程序,被编译成LC-3机器语言,且执行前的加载地址为x3000。如果不算跳转至I/O库函数的JSR指令在内,该目标代码中包含3条JSR指令(分别跳入函数f、g和h)。假设,3条JSR指令的地址分别是x3102、x3301和x3304。再假设用户输入为“4、5、6”。试画出当程序从函数f返回时,运行时栈的快照(假设栈的基地址是xEFFF)。
#include<stdio.h>
int g(int arg);
int h(int arg1,int arg2);

int main()
{
  int a,b,c;
  printf("Type three numbers:");
  scanf("%d %d %d",&a,&b,&c);
  printf("%d",f(a,b,c));
}
int f(int x,int y,int z)
{
  int x1;
  x1=g(x);
  return h(y,z)*x1;
}
int g(int arg)
{
   return arg*arg;
}
int h(int arg1,int arg2)
{
 returnn arg1/arg2;
}

这道题你会答吗?花几分钟告诉大家答案吧!