汇编语言程序填空平时练习题

汇编语言程序填空平时练习题
汇编语言程序填空平时练习题

01知识点:0110 填空题

下述程序段执行后,AX= (D)CF=()。

mov ax,0bc5fh

mov bx,0cfbh

xor ax,bx

or ax,bx

选项A)BC5FH;0

选项B)BCFFH;1

选项C) BC5FH;1

选项D)BCFFH;0

03知识点:0110 填空题:

设DS=2000H、BX=1256H,变量table的偏移地址为20A1H,[232F7H]=33280H.请问下列指令分别执行后,IP的值是多少(D)。

jmp bx

选项A)1456H

选项B)2000H

选项C)232FH

选项D)3280H

答案:D

05知识点:0110 填空题:

已知AX=0A33AH、DX=F0F0H,执行下述指令

and ah,dl

xor al,dh

neg ah

not al

AH=(C)

选项A)33H

选项B)F0H

选项C)60H

选项D)40H

07知识点:0110 填空题:

已知AX=FF60H,执行下述指令

mov dx,96h

xor dh,0ffh

sbb ax,bx

标志AX=()B

选项A)FFCCH

选项B)FFCAH

选项C)FFCBH

选项D)FF96H

09知识点:0110 填空题:

设AX=1000H 、BX=2340H,执行了指令cmp ax,bx

后,标志CF=(B),ZF=()

选项A)0;1

选项B)1;0

选项C)1;1

选项D)0;0

11知识点:0110 填空题:

BLK DB 2EH,54H,22H,0FBH,14H,7AH,49H …

MOV CX,7

LEA SI,BLK

NEXT:MOV AL,[SI]

INC SI

TEST AL,81H

LOOPZ NEXT

MOV BL,[SI]

该程序段运行后,BL=()A

选项A)14H

选项B)0FBH

选项C)54H

选项D)49H

答案:A

13知识点:0110 填空题:

分析下面程序段,

MOV AL,200

SAR AL,1

MOV BL,AL

MOV CL,2

SAR AL,CL

ADD AL,BL

试问程序段执行后(BL)=(A)(AL)=()选项A)0E4H;0D3H

选项B)0DDH;0E4H

选项C)0E4H;0DDH

选项D)0D3H;0E4H

15知识点:0110 填空题:

下面程序段执行完以后,AL的内容是(B)MOV BX,00FFH

AND BX,0FFFH

OR BX,0F0FH

XOR BX,00FFH

选项A)00F0H

选项B)0F00H

选项C) 0F0FH

选项D)00FFH

17知识点:0110 填空题:

执行下列指令后,AX寄存器中的内容是(B)START DW 10H,20H,30H,40H,50H

EE1 DW 3

MOV BX,OFFSET START

ADD BX,EE1

MOV AX,[BX]

选项A)2000H

选项B)3000H

选项C)4000H

选项D)5000H

19知识点:0110 填空题:

阅读如下程序片段

MOV AL,0F3H

MOV DL,0C4H

ADD AL,DL

AND AL,0FH

执行上述程序片段后,AL=(C),OF=()

选项A)1;0

选项B)0;0

选项C)7;1

选项D)7;0

21知识点:0110 填空题:

阅读如下程序片段

MOV AX,0632H

MOV BX,0C202H

SUB AX,BX

INC AX

执行上述程序片段后,(AX)=(B),(CF)= ()选项A)4431H;0

选项B)4431H;1

选项C)4342H;1

选项D)4432H;0

答案:B

23知识点:0110 填空题:

执行如下程序:

MOV AX,0

MOV BX,1

MOV CX,100

A:ADD AX,BX

INC BX

LOOP A

HLT

执行后(BX)=(B)

选项B)101

选项C)0

选项D)1

答案:B

25知识点:0110 填空题:

当标志位____=1 时表示无符号数运算产生溢出,而当标志位____=1 是表示带符号数运算产生C

溢出。

选项A)OF;CF

选项B)ZF;OF

选项C)CF;OF

选项D)ZF;CF

答案:C

27知识点:0110 填空题:

假设AX=1234H,执行如下程序后,BX=(EDCB)

inc ax

mov bx,ax

neg bx

add ax,bx

选项A)1230H

选项B)FFFAH

选项C)1234H

29知识点:0110 填空题:

阅读如下程序片段

MOV AL,4CH

MOV BL,0B5H

ADD AL,BL

执行上述程序片段后,(BL)=(C)

选项A)4CH

选项B)45H

选项C)B5H

选项D)1H

31知识点:0110 填空题:

阅读如下程序片段

MOV AL,7EH

MOV CL,04H

ROL AL,CL

执行上述程序片段后,(AL)= (D),OF=(). 选项A)7EH;0

选项B)7EH;1

选项C)E7H;1

选项D)E7H;0

答案:D

33知识点:0110 填空题:

已知数据段如下:

ORG 0100H

ARY DW 3,$+4,5,6

CNT EQU $-ARY

DB 1,2,CNT,3

则执行如下指令后,AX=()、BX=()。C MOV AX,ARY+2

MOV BX,ARY+10

选项A)0126H;04HH

选项B)0126H;08H

选项C)0106H;08H

选项D)0106H;04H

答案:C

35知识点:0110 填空题:

MOV AL,7EH

MOV CL,04H

ROL AL,CL

执行上述程序片段后,(AL)= (),(CL)=()D 选项A)7EH;0

选项B)7EH;1

选项C)E7H;2

选项D)E7H;4

37知识点:0110 填空题:

MOV AL,4CH

MOV BL,0B5H

ADD AL,BL

执行上述程序片段后,(AL)= (),(BL)=()D

选项A)7H;B7H

选项B)7H;B5H

选项C)1H;B7H

选项D)1H;B5H

