文档库 最新最全的文档下载
当前位置:文档库 › 09-10第一学期汇编语言期末试卷(A)

09-10第一学期汇编语言期末试卷(A)

09-10第一学期汇编语言期末试卷(A)
09-10第一学期汇编语言期末试卷(A)

09-10第一学期汇编语言期末试卷(A)闭卷120分钟

一、单项选择题(每小题1分,共10分)

1、十进制数269变换为十六进制数是()。

(A)10B (B)10C (C)10D (D)10E

2、指令mov 100[si][bp],ax目标操作数的隐含段为()。

(A)数据段(B)堆栈段(C)代码段(D)附加段

3、以下语句汇编后,CENTH的值是()

buf1 dw 8,19

buf2 db 6,'abc$',10 dup('5')

CENTH equ buf2—buf1

A.14

B.8

C.4

D.17

4、若栈顶物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为()。

(A)20102H (B)20101H (C)200FFH (D)200FEH

5、执行下列指令后,正确的结果是()。

MOV AL,100

MOV BL,-2

(A)AL=100H,BL=02H (B)AL=64H,BL=0FEH

(C)AL=64H,BL=82H (D)AL=100H,BL=0FEH

6、假定AX的内容为-32768,在执行了指令NEG AH后,标志位(SF,OF)为()。

(A)0,0 (B)0,1 (C)1,0 (D)1,1

7、设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为()。

(A)OF=1,CF=0 (B)OF=1,CF=1 (C)OF=0,CF=0 (D)OF=0,CF=1

8、当A≥B时转移的条件转移指令为(A,B为带符号数)()。

(A)JA (B)JAE (C)JG (D)JGE

9、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

(A)MOV AL,00H (B)AND AL,00H

(C)XOR AL,AL (D)SUB AL,AL

10、已知CALL BX执行前SP=100H,执行后SP的内容为()。

(A)100H (B)102H (C)98H (D)0FEH

二、填空题(每空1分,共10分)

1、(00101011)B+(13)D+(1B)H=()Q

2、IBM PC机内存容量最大为()B,要寻找这样大的空间,需要()根地址线。

3、有一个由20个字组成的存储区,其起始处段地址为4701H,偏移地址为2012H。试写出该存储区首单元和末单元的物理地址分别为()和()。

4、已知AL,BL中数据为带符号数,若求AL∕BL的商,应使用指令序列为:()和()。

5、调用程序与子程序之间的参数传递方法有三种,即()、()和()。

三、指出下列指令的错误并改正(每小题1分,共9分)

1、MUL 20H()

2、RCR AX , 3()

3、CMP [2000H] , LAB()

4、LDS DWORD PTR BUFFER()

5、CALL AL()

6、MOV AL,300()

7、MOV ???AX ,DI+BX ()

8、MOV [SP] , BX()

9、IN AX , 1234H()

四、简答题(每小题4分,共16分)

1、8086有哪4种逻辑段?各种逻辑段分别是什么用途?

2、请分别用一条汇编语言指令完成如下功能:

(1)把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器。

(2)用寄存器BX和SI的基址变址寻址方式把存储器的1字节与AL寄存器的内容相加,并把结果送到AL中。

(3)用BX和位移量为0B2H的寄存器相对寻址方式把存储器中的一个字和CX寄存器的内容相加,并把结果送回存储器中。

(4)用位移量为0520H的直接寻址方式把存储器中的一个字与数3412H相加,并把结果送回该存储器中。

3、变量和标号有什么属性?

4、什么是子程序的嵌套、递归和重入?

五、程序分析题(每小题5分,共20分)

1、下列程序完成的是什么功能?

cmp ax,0

jns nonneg

neg ax

nonneg:

2、假设X和X+2单元的内容为双字数据P,Y和Y+2单元的内容为双字数据Q(X单元与Y单元为低位字),说明下列程序段完成什么工作?

MOV DX,X+2

MOV AX,X

ADD AX,X

ADC DX,X+2

CMP DX,Y+2

JL L2

JG L1

CMP AX,Y

JBE L2

L1:MOV AX,1

HLT;停止工作

L2:MOV AX,2

HLT

3、下述程序段运行后,S9开始的10个字节存储单元内容是什么?

