汇编语言试题及参考答案_第1页
汇编语言试题及参考答案_第2页
汇编语言试题及参考答案_第3页
汇编语言试题及参考答案_第4页
汇编语言试题及参考答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

汇编语言试题及参答案一、填空题1.ZF标志位是标志结果是否为零的,假设结果,ZF为〔〕,否那么ZF为〔〕。当ZF为1时,SF为〔〕2.标号可以有两种类型属性。它们是〔〕和〔〕3.8位无符号整数的表示范围为0--255,写成16进制形式为〔〕,8位有符号整数的表示范围为-128--+127,写成16进制形式为〔〕4.伪指令DB,GROUP和NAME三个标号名字域必须有名字的是〔〕,不得有名字的是〔〕,可有可无名字的是〔〕。5.循环程序通常由〔〕〔〕〔〕和循环结果外理四局部构成6.在数值不达式中,各种运算符可可混合使用,其优先次序规那么*,/〔〕于+,-;XOR,OR〔〕于AND,LT〔〕于GT7.宏指令定义必须由伪指令〔〕开始,伪指令〔〕结束,两者之间的语句称为〔〕8.调用程序与子程序之间的参数传递方法有四种,即堆栈法〔〕〔〕〔〕9.分别用一条语句实现下述指明的功能〔1〕栈顶内容弹出送字变量AYW〔〕〔2〕双字变量AYD存放的地址指针送ES和SI〔〕〔3〕变量AY2类型属性送AH〔〕〔4〕不允许中断即关中断〔〕〔5〕将字符串‘HOWAREYOU!’存入变量AYB〔〕〔6〕子程序返回调用程序〔〕〔7〕地址表达式AYY[4]的偏移地址送字变量ADDR〔〕〔8〕AX的内容加1,要求不影响CF〔〕〔9〕BX的内容加1,要求影响所有标志位〔〕〔10〕假设操作结果为零转向短号GOON〔〕二、单项选择题1.IBMPC微机中,有符号数是用〔〕表示的1.原码2.补码3.反码4.BCD码2.把汇编源程序变成代码程序的过程是〔〕1.编译2.汇编3.编辑4.链接三、己知:VAR1,VAR2的类型属性分别为字和字节,标号LPFAR的类型属性为FAR。指出以下非法语句的错误原因1.POPCS〔〕2.INC[BX]()3.MVL8()4.JLELPFAR()5.MOVDB,1800()6.MOV[DI],VAR17.SUBAX,VAR2()8.CMPSSAX()四、简答题1.试述子程序的一般结构组成2.标号有哪三个属性?其含义是什么?3.试述CMPAX,BX和SUBAX,BX两条语句的异同点?五、阅读如下程序段,答复所提出的问题,假定X1,X2,...XN为无符号数。ORG100HBLOKDWX1,X2,...,XNCOUNTEQU($-BLOK)/2RESULTDWCOUNT,?...LEABX,BLOK-2MOVCX,RESULTXORAX,AXGOON:ADDBX,2CMPAX,[BX]JAENEXTMOVAX,[BX]NEXT:LOOPGOONMOVRESULT+2,AX程序段执行完,答复下述问题RESULT+2字存储单元的内容=〔〕BX=〔〕程序循环次数=〔〕六、在下述程序段的每一空框内填入一个语句〔不得修改其它语句〕,以实现如下功能:字节变量STR中存放着一个字符串,以0DH为结束标志,试求串长度并送字变量COUNT中。LEASI,STR()XORCX,CXGOON:CMPAL,[SI]()INCCX()JMPGOONNEXT:MOVCOUNT,CX七、编制将DS段中名为BUFB的字节存储区改写为空白字符〔编码为20H〕的程序段。假定BUFB存储区定义为BUFBDBNDUP〔'^'),其中N为字面常量。八、己知宏指令为:SHIFTMACRORR,COUNT

MOVAX,COUNT

IFRRLE64

MOVCL,3

SHRAX,CL

IFRRLT16

MOVCL,6

SHRAX,CL

ENDIF

ENDIF

ENDM

宏调用为:SHIFT15,7FFFH