38知识点:0110 填空题:

下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。程序中所空缺的指令填为()。A

MOV SI,OFFSET BUF-1

MOV DI,OFFSET BUF

MOV CX,COUNT

__________

LOOP:MOVSB

__________

LOOP LOP

选项A)CLD; SUB SI 2

选项B)CLD; SUB SI 1

选项C)CMP;SUB DI 1

选项D)CMP;SUB DI 2

答案:A

39知识点:0110 填空题:

执行如下程序:

MOV AL,38H

MOV BL,49H

CALL SUBO

INC AL

DEC CL

SUBO PROC

ADD AL,BL

MOV CL,AL

DAA

RET

SUBO ENDP

上述程序段运行后,AL=(),CL=()。C 选项A)80H; 80H

选项B)80H; 88H

选项C)88H;80H

选项D)88H;88H

答案:C

40知识点:0110 填空题:

执行如下程序:

MOV AX,0

MOV BX,1

MOV CX,100

A:ADD AX,BX

INC BX

LOOP A

HLT

执行后(BX)=(),(AX)=()。D

选项A)100; 1010

选项B)101;1010

选项C)100;5050

选项D)101;5050

41知识点:0110 填空题:

MOV BL,64H

MOV CL,03H

XOR AX,AX

AGAIN:ADD AL,BL

ADC AH,0

DEC CL

JNZ AGAIN

问:(1)该程序段完成的功能是:将AX内容乘()送BX中,AX=()。A

选项A)3; 012CH

选项B)3;012AH

选项C)6;012CH

选项D)6;012AH

答案:A

42知识点:0110 填空题:

DA3 EQU WORD PTR DA4

DA4 DB 0ABH,89H

SHR DA3,1

MOV DX,DA3

SHL DA4,1

MOV CX,DA3

上述程序段运行后,CX=(),DX=()B 选项A)44AAH; 44D2H

选项B)44AAH;44D5H

选项C)44A7H;44D2H

选项D)44A7H;44D5H

答案:B

43知识点:0110 填空题:

DATA SEGMENT DA3 EQU 1234H

ORG 0020H DA4 EQU $-DA2

DA1 DW 12H,23H DA5 DB 31H,32H

DA2 DB 11H,21H DATA ENDS

符号名DA4的值为(),符号名DA5的值是()C

选项A)2; 0024H

选项B)4;0026H

选项C)2;0026H

选项D)4;0024H

答案:C

45知识点:0110 填空题:

设(SP)=100H,(AX)=0FFFFH

STC

PUSH AX

ADC AX,0

PUSH AX

POP BX 上述程序段运行后,(BX)= (),(SP)= ()C 选项A)0; 0FFH

选项B)1;0FEH

选项C)0;0FEH

选项D)1;0FFH

答案:C

47知识点:0110 填空题:

A DW 1234H

B DW 5678H

:

PUSH A

PUSH B

POP A

POP B

试回答:

上述程序段执行后(A)=()(B)=()

选项A)1234H;5678H

选项B)1256H;3478H

选项C)1234H;7856H

选项D)1256H;5678H

51知识点:0110 填空题:

阅读如下程序片段

设(SP)=100H,(AX)=0FFFFH

STC

PUSH AX

ADC AX,0

PUSH AX

POP BX 上述程序段运行后,(BX)=()(SP)=()B 选项A)0;0FFH

选项B)0;0FEH

选项C)1;0FFH

选项D)1;0FEH

答案:B

52知识点:0110 填空题:

阅读如下程序片段

DR1 DB 10H,30H

DR2 DW 10H DUP(0,2 DUP(2))

……

MOV BL,LENGTH DR1

MOV CL,LENGTH DR2 请问指令执行后,BL和CL的值分别为()和()A 选项A)1;10H

选项B)1;30H

选项C)0;0H

选项D)0;30H

答案:A

53知识点:0110 填空题:

阅读如下程序片段,假设(SP)=0064H

MOV AX,0001H

MOV BX,0002H

PUSH AX

PUSH BX

POP AX

POP BX

执行上述程序片段后,(AX)= ()(BX)= ()C

选项A)0002H;0002H

选项B)0001H;0002H

选项C)0002H;0001H

选项D)0001H;0001H

答案:C

54知识点:0110 填空题:

阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28H

MOV BX,0024H

LEA BX,[BX]

OR BX,0

ADC BX,[BX]

执行上述程序片段后,(BX)= ()B

选项A)2856H

选项B)2824H

选项C)287AH

选项D)567AH

55知识点:0110 填空题:

阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28H

MOV BX,0024H

LEA BX,[BX]

OR BX,0

ADC BX,[BX]

执行上述程序片段后,(CF)= (), OF= ()A 选项A)0;0

选项B)0;1

选项C)1;0

选项D)1;1

答案:A

57知识点:0110 填空题:

阅读下面程序段并填空:

MOV AX, 1090H

SUB AX, 4AE0H

JC L1

JO L2

JMP L3

上述程序执行后程序转向() A

选项A)L1

选项B)L2

选项C)L3

选项D)不清楚

答案:A

58知识点:0110 填空题:

已知AX=7865H,BX=89AAH

CLC

ADD AX,BX

OR BX,AX

RCR AX,1

RCL BX,1

程序执行后,AX=()BX=()D 选项A)010FH;177FH

选项B)0107H;177FH

选项C)010FH;175FH

选项D)0107H;175FH

59知识点:0110 填空题:

阅读下面程序段并填空:

MOV AX,7452H

ADD AL,AH

DAA

XCHG AH,AL

SUB AL,AH

DAS

程序段运行后,AX=()CF=()D 选项A)2468H;0

选项B)2468H;1

选项C)2648H;1

选项D)2648H;0

答案:D