DATA SEGMENT

S9 DB 0,1,2,3,4

DB 5,6,7,8,9

DATA ENDS

LEA SI,S9

LEA DI,S9+1

MOV CX,5

LOP:MOV AL,[SI]

XCHG AL,[DI]

MOV [SI],AL

ADD SI,2

ADD DI,2

DEC CX

JNZ LOP

4、分析下面的程序段完成什么功能?

MOV AX,0FFFFH

MOV SI,0

MOV CX,100

AGAIN:MOV BX,DATA[SI]

TEST BX,1

JNZ NEXT

CMP AX,BX

JB NEXT

MOV AX,BX

NEXT: ADD SI,2

LOOP AGAIN

六、程序填空题(每空只能填一条指令!每空2分,共10分)

下列程序段是把string字符串中所有大写字母改为小写,该字符串以0结尾,请补全程序。

(1)

again: mov al,[bx]

(2)

jz done

cmp al,'A'

jb next

(3)

ja next

(4)

mov [bx],al

next: (5)

jmp again

done: nop

七、编制程序题(第一题10分,第二题15分,共25分)

1、查表法,实现一位16进制数转换为ASCII码显示

2、设有一段英文,其字符变量名为ENG,试编写一个程序,查对单词READ在该文中出现次数并存放在BX寄存器中。

汇编语言程序设计期末考试试卷及参考答案

【汇编语言程序设计】期末考试-试卷及参考答案

执行上述两条指令后,正确的结果是( B )。 A.(AX)=1001H; B.(AX)=0FFFH; C.(AX)=1000H; D.(AX)=0111H。 6.串指令中的目的操作数地址一定是由____A_ _提供。()A.ES:[DI] ; B.SS:[BP]; C.DS:[SI] ; D.CS:[IP]。 7.将DX的内容除以2,正确的指令是( C )。 A.DIV 2 ; B.DIV DX,2 ; C.SAR DX,1; D.SHL DX,1。 8. 用户为了解决自己的问题,用汇编语言所编写的程序,称为( B )。 A.目标程序; B.汇编语言源程序; C.可执行程序; D.汇编程序。 9.用一条指令仅实现将AX←BX+SI的方法是( D )。 A.XCHG AX,[BX][SI] ; B.MOV AX,[BX+SI]; C.LEA AX,BX[SI] ; D.LEA AX,[BX][SI]。 10.设SP初值为2000H,执行指令“PUSH AX”后,SP的值是( C )。 A.1FFFH; B.1998H; C.1FFEH; D.2002H。 2. C 二、指出下列指令的出错原因,并改正。(每小题2分,共12分) 1.MOV BX,DL;操作数类型不匹配,改正为:MOV BL,DL 或MOV BX,DX 2.MOV CS,AX;代码段寄存器CS不能作目的操作数,改正为MOV DS,AX 3.ADD AX,DS;段寄存器DS的内容不能作为加法指令的操作数,改正为 MOV BX,DS ADD AX,BX 4.TEST BX,[CX];不能使用CX实现寄存器间接寻址,改正为 MOV SI,CX TEST BX,[SI] 5.SUB [BX],[BP+SI];两个操作数不能同为存储器操作数,且两个操作数的数据类型不确定,改正为:MOV AX,[BX] SUB AX,[BP+SI] 或:MOV AL,[BX] SUB AL,[BP+SI] 6.SHL DX ;没有给出移位次数,改正为SHL DX,1或 SHL DX,CL 三、程序填空题(注意:每空只能填一条指令,并注释说明所填指令的作用!每空3分,共18分) 1.在表TABLE处存放着N个无符号字节数,求表中前10个字节数的总和并

大一C语言期末考试试题

6.以下程序的输出结果为(D)。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为(B)。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

汇编语言试题及参考答案

汇编语言试题及参考答案 一,填空题 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.链接

汇编语言微机原理及接口技术期末复习试卷以及参考答案八