SHIFT80,9FFFH写出宏扩展后的等效源程序段。九、编写完整程序,功能是把N个8个二进制数据转换成16进制字符数据。假定N个数据存放在字节变量VARB中,转换后的字符数据存放在HVARB中,提示0--9的字符码为30H--39H,A--F的字符码为41H--46H

汇编语言试题答案

一、填空题〔1〕1,0,0〔2〕NEAR或近程,FAR或远程〔3〕0--FFH,80H--7FH〔4〕GROUP,NAME,DB〔5〕循环准备,循环体,循环的控制与修改〔6〕高,低,等〔7〕MACRO,ENOM,宏体〔8〕约定存放器法,约定存储单元法,向量传递法〔9〕〔POPAYW〕〔LESSI,AYD〕〔MOVAH,TYPEAY2〕〔CLI〕〔AYBDB“HOWAREYOU!”〕〔RET〕〔MOVADDR,OFFSETAYY[4]〕〔INCAX〕〔ADDBX,1〕〔JZGOON〕

二、选择题2,2

三、1.CS不能作目的操作数2.[BX]=义性3.乘法指令源操作数不能是立即数4.远程标号不能作为条件转移指令的操作数5.立即数不能直接送段存放器6.两个操作数不能同时为存储器操作数7.操作数不配,AX为字,VAR2为字节8.段存放器不能作为运算指令的操作数

四、简答题1.由保存现场,取入口参数,加工处理,进也口友数,恢复现场和返回程序2.段属性指定义该标号的段地址偏移属性:指该标号的偏移地址类型属性:指标号是在定义它的段内引用还是在其它段引用3.相同点:都执行AX-BX操作,影响所有标志位且对档志位的影响相同不同点:CMP执行后AX,BX内容不改变,而SUB执行后,AX内为AX-BX之差,即内容变化了

五、MAX〔X1,X2,。。。XN〕〔COUNT-1〕

六、〔MOVAL,ODH〕〔JENEXT或JZNEXT〕〔INCSI〕

七、MOVAX,SEGBUFBMOVDS,AXLEASIBUFBMOVCX,NGOON:MOVBYTEPTR[SI],20HINCSILOOPGOON

八、MOVAX,7FFFHMOVCL,3SHRAX,CLMOVCL,6SHRAX,CLMOVAX,9FFFH

九、DATASEGMENTVARBDB45,36,377Q,。。。,11011011BNEQU$-VARBHVARBDB2NDRP〔?〕DATAENDSSTACKSEGMENTPARASTACK“STACK”DB256DUP〔?〕STACKENDSCODESEGMENTASSUMECS:COOE,DS:DATA,SS:STACKMAINPROCFARPUSHDSSUBAX,AXPUSHAXMOVAX,DATAMOVDS,AXMOVDX,NLEADI,HVARBLEASI,VARB,置初值GOCN:MOVAH,[SI]MOVAL,AHANDAH,0F0HMOVCL,4SHRAH,CLCMPAH,9JNANEXT1ADDAH,7NEXT1:ADDAH,30H,AHANDAL,DFHCMPAL,9JNANEXT2ADDAL,7NEXT2:ADDAL,30H,ALMOV[DI],AHMOV[DI],ALADDDI,2INCSIDECDXJNZGOONRETMAINENDPCODEENDSENDMAIN全国2006年10月高等教育自学考试汇编语言程序设计试题

课程代码:02321一、单项选择题〔本大题共20小题,每题1分,共20分〕在每题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多项选择或未选均无分。1.CPU要访问的某一存储单元的实际地址称〔〕

A.段地址B.偏移地址

C.物理地址D.逻辑地址2.某存储单元的物理地址是12345H,可以作为它的段地址有〔〕

A.2345HB.12345H

C.12340HD.1234H3.执行后使BX=0的同时也使CF=0,OF=0的指令是〔〕

A.XORBX,BXB.ORBX,BX

C.ANDBX,BXD.CMPBX,BX4.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是〔〕

A.CX≠0且ZF=1B.CX≠0且ZF=0

C.CX≠0或ZF=1D.CX≠0或ZF=05.在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是〔〕

A.DAA校正指令的功能已自动加在AH中

B.进位值在AF中,校正后根据AF内容再加在AH中

C.进位值在CF中,校正后根据CF内容再加在AH中

