下面的程序段: NUM DW ? NAMEDW 10 DUP () CNT EQU 10 LEN EQU $-NUM
下面的程序段: NUM DW ? NAMEDW 10 DUP () CNT EQU 10 LEN EQU $-NUM HOV AX, LEN 执行后,AX中的内容是()。
A.16H
B.17H
C.11H
D.12H
下面的程序段: NUM DW ? NAMEDW 10 DUP () CNT EQU 10 LEN EQU $-NUM HOV AX, LEN 执行后,AX中的内容是()。
A.16H
B.17H
C.11H
D.12H
第1题
分析下面的程序:
void GetMemory(char **p,int num)
{
*p=(char *)malloc(num);
}
int main()
{
char *str=NULL;
GetMemory(&str,100);
strcpy(str,"hello");
free(str);
if(str!=NULL)
{
strcpy(str,"world");
}
printf("\n str is %s",str);
getchar();
}
问输出结果是什么?希望大家能说说原因,先谢谢了
第2题
分析下列程序:
DATA SEGMENT
NUM DB 06H
SUM DB?
DATA ENDS
STACK SEGMENT PARA STACK'STACK'
STAPN DW 100 DUP()
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START:MOV AX,DATA
MOV DS,AX
PUSH AX
PUSH DX
CALL AAA
MOV AH,4CH
INT 21H
AAA PROC
XOR AX,AX
MOV DX,AX
INC DL
MOV CL,NUM
MOV CH,00H
BBB: ADD AL,DL
DAA
INC DL
LOOP BBB
MOV SUM,AL
RET
AAA ENDP
CODE ENDS
END START
(1) 程序执行到MOVAH,4CH语句时,AX=?DX=?SP=?
(2) BBB:ADD AL,DL语句的功能是什么?
(3) 整个程序的功能是什么?
第3题
某程序设置的数据区如下:
DATA SEGMENT
DB1 DB 12H,34H,0,56H
DW1 DW 78H,90H,0AB46H,1234H
ADR1 DW DB1
ADR2 DW DW1
AAA DW $ -DB1
BUF DB 5 DUP(0)
DATA ENDS
画出该数据段内容在内存中的存放形式(要求用16进制补码表示,按字节组织)。
第5题
num EQU 2
start
MOV r0, #1
MOV r1, #6
MOV r2, #3
BL arithfunc
stop
B stop
arithfunc
CMP r0, #num
MOVHS pc, lr
ADR r3, JumpTable
LDR pc, [r3,r0,LSL#2]
JumpTable
DCD (.WORD) DoA
DCD (.WORD) DoS
DoA
ADD r0, r1, r2
MOV pc, lr
DoS
SUB r0, r1, r2
MOV pc,lr
END
第6题
A.Person(n,a);
B.this(Person(n,a));
C.this(n,a);
D.this(name,age);
第8题
回答下面的问题(6分) (1).Void GetMemory(char **p, int num) { *p = (char *)malloc(num); } void Test(void) { char *str = NULL; GetMemory(&str, 100); strcpy(str, "hello"); printf(str); } 请问运行Test 函数会有什么样的结果?
第10题
A.有穷性
B.确定性
C.可行性
D.健壮性