重庆邮电大学2006/2007学年第二学期期末考试题 微机原理与接口技术考试题(A 卷) 一、单项选择题(每题1分,共20题) 1、一般,微机系统硬件由___部分组成,包括______。 A.4,CPU、存储器、I/O设备和接口电路 B.3,存储器,控制器和显示器 C.2,运算器和显示器 D.4,存储器,运算器,显示器和键盘 2、80X86微机系统有三条总线,它们是___________。 A. 地址总线、数据总线和控制总线 B. 地址总线、信息总线和存储器总线 C. 输入总线和输出总线 D. 单总线、面向微处理器双总线和面向存储器双总线 3、80X86微机中用来指出下一条要被执行指令的偏移地址的部件是___。 A.CS B.DS C.ES D.IP 4、在汇编语句MOV BL,’A’中,源操作数的寻址方式是___________。 A.直接寻址B.立即寻址 C.基址寻址D.寄存器间接寻址 5、以下指令中正确的是___________。 A.MOV DS,2D00H B.MOV CL,270 C.IN AL,DX D.MOV [DI],[SI] 6、已定义数据段 DATA SEGEMENT ORG 0213H DA1 DB 15H,34H,55H ADR DW DA1 DATA ENDS 能使AX中数据为偶数的语句是() A.MOV AX,WORD PTR DA1 B.MOV AL,DA1+2 C.MOV AL,BYTE PTR ADR+1 D.MOV AX,WORD PTR DA1+2 7、已知DS=1000H,ES=2000H,SI=0300H,内存10310H开始的两个单元中存放3A4BH,内存20310H开始的两个单元中存放4C5DH,则语句LEA BX,[SI+10H] 执行后,BX的值为________。 A.3A4BH B.4C5DH C.0310H D.3D5BH 8、MOV SP,4210H PUSH AX 执行上述指令后,SP寄存器的值是() A.4211H B.420EH C.420FH D.4212H 9、下列指令中不影响进位标志CF的指令是___________。

大学计算机C语言期末试卷02

一、选择题,(1-50)每题1分,下列各题A)、B)、C)、D)四个选项中,只有一个选项是 正确的,请将正确选项涂写在试卷最后答题纸相应位置上,答在试卷上不得分。 (1) 用8位表示,-2的补码是D A) 10000001 B) 11111111 C) 00000001 D) 11111110 (2) 在VC中,实型float占用的字节数是c A) 1 B) 2 C) 4 D) 8 (3) unsigned short的取值范围是d A) 0~ 255 B) -128 ~ 127 C) -32768 ~ +32767 D) 0 ~ 65535 (4) 十六进制数FE的十进制结果为A A) 254 B) 512 C) 1024 D) 64 (5) 源程序ex1.c编译后生成的文件名为 C A) ex1.doc B) ex1.obj C) ex1.exe D) ex1.cpp (6) C语言源程序的后缀为B A) .cpp B) .c C) .exe D) .doc (7) 工程文件名的后缀为A A) .prj B) .c C) .cpp D) .bin (8) 字符’B’的ASCII值是A A) 66 B) 0x3A C) 0x42 D) 49 (9) 将十进制数132转为二进制数的结果是D A) 11001100 B) 110011011 C) 10101010 D) 10000100 (10) 终止死循环用组合键B A) Alt+F10 B) Ctrl+C或Ctrl+Break C) Ctrl+F1 D) Ctrl+Shit或Ctrl+ESC (11) 在VC中,编译的快捷键是B A) F7 B) Ctrl+F7 C) Ctrl+F5 D) F5 (12) 以下选项中可作为C语言合法整数的是D A) 10110B B) 0386 C) 0Xffa D) x2a2 (13) 以下不能定义为用户标识符的是D A) scanf B) Void C) _3com_ D) int (14) 以下程序 swap(int x, int y) {int temp; temp=x; x=y; y=temp; } main() {int a=10,b=20; swap(a,b); printf("a=%d,b=%d\n",a,b); } 的运行结果是B A)a=20,b=10 B)a=10,b=20 C)10,20 D)20,10 (15) 以下程序: main() {int a=0x55, b=0xaa; printf("%d\n", a^b); } 的运行结果是:C A) 0 B) 1 C) 255 D) 0xaa (16) 有以下程序 main() {int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a

汇编语言期末试卷复习(附答案)上课讲义

选择题 1. 已知X=78,Y= -83则[X+Y]补=() A.0F5H B.0A1H C.0FBH D.65H 2. MOV AX, ES:COUNT[DI] 源操作数的寻址方式是() A.基址寻址 B.立即寻址 C.变址寻址 D.基址变址寻址 3. 指令MOV BX, MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么物理地址为() A.17500H B.16500H C.14500H D.13500H 4. 下列四组寄存器中,在段内寻址时可以提供偏移地址的寄存器组是() A.AX,BX,CX,DX B.BP,SP,IP,CS C.BX,BP,SI,DI D.BH,BL,CH,CL 5. 当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是() A. 表示结果中含1的个数为偶数 B. 表示结果中含1的个数为奇数 C. 表示该数为偶数 D. 表示结果中低八位含1的个数为偶数 6. 下列传送指令中,有语法错误的指令是()。 A.MOV CS,AX B.MOV DS,AX C.MOV ES,AX D.MOV SS,AX 7. MOV SP,3210H PUSH AX执行上述指令序理后,SP寄存器的值是()。 A.3211H B. 320EH C.320FH D. 3212H 8. 设(DH)=20H,执行NEG DH指令后,正确的结果是() A.(DH)=20H CF=1 B.(DH)=20H CF=0 C.(DH)=0E0H CF=0 D.(DH)=0E0H CF=1 9. 执行下面指令序列后,结果是() MOV AL,82H CBW A.AX=0FF82H B.AX=8082H C.AX=0082H D.AX=0F82H

C程序设计语言期末考试题A有答案)

