执行下列程序后,(CX)=( )。 DATA SEGMENT A DW 1, 2, 3, 4, 5 B DW 5 DATA SEGMENT CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX LEA BX, A ADD BX, B MOV CX, [BX] MOV AH, 4CH INT 21H CODE ENDS END START
A.400
B.0
C.10
D.100
第1题:
已知(AX)=1,(BX)=2,(CX)=4,(DX)=3,(SI)=5,执行程序段 ABC:INC AX ADD BX, AX SHR DX, 1 MOV SI, 1234H LOOP ABC 后,寄存器AX,BX,CX,DX,SI中的内容分别是什么?
第2题:
已知某数据段定义如下: W1 DB 32H,20H W2 DW -1,4130H W3 DB ‘3AC5’ 执行MOV CX,WORD PTR W1指令后,CX的内容为_______H, 执行MOV BX,W2+3指令后,BX的内容为_______H。 (注:答案和答案之间用一个半角空格分开)
第3题:
执行下列指令段后,回答下列问题。 BUF DB 10,9,8,7,6,5,4,3,2,1 MOV CX,10 MOV SI,OFFSET BUF+9 LEA DI,BUF+10 STD REP MOVSB MOV BX,OFFSET BUF MOV AX,[BX] (1)分析程序段的作用,并写出BUF开始的字节单元内容。 (2)寄存器AX和CX的内容分别为:(AX)= , (CX)= 。
第4题:
5、执行以下程序段后的b的值是()。 int a=5,b=6,c=1,x=2,y=3,z=4; c=(a=c>x)&&(b=y>z);
A.6
B.0
C.1
D.5
第5题:
下列选项中,哪个正确的描述了数据封装的顺序
A.Data, frame, packet, segment, bit
B.Segment, data, packet, frame, bit
C.Data, segment, packet, frame, bit
D.Data, segment, frame, packet, bit
第6题:
A. Data, Frame, Packet, Segment, Bit
B. Data, Frame, Segment, Packet, Bit
C. Data, Packet, Frame, Segment, Bit
D. Data, Packet, Segment, Frame, Bit
E. Data, Segment, Frame, Packet, Bit
F. Data, Segment, Packet, Frame, Bit
第7题:
执行下面的程序段后,(AX)=______。
ORG 0024H
AR1 DW 4,5, $+4
MOV AX,AR1+$
第8题:
阅读分析本题程序段后回答问题:
(1)程序实现了什么功能?(3分)
(2)写出程序的输出结果;(4分)
(3)写出算法的时间复杂度。(3分)
#include "stdio.h"
#define N 7
typedef int datatype;
void main(void)
{ int 1,j,t;
datatype data[N]={1,2,3, 4,5,6, 7}; /*处理的数据
*/
i=0;
j=N-1;
while (i<j)
{ t=data[i];
data[i++ ]=data[j];
data[j--]=t;
}
printf(”运行结果为: \n");
for(i= =0;i<N-1;i++)
printf("%d; ",data[i]);
}
答案:
(1)实现的功能:将数组里的数组逆序输出
(2)7;6;5;4;3;2
(3)时间复杂度为n
解析:
因为i<N-1,所以最后输出的结果中不会有1
第9题:
执行下面程序输出的是【 】。
include <iostream>
using namespace std;
template <typename T>
T total(T *data){
Ts=0;
while( *data) s+=*data++;
return s;
}
int main(){
int s[]={1,3,5,7,0,2,4,6,8};
cout<<total(s);
return 0;
}