汇编程序设计习题_第1页
汇编程序设计习题_第2页
汇编程序设计习题_第3页
汇编程序设计习题_第4页
汇编程序设计习题_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题课

1.段内直接转移指令采用的寻址方式是

A.直接寻址B.相对寻址

C.绝对寻址D.间接寻址

2.条件转移指令的转移范围

A.-128—+127

B.-32768—+32767

C.0—+255

D.0—+65535(B)(A)3.带符号数条件转移指令JG发生转移的条件是A.SF=OFORZF=0B.SFOFANDZF=0C.SF=OFANDZF=0D.SFOFORZF=1(C)

MOVAX,9B47H

MOVBX,0B568H

ADDAX,BX

JNOL1

JNCL2

SUBAX,BX

JNCL3

JNOL4

JMPSHORTL5问:(1)程序执行后,(AX)=?(2)程序转向哪个标号?4.执行下列程序:(1)9B47H

(2)L5

5.设AX,BX,CX中的数是带符号数,下列

程序求AX,BX,CX中的最小值,结果存放

在AX中,请将程序填写完整。

CMPAX,BX(1)_________________

XCHGAX,BXNEXT:CMPCX,AX

(2)___________________

XCHGAX,CXEXIT:(1)JLENEXT或JNGNEXT

(2)JGEEXIT

或JNLEXIT

6.下列程序段求数组ARY的累加和。请将程序

填写完整。ARYDW45H,68H,…………,0ABC1H,9600H;共10项COUNTDW10(1)__________MOVCX,COUNTXORAX,AXAGAIN:ADDAX,[SI]ADDSI,2(2)____________

(1)LEASI,ARY

或MOVSI,OFFSETARY

(2)LOOPAGAIN

7.循环指令LOOPNZ终止循环的条件是

A.(CX)=0,且ZF=0

B.(CX)=0,或ZF=1

C.(CX)≠0,且ZF=0

D.(CX)≠0,或ZF=1

8.执行如下程序:

MOV

AX,0

MOV

BX,1

MOV

CX,100

A:ADD

AX,BX

INC

BX

LOOP

A

HLT

执行后(BX)=

A.99B.100C.101D.102(B)(C)9.CODESEGMENT ASSUMECS:CODE START:MOVCX,1 MOVBL,2 AGAIN:MOVAL,BL INCBL MULBL ADDCX,AX CMPAX,002AH JBAGAIN MOVAH,4CH INT21H CODEENDS ENDSTART

问:(1)该程序所完成的功能可用算术表达式表示为

(2)该程序完成后(CX)=

(1)(CX)=1+2*3+3*4+4*5+5*6+6*7

(2)6FH或111

10.DATASEGMENT

S9DB0,1,2,3,4,5,6,7,8,9

DATAENDS┆

LEASI,S9

LEA

DI,S9+1

MOVCX,5

LOP:MOVAL,[SI]

XCHGAL,[DI]

MOV[SI],AL

ADDSI,2

ADDDI,2

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

S9DB1,0,3,2,5,4,7,6,9,811.BLOCKDB

20H,1FH,08H,81H,0FFFH……RESULTDB

?START:

LEA SI,BLOCK

MOV CX,[SI]INC SIMOV AL,[SI]LOP1:

CMP AL,[SI+1]JNG NEXTMOV AL,[SI+1]NEXT:INC SILOOP LOP1MOV RESULT,ALHLT

问:(1)该程序完成的功能是什么?

(2)该程序的循环次数是多少次?(1)找出存储单元BLOCK

中的最小值。(2)20H

12.FACTPROCMOVDX,0

CMPAX,0JNZDONEMOVAX,1JMPX1DONE:PUSHAX

DECAXCALLFACTPOPCXMULCXX1:RETFACTENDP若执行以上子程序前,(AX)=5,则子程序完成的功能是:

,执行该子程序后(AX)=

(1)求5!(或求5的阶乘)

(2)120(或78H)

13.

MOVAL,38H

MOVBL,49H

CALLSUBO

INCAL

DECCL

SUBOPROC

ADDAL,BL

MOVCL,AL

DAA

RET

SUBOENDP上述程序段运行后,(AL)=(),(CL)=()。(AL)=(88H)(CL)=(80H)14.现有一子程序

SUB1PROCTESTAL,80H检测AL中的数值最高位JEPLUSTESTBL,80HJNEEXITOJMPXCHANGEPLUS:TESTBL,80HJEEXITOXCHANGE:XCHGAL,BLEXITO:RETSUB1ENDP

试回答(1)子程序的功能是什么?(2)若调用子程序前(AL)=9AH,(BL)=77H,则返回主程

序时,(AL)=

,(BL)=______。

(1)子程序的功能是判别AL和BL中的数是否为异号数,当为异号时交换,否则不变。

(2)(AL)=77H,(BL)=9AH(1)子程序名:AVER(2)子程序功能:求一组无符号字节数据的平均值(3)入口条件:数据首地址在SI中,数据个数在CL中(4)出口条件:平均值在AL中AVER PROC NEAR PUSH SI PUSH CX

()

AGAIN:ADDAL,[SI] ADC AH,0

()

DEC CL JNZ AGAIN POP CX DIV CL POP SI RETAVERENDP15.依据下述子程序说明文件把子程序补充完整

(1)XORAX,AX

(2)INCSI16.已知RET指令是属性为NEAR子程序中的返回指令,执行RET4前SP=100H,执行后SP的内容为()。A.102H B.106HC.0FCH D.0FAH(B)CODESEGMENTUSE16ASSUMECS:CODEDECBINPROCFARMOVBX,0NEW:MOVAH,01INT21HSUBAL,30HJBEXITCMPAL,09JAEXITCBWXCHGAX,BXMOVCX,10MULCXADDBX,AXJMPNEWEXIT:RETDECBINENDPCODEENDS17.编制一个子程序,输入一个数据串转换成对应的10进制数据。

18.在串指令REP

MOVSB中,重复次数

一定放在(

)寄存器中。

A.AX

B.BX

C.CX

D.DX

19.下面指令中,合理而有意义的指令是(

)。

A.REPLODSB

B.REPSCASB

C.REPCMPSB

D.REPMOVSB

20.串操作指令中,目标串操作数的段地址一定

在(

)寄存器中。

A.CS

B.SS

C.DS

D.ES(C)(D)(D)21.在下列串操作指令中,同时使用源串和目的串地址指针的指令是()。A.STOSW

B.LODSWC.SCASW

D.CMPSW22.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是_______或_____才有实际意义。(D)SCASCMPS23.对于下列程序段:

AGAIN:MOV

AL,[SI]

MOV

ES:[DI],AL

INC

SI

INC

DI

LOOP

AGAIN

也可用______指令完成同样的功能。

A.REP

MOVSB

B.REP

LODSB

C.REP

STOSB

D.REPE

SCASB(A)

24.在一段汇编程序中多次调用另一段

程序,用宏指令比用子程序实现起来()。

A.占内存空间小,但速度慢

B.占内存空间大,但速度快

C.占内存空间相同,速度快

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论