期末试题——C#程序设计语言(A卷) 说明:本试卷共四大题,试卷满分100分,考试时间120分钟。 一.判断题(每题1分,共10分,正确的打√,错误的打×) ( ) 1.“+、-、*、/、%、++、--均属于二元运算符。 ( ) 2.字符串类型属性引用类型。 ( ) 3.Visual Studio控件的属性窗口中,按钮“A->Z”点击后,属性列表会先按照功能分类排列属性后在每个单元中以名称排序。 ( ) 4.派生类可以继承基类的成员,以及方法的实现;派生的接口继承了父接口的成员方法,并且也继承父接口方法的实现。 ( ) 5.当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。 ( ) 6.隐式类型转换就是不需要声明目标类型就可以进行的转换? ( ) 7.如果基类没有默认的构造函数,那么其派生类构造函数必须通过base关键字来调用基类的构造函数。 ( ) 8.在C#中在派生类中重新定义基类类的虚函数必须在前面加override。 ( ) 9.C#中方法的参数中输出型参数(out)的实参在传递给形参前,不需要明确赋值,但需在方法返回前对该参数明确赋值。 ( ) 10.在类中可以重载构造函数,C#会根据参数匹配原则来选择执行合适的构造函数。 二.单项选择题(每题2分,共40分) 一、(说明:每题有且仅有一个正确答案,请将正确答案填入下表) 1.C#程序设计语言属于什么类型的编程语言:a A.高级语言 B.自然语言 C.机器语言 D.汇编语言 2.如有int a=11;则表达式(a++*1/3)的值是:b A.0 B.3 C.4 D.12 3.类的字段和方法的默认访问修饰符是:b A. public B. private C. protected D. internal 4.对于在代码中经常要用到的且不会改变的值,可以将其声明为常量。如圆周率PI始终为。现 在要声明一个名为PI的圆周率常量,下面哪段代码是正确的?b float PI;PI = ; float PI = ; const PI;PI = ; const PI = ; 5.请问经过表达式a=3+3>5?0:1的运算,变量a的最终值是什么?。c

c语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

汇编语言期末试卷A卷及答案