60知识点:0110 填空题:

以BUF为首址的字节单元中,存放了COUNT个无符号数,下面程序段是找出其中最大数并送入MAX单元中。

BUF DB 5,6,7,58H,62,45H,127,……

COUNT EQU $-BUF MAX DB?

MOV BX,OFFSET BUF

MOV CX,COUNT-1

MOV AL,[BX]

LOP1:INC BX

_____________

JAE NEXT

MOV AL,[BX]

NEXT:DEC CX

______________

MOV MAX,AL

请问题中划线处应填写的程序为()。B

选项A)CMP AL,[BX];JZ LOP1

C语言程序的设计填空题及答案复习用

导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); } 【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ①; return( ② ); } 【3.3】下面的程序的功能是求一维数组中的最小元素。findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;pamax) amax=x; if( ② ) amin=x; scanf("%f",&x); } printf("\namax=%f\namin=%f\n",amax,amin); } 【3.7】下面程序的功能是将形参x的值转换为二进制数, 所得的二进制数放在一个一维数组中返回,二进制数的 最低位放在下标为0的元素中。 fun(int x,int b[]) { int k=0,r; do { r=x% ①; b[k++]=r; x/= ②; }while(x); } 【3.8】下面程序的功能是输出1到100之间每位数的乘 积大于每位数的和的数。例如数字26,数位上数字的乘 积12大于数字之和8。 main() { int n,k=1,s=0,m; for(n=1;n<=100;n++) { k=1; s=0; ①; while( ② ) 页脚

汇编语言复习题(带答案)

汇编语言复习题(带答案) 汇编语言期末复习题 第1章:基础知识 1、在汇编语言程序的开发过程中使用宏功能的顺序是(C)。DX A、宏定义,宏调用 B、宏定义,宏展开 C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用 2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句 中不可省略的项是(B)。DX A、名字项 B、操作项 C、操作数项 D、注释项 3、可屏蔽中断就是它的请求是否被CPU响应要受(IF)的控制。DX 4、使用LINK连接命令,执行后可生成文件的扩展名为(EXE)。DX 5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在段中,段地址 在SS寄存器中。TK 6、注释项用于说明程序段或是一条和几条指令的功能,一般用;(或分号)表示注释 的开始。TK 7、DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送AH寄存器后执行INT21H。TK 8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。TK 9、CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。在此,称引起紧急事务的事件为中断源。TK 10、在字符串操作指令中,DS∶SI指向源串,ES∶DI指向目的串。TK 11、计算机系统通过接口与外围设备通信。TK 12、键盘I/O、显示I/O和打印I/O分别对应、和号中断。TK 13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。每个字的第一个字节 为显示字符的ASCII码,第二个字节为显示字符的属性。TK 14、简述上机运行汇编语言程序的过程。JD

汇编语言试题及参考答案

汇编语言试题及参考答案 一,填空题 1.ZF标志位是标志结果是否为零的,若结果,ZF为( 1 ),否则ZF为( 0 ).当ZF为1时,SF为( 0 ) 2.标号可以有两种类型属性.它们是( )和( ) 3.8位无符号整数的表示范围为0--255,写成16进制形式为( ),8位有符号整数的表示范围为-128--+127,写成16进制形式为( ) 4.伪指令DB,GROUP 和NAME 三个标号名字域必须有名字的是( ),不得有名字的是( ),可有可无名字的是( ). 5.循环程序通常由( )( )( )和循环结果外理四部分构成 6.在数值不达式中,各种运算符可可混合使用,其优先次序规则*,/( )于+,-;XOR,OR( )于AND,LT( )于GT 7. 宏指令定义必须由伪指令( )开始,伪指令( )结束,两者之间的语句称为( ) 8.调用程序与子程序之间的参数传递方法有四种,即堆栈法( )( )( ) 9.分别用一条语句实现下述指明的功能 (1)栈顶内容弹出送字变量AYW( ) (2)双字变量AYD存放的地址指针送ES和SI( ) (3)变量AY2类型属性送AH( ) (4)不允许中断即关中断( ) (5)将字符串'HOW ARE YOU!'存入变量AYB( ) (6)子程序返回调用程序( ) (7)地址表达式AYY[4]的偏移地址送字变量ADDR( ) (8)AX的内容加1,要求不影响CF( ) (9)BX的内容加1,要求影响所有标志位( ) (10)若操作结果为零转向短号GOON( ) 二,单选题 1.IBM PC微机中,有符号数是用( )表示的 1.原码 2.补码 3.反码 4.BCD码 2.把汇编源程序变成代码程序的过程是( ) 1.编译 2.汇编 3.编辑 4.链接

汇编语言课后习题答案

2.1已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12345678H,[21200H]~[21203H]依次存放2A4C B765H,说明下列每条指令执行完后AX寄存器的内容。 (1)mov ax,1200h (2)mov ax,bx (3)mov ax,[1200h] (4)mov ax,[bx] (5)mov ax,[bx+1100h] (6)mov ax,[bx+si] (7)mov ax,[bx][si+1100h] 〔解答〕 (1)AX=1200H (2)AX=0100H (3)AX=4C2AH;偏移地址=bx=0100h (4)AX=3412H;偏移地址=bx=0100h (5)AX=4C2AH;偏移地址=bx+1100h=1200h (6)AX=7856H;偏移地址=bx+si=0100h+0002h=0102h (7)AX=65B7H;偏移地址=bx+si+1100h=0100h+0002h+1100h=1202h 〔习题2.2〕指出下列指令的错误 (1)mov cx,dl (2)mov ip,ax (3)mov es,1234h (4)mov es,ds (5)mov al,300 (6)mov[sp],ax (7)mov ax,bx+di

(8)mov20h,ah 〔解答〕 (1)两操作数类型不匹配 (2)IP指令指针禁止用户访问 (3)立即数不允许传给段寄存器 (4)段寄存器之间不允许传送 (5)两操作数类型不匹配 (6)目的操作数应为[SI] (7)源操作数应为[BX+DI] (8)立即数不能作目的操作数 〔习题2.5〕已知SS=2200H、SP=00B0H,画图说明执行下面指令序列时,堆栈区和SP的内容如何变化?mov ax,8057h push ax mov ax,0f79h push ax pop bx pop[bx] 〔解答〕 mov ax,8057h push ax mov ax,0f79h push ax pop bx;bx=0f79h pop[bx];DS:[0f79h]=8057h

C程序填空题练习

程序填空题 1、下列程序的功能是把从键盘上输入的整数取绝对值后输出。 main() { int x; scanf("%d",&x); if(x<0) ; printf("%d\n",x); } 2、输入 20个学生的成绩,输出最低分数。 main() { int i; float x,min=100; for (i=0;i<20;i++) { scanf( “ %f” ,&x); if(x

} printf("A=%d,B=%d,C=%d\n",k1,k2,k3); } 5、下列程序的功能是将一个字符串str 的内容颠倒过来。 #include "string.h" main() { int i,j,k; char str[]="1234567"; for(i=0,j=____________;is[k]) __________; printf("k=%d\n",k); } 9、下列程序的功能是把输入的十进制长整型数以十六进制数的形式输出。 main() { char b[]="0123456789ABCDEF"; int c[64],d,i=0,base=16; long n; scanf("%ld",&n);

汇编语言课后习题解答

第1章基础知识 检测点1.1(第9页) (1)1个CPU的寻址能力为8KB,那么它的地址总线的宽度为13位。 (2)1KB的存储器有1024个存储单元,存储单元的编号从0到1023。 (3)1KB的存储器可以存储8192(2^13)个bit,1024个Byte。 (4)1GB是1073741824(2^30)个Byte、1MB是1048576(2^20)个Byte、1KB是1024(2^10)个Byte。 (5)8080、8088、80296、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能力分别为: 64(KB)、1(MB)、16(MB)、4(GB)。 (6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为: 1(B)、1(B)、2(B)、2(B)、4(B)。 (7)从内存中读取1024字节的数据,8086至少要读512次,80386至少要读256次。 (8)在存储器中,数据和程序以二进制形式存放。

(1)1KB=1024B,8KB=1024B*8=2^N,N=13。 (2)存储器的容量是以字节为最小单位来计算的,1KB=1024B。 (3)8Bit=1Byte,1024Byte=1KB(1KB=1024B=1024B*8Bit)。 (4)1GB=1073741824B(即2^30)1MB=1048576B(即2^20)1KB=1024B(即2^10)。(5)一个CPU有N根地址线,则可以说这个CPU的地址总线的宽度为N。这样的CPU 最多可以寻找2的N次方个内存单元。(一个内存单元=1Byte)。 (6)8根数据总线一次可以传送8位二进制数据(即一个字节)。 (7)8086的数据总线宽度为16根(即一次传送的数据为2B)1024B/2B=512,同理1024B/4B=256。 (8)在存储器中指令和数据没有任何区别,都是二进制信息。

C语言-程序填空练习题

程序填空:阅读程序。在划线处填写适当的表达式或语句,使程序完整并符合题目要求 1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。 main( ) { char ch; ch=getchar(); if( ch>=?a?&&ch<=?z?|| ch>=?A?&&ch<=?Z?) printf("It is an English character\n"); else if( ch>=?0?&&ch<=?9?) printf("It is a digit character\n"); else if( ch== …?) printf("It is a space character\n"); else printf("It is other character\n"); } 2.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。用输入0来结束输入,用i,j来放统计数,请填空完成程序。 void main() { int n,i=0,j=0; printf(“input a integer,0 for end\n”); scanf(“%d”,&n); while (n或n!=0 ) { if(n>0) i=i+1 ; else j=j+1; } printf(“i=%4d,j=%4d\n”,i,j); } 3.编程计算1+3+5+……+101的值 #include void main() { int i, sum = 0; for (i = 1;i<=101 ; i++ ) sum = sum + i; printf("sum=%d\n", sum);

汇编语言习题-测验题答案

汇编语言各章习题、测试题答案 习题一 分别将下列二进制数作为无符号数和带符号数转换为十进制和十六进制数 01110111 00101111 十六进制运算 1A52H+4438H 3967H-2D81H 37H×12H 1250H×4H 将十进制数变为8位补码并做运算(结果用二进制、十六进制、十进制表示) 29+53 73-24 -66+82 -102-15 用压缩BCD码计算(结果用二进制、BCD码、十进制表示) 29+53 73-24 66+18 132+75 符号位扩展(字节扩展为字,字扩展为双字) 20A3H 94H 3456H 7FH EC00H 若机器字长为16位,其无符号数表示范围是多少带符号数表示范围是多少分别用十进制和十六进制表示。 写出下列十六进制数所能代表的数值或编码: (1)38H (2)FFH (3)5AH (4)0DH 将下列十进制数分别转换为二进制、十六进制、二进制补码、压缩BCD码和ASCII码: (1)108 (2)46 (3)-15 (4)254 写出下列算式的8位二进制运算结果,标志位CF、SF、ZF、OF分别是什么值 (1)56+63 (2)83-45 (3)-74+29 (4)-12-37 查表,指出ASCII码0DH、0AH、07H、1BH、20H、60H、50H、70H对应的控制字符。 测验一 单选题: 1.已知X=76,则[X]补= 。 A. 76H B. 4CH 2.已知[X]补=80H,则X= 。 A. 80H B. 0 C. 0FFH D. -80H 3.已知[X]补=98H,则[X]补/2= 。 A. 0CCH C. 49H D. 31H 4.已知X=78,Y=-83,则[X+Y]补= 。 A. 0F5H B. 0A1H C. 0FBH D. 65H 5.将124转换成十六进制数的结果是 A. 7CH B. 7DH C. 7EH D. 7BH 6.将93H看成一个压缩BCD码,其结果是 A. B. C. D. 7. 45转换成二进制数是 A. C. 00101101 D. 8.6CH转换成十进制数是 A. 118 B. 108 C. 48 D. 68 9.将93H扩展为字的结果是 A. FF93H B. 0093H C. 1193H D. 1093H

汇编语言复习题(附答案)

汇编语言复习题 注:蓝色标记的为答案,此答案仅供参考,大家自己做一下或看以一下,认为不对的地方,可以提出来一起讨论一下,另外看一下课后老师布置的相应作业。在此文档最后最后附有课 后四、六章的答案,大家抓紧时间复习哦! 一、选择题 1. 把要执行的程序与库文件连接起来形成可执行文件的系统程序是(B )。 A. 汇编程序 B. 连接程序 C. 机器语言程序 D.源代码程序 2. 在8088/8086的寄存器组中,CPU确定下一条指令的物理地址时需要用到的寄存器对是 (C )。 A..SS 和SP B.DS 和DI C.CS 和IP D.ES 和SI 3. 为了使主机访问外设方便起见,外设中的每个寄存器给予一个(C )。 A.物理地址 B. 逻辑地址 C. 端口地址 D. 段地址 4. MOV AX, 3064H,该指令中源操作数采用的寻址方式是(A )。 A.立即 B. 直接 C. 寄存器相对 D. 寄存器间接 5. 换码指令的助记符是(C )。 A. XCHG B. LEAS C.XLAT D. MOV 6. 如果A> B (A、B有符号数)发生转移,应选择的条件转移指令是(JGE )。 7. 下列符号中,可用作标识符的是(C )。 A.MOV B.AX C.MSG1 D.1ABC 8. X DB 10H DUP (1 , 2)内存变量定义语句拥有了( A )个字节的存储空间。 A.20D B.10D C.20H D.10H 9. 当DF=0时,执行串操作指令MOVSB变址寄存器SI、DI的值将(C )。 A.不变 B. 减1 C. 加1 D. 无法确定 10. 如下指令可将AX寄存器内容改变的是(A )。 A. AND AX , BX B . TEST AX , BX C. CMP AX , BX D . XCHG AX , AX 11.16位CPU支持的I/O 地址范围是(D )。 A. 0~0FFFFFH B. 0~0FFFFH C. 0~0FFFH D. 0~0FFH 12. MUL CL指令实现的功能是(A )。 A.无符号乘法:AX AL X CL B.有符号乘法:AX AL X CL C.无符号乘法:DX AL X CL D .有符号乘法:DX AL X CL 13. DOS系统功能调用(INT 21H )中,显示字符串的功能号是(D )。 A.01H B.02H C.08H D. 09H 14. 在16位CPU读取指令时,需要用到的寄存器对是(C )。 A.SS 和SP B.DS 和DI C.CS 和IP D.ES 和SI 15. 下列指令中,源操作数(既第2操作数)属于基址加变址寻址方式是(B )。 A.MOV AX,23H B. MOV AX,[BX+SI] C.SUB AX,[BX] D. ADD AX,BX 16. 有内存变量定义语句:VAR DW 10 DUP(1 , 2), 1234H, VAR的属性TYPE LENGTH和

汇编语言程序设计(钱晓捷)课后答案

汇编语言程序设计(第二版) 钱晓捷习题答案 第二章(01) 2.1 (1)AX=1200h (2)AX=0100h (3)AX=4C2Ah (4)AX=3412h (5)AX=4C2Ah (6)AX=7856h (7)AX=65B7h 2.2(1) 两操作数类型不匹配 (2) IP指令指针禁止用户访问 (3) 立即数不允许传给段寄存器 (4) 段寄存器之间不允许传送 (5) 两操作数类型不匹配 (6) 目的操作数应为[ BP ] (7) 源操作数应为[BX+DI] (8) 立即数不能作目的操作数 2.3 lea bx,table ;获取table的首地址,BX=200H mov al,8 ;传送欲转换的数字,AL=8 xlat ;转换为格雷码,AL=12H 2.4 堆栈是一种按“先进后出”原则存取数据的存储区域。 堆栈的两种基本操作是压栈和出栈,对应的指令是PUSH和POP。 2.5 mov ax,8057h push ax mov ax,0f79h push ax pop bx ;bx=0f79h pop [bx] ;DS:[0f79h]=8057h 2.6 AL=89h CF ZF SF OF PF AL=12h 1 0 0 1 1 AL=0afh 0 0 1 0 1 AL=0afh 1 0 1 0 1 AL=00h 0 1 0 0 1 AL=0ffh 0 0 1 0 1 AL=00h 0 1 0 0 1 2.7 W=X+Y+24-Z

2.8 (1)ADD DX,BX (2)ADD AL,[BX+SI] (3)ADD [BX+0B2H],CX (4)ADD WORD PTR [0520H],3412H (5)ADD AL,0A0H 2.9;为了避免与操作数地址混淆,将题中X,Y,Z,V 字操作数改为A,B,C,D mov ax,X ;ax=A imul Y ;dx,ax = A*B (将操作数看作符号数,以下同) mov cx,ax mov bx,dx ;bx,ax <-- dx,ax =A*B mov ax,Z ;ax = C cwd ;dx,ax =C (扩展符号后为双字) add cx,ax adc bx,dx ;bx,cx <-- bx,cx+dx,ax=A*B+C sub cx,540 sbb bx,0 ;bx,cx<-- A*B+C-540 mov ax, V ;ax= D cwd ;dx,ax= D (扩展符号后为双字) sub ax, cx sbb dx, bx ;dx,ax = dx,ax - bx,cx = D-(A*B+C-540) idiv X ;运算结果:[D-(A*B+C-540h)]/A ;ax存商,dx存余数 2.10;(1)xchg的操作数不能是立即数 (2不能对CS直接赋值 (3)两个操作数不能都是存储单元 (4)堆栈的操作数不能是字节量 (5)adc的操作数不能是段寄存器 (6)没有确定是字节还是字操作 (7)in不支持超过FFH的直接寻址 (8)out只能以AL/AX为源操作数 第二章(02) 2.11; 指令AX的值CF OF SF ZF PF Mov ax,1407h1470h----- And ax,ax1470h00000 Or ax,ax1470h00000 Xor ax,ax000011 Not ax0ffffh----- Test ax,0f0f0h0ffffh00101 注意: 1. mov, not指令不影响标志位 2. 其他逻辑指令使CF=OF=0, 根据结果影响其他标志位。

面向对象程序设计期末综合练习二(填空题)

面向对象程序设计期末综合练习二(填空题) 填空题 17.C++头文件和源程序文件的扩展名分别为______和______。 19.当使用_______保留字作为函数类型时,该函数不返回任何值。 20.当函数参数表用______保留字表示时,则表示该参数表为空。 88. 重载一个函数的条件是:该函数必须在参数的个数或参数的__________上与其它同名函数有所不同。 91. 定义一个函数模板要用到的第一个修饰符是____________。 92. 在函数模板的参数中,用class修饰的参数称为__________参数。 97. 如果一个函数中有多个默认参数,则默认参数必须全部处在形参表的________部分。 153. 以面向对象方法构造的系统,其基本单位是__________。 154. 每个对象都是所属类的一个__________。 155. 对象将其大部分实现细节隐藏起来,这种机制称为__________。 156. 基类和派生类的关系称为__________。 157. 复杂对象可以由简单对象构成,这种现象称为__________。 158. 对象是对问题域中客观事物的________,它是一组属性和在这些属性上操作的__________。 159. 特殊类的对象拥有其一般类的全部属性与操作,称特殊类________了一般类。 160. 如果一个派生类的基类不止一个,则这种继承称为____________。 161. 如果一个派生类只有一个唯一的基类,则这样的继承关系称为__________。 162. C++支持两种多态性:_________时的多态性和__________时的多态性。 163. 在C++中,编译时的多态性是通过__________实现的,而运行时的多态性则是通过__________实现的。 164. 面向对象软件开发的生命周期分为三个阶段,即分析、__________和__________。 165. 面向对象的分析包括__________分析和__________分析两步。 166. 类定义中,既包含数据成员,也包含________成员。 167. 类中的数据成员的访问属性通常被指明为________。 168. 类中的供外部调用定义的函数成员,其访问属性通常被定义为________。 169. 对于类中定义的任何成员,其隐含访问权限为________。 170. 对于结构中定义的任何成员,其隐含访问权限为________。 171. 为了使类中的成员不能被类外的函数通过成员操作符访问,则应把该成员的访问权限定义为________。 172. 若在类的定义体中给出了一个成员函数的完整定义,则该函数属于________函数。 173. 若在类的定义体中只给出了一个成员函数的原型,则在类外给出完整定义时,其函数名前必须加上________和两个冒号分隔符。 174. 若在类的定义体中只给出了一个成员函数的原型,则在类外给出完整定义

完整版汇编语言试题及答案..doc

一,单项选择题 (每小题 1 分,共 20 分 1-10CCCCAADACB 11-20.ADBBAADDCC 1.指令 JMP FAR PTR DONE 属于 ( C A.段内转移直接寻址 B.段内转移间接寻址 C.段间转移直接寻址 D.段间转移间接寻址 2.下列叙述正确的是 ( A.对两个无符号数进行比较采用CMP 指令 ,对两个有符号数比较用CMP S 指令 B.对两个无符号数进行比较采用CMPS 指令 ,对两个有符号数比较用CM P 指令 C.对无符号数条件转移采用JAE/JNB 指令 ,对有符号数条件转移用JGE/J NL 指令 D.对无符号数条件转移采用JGE/JNL 指令 ,对有符号数条件转移用JAE/J NB 指令 3.一个有 128 个字的数据区 ,它的起始地址为 12ABH:00ABH, 请给出这个数据区最末一个字单元的物理地址是 ( A.12CSBH B.12B6BH

C.12C59H D.12BFEH 4.在下列指令的表示中 ,不正确的是 ( A.MOV AL,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D.MUL CL 5.在进行二重循环程序设计时,下列描述正确的是 ( A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内 B.外循环初值应置外循环之内;内循环初值应置内循环之内 C.内、外循环初值都应置外循环之外 D.内、外循环初值都应置内循环之外,外循环之内 6.条件转移指令 JNE 的测试条件为 ( A.ZF=0 B.CF=0 C.ZF=1 D.CF=1 7.8086CPU在基址加变址的寻址方式中,变址寄存器可以为 ( A.BX 或 CX

汇编语言课后习题答案___郑晓薇(整理后的)

习题一 1 无符号数: 11010011=211=D3H,01110111=119=77H, 10000011=131=83H, 00101111=47=2FH, 10101010=170=AAH 带符号数:11010011= -45=D3H,01110111=+119=77H,10000011= -125=83H, 00101111=+47=2FH,10101010= -86=AAH 2 5E8AH,0BE6H,3DEH,4940H 3 00011101+00110101=01010010=5 2H=82 01001001+11101000=00110001=3 1H=49 10111110+01010010=00010000=1 0H=16 10011010+11110001=10001011=8 BH= -117 4 00101001+01010011=01111100+0 0000110=10000010=82H=82 01110011-00100100=01001111-00000110=01001001=49H=49 01100110+00011000=01111110+0 0000110=10000100=84H=84 0000000100110010+01110101=00 00000110100111+00000110 =0000001000000111=0207H=207 5 000020A3H,FF94H,00003456H,007FH,FFFFEC00H 6 无符号数:0~65535,0000H~FFFFH;带符号数:-32768~+32767,8000H~7FFFH 7 (1) 38H等于十进制数56,是十进制数56的补码,数字8的ASCII码,十进制数38的压缩BCD码 (2) FFH等于十进制数-1,是带符号数-1的补码,无符号数为255 (3) 5AH等于十进制数90,是十进制数90的补码,大写字母Z的ASCII码 (4) 0DH等于十进制数13,是十进制数13的补码,回车符的ASCII码 8 (1) 108=01101100B=6CH,补码01101100B,压缩BCD码0000000100001000,ASCII码313038H (2) 46=00101110B=2EH,补码00101110B,压缩BCD码01000110,ASCII码3436H (3) –15=11110001B=F1H,补码11110001B,ASCII码2D3135H (4) 254=0000000011111110B=00FEH,补码0000000011111110B,压缩BCD 码0000001001010100,ASCII码323534H 9 (1) 56+63=01110111B,CF=0,SF=0,ZF=0,OF=0 (2) 83-45=00100110B,CF=0,SF=0,ZF=0,OF=0 (3) -74+29=11010011B,CF=0, SF=1,ZF=0,OF=0 (4) -92-37=01111111B,CF=1, SF=0,ZF=0,OF=1 10 回车、换行、响铃、ESC键、空格键、@、P、p 习题二 9 最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节) 10 CS:IP,DS:BX、SI、DI,ES:BX、SI、DI,SS:SP、BP 11 字节单元保存8位数,字单元保存16位数。根据源操作数的属性确定要访问的是字节单元还是字单元。 12 对于字节单元来说,偶地址和奇地址一样;对于字单元而言,最好用偶地址保存,可减少CPU的访存次数。 13 首单元的物理地址=38AE8H,末单元的物理地址 =38AE8H+7FFFH=40AE7H

VB程序填空复习题

二级VB程序设计练习 程序填空 1.下面程序按每行10个数打印出30个介于-300到300间无重复的随机整数,并显示其中的最小值。数组b(30)存放所产生的无重复的随机整数,运行结果如图所示。 Private Sub Command1_Click() Dim b(30), j As Integer, k As Integer Dim y As Integer, x As Single, min As Integer For j = 1 To 30 lb: x = Rnd If x > 0.5 Then y = 1 Else y = -1 b(j) = y * Int(Rnd*301) k = 1 Do While k

If b(j) = b(k) Then Goto lb k = k + 1 Loop Print b(j); If j Mod 10=0 Then Print Next j min = b(1) For j = 1 To 30 If b(j) < min Then min=b(j) Next j Print min End Sub 2.下面程序用于对9位的准考证号进行校验。参数mno存放准考证号,mjy存放产生的校验位,tag判断校验正确否,若校验正确tag置1,否则为0。产生校验位的算法为:取准考证号右边的8位之和关于9的模作为校验值,准考证号最左边的一位为校验位。 Public Sub foe(ByVal mno As String, mjy As Integer, Tag As Integer) Dim msum As Integer, m As String msum = 0 for j=2 to 9

汇编语言复习题附带答案.

复习题 一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,请把你认为正确答案的题号,填入题干的括号内。多选不给分。。 1.十六进制数 88H ,可表示成下面几种形式,请找出错误的表示(④。 ①无符号十进制数 136 ②带符号十进制数-120 ③它的二进制形式是 10001000B ④ 8位二进制数-8的补码表示 2.存放条件码标志、控制标志和系统标志的寄存器是(④。 ① IP ② SP ③ BP ④ PSW 3. 执行加法运算不能使用的寄存器是 ( ③。 ①、 BP ②、 SI ③、 CS ④、 CL 4.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是 (② ①、 AX , BX , CX , DX ②、 BX , BP , SI , DI ③、 SP , IP , BP , DX ④、 CS , DS , ES , SS 4、下列传送指令中有语法错误的是 (①。 ①、 MOV CS, AX ②、 MOV DS, AX ③、 MOV SS, AX ④、 MOV ES, AX 5. ADD AX , BX 指令执行完后 OF=1,下列说法正确的是(③ ①、如果 AX,BX 得内容均是带符号数,那么表示执行结果正确

②、如果 AX,BX 得内容均是无符号数,那么表示执行结果不正确; ③、如果 AX,BX 得内容均是带符号数,那么执行结果表示溢出; ④、如果 AX,BX 得内容均是无符号数,那么执行结果表示溢出; 6.一个有 16字的数据区域,它的起始地址是 70A0:DDF6,那么该数据单元第三个字单元的物理地址为(④ ①、 7E816H ②、 7E814H ③、 7E7F8H ④、 7E7FAH 7、与 MOV BX, OFFSET VAR指令完全等效的指令是 ( ④。 ①、 MOV BX, VAR ②、 LDS BX, VAR ③、 LES BX, VAR ④、 LEA BX, VAR 8.如果 AX=0FFFEH,那么单独执行完 ADD AX , 1, RCR AX , 1 , (AX = (④ ①、 0000H ②、 8000H ③、 0FFFFH ④、 7FFFH 9. MOV AL , 88H TEST AL , 66H 指令执行完后, (AL =(① ①、 88H ②、 66H ③、 0H ④、 0EEH 10、 BUF DW 10H DUP(3 DUP(2, 10H , 3, 5 上述语句汇编后,为变量 BUF 分配的存储单元字节数是 (②。 ① A 、 80H ②、 100H ③、 124 ④、 192 11、下面指令执行后,变量 DAB 中的内容是(③。

汇编语言试题及答案.

一,单项选择题(每小题1分,共20分 1-10CCCCAADACB 11-20.ADBBAADDCC 1.指令JMP FAR PTR DONE属于( C A.段内转移直接寻址 B.段内转移间接寻址 C.段间转移直接寻址 D.段间转移间接寻址 2.下列叙述正确的是( A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMP S指令 B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CM P指令 C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/J NL指令 D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/J NB指令 3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是( A.12CSBH B.12B6BH

C.12C59H D.12BFEH 4.在下列指令的表示中,不正确的是( A.MOV AL,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D.MUL CL 5.在进行二重循环程序设计时,下列描述正确的是( A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内 B.外循环初值应置外循环之内;内循环初值应置内循环之内 C.内、外循环初值都应置外循环之外 D.内、外循环初值都应置内循环之外,外循环之内 6.条件转移指令JNE的测试条件为( A.ZF=0 B.CF=0 C.ZF=1 D.CF=1 7.8086CPU在基址加变址的寻址方式中,变址寄存器可以为( A.BX或CX

B.CX或SI C.DX或SI D.SI或DI 8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在(中。 A.数据段中偏移量为3236H的字节 B.附加段中偏移量为3234H的字节 C.数据段中偏移量为3234H的字节 D.附加段中偏移量为3236H的字节 9.执行如下程序:( MOV AX,0 MOV AX,0 MOV BX,1 MOV CX,100 A:ADD AX,BX INC BX LOOP A HLT 执行后(BX=( A.99

汇编语言课后习题答案郑晓薇后的

汇编语言课后习题答案郑 晓薇后的 Modified by JEEP on December 26th, 2020.

习题一1 2 5E8AH,0BE6H,3DEH,4940H 3 00011101+00110101=0101001 0=52H=82 4 5000020A3H,FF94H,00003456H,007FH, FFFFEC00H 6无符号数:0~65535,0000H~FFFFH;带符号数:-32768~ +32767,8000H~7FFFH 7 (1) 38H等于十进制数56,是十进制数56的补码,数字8的ASCII 码,十进制数38的压缩BCD码(2) FFH等于十进制数-1,是带符号数-1的补码,无符号数为255(3) 5AH等于十进制数90,是十进制数90的补码,大写字母Z的ASCII码(4) 0DH等于十进制数13,是十进制数13的补码,回车符的ASCII码8 (2) 46=00101110B=2EH,补码00101110B,压缩BCD码01000110,ASCII码3436H 9 (1) 56+63=01110111B, CF=0,SF=0,ZF=0,OF=0(2) 83-45=00100110B,CF=0, SF=0,ZF=0,OF=0(4) -92-37=01111111B,CF=1,SF=0,ZF=0,OF=1 10 回车、换行、响铃、ESC键、空格键、@、P、p 习题二 9 最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节) 10CS:IP,DS:BX、SI、DI,ES:BX、SI、DI,SS:SP、BP 11 字节单元保存8位数,字单元保存16位数。根据源操作数的属性确定要访问的是字节单元还是字单元。

java复习填空题

《Java语言程序设计》填空题 1.Java程序用{ }将多条语句组合在一起,语句之间必须用 ; 隔开。 2.在类声明中提供类标志的关键字是 class 。 3.一个Java源程序编译后会生成一个扩展名为 class 的字节码文件。 4.应用程序编译后生成字节码文件,由直接解释执行。 5.要编译一个文件名为Test的Java源程序,需在命令控制台窗口输入编译命 令: 。 6.通常类名可由字母、数字、下划线以及美元符号组成,但类名的第一个字符 不能是数字。 7.当一个方法中有多个参数时,参数之间是用,隔开。 8.执行退出(结束)程序的语句是 break 。 9.语句System.exit(0);所执行的功能是退出。 10.在Java程序中,用"//"符号表示单行注释,那么用 /* 符号表示多行注 释。 11.在Java程序中使用注释的目的在于更方便改错。 12.Java的数据类型可以分为两大类: 和引用数据类型。 13.Java定义了8个基本数据类型:字节型、短整型、整型、长整型、字符型、 布尔型、单精度型和双精度型。 14.int类型的数据占用存储空间是 2 位。 15.Java表示逻辑值的基本数据类型,称为。 16.布尔型的数据不对应于任何整数值,它只有两个值true和 flose 。 17.假若 x=5; y=9,则表达式x>y的逻辑值为。 18.变量的数据类型转换分为自动类型转换和强制类型转换两种。 19.假若 int x=10; float y; y=x;这时y的值为。 20.自动类型转换是把级别的变量的值赋给级别的值。 21.假若 float y=54.23; int x=(int)y;这时x的值为。 22.在Java中有5种算术运算符,分别为加、减、乘、除以及。 23.假若 int x=10; System.out.println(x/3);此时得出的结果为。 24.假若 int x=3;int y=(++x)*5;其执行结果: y= 。 25.假若 int x=2;int y=(x++)*5;其执行结果: y= 。 26.在Java中,两个连续等号(==)是等于运算符,那么一个等号是赋值运算 符。 27.Java程序中语句执行有三种基本控制结构: 顺序、选择和循环。 28.do-while语句与while语句的区别在于先执行循环体中的语句再计算条件 表达式, 所以do-while语句的循环体至少被执行一次。 29.Java中有3种跳转语句:break语句、continue语句和 return 语句。 30.数组是一组相同类型变量的集合,其下标是从 0 开始算的。

相关文档
最新文档