C语言程序段如下所示: int i1 = -20144; unsigned short usi = i1; int i2 = usi; 假设变量i1、usi、i2分别被分配在-0x10(%ebp) 、-0x12(%ebp) 、-0xc(%ebp)地址单元。在IA-32+Linux+GCC的环境中,执行上述程序段后,相应的调试信息如下: (gdb) x/4xb $ebp-0xc 0xffffd2ac: ① ② ③ ④ 则①、②、③、④处的内容分别是:()
A.0x50、0xb1、0x00、0x00
B.0x50、0xb1、0xff、0xff
C.0x00、0x00、0xb1、0x50
D.0xff、0xb1、0x50
第1题:
下面程序的运行结果是【17】。
#define N 10
#define s(x)x*x
#define f(x)(x*x)
main()
{ int i1,i2;
i1=1000/s(N); i2=1000/f(N);
printf("%d %d\n",i1,i2);
}
第2题:
有以下程序:#include <stdio, h>#define f(x) (x * x)main ( ){ int i1 ,i2; i1 = f(8)/f(4) ;i2 =f(4 +4)/f(2 +2); printf("% d,% d\n" ,i1 ,i2);
A.64,28
B.4,4
C.4,3
D.64,64
第3题:
下面程序和运行运行结果是【 】。
define N 10
define s (x) x * x
define f(x) (x * x)
main( )
{ iht i1,i2;
i1 = 1000/s(N); i2 = 1000/f(N);
printf("%d %d\n",i1,i2);
}
第4题:
下列程序的输出结果是______。
include<iostream.h>
void main( )
{
char a[]="abcdabcabfgacd";
int i1=0,i2=0,i=0;
while(a[i])
{
if(a[i]=="a")i1++;
if(a[i]=="b")i2++;
i++;
}
cout<<i1<<""<<i2<<endl;
}
第5题:
下列程序的输出结果为【 】。
include <iostream. h>
void main()
{
char a[]="abcdabcabfgacd";
int i1=0,i2=0,i=0;
while (a[i])
{
if (a[i]=='a') i1++;
if (a[i]=='q') i2++;
i++;
}
cout<<i1<<''<<i2<<end1;
}
第6题:
有以下程序
#include <stdio.h>
#define N 5
#define M N+1
#define f(x)(x*M)
main()
{ int i1,i2;
i1=f(2);
i2=f(1+1);
printf("%d %d\n",i1,i2);
}
程序的运行结果是
A.12 12
B.11 7
C.11 11
D.12 7
第7题:
试题三(共 20 分)
阅读以下关于中断的叙述,回答问题 1 至问题 3,将答案填入答题纸的对应栏内。
【说明】
某计算机中断系统有 4级中断 I1,I2,I3 和I4,中断响应的优先次序为 I1→I2→I3→I4,即先响应 I1,再响应 I2,……,最后响应 I4。每级中断对应一个屏蔽码,屏蔽码中某位为“1”表示禁止中断(关中断) ,若为“0”则表示允许中断(开中断) 。各级中断处理程序与屏蔽码的关系如表 3-1 所示。

【问题 1】 (6 分)
若ti 时刻I1、I2 和 I4 级同时产生中断,在各中断处理完成后,tj(ti<tj)时刻发出 I3 级中断申请,CPU 为 I3 服务时,I1 级发出请求,在 CPU 为 I1 服务时,I2 级发出请求。请参照图 3-1 所示的格式,画出CPU的运行轨迹。

【问题 2】 (8 分)
若将中断优先次序设置为 I1→I4→I3→I2,即先响应 I1,再响应 I4,……,最后响应 I2。请重新设置各级的屏蔽码,填写表 3-2。

【问题 3】 (6 分)
设中断优先次序为 I1→I4→I3→I2。若 ti 时刻 I1、I2 和 I4 级同时产生中断,在各中断处理完成后,tj(ti<tj)时刻发出 I3 级中断申请,CPU为 I3服务时,I1级发出请求,在 CPU为 I1 服务时,I2 级发出请求。请画出这种情况下 CPU的运行轨迹。



第8题:
第9题:
第10题:
利用堆栈传递子程序参数的方法是固定的,在子程序中,修改参数()可以改变子程序的返回地址。
第11题:
用一变压器向一负载供电,当增大负载(负载阻值减小)时原绕组中电流I1和二次绕组中电流I2的变化情况为()。
第12题:
电流互感器的角误差,可用下式表示:Δfi%=()。其中K为电流互感器的额定变比,I1为一次绕组中的电流;I2为二次绕组中的电流。
第13题:
有以下程序: #include <stdio.h> #define N 5 #define M N+1 #define f(x) (x*M) main() { int i1,i2; i1=f(2); i2=f(1+1); printf("%d%d\n",i1,i2); } 程序的运行结果是( )。
A.12 12
B.11 7
C.11 11
D.12 7
第14题:
有以下程序: #define f(x)(x*x)main { int i1,i2; i1 = f(8)/(4);i2 = f(4+4)/f(2+2); printf("%d,%d\n",i1,i2); } 程序运行后的输出结果是( )。
A.64,28
B.4,4
C.4,3
D.64,64
第15题:
有以下程序: #define f(x)(x*x) main() { int i1,i2; il=f(8)/f(4); i2=f(4+4)/f(2+2); printf("%d,%d\n",i1,i2); } 程序运行后的输出结果是 ______。
A.64,28
B.4,4
C.4,3
D.64,64
第16题:
有以下程序: #include<stdio.h> #define N 5 #define M N+1 #define f(x)(x*M) main() {int i1,i2; i1=f(2); i2=f(1+1); printf("%d%d",i1,i2); } 程序的运行结果是( )。
A.12 12
B.11 7
C.11 11
D.12 7
第17题:
x86,win32,vc++6,默认属性的控制台工程:
class C1
{
public:
virtual int sum(int i1, int i2)
{
return (i1 + i2);
}
private:
double m_var1;
char m_var2;
};
char sz[] = "abcd";
问题:sizeof(C1) = ?
sizeof(sz) = ?
第18题:
假设有证书发放机构I1,I2,用户A在I1获取证书,用户B在I2获取证书,I1和I2已安全交换了各自的公钥,加入用I2《A》表示由I1颁发给A的证书,A可以通过 (41) 证书链获取B的公开密钥。
A.I1《I2》I2《B》
B.I2《B》I1《I2》
C.I1《B》I2《I2》
D.I2《I1》I2《B》
第19题:
下面程序的运行结果是_____和_____。
include<iostream.h>
define N 10
define s(x) x * x
define f(x) (x * x)
void main( )
{ int i1,i2;
i1=1000/s(N) ;i2=1000/f(N) ;
cout < < i1 < < " " < < i2;
}
第20题:
第21题:
两电阻相并联,已知R1/R2=1/2,则流入电阻的电流之比I1/I2、功率之比P1/P2分别是()。
第22题:
通过堆栈传递参数,在子程序中使用EBP间址取得参数的原因是()。
第23题:
理想变量器电路中,若初、次级匝数比为n,初级电流为i1,次级电流为i2,则下式正确的是()。
第24题:
mySwap(i1,i2)
mySwap(d1,d2)
mySwap(i1,d1)
mySwap<int>(i2,d2)