浙江理工大学2011—2012学年第 1 学期 《汇编语言A》期末试卷(A)卷 班级:学号:姓名: 一、单项选择题(在每小题的四个备选答案中,选择一个正确答案填在提干后的括号内,每小题2分,共30分) 1.下面表示段定义结束的命令是( ) A. ENDP B. ENDS C. ENDM D. END 2.8086CPU在基址变址寻址方式中,基址寄存器可以是( ) A. AX或CX B. BX或BP C. SI或BX D. DX或DI 3.执行CALL FAR PTR SUB1指令后,在堆栈区域中应( ) A.压入4个字节的内容B.弹出4个字节的内容 C.压入2个字节的内容D.弹出2个字节的内容 4.完成将累加器AL清零,并使进位标志CF清零, 下面错误的指令是( ) A. MOV AL, 00H B. AND AL, 00H C. XOR AL, AL D. SUB AL, AL 5.完成同指令XCHG AX,BX相同功能的指令或指令序列是( ) A.MOV AX, BX B. PUSH AX POP BX C. MOV BX, AX D. MOV CX, AX MOV AX, BX MOV CX, AX 6.十进制数- 115用16位补码表示是() A.F115H B.F073H C.FF8DH D.FF73H 7.指令指针寄存器是() A. IP B. SP C. BP D. PSW 8.指令JMP WORD PTR [BX][SI]属于() A..寄存器间接寻址 B.相对基址变址寻址  C.段内间接寻址 D.段间间接寻址 9.下列传送指令中有语法错误的是( ) A. MOV CS, AX B. MOV DS, AX C. MOV SS, AX D. MOV ES, AX 10.执行下列程序,设(SS)=2000H,AL中的数据在内存地址___________中( ) MOV SP, 3000H MOV AX, 1234H PUSH AX ┅ A. 23000H B. 22FFCH C. 22FFEH D. 22FFFH 11.逻辑移位指令SHR用于 A. 带符号数乘2 B. 带符号数除2 C. 无符号数乘2 D. 无符号数除2 12.若用数据定义伪指令定义数据:BUF DB 4 DUP(0,2 DUP(1,0)), 问:定义后,存储单元中有数据0100H的字单元个数是( ) A. 4 B. 3 C. 8 D. 12 13.执行下列指令后:( ) STR1 DW ‘AB’ STR2 DB 14 DUP(?) CNT EQU $ - STR1 MOV CX,CNT MOV AX,STR1 则寄存器CL的值是 A. 10H B. 12H C. 0EH D. 0FH 14.上题中,指令执行后,寄存器AX的值是( ) A. 00ABH B. 00BAH C. 4142H D. 4241H 15.与MOV BX,OFFSET VAR指令完全等效的指令( )

大一c语言期末试题及参考答案word版本

2004级信息学院《C语言设计》考试试题 一、判断下列语句或程序的对错。 10分√ 1 int x=y=z=’0’; (×) y,z没有定义 2 #include ; (×)不能有分号,#开头的结尾均不能有分号; 3 printf(“%s\n”,”c language”); (√) 4 float a[100]; int *p=a; (×)数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; (×)五个元素,但是只有四个单元 7 float x=1.45e+310L; (×)数值越界 8 int xyz-1=2; (×) 9 int x=‘\xae’ ; (√) 10 int *p,a[2][3] ; p=a ; (×)数据类型不匹配 二计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(a^b)+(c>>1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三程序改错 10分 (1)求两个浮点数的平方和及平方差 #include float calculate (float x,float y,float *sub);添加函数原型声明 main () { float a,b; float add_reasult, sub_result; scanf (“%f,%f”,a,b); add_result=calculate(a,b,&sub_result); printf( “a*a+b*b=%d,a*a-b*b=%d\n”,add_result,sub_result); } float calculate (float x,float y,float *sub) 添加函数类型 { float *temp; 应该直接定义为变量float temp; sub=a*a-b*b ; *sub=a*a-b*b;

汇编语言程序的设计试卷与答案

汇编语言程序设计试卷 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分) 1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。 ① 无符号十进制数136 ② 带符号十进制数-120 ③ 压缩型BCD码十进制数88 ④ 8位二进制数-8的补码表示 2.指令指针寄存器是()。 ① IP ② SP ③ BP ④ PSW 3.当执行指令ADD AX,BX后,若AX的内容为2BA0H, 设置的奇偶标志位PF=1,下面的叙述正确的是()。 ① 表示结果中含1的个数为偶数 ② 表示结果中含1的个数为奇数 ③ 表示该数为偶数 ④ 表示结果中低八位含1的个数为偶数 4.完成将累加器AL清零,并使进位标志CF清零, 下面错误的指令是()。 ① MOV AL,00H ② AND AL,00H