D.进位值在AL最高位上,校正后根据AL最高位内容再加在AH中6.AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的选项是〔〕

A.指令XORAX,AX执行后,AX内容不变,但设置了标志位

B.指令ORDX,1000H执行后,将DX最高位置1,其余各位置0

C.指令ANDAX,OFH执行后,别离出AL低四位

D.NOTAX,执行后,将AX清07.在执行以下指令时,需要使用段存放器DS的指令是〔〕

A.STOSWB.ADDAL,CL

C.NEGBXD.INCDA[BX]8.无论BH中原有的数是奇数或偶数,假设要使BH中的数一定为奇数,应执行的指令是〔〕

A.ADDBH,01HB.ORBH,01H

C.XORBH,01HD.TESTBH,01H9.完成对CL存放器的内容乘以4的正确操作是〔〕

A.ROLCL,1B.MUL4

ROLCL,1

C.SHLCL,1D.MOVCL,2

SHLCL,1

SHLCL,CL10.下面各传送指令中,正确的选项是〔〕

A.MOV[DI],[SI]B.MOV[DX+DI],AL

C.MOVWORDPTR[BX],0100HD.MOVAL,BX11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法〔〕

A.名字的第一个字符可以是大写英文字母及小写英文字母

B.名字的第一个字符可以是字母、数字及、@、_

C.名字的有效长度≤31个字符

D.在名字中不允许出现$12.要实现使BETA的值为56,应采用语句为〔〕

A.BETADB56B.BETADB56H

C.BETAEQU56D.BETAEQU56H13.REPZCMPSW指令,重复执行的终止条件是〔〕

A.CX=0或ZF=0B.CX=0且ZF=0

C.CX=0或ZF=1D.CX=0且ZF=114.下面程序段执行后,AL中的内容是〔〕

MOVAX,8833H

ADDAL,AH

DAA

A.21B.21H

C.0C1HD.0DDH15.比拟两个带符号的数A、B,当A=B时程序转移,测试的条件为〔〕

A.ZF=1B.ZF=0

C.SF=1D.SF=016.检查二个无符号数的关系,假设要实现AL≥BL时分支去LOP1处,那么在“CMPAL,BL”指令后应跟的分支指令是〔〕

A.JNCLOP1B.JA

LOP1

C.JCLOP1D.JGE

LOP117.在以下串操作指令中,同时使用源串和目的串地址指针的指令是〔〕

A.STOSWB.LODSW

C.SCASWD.CMPSW18.设AL=0AH,以下指令执行后能使AL=05H的是〔〕

A.NOTALB.ANDAL,0FH

C.XORAL,0FHD.ORAL,0FH19.DA1

DW‘AB’,‘CD’,‘EF’,‘GH’〔〕

MOVAX,DA1+3

指令执行后AX中的内容是

A.‘EF’B.‘CD’

C.‘BC’D.‘FC’20.使用DOS系统功能调用时,使用的软中断指令是〔〕

A.INT21B.INT10H

C.INT16HD.INT21H二、填空题〔本大题共12空,每空0.5分,共6分〕请在每题的空格中填上正确答案。错填、不填均无分。21.十六进制数0FFF8H表示的十进制正数为________,表示的十进制负数为________。22.假设DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOVAX,〔SI+COUNT〕中,源操作数的有效地址EA为________,其物理地址为________。23.CPU的标志存放器中标志位,可以分为两大类,其中一类称为________标志位,另一类称为________标志位。24.当标志位________=1时表示无符号数运算产生溢出,而当标志位________=1是表示带符号数运算产生溢出。25.如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是________,而后两个字节存放的是________。26.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是________或________才有实际意义。三、简答题〔本大题共4小题,每题2分,共8分〕27.:BX=1357H,DI=2000H,DS=2000H,CS=4000H,分别指出下面各指令中存储器操作数的物理地址。

〔1〕MOVAL,[BX]

〔2〕MOVCS:[BX+DI],AH28.0P1DB1,2

0P2DW3412H,5678H

MOVAX,OP1+1;字单元〔OP1+1〕AX

MOVBL,OP2+1;字节单元〔OP2+1〕BL