③ XOR AL,AL ④ SUB AL,AL 5.下列指令执行后总是使CF=0,OF=0的是()。 ① AND ② NEG ③ NOT ④ INC 6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。 ① MOV AX,BX ② MOV BX,AX ③ PUSH AX POP BX ④ MOV CX,AX MOV AX,BX MOV BX,CX 7.设AH=0,AL=06H,BL=09H,执行指令 ADD AL,BL AAA 之后,其结果应是()。 ① AH=01,AL=05 ② AH=1 AL=15 ③ AH=0 AL=0FH ④ AH=0 AL=05 8.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为

汇编语言基础试题

第一章基本知识 一、单项选择题(共40分,每题2分) 1.若十进制数为13 2.75,则其十六进制数为(B) A.21.3 B.84.C C.4.6 D.6 2.若[X补]=11111,则其十进制真值为(C) A.-31 B.-15 C.-1 D.31 3.某定点整数64位,含1位符号位,补码表示,则其绝对值最大负数为(A) A.-263 B.-264 C.-(263-1) D.-(263-1) 4.原码乘法是(D) A.用原码表示操作数,然后直接相乘 B.被乘数用原码表示,乘数取绝对值,然后相乘 C.乘数用原码表示,被乘数取绝对值,然后相乘 D.先取操作数绝对值相乘,符号位单独处理 5.在微机系统中分析并控制指令执行的部件是(C) A.寄存器 B.数据寄存器 C.CPU D.EU 6.已知X=76,则[X]补=(B) A.76H B.4CH C.0B4H D.0CCH 7.已知[X]补=80H, 则X=(D) A.80H B.0 C.0FFH D.-80H 8.已知[X]补=98H, 则[X]补/2=(A) A.0CCH B.4CH C.49H D.31H 9.已知X=78,Y=-83则[X+Y]补=(C) A.0F5H B.0A1H C.0FBH D.65H 10.在计算机的CPU中执行算术逻辑运算的部件是(A) A.ALU B.PC C.AL D.AR 11.将125转换成二进制数的结果(A) A.7DH B.7CH C.7EH D.7BH 12.将93H看成一个组合BCD码,其结果是(B) A.10010101 B.10010011 C.10000011 D.10000001 13.能被计算机直接识别的语言是(C) A.C语言 B.汇编语言 C.机器语言 D.面向对象语言

南京邮电大学C语言期末试卷及答案

模拟试卷A 一、单选题 1、C语言中运算对象一定不能是double类型的运算符是___ 。 A、%= B、/ C、= D、<= 2、能正确表达数学逻辑关系"0b) c=0; else c=1; 等价于___。 A、c=(a>b)?1:0; B、c=a>b; C、c=a<=b; D、以上均不是 7、有如下定义语句:int a, b=5, *p=&a; 则能完成a=b赋值功能的语句是___。 A、a=*p; B、*p=*&b; C、a=&b; D、*p =&*p; 8、设int *ptr, x, array[5]={5,4,3,2,1}; ptr=array; 能使x的值为3的语句是___。 A、x=array[3]; B、x=*(array+3); C、x=*(ptr+2); D、array+=2; x=*array; 9、有函数原型为void f(int,int *);主函数中有变量定义:int a,*p=&a,b[10]; 则下列几种调用错误的是___。

【汇编语言程序设计】试题及答案合集

《汇编语言程序设计试题及答案》合集 汇编语言程序设计试题及答案 1.对于有符号的数来说,下列哪个值最大(D) A:0F8H B:11010011B C:82 D:123Q 2.下列有关汇编语言中标号的命名规则中,错误的是(D) A:通常由字母打头的字符、数字串组成 B:标号长度不能超过31个字符 C:?和$不能单独作为标号 D:.号不可位于标号首 3.8088/8086存储器分段,每个段不超过(D ) A.64K个字 B.32K个字节 C.1兆个字节 D.64K个字节 4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)A:寄存器寻址B:相对基址变址寻址 C:变址寻址D:基址变址寻址 5.若AX= - 15要得到AX=15应执行的指令是(A ) A.NEG AX B.NOT AX C.INC AX D.DEC AX 6.8086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志 7.若要求一个操作数中的若干位维持不变,若干位置?1?,可以使用(B)A:NOT B:OR C:AND D:XOR 8.下列指令中段默认为堆栈段的是( C) A.MOV AX,[BX+SI+10] B.ADD AX,ES:[SI] C.SUB [BX],[BP][DI] D. MOV DX,[1000H] 9.关于8086/8088微机系列,下列说法哪个是正确的(D) A:一个存储单元由16个二进制位组成,简称字。

B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C:在内存空间中,可以无限分配段,且段的大小不受限制。 D:段与段之间可以邻接,也可以重叠。 10.下列关于堆栈的说法,错误的是(D) A:以?先入后出?为原则。 B:栈区最高地址单元的前一个单元为栈底。 C:运行中SP寄存器动态跟踪栈顶位置。 D:压栈和弹出都是以字节为单位。 11.表示过程定义结束的伪指令是( A) A.ENDP B.ENDS C.END D.ENDM 12.BUF1 DB 3 DUP(0,2 DUP (1,2),3) COUNT EQU $-BUF1 符号COUNT等价的值是( B) A.6 B.18 C.16 D.9 13.下列标志位中,可以用来判断计算结果正负的是(B) A:PF B:SF C:DF D:OF 14.下列指令正确的是( CD) A. MOV [100H], [BX] B.MOV DS, ES C. ADD V[BX], CX D.MOV AX, 34H 15.下列哪个寄存器是属于指针寄存器(C) A:SI B:DX C:SP D:ES 二、填空题 (每小题4 分,共 20 分) 1.下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出) FLD DW 10, -20, 30, -60, -71, 80, 79, 56 _LEA SI,FLD______ MOV CX, 8 XOR AX, AX

汇编语言期末考试试题及答案