上述二条传送语句有语法错误,请根据注释字段的说明,将其改正。29.以下语句在存储器中分别为变量分配多少字节?

〔1〕AD2DW10DUP〔?〕,10

〔2〕AD3DD100DUP〔?〕30.简述下面两条指令分别是什么语法错误?

MOV[BX],[SI]

MOVAX,DL四、程序分析题〔本大题共6小题,每题6分,共36分〕31.MOVDL,AL

NOTDL

TESTDL,04H

JENEXT

NEXT:…

假设上述程序段执行时产生分支,说明AL中的数第几位一定为1?程序段执行后CF是多少?32.DA1

DB‘ABCDEFGHI’

DA2

DB

9DUP〔0〕

LEASI,DA1

LEADI,DA2

MOVCX,9

CLD

LOP:LODSB

SUBAL,10H

STOSB

LOOPLOP

...

试问:①写出程序执行后DA2各字节中的数据。

②保持程序功能情况下,程序中可否改写为33.:BX=4567H

NEGBX

INCBX

NEGBX

DECBX

程序段执行后,BX=________,CF=________。34.

MOVBL,64H

MOVCL,03H

XORAX,AX

AGAIN:ADDAL,BL

ADCAH,0

DECCL

JNZAGAIN

问:〔1〕该程序段完成的功能是:

〔2〕AX=________。35.数据段中定义

DAT1DB

12H,34H,56H,78H

MOVCX,0

MOVAX,WORDPTRDAT1

MOVCL,DAT1+3

当程序段执行完后AX=________,CX=________。36.DA1

DB83H,72H,61H,94H,5AH

MOVCX,WORDPTRDA1

ANDCX,0FH

MOVAL,DA1+3

SHLAL,CL

上述指令序列执行后,AL=_______,CL=_______。五、程序填空题〔本大题共2小题,每题6分,共12分〕37.在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商和余数分别存入QU1和REM单元,请在空行处各填上一条指令完善该程序。

MOVAX,NUMW

_____________

XORDX,DX

DIVBX

MOVQUI,AX

_____________38.某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’〔不显示字符‘$’!〕.试在空白处填上适当的一条指令。

STRINGDB‘COMPUTER’,‘$’

MOVBX,0FFSETSTRING

LOP:MOVDL,[BX]

MOVAH,02H

INT21H

____________________

____________________

JNELOP六、编程序题〔本大题共2小题,第39小题6分,第40小题12分,共18分〕39.试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符‘Y’〔设DA_BY存储区已有ES指向〕。40.试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为奇数,那么将进位位置1,否那么进位位清0。

DATA

SEGMENT

DA1

DW

XXXX

DATAENDS2006年10月汇编语言程序设计试题答案一、1、C;2、D;3、A;4、B;5、C;

6、C;7、D;8、B;9、C;10、C;

11、B;12、C;13、A;14、B;15、A

16、C;17、D;18、C;19、D;20、B二、21、+65528;-32760

22、20A8H;11488H

23、状态;控制

24、CF;OF

25、IP;CS

26、STOS;CMP三、27、〔1〕21357H;〔2〕43357H

28、MOVAX,WORDPTR〔OP1+1〕

MOVBL,BYTEPTR〔OP2+1〕

29、〔1〕22;〔2〕400

30、MOV指令不能在两个存储器操作数之间进行;

操作数类型不匹配四、31、第2位;CF=0

32、123456789;不能更改

33、BX=4565H;CF=1

34、AX=012CH,将AX内容乘3送BX中

35、AX=3412H,CX=0078H

36、AL=0A0H,CL=03H五、37、MOVBX,500

MOVREM,DX

38、INCBX

CMP[BX],24H六、39、LEADI,DA_BY

MOVCX,32

MOVAL,‘Y’

CLD

REPSTOSB

40、CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOV

AX,DATA

MOV

DS,AX

LEA

SI,DA1

MOV

CX,16

XORBL,BL

AGAIN:MOV

AL,[SI]

HLAL,1

JCNEXT

INCBL

NEXT:INCSI

LOOPAGAIN

TESTBL,01H

JNE

L1

CLC

JMPDONE

L1:STC

DONE:MOVAH,4CH

INT21H

CODEENDS