汇编语言模拟试题及答案 一,单项选择题 (在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20 分) 1.指令JMP FAR PTR DONE 属于参考答案为:C A .段内转移直接寻址 B ?段内转移间接寻址 C .段间转移直接寻址 D ?段间转移间接寻址 [解析]略 2.下列叙述正确的是参考答案为:C A ?对两个无符号数进行比较采用CMP 指令,对两个有符号数比较用CMPS 指令 B ?对两个无符号数进行比较采用CMPS 指令,对两个有符号数比较用CMP 指令 C .对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL 指令 D .对无符号数条件转移采用JGE/JNL 指令,对有符号数条件转移用JAE/JNB 指令 [解析]对于无符号数和有符号数的比较都采用CMP 指令; CMPS 指令是串比较指令; 对两个无符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个有符号数的条件转 移指令应是:JGE、JNL、JLE、JNG。 3.一个有128个字的数据区,它的起始地址为12ABH:00ABH ,请给出这个数 据区最末一个字单元的物理地址是参考答案为:C A . 12CSBH B . 12B6BH C. 12C59H D . 12BFEH [解析]末字与首字相隔(128- 1 =) 127个字,且每个字占用2个字节,因此末字单元的物理地址应为: 首字单元的物理地址+( 128 —1) >2 即12ABHX 10H + OOABH +( 128 —1) X2 = 12C59H。 4.在下列指令的表示中,不正确的是参考答案为:C A . MOV AL ,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D . MUL CL [解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的 [BX] ,没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DEC BYTE PTR [BX] 或DEC WORD PTR [BX] 但是在题目的选项C 中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。 5.在进行二重循环程序设计时,下列描述正确的是参考答案为:A A .外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内 B ?外循环初值应置外循环之内;内循环初值应置内循环之内 C ?内、外循环初值都应置外循环之外

汇编语言单片机考试试题和答案

一.单项选择题(30分) 在中断服务程序中至少应有一条() A.传送指令 B.转移指令 C.加法指令 D.中断返回指令 2.当MCS-51复位时,下面说法准确的是() A.PC=0000H B.SP=00H C.SBUF=00H D.(30H)=00H 3.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是() A.MOV B.MOVX C.MOVC D.以上都行 4.ORG2000H LACLL3000H ORG 3000H RET 上边程序执行完RET指令后,PC=() A.2000H B.3000H C.2003H D.3003H 5.要使MCS-51能响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是() A.98H B.84H C.42H D.22H 6.JNZREL指令的寻址方式是() A.立即寻址 B.寄存器寻址 C.相对寻址 D.位寻址 7.执行LACLL4000H指令时, MCS-51所完成的操作是( ) A保护PCB.4000HPC C.保护现场 D.PC+3入栈, 4000HPC 8.下面哪条指令产生信号() A.MOVX A,@DPTR B.MOVC A,@A+PC C.MOVC A,@A+DPTR D.MOVX @DPTR,A 9.若某存储器芯片地址线为12根,那么它的存储容量为() A. 1KB B. 2KB C.4KB D.8KB 10.要想测量引脚上的一个正脉冲宽度,则TMOD的内容应为() A.09H B.87H C.00H D.80H 11.PSW=18H时,则当前工作寄存器是() A.0组 B. 1组 C. 2组 D. 3组 12.MOVX A,@DPTR指令中源操作数的寻址方式是() A. 寄存器寻址 B. 寄存器间接寻址 C.直接寻址 D. 立即寻址 13. MCS-51有中断源() A.5 B. 2 C. 3 D. 6 14. MCS-51上电复位后,SP的内容应为( ) A.00H B.07H C.60H D.70H https://www.wendangku.net/doc/9f876184.html,0003H LJMP2000H ORG000BH LJMP3000H 当CPU响应外部中断0后,PC的值是() A.0003H B.2000H C.000BH D.3000H 16.控制串行口工作方式的寄存器是() A.TCON B.PCON C.SCON D.TMOD 17.执行PUSHACC指令, MCS-51完成的操作是() A.SP+1SP, ACCSP B. ACCSP, SP-1SP C. SP-1SP, ACCSP D. ACCSP, SP+1SP 18.P1口的每一位能驱动() A.2个TTL低电平负载 B. 4个TTL低电平负载 C.8个TTL低电平负载 D.10个TTL低电平负载 19.PC中存放的是() A.下一条指令的地址 B. 当前正在执行的指令 C.当前正在执行指令的地址 D.下一条要执行的 指令 20.8031是()A.CPU B.微处理器 C.单片微机 D.控制器 21.要把P0口高4位变0,低4位不变,应使用指令( ) A.ORL P0,#0FH B.ORL P0,#0F0H C.ANL P0,#0F0H D.ANL P0,#0FH

c语言期末测试题附答案)

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第 一、 单项选择题(本大题共 15 小题,每题只有一个正确答案,答对 一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k ); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】

安徽大学C语言期末试卷(含答案),DOC

安徽大学 C语言程序设计期末试题 一. 单项选择题:(每题2分,共20分) 1.执行程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。 A)60 B)20 C)15 D)10 2.程序段:int x=023; printf("%d \n", --x );的输出是______。 A)19 B)18 C)23 D)22 3.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。 A)6 B)5 C)11 D)10 4.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。 A)返回值为void 类型B)返回值类型无法确定 C)返回值为int 类型D)没有返回值 5. 有宏定义:#define MULT1(a,b) a*b #define MULT2(a,b) (a)*(b) 且引用宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。 A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=21 6.程序段char s[]="Hello", *p; p=s;执行后,*(p+5)的值是______。 A)'o' B)'\0' C)'o'的地址D)不确定的值 7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。 A)ABCD B)A C)D D)ABCD BCD B C ABC CD C B AB D D A A 8. 若定义:int (*p)[3]; 则标识符p______。 A)定义不合法。 B)是一个指针数组名,每个元素是一个指向整型变量的指针。 C)是一个指针,它指向一个具有三个元素的一维数组。 D)是一个指向整型变量的指针。 9. 定义: struct sk {int a; float b;} data,*p; 且p=&data; 则正确引用成员a的方式是______。 A) p.data.a B) (*p).a C) p->data.a D) (*p).data.a 10. 以二进制只读方式打开一个已有的文本文件file1,正确调用fopen函数的方式是______。 A)FILE *fp; B)FILE *fp; fp=fopen("file1","rb"); fp=fopen("file1","r+"); C)FILE *fp; D)FILE *fp; fp=fopen("file1","r"); fp=fopen("file1","rb+");

相关文档
相关文档 最新文档