ENDSTART浙江省2001年10月汇编语言程序设计试题课程代码:02321一、单项选择题(在每题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每题1分,共10分)1.把假设干个模块连接起来成为可执行文件的系统程序是()A.汇编程序B.连接程序C.机器语言程序D.源代码程序2.使汇编程序执行某种操作的命令是()A.变量B.指令C.伪指令D.宏指令3.串操作指令中,目的操作数的段地址一定在()存放器中A.CSB.SSC.DSD.ES4.在以下语句中,AGAIN称为()AGAIN:INCSIA.符号B.助记符C.标号D.变量5.MOVBH,1000[SI],该指令中源操作数采用的寻址方式是()A.立即B.直接C.存放器相对D.存放器间接6.ORAL,AL是()操作指令。A.异或B.加法C.右移D.逻辑或7.DOS系统功能调用中,显示单个字符的系统调用号是()H。A.01HB.02HC.08HD.09H8.使计算机执行某种操作的命令是()A.宏指令B.指令C.伪指令D.语句9.换码指令的助记符是()A.XCHGB.LEASC.ALXTD.MOV10.计算机能直接识别并执行的语言是()A.汇编语言B.机器语言C.高级语言D.低级语言二、填空题(共20分)1.假设BL=0C5H,CL=2,CF=1,确定以下各条指令独立执行后,BL和CF中的值,并填入括号中。A.SHRBL,1;BL=()CF=()B.SARBL,CL;BL=()CF=()C.RORBL,1;BL=()CF=()D.RCLBL,CL;BL=()CF=()2.现有数据定义伪指令如下,写出对应的数据在存储单元中的存放形式。BUF1DB01,52HBUF2DW3DUP(?,0)BUF3DB2DUP(0,2DUP(1,2),3)BUF1BUF2BUF33.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是______码,称为美国______码。4.8086/8088CPU中,有二个变址存放器,分别是______和______,二个指针存放器,分别是______和______。三、简答题(每题5分,共20分)1.请指出以下指令错误原因:A.ORAX,[CX]B.ADD[SI],[BX][DI]C.JMPBYTEPTRLOOPSD.SARAX,4E.RCLDX2.A.下面两个语句有何区别?X1EQU1000HX2=1000HB.下面的程序段有错吗?假设有,请指出错误。CRAYPROCPUSHAXADDAX,BXRETENDPCRAY3.假设程序中的数据定义如下:ARRAY1DW?ARRAY2DB16DUP(?)ARRAY3DD?PLENTHEQU$-ARRAY1问PLENTH的值为多少?它表示什么意义?4.试根据以下要求,分别写出相应的汇编语言指令。A.把AX存放器和BX存放器的内容相加,结果存入AX中。B.用BX和SI的基址变址寻址方式,把存储器中的一个字节与DL的内容相加,并把结果送回DL中。C.把数OBEH与AH内容相加,结果送回AH中。D.用SI和位移量0200H的存放器相对寻址方式把存储器中的一个字与AX相加,并把结果送回存储单元中。E.用位移量0860H的直接寻址方式把存储器中一个字与数2EA0H相加,结果回送存储器中。四、程序分析题(每题5分,共20分)1.试分析下面程序段完成什么功能?CON1DW××××HCON2DW××××H┇MOVAX,CON1MOVBX,CON2CMPAX,BX…JGEGREAT…LESS2.试分析下面程序段完成什么功能?ORAL,ALJZL0CMPAL,1JZL1CMPAL,2JZL2JMPSTOPL0:┇L1:┇L2:┇STOP:HLT3.试问下面的程序段完成的功能是什么?程序执行后,AX的内容是什么?XORAX,AXMOVBX,2MOVCX,10L:ADDAX,BXADDBX,2LOOPLHLT4.试分析下面的程序段完成什么功能?MOVCL,04SHLDX,CLMOVBL,AHSHLAX,CLSHRBL,CLORDL,BL五、程序设计(每题10分,共30分)1.试编写使AL存放器中的无符号数乘20的程序段。2.编写程序将ELEMS中的100个字节数据的位置颠倒过来(即第一个字节和第100个字节的内容交换,第二个字节和第99个字节的内容交换……)。3.仔细阅读以下程序段,它是二个ASCII码转换为一字节十六进制数的子程序,请答复以下问题:A.说明一个ASCII码字符转换为一位十六进制数的算法。B.程序执行结束后,HEXBUF字节单元中的内容是什么?C.对程序进行注释,说明指令执行的工作。┇ASCBUFDB38H,41HHEXBUFDB?┇LEASI,ASCBUFLEADI,HEXBUFMOVCL,4MOVAL,[SI]CALLASC-HEXMOV[DI],ALMOVAL,[SI+1]CALLASC-HEXOR[DI],ALHLTASC_HEXPROCNEARCMPAL,3AHJCASC1SUBAL,7ASC1:SUBAL,30HRET┇浙江省2001年10月汇编语言程序设计试卷参考答案课程代码:02321一、单项选择题(每题1分,共10分)1.B2.C3.D4.C5.C6.D7.B8.B9.C10.B二、填空题(共20分)1.(8分)A.62H,1B.0F1H,0C.0E2H,1D.17H,12.(每题2分,共6分)BUF101BUF2-BUF3052-10201-2-30001-2-102033.ASCII标准信息4.SIDISPBP三、简答题(每题5分,共20分)1.A.CX不能作为间接寻址存放器B.加法指令不能完成存储单元之间的加法运算C.转移指令中,转向标号地址的属性说明错D.移位指令格式错,当移位次数大于1时,需用CL给出E.指令中应指出移位次数2.A.第一个语句中,X1不能屡次赋值,而X2可以屡次赋值B.程序最后一行有错,应写成:CRAYENDP3.22它表示ARRAY1到ARRAY3所占存储单元的字节数4.A.ADDAX,BXB.ADDDL,[BX][SI]C.ADDAH,OBEHD.ADD[SI+0200H],AXE.ADD[0860H],2EA0H四、程序分析题(每题5分,共20分)1.比拟两个16位有符号数,当(CON1)>=(CON2)时转GREAT处理,否那么转LESS处理。2.判断AL中的内容,假设AL=0,转L0处理;假设AL=1,转L1处理;假设AL=2,转L2处理;其它转结束(STOP)。3.求2~20之间偶数之和AX=110(或6EH)。4.把DX、AX中的双字左移四位。五、程序设计(每题10分,共30分)1.MOVAH,00MOVBX,AXMOVCL,02SHLAX,CLMOVDX,AXMOVAX,BXMOVCL,03SHLAX,CLADDAX,AXADDAX,DX2.MOVCX,50LEASI,ELEMSLEADI,ELEMS+99REVERSE:MOVAL,[SI]XCHGAL,[DI]MOV[SI],ALINCSIINCDILOOPREVERSE3.A.十六进制数的ASCII码,0~9对应30~39H(ASCII码),A~F对应41H~45H(ASCII码),此算法是:首先ASCII码与3AH比拟,假设小于3AH,就是0~9的ASCII码,将它减去30H,即得十六进制数0~9;否那么,要再减去7(如41H-37H=0AH),即可得A~F的十六进制数。B.8AH┇LEASI,ASCBUF;SI←ASCBUF偏移地址LEADI,HEXBUF;DI←HEXBUF偏移地址MOVCL,04;CL←移位次数4MOVAL,[SI];AL←第一个ASCII码CALLASC_HEX;调用ASCII码转换一位十六进制数子程序SHLAL,CL;转换后的十六进制一位数移入高位MOV[DI],AL;HEXBUF单元←转换十六进制数MOVAL,[SI+1];AL←第二个ASCII码CALLASC-HEX;调用转换子程序OR[DI],AL;高位与低位组合成一字节十六进制数HLTASC_HEXPROCNEAR;子程序名定义CMPAL,3AH;ASCII码与3AH比拟JCASC1;小于,转ASC1SUBAL,7;大于,ASCII码减7ASC1:SUBAL,30H;ASCII码减30HRET;子程序返回指令浙江省2002年1月高等教育自学考试汇编语言程序设计试题课程代码:02321一、单项选择题(在每题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每题1分,共10分)1.CPU发出的访问存储器的地址是()A.物理地址 B.偏移地址C.逻辑地址 D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是()A.编译程序 B.汇编程序C.解释程序 D.目标程序3.DECBYTEPTR[BX]指令中的操作数的数据类型是()A.字 B.双字 C.字节 D.四字4.在以下语句中,BUFFER称为()BUFFERDB01H,0AHA.符号 B.变量 C.助记符 D.标号5.串操作指令中,源串操作数的段地址一定在()存放器中。A.CS B.SS C.DS D.ES6.使计算机执行某种操作的命令是()A.伪指令 B.指令 C.标号 D.助记符7.将数据5618H存放在存储单元中的伪指令是()A.DATA1DW1856HB.DATA1DB18H,56HC.DATA1EQU5618HD.DATA1DB18H,00H,56H,00H8.假设AX=3500H,CX=56B8H,当ANDAX,CX指令执行后,AX=()A.1400H B.77F8H C.0000H D.0FFFFH9.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是()码。A.BCD码 B.二进制码 C.ASCII码 D.十六进制码10.用指令的助记符、符号地址、标号和伪指令、宏指令以及规定的格式书写程序的语言称为()A.汇编语言 B.高级语言 C.机器语言 D.低级语言二、填空题(每空1分,共20分)1.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是______。2.通常所说的计算机系统包括________和________两大局部。3.8086/8088存储器分四个段,这四个段的段名所对应的段存放器分别是________、________、________、________。4.现有AX=2000H,BX=1200H,DS=3000H,DI=0002H,(31200H)=50H,(31201H)=02H,(31202H)=40H,请写出以下各条指令独立执行完后有关存放器及存储单元的内容,并指出标志位ZF、CF的值。A.ADDAX,1200H;问AX=________HZF=________B.SUBAX,BX;问AX=________HZF=________C.MOVAX,[BX];问AX=________HCF=________D.NEGWORDPTR[1200H];问(31200H)=________HCF=________5.设DS=2200H,BX=1000H,SI=0100H,偏移量D=0A2B1H,试计算出以下各种寻址方式下的有效地址,填入括号中。A.使用D的直接寻址()B.使用BX的存放器间接寻址()C.使用BX和D的存放器相对寻址()D.使用BX、SI和D的相对基址变址寻址()E.使用BX、SI的基址变址寻址()三、简答题(共20分)1.程序在数据段中定义的数组如下:(4分)ARRAYDB‘YESIS’DB20┇DB‘DONOT’请指出以下指令是否正确?假设不正确,错在哪里?A.MOVBX,OFFSETARRAYMOVAX,[BX+8]B.MOVAX,ARRAYC.MOVBX,2MOVSI,3MOVAX,ARRAY[BX][SI]D.MOVBX,2*2MOVSI,3MOVAX,OFFSETARRAY[BX][SI]INC[AX]2.如TABLE为数据段中0100单元的符号名,其中存放的内容为0FF00H,试问以下两条指令有什么区别?指令执行后,AX存放器的内容是什么?(3分)MOVAX,TABLEMOVAX,OFFSETTABLE3.对于下面的数据定义,三条MOV指令分别汇编成什么?(3分)TAB1DW10DUP(?)TAB2DB10DUP(?)TAB3DB‘1234┇MOVAX,LENGTHTAB1MOVBL,LENGTHTAB2MOVCL,LENGTHTAB34.子程序的说明文件中应包括哪几方面的内容?(5分)5.分别指出以下指令中源操作数的寻址方式:(5分)A.MOVSI,100B.MOVCX,DATA[SI]C.MOV[SI],AXD.ADDAX,[BX][DI]E.POPHF四、程序分析(每题5分,共20分)1.以下程序段完成什么工作?DAT1DB30DUP(?)DAT2DB10DUP(?)┇MOVCX,10MOVBX,20MOVSI,0MOVDI,0NEXT:MOVAL,DAT1[BX][SI]MOVDAT2[DI],ALINCSIINCDILOOPNEXT2.执行以下指令后,AX存放器中的内容是什么?STARTDW10H,20H,30H,40H,50HEE1DW3┇MOVBX,OFFSETSTARTADDBX,EE1MOVAX,[BX]3.试分析下面程序段的功能是什么?CMPAL,‘A’

温馨提示

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

评论

0/150

提交评论