2015年6月汇编语言程序设计

上传人:仙*** 文档编号:130495106 上传时间:2022-08-04 格式:DOCX 页数:28 大小:127.61KB
收藏 版权申诉 举报 下载
2015年6月汇编语言程序设计_第1页
第1页 / 共28页
2015年6月汇编语言程序设计_第2页
第2页 / 共28页
2015年6月汇编语言程序设计_第3页
第3页 / 共28页
资源描述:

《2015年6月汇编语言程序设计》由会员分享,可在线阅读,更多相关《2015年6月汇编语言程序设计(28页珍藏版)》请在装配图网上搜索。

1、选择题1、设DS=8225H,DI=3942H,指令MOVBX,DI源操作数的物理地址是()A、85B92HB、86192HC、BB690HD、12169H2、计算机能直接识别并执行的语言是()。A、汇编语言B、机器语言C、高级语言D、低级语言3、循环指令LOOPNZ终止循环的条件是()。A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX0,且ZF=0D、CX0,或ZF=14、循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是()。A、CX0且ZF=1B、CX0且ZF=0C、CX0或ZF=1D、CX0或ZF=05、已知ARRYDB500DUP(0),则ARRY+100存储单元内容

2、为()。A、100B、500C、0D、1016、,THISISABOOK?作为字符串存储在数据段时应使用数据定义指令是()。A、DBB、DWB、DDD、以上三种情况均可7、对一个段的起始地址描述,下面不正确的是()。A、可在内存任何地方B、段的起始地址能被16整除C、段的起始地址用16进制数表示,但最后一位为0D、段的起始地址可用任意一个四位16进制数乘以16来表示8、要在程序中定义缓冲区BUF,保留9个字节存储空间的语句是()。A、BUFDW9B、BUFDB9C、BUFDB9DUP(?)D、BUFDW9DUP(?)9、AX,BX,CX都是通用寄存器,但它们又可用于专门的目的,它们的名字称为(

3、)。A、累加器、变址寄存器、计数器B、累加器、基址寄存器、计数器C、累加器、指针寄存器、计数器D、累加器、变址寄存器、指针寄存器10、变址寄存器指的是()。A、SI、DIB、SI、SPC、SP、BPD、DI、DX11、在执行子程序段间调用CALLSUBR指令后,SP的值()。A、加2B、减2C、加4D、减412、在执行子程序段内调用CALLSUBR指令后,SP的值()。A、加1B、减1C、加2D、减213、当SS=9876H,SP=4328H,执行POPF指令后,堆栈顶部的物理地址是()。A、9CA8AHB、9CA90HC、9CA86HD、0DB00H14、下列传送指令中有语法错误的是()。A

4、、MOVCS,AXB、MOVDS,AXC、MOVSS,AXD、MOVES,AX15、下面指令执行后,改变AL寄存器内容的指令是()。A、TESTAL,02HB、ORAL,ALC、CMPAL,BLD、ANDAL,BL16、DECBYTEPTRBX指令中的操作数的数据类型是()。A、字B、双字C、字节D、四字17、与MOVBX,OFFSETVAR指令完全等效的指令是()。A、MOVBX,VARB、LDSBX,VARC、LESBX,VARD、LEABX,VAR18、MOVSP,3210HPUSHAX执行上述指令序列后,SP寄存器的值是()。A、3211HB、320EHC、320FHD、3212H19

5、、MOVBH,1000SI,该指令中源操作数采用的寻址方式是()。A、立即B、直接C、寄存器相对寻址D、寄存器间接寻址20、BUFDW10HDUP(3DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是()。(DW后面的10H化为10进制为16,然后2*16*(3*(1+1)+1+1)=256个字节,转化为16进制数后就是100HA、80HB、100HC、124D、19221、DOS系统功能调用中,显示单个字符的系统调用号是()H。A、01HB、02HC、08HD、09H22、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是()。A、AX,BX,CX,DXB、

6、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS23、下面描述中,()是正确的。A、高级语言与汇编语言的算法都是针对计算机硬件结构的。B、汇编语言需要算法,高级语言不需要算法。C、高级语言的算法是针对计算机硬件结构的。D、汇编语言的算法是针对计算机硬件结构的。24、在书写汇编语言程序时,在代码段中初始位置要对数据段进行加载,加载的指令语句,下面()描述正确。A、movax,dataC、movax,datamovds,axB、movds,dataD、movax,dsmovcs,ds25、无条件段间间接转移指令JMPDWORDPTRBXDI执行的操作是()。A、IP(EA

7、)C、IP=BL时分支去LOP1处,那么在“CMPAL,BL”指令后应跟的分支指令是()。A、JNCLOP1B、JALOP1C、JCLOP1D、JGELOP149、设CL=8,AL=0C8H,执行SARAL,CL后,AL中的数据是()。SAR算术右移指令,最高位不变,最低位移入CFA、0FFHB、80HC、00HD、0FEH50、完成将AX清零,并且使CF清零,下面错误的指令是()。A、SUBAX,AXB、ANDAX,0C、XORAX,AXD、MOVAX,051、8086/8088系统执行传送指令MOV时()。A、不影响标志位B、影响DF方向标志C、影响SF符号标志D、影响CF进位标志52、下

8、面关于保护现场和恢复现场的描述,不正确的是(c)A、保护现场和恢复现场工作可在主程序中完成B、保护现场和恢复现场可在子程序中完成C、保护现场和恢复现场工作只能在子程序中完成D、保护现场和恢复现场既可在主程序中完成,也可在子程序中完成。53、下面()描述属于子程序嵌套调用。A、某程序调用子程序B、某程序调用子程序1,子程序又调用了子程序2。C、某程序调用一个或多个子程序D、某程序调用了两个子程序54、执行CALL子程序调用指令时,CPU会自动地将断点压入堆栈保护。断点指的是()。A、CALL指令所在的地址B、CALL指令的下一条指令的首地址C、子程序入口地址D、CALL指令所在的段地址55、执行

9、RET指令后,CPU自动将断点弹到相应的寄存器中。如果是段间返回,返回的操作是()A、先弹出送IP,后弹出送CSB、先弹出送CS,后弹出送IPC、弹出送IPD、弹出送CS56、能够与SS寄存器组合形成堆栈区物理地址的寄存器是()。A、BXB、BPC、IPD、SI57、不能作为地址指针寄存器的是()。A、CXB、BXC、SID、DI58、将1存入AX中,其内容为()。A、FFFFHB、-0001HC、FFHD、8001H59、下列指令中有语法错误的是()。A、PUSHAXB、PUSH20H+SI+BXC、POPCSD、PUSHES60、十进制数40用十六位二进制补码表示为()。A、FF40HB、

10、8040HC、4000HD、FFD8H61、在程序中采用DOS系统功能调用退出用户程序时,在使用INT21H指令前,应选用()指令。A、MOVAX,4CHB、MOVAL,4CHC、MOVAH,4CHD、RET62、8086CPU不能用指令直接访问的寄存器是()。A、SSB、BPC、ESD、IP63、能够与SS寄存器组合形成堆栈区物理地址的寄存器是()。A、BXB、BPC、IPD、SI64、使用DOS系统功能调用时,使用的软中断指令是()。A、INT21HB、INT10HC、INT16HD、INT2165、设AL=0AH,下列指令执行后能使AL=05H的是()。A、NOTALB、ANDAL,0F

11、HC、XORAL,0FHD、ORAL,0FH66、下列指令中操作数在代码段中的是()。A、MOVAL,42HB、ADDAL,BLC、SUBBX,DID、INCDI67、表示过程定义结束的伪指令是()。A、ENDSB、ENDC、ENDMD、ENDP69、以寄存器DI间接寻址的存储器字节单元内容加1的指令是()。A、INCDIB、INCDIC、ADDDI,1D、INCBYTEPTRDI70、指令SCASB操作数的段地址一定在()寄存器中。A、DSB、ESC、SSD、CS71、转移指令JMPNEARPTRPROCA的转移范围是()。A、8000H7FFFHB、7FFFH0FFFHC、80H7FHD、

12、0FH7FH72、串操作指令中,每次操作后使SIDI为减量应设置()。A、DF=0B、TF=1C、DF=1D、TF=073、指令MULCX是将()。A、(CX,AX)(AX)(CX)B、(AX,CX)(AX)(CX)C、(DX,AX)(AX)(CX)D、(AX,BX)(AX)(CX)74、下列指令中,()指令影响8086标志寄存器的标志位。A、MOVB、NOTC、XCHGD、TEST75、指令TESTAL,02H的含义是()。A、测试AL是否等于02HC、测试AL第1位状态B、测试AL第2位状态D、将AL与02单元的各位进行测试76、某存储单元的物理地址是12345H,可以作为它的段地址有()

13、。A、2345HB、12345HC、12340HD、1234H77、AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是()。A、指令XORAX,AX执行后,AX内容不变,但设置了标志位B、指令ANDAX,0FH执行后,分离出AL低四位C、指令ORDX,1000H执行后,将DX最高位置1,其余各位置0D、NOTAX,执行后,将AX清078、下面有语法错误的指令是()。A、LDSBL,VARSIB、LEABX,VARSIC、LESDI,VARBXD、LEADI,VARBP79、无条件转移指令JMP实现段间间接转移,转移的目标地址在()。A、某个16位通用寄存器中B、两个16位通用寄

14、存器中C、某个字存储单元中D、某个双字存储单元中80、8088/8086存储器分段,每个段不超过()。A、64K个字B、32K个字节C、1兆个字节D、64K个字节81、若AX=-15要得到AX=15应执行的指令是()。A、NEGAXB、NOTAXC、INCAXD、DECAX82、已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是()。A、20250F2AB、210800EAC、2000017AD、2100117A83、用REPESCASB指令对字符串进行扫描,如CX0时,扫描结束,那么表示()。A、在字符串中有一个AL中指定的字符B、在字符串中遇上第一个AL中指定的字符C、在字

15、符串中遇上第一个不是AL中指令的字符D、在字符串中有一个不是AL中指定的字符84、将AX中有符号数除以2的正确指令是()。A、SHRAX,1B、SARAX,1C、RORAX,1D、RCRAX,185、执行1号DOS系统功能调用,从键盘输入的字符值存放在()寄存器中。A、ALB、BLC、CLD、DL86、将CX寄存器低4位清零的正确指令是()。A、ANDCX,0F0HB、ANDCX,0FFF0HC、ANDCX,1110HD、MOVCX,087、设物理地址(21000H)=20H,(21001H)=30H,(21002H)=40H。如从地址21001H中取出一个字的内容是()。A、2030HB、3

16、040HC、3020HD、4030H88、下列寄存器中用来指示堆栈中任意数据区的偏移地址的是()。A、BXB、BPC、SID、DI89、设AL=57H,BL=24H,执行指令SUBAL,BL后,寄存器内容为()。A、AL=57H,BL=24HB、AL=33H,BL=24HC、AL=57H,BL=33HD、AL=33H,BL=090、下列指令执行后影响CF值的是()。A、DECB、XCHGC、LEAD、SHL91、CPU要访问的某一存储单元的实际地址称()。A、段地址B、偏移地址C、物理地址D、逻辑地址92、汇编语言指令中唯一不可缺少的部分是:()。A、标号名字B、助记符C、操作数D、注释93、

17、中断服务程序入口地址占用()个字节。A、4B、6C、2D、194、有语句:COUNTEQU256,下列四种叙述中,正确的是()。A、COUNT是变量B、COUNT占用一个字节存储单元C、COUNT是符号常数D、COUNT占用二个字节存储单元95、()环境下,可以对源程序进行汇编、修改和执行。A、LINKB、MASMC、DOSD、DEBUG96、下列四条指令中错误的是()。A、MOVAX,SIB、MOVAX,DIC、MOVAX,SI+DID、MOVAX,SI-1097、执行下列()指令后,就能用条件转移指令判断AL和BL寄存器中的最高位是否相同?A、TESTAL,BLB、CMPAL,BLC、AN

18、DAL,BLD、XORAL,BL98、下列四条指令执行后不影响标志位的是()。A、JNCNEXTB、CMPAX,BXC、SHLAX,1D、ORAL,AL99、定义宏指令的伪指令是()。A、PROC和ENDPB、CODE和ENDSC、EQU和ENDD、MACRO和ENDM100、在下列寄存器中,代码段寄存器是()。A、DSB、ESC、CSD、SS101、有数据定义语句BUFDW0ABH,1,10DUP(3DUP(1,0),2)汇编后,为变量BUF分配的存储单元字节数是()。A、48HB、90HC、120D、60102、若有BUFDW1,2,3,4。则可将数据02H取到AL寄存器中的指令是:()。

19、A、MOVAL,BYTEPTRBUF1B、MOVAL,BYTEPTRBUF2C、MOVAL,BYTEPTRBUF3D、MOVAL,BYTEBUF2103、指令指针寄存器是()A、IPB、SP104、下列指令执行后总是使。C、BPD、PSWCF0,OF0的是()。A、ANDB、NEGC、NOTD、INC105、确定下列哪些数据在汇编语言中是非法的()。A、F3HB、10101010BC、123D、137Q106、现用数据定义伪指令定义数据:BUFDB4DUP(0,2DUP(1,0)问定义后,存储单元中有数据0100H的字单元个数是()。A、4B、3C、8D、12107、计算机系统由()组成。A、

20、硬件系统和软件系统B、系统硬件和系统软件C、CPU和系统软件D、操作系统和主机108、8086/8088微处理器中,既可作为16位寄存器也可分为两个8位寄存器用的寄存器是()。A、BPSPSIDIB、AXBXCXDXC、CSDSSSESD、AXBXSIDI109、用DEBUG调试汇编语言程序时,显示某指令的地址是2F80:F400,此时段寄存器CS的值是()。A、F400HB、2F80HC、F4000HD、2F800H110、已知AX=0001H,下列四条指令执行后,不能使ZF=1的语句是()。A、DECAXB、SUBAX,1C、ANDAX,1D、CMPAX,1111、设DS=8225H,DI

21、=3942H,指令MOVBX,DI源操作数的物理地址是()。A、85B92HB、86192HC、BB690HD、12169H112、如果内存中某一单元的逻辑地址为2318H:0035H,它的段地址、偏移地址及物理地址是()。A、2318H、0035H、231B5HB、2318H、0035H、234DHC、23180H、0035H、23215HD、2318H、00350H、2668H113、存储单元有惟一的物理地址,但可用不同段地址和偏移地址表示。若存储单元的物理地址是88D52H,则下面()的表示是正确的。A、8561H:3742HB、8561H:3752HC、85610H:3742HD、37

22、52H:85610H114、控制寄存器是指()A、BPSPB、SPIPC、SIDID、IPFLAGS115、FLAGS寄存器中,属于控制标志位的是()A、CFAFPFB、DFIFTFC、OFSFZFD.DFOFCF116、用DEBUG调试汇编语言程序时,显示某指令的地址是2F80:F400,此时段寄存器CS的值是()。A、F400HB、2F80HC、F4000HD、2F800H117、设DS=1100H,(12000H)=80H,(12001H)=20H,(12002H)=30H,执行MOVAX,1000H则AX=()。A、8000HB、0080HC、2080HD、8020H118、CPU与存

23、储器之间的信息交换使用的是()A逻辑地址B有效地址C物理地址D相对地址119、若各段地址分配如下:数据段为1K,代码段为4K,堆栈为8K,附加段为16K。若从10000H开始分段,各段依次相连,段地址寄存器的值是()A、DS=1000HCS=1040HSS=1140HES=1340HB、DS=1000HCS=1010HSS=1150HES=13D0HC、DS=1000HCS=1040HSS=1050HES=13D0HD、DS=1000HCS=1040HSS=1200HES=1400H120、有指令MOVAX,1234H,指令中的立即数1234H是存储在()。A、数据段B、代码段C、附加段D、堆

24、栈段二、填空题循环程序可由循环初始化、循环体、循环控制三部分组成。循环初始化、循环体、循环控制在存取一个存储器操作数时,段地址必须由相应的段寄存器提供。相应的段寄存器ARRAYDB0,2DUP(1,2),0,3汇编时生成的数据依次是。0,1,2,1,2,0,3设BX=1152H,偏移量D=3568H,那么指令“ADDDBX,AL”中目的操作数的有效地址EA=。46BAH在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是CMPS或SCAS才有实际意义。CMPS、SCAS有指令MOVCL,N完成将一个有符号数送入CL,要使该指令合法,则N的最大值是127,最小值是-128

25、。(用十进制表示)127,-128中断INT12H在中断向量表中的物理地址是48H、49H、4AH和4BH。48H、49H、4AH、4BH“=和”“EQU”两条伪指令有相同的功能,它们之间的区别是EQU伪指令不允许对符号名重复定义。EQU在汇编语言源程序文件中,每一个段都有段定义伪指令SEGMENT和ENDS来分段。SEGMENT存储器的存储单元的物理地址由两部分组成,它们是和段地址、偏移地址/有效地址/EA(3种写法均可以)偏移地址可由各种成份组成,也称为有效地址,用EA表示。有效地址、EA取指令时,默认的段寄存器是CS,堆栈操作时,默认的段寄存器是。,通用数据读写,默认的段寄存器是DS,目

26、的串操作时,默认的段寄存器是ES,以BP作为基地址进行存取方式时,默认的段寄存器是SS。CS、SS、DS、ES、SSDOS系统功能调用中1号调用的功能是;2号调用的功能是;9号调用的功能是;10号调用的功能是。输入一个字符、显示一个字符、显示一个字符串、输入一个字符串CF是程序状态字寄存器中的标志位,ZF是标志位,SF是标志位。进位、零、符号要将二进制数10100110B输出到端口25H,可用MOVAL,10100110B和OUT25H,AL两条语句来实现。MOVAL,10100110B、OUT25H,AL汇编语言源程序在计算机上不能直接运行,必须经过和后才能形成一个可执行文件。编译、链接80

27、86/8088CPU中,有二个变址寄存器,分别是SI和DI。SI、DI在8086/8088系统中,存储器是分段的,每段最大长度是64K字节。64K内存的地址区域从00000H开始为中断向量表。00000H子程序的参数传送方式有寄存器、地址表、堆栈等。寄存器参数传送方式、地址表参数传送方式、堆栈参数传送方式子程序调用和返回是通过指令和来实现的。CALL、RET逻辑运算指令都是按位操作的,其中NOT指令执行后不影响任何标志位,其他指令执行后,标志位CF和OF一定是0。NOT、CF、OF在1M字节的存储器中,每个存储单元都有一个唯一的位地址(二进制形式),称为该物理单元的物理地址。20若(SP)=0

28、FFFFH,则指令POPAX执行后,(SP)=0001H0001Hn位补码的表数范围为:N。2n-1、2n-1-1指令MOVAX,SEGBUF的执行,是把BUF所在的段地址送到AX中。BUF所在的段地址当标志位CF=1时表示无符号数运算产生溢出,而当标志位OF=1是表示带符号数运算产生溢出。CF、OF外中断有两种类型,分别是可屏蔽中断和非屏蔽中断可屏蔽中断、非屏蔽中断已知DS=29A0H,某数据的物理地址是2A400H,则当DS=6700H时,该数据的物理地址是67A00H67A00H要将二进制数10100110B输出到端口25H,可用和两条语句来实现。MOVAL,10100110B;OUT2

29、5H,AL中断INT10H在中断向量表中的物理地址是、和。40H,41H,42H,43H在汇编语言源程序文件中,每一个段都有段定义伪指令SEGMENT和ENDS来分段。SEGMENT汇编语言源程序在计算机上不能直接运行,必须经过编译和连接后才能形成一个可执行文件。编译,连接一条指令由操作码和操作数两部分组成。操作码,操作数子程序的调用和返回是通过指令CALL和RET来实现的。CALL,RET8086/8088指令系统中,所有指令的目的操作数均不能为立即寻址方式。立即1、现有数据定义伪指令如下,写出对应的数据在存储单元中的存放形式。BUF1DB01,52HBUF2DW3DUP(?,0)BUF3D

30、B2DUP(0,2DUP(1,2),3)BUF1BUF2BUF3BUF10152BUF2-00-00-00BUF30121230121232有两个16位数1000H和ABCDH分别存放在内存10000H和10004H单元中,试用图表示他们在内存中的存放情况。3若在内存中建立50个字的数据区,其起始地址为1000:0100,试给出数据区第一个字单元和最后一个字单元的物理地址。解:第一个字的物理地址=1000H*10H+0100H=10100H最后一个字的物理地址=10100H+(50-1)*2=10162H4、什么是伪操作?简述伪指令和指令的区别?答:伪操作是汇编程序对源程序进行汇编时处理的操作

31、,完成处理器选择、存储模式定义、数据定义、存储器分配、指示程序开始结束等功能。伪指令和指令的区别在于,每一条指令必须生成机器代码,然后在程序运行期间由CPU来执行其操作;而伪指令是在汇编期间由汇编程序执行的操作命令,除了数据定义及存储器分配伪指令分配存储器空间外,其它伪指令不生成目标码。5、已知AX=1234H,CX=0302H,CF=0,指出下述指令执行后的结果及标志位CF、SF、ZF、OF的值分别是多?解:1234H+0302H=1536H,指令执行后,AX的值为1536H。没有产生进位,CF=0;结果为正数,SF=0;结果不等于0,故ZF=0;两正数相加,结果为正,故无溢出,OF=0。6

32、、在0624H单元内有一条二字节JMPSHORTOBJ指令,如其中位移量为(1)27H,2)6BH,(3)0C6H,试问转向地址OBJ的值是多少?(要有计算过程)1)0624H+2H+27H=064DH2)0624H+2H+6BH=0691H3)0624H+2H+0FFC6H=05ECH7、求出15F4H减去4EA0H之差,并根据结果设置标志位SF、ZF、CF和OF的值。15F4H-4AE0H=0C754H,其中SF=1ZF=0CF=1OF=08、如TABLE为数据段中0032单元的符号名,其中存放的内容是1234H,试问以下两条指令有什么区别?指令执行完后BX寄存器的内容是什么?(5分)(1

33、)MOVBX,TABLE(2)LEABX,TABLEMOV指令是数据传送指令,是将TABLE对应的存储单元中的内容送入BX,因此,指令执行完后BX的内容为1234H,而LEA指令是地址传送指令,是将TABLE的偏移地址传送给BX,因此,指令执行完后BX的内容为0032H。9、请简述指令JMPDI和JMPDI的相同点与不同点。这两条指令都是无条件的段内间接转移指令,不同的是JMPDI采用的寄存器寻址方式,转移到以(DI)内容为偏移地址的单元去执行指令;而JMPDI则采用的是寄存器间接寻址方式,转移到以(DI)间接寻址的内存单元内容为偏移地址的单元去执行指令。10、宏指令与子程序有什么不同之处?宏

34、指令实际上就代表了它对应的一组指令。对程序中出现的宏指令进行汇编时,这条宏指令被它对应的一组指令所代替。如果程序中多次使用宏指令,就等于多次重复拷贝了这个指令组,占用的内存随之增加。调用子程序通过执行CALL指令实现,存在“主程序”与“子程序”之间的两次控制转移。使用宏指令不存在控制转移的过程。使用子程序和宏指令都可以提高编程效率。子程序占用固定大小的存储空间,被主程序调用时,空间不会随调用次数而增加。但是,宏指令占用存储空间会随着使用次数的增加而增加。11、求出16进制数4321H与62A0H的和,并根据结果设置标志位4321H+62A0H=A5C1H,其中SF=1,CF=0,ZF=0,OF

35、=1SF、ZF、CF和OF。12、程序分析题MOVAX,1234HMOVBX,AXNEGBXADDAX,BX请写出以上程序段执行后,(AX)=?,(BX)=?,CF=?参考答案(AX)0,(BX)0EDCCH,CF113、设某数据段:DATASEGMENTORG20HNUM1=8NUM2=NUM1+10HDA1DB,COMPUTER?DB0AH,0DHCOUNTEQU$-DA1DA2DW,CO?,?MP?,?UT?,?ER?DATAENDS试回答:1)DA1的偏移地址是多少?2)COUNT的值是多少?3)DA2+5字节单元的内容是多少?参考答案:14、DA_B1)20H2)0AH3),U?的A

36、SCII码DB0CH,9,8,0FH,0EH,0AH,2,3,7,4XORAXXORCLXORBX,AX,CL,BXLOP:TESTDA_BBX,01HJENEXTADDAL,DA_BBXINCAHNEXT:INCBXINCCLCMPCL,10JNELOP上述程序段运行结束后,AH=_4_,AL=_34_。如果把”JENEXT“指令改为“JNENEXT“指令,那么AH=_6_,AL=_50_。参考答案4、AH4,AL34;AH6,AL5015、分析下面程序,回答指定问题:MOVAX,DXNOTAXADDAX,DXINCAX试回答:(AX)=,(ZF)=。(0,1)16、BUFDW0000HLE

37、ABX,BUFSTCRCRWORDPTRBX,1MOVCL,3SARWORDPTRBX,CL问:该程序段执行后,存储单元BUF的内容为17、BLOCKDB20,1FH,08H,81H,0FFH,。(0F000H或十进制数-4096)RESULTDB?START:LEAMOVSI,BLOCKCX,SIINCSILOP1:MOVCMPAL,SIAL,SI+1JNGNEXTMOVAL,SI+1NEXT:INCSILOOPLOP1MOVRESULT,ALHLT问:(1)该程序完成的功能是(2)该程序的循环次数是入RESULT单元;循环次数为18、MOVAX,00FFH20)。(从;BLOCK数组中找出

38、最小数,并送MOVBX0FFFFHXORAX,BXNEGAX问:该程序段执行后,AX=,CF=。(0100H(CF)=1)19、MOVBX,1234HMOVAX,BXNEGAXADDAX,BX问:该程序段执行后,AX=,CF=。(0000H,1)20、MOVAL,01HRORAL,1ORAL,ALNEGAL上述程序段执行后,AL=,CF=。(AL=80H,CF=1)21、已知有如下指令MOVAX,AANDAX,0FF0HMOVA,AXORA,000FH1)以上指令实现的功能是什么?2)若已知(A)=2525H,那么执行以上指令后,(A)=?3)若已知(A)=5252H,那么执行以上指令后,(A

39、)=?1)将A高4位清0,低4位置1;2)(A)=052FH,3)(A)=025FH22、设AL中高低MOVAH,ALANDAH,88HMOVAL,AH4位分别有大于7的数,ORAL,11H程序段运行后,AH=_,AL=_。AH=88H(2分),AL=99H23、设DS=4000H,DI=0,内存单元4000F40013H内容依次为40H,执行下面程序段后,(DS)=?,(CL)=?,(BX)=?02H,00H,38H,01H和MOVSI,DI+0FHMOVBX,DI+10HMOVAX,DI+12HMOVDS,AXMOVCL,SI+11) DS)=4001H,(CL)=40H,(BX)=380

40、0H24、XORAX,AXMOVBX,2MOVCX,10LP:ADDAX,BXADDBX,2LOOPLP该程序段的功能是什么?2) 程序执行后,(AX)=?,(BX)=?,(CX)=?2、1)实现求2+4+,+20的和;2)(AX)=110;(BX)=22;(CX)=025、阅读以下程序代码,分析:MOVBX,1XORAX,AXMOVCX,5NEXT:ADDAX,BXINCBXLOOPNEXT上述程序段执行后AX=_;BX=_。(AX)=000FH,(BX)=0006H26、阅读以下程序代码,分析:XORDL,DLA:CMPAX,0JZBYESHLAX,1JNCBINCDLB:JMPABYE:

41、试说明该程序段完成的功能。该程序段完成的功能是统计AX中1的个数。27、试分析下面的程序段完成什么功能?MOVCL,04SHLMOVSHLSHRORDX,CLBL,AHAX,CLBL,CLDL,BL程序功能:将(DX)(AX)中双字内容左移4位。28、DA1DA2DB,01234?DB5DUP(0)MOVSI,0MOVCX,51) LOP:MOVAL,DA1SIADDAL,11HORAL,01HMOVDA2SI,ALINCSILOOPLOP程序执行完后,写出DA2各字节的数据。2) 程序中MOVAL,DA1SI指令的操作数是什么寻址方式?1)41H,43H,43H,45H,45H;2)寄存器相

42、对寻址29、在某子程序的开始处要保护AX、BX、CX、DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。例如:PUSHAXPUSHBX;保护现场PUSHCXPUSHDX;恢复现场试写出恢复现场时的指令序列。POPDXPOPCXPOPBXPOPAX30、指出下列指令源操作数的寻址方式:MOVAX,ES:BX寄存器间接寻址方式MOVAX,20BXSI相对基址变址寻址方式MOVAX,ARRAY直接寻址方式MOVAX,BXDI基址变址寻址方式MOVAX,1200H立即寻址方式程序填空题1、下述程序段完成计算220之间的偶数的和,并将结果存于AX中,试把空白处填上适当的指令(每一空白只填一条指令

43、)XORAX,AXMOVBX,0MOVCX,11CONT:ADDAX,BXADDBX,2LOOPCONT(第一空MOVCX,11,第二空ADDBX,2)2、下面程序段判断A单元的有符号数,并根据其值小于0,等于0,大于0,分别将0FFH,00H,01H送入B单元中。在空白处填上适当的指令(每一空白处只填一条指令)MOVAL,ACMPAL,0JLEAAMOVB,1JMPDONEAA:JLBBMOVB,0JMPDONEBB:MOVB,0FFHDONE:HLT(第一空JLEAA,第二空JMPDONE)3、下列程序段的功能是把09的数据转换为相应的ASCII码。请在每个空白处填上一条指令。DATDB0

44、0H,01H,02H,03H,04H,05H,06H,07H,08H,09HASCDB10DUP(?)COUN=ASC-DATLEASI,DATLEADI,ASCMOVCX,10LOP:MOVAL,SIADDAL,30HMOVDI,ALINCSIINCDILOOPLOPHLT(第一空MOVCX,10,第二空ADDAL,30H或ORAL,30H)4、下面程序完成将0100H开始的100个字节数据搬移到从0180H开始的存储单元中,设DS、ES已设置好且其值相等。在每个空白处填上一条适当的指令。MOVSI,0100HMOVDI,0180HMOVCX,100CLDREPMOVSB(参考答案MOVCX

45、,100、REPMOVSB)5、设字符串的段地址、偏移地址和长度已经分别存于DS、SI和CX中,要统计其中字符“P”个数,并存于的DL中。试把空白处填上适当的指令(每一空白只填一条指令)(第一空MOVAL,,P?MOVDL,0NEXT:CMPAL,SIJNZ/JNECONTINCDLCONT:INCSILOOPNEXTJNZ/JNECONT,第二空LOOPNEXT)6、某程序段要用单个字符显示的2号DOS功能调用去显示一字符串“STRING”。试在下面空白处填上适当的指令STR1DBSTRING,$,MOVBX,OFFSETSTR1LOP:MOVDL,BXMOVAH,02HINT21HINCB

46、X_CMPBX,$JNELOP(第一空INCBX,第二空CMPBX,$)7、在以BLOCK为首地址的数据区存放了一组带符号数,下面程序的功能将该数据中所有的负数累加起来,然后再求其绝对值,并送入SUM单元。试在程序中填补上空缺的指令。DATADB60,70,-28,-99,-100,-25,,,97SUMDW?MOVCX,SUM-DATAXORDX,DXMOVBX,OFFSETDATALOP:MOVAL,BXTESTAL,80HJZNEXTCBWADDDX,AXNEXT:INCBXLOOPLOPNEGDXMOVSUM,DX(第一空JZNEXT,第二空NEGDX)8、在以ARRAY为首地址的数据

47、区存放了一组带符号数,下面程序的功能将该数据中所有的负数送入ARRAY1数据区,其余送入ARRAY2中。试在程序中填补上空缺的指令ARRAYDB25,63,-103,2,75,75,-1,-65,,,100NEQU$-ARRAYARRAY1DBNDUP(?)ARRAY2DBNDUP(?),MOVCX,NMOVBX,0MOVSI,0MOVDI,0LOP:MOVAL,ARRAYBXCMPAL,0JAENEXT1MOVARRAY1SI,ALINCSIJMPNEXT2NEXT1:MOVARRAY2DI,ALINCDINEXT2:INCBXLOOPLOP(第一空MOVARRAY1SI,AL;第二空MOV

48、ARRAY2DI,AL)9、下述程序段完成计算1+2+,+10的和,并将结果存于AX中,试把空白处填上适当的指令(每一空白只填一条指令)XORAX,AXMOVBX,0MOVCX,11CONT:ADDAX,BXINCBXLOOPCONT参考:MOVCX,11;LOOPCONT10、下述程序段完成计算220之间的偶数的和,并将结果存于AX中,试把空白处填上适当的指令(每一空白只填一条指令)XORAX,AXMOVBX,0MOVCX,11CONT:ADDAX,BXADDBX,2LOOPCONTMOVCX,11;ADDBX,211、下列程序段的功能是把09的数据转换为相应的ASCII码。请在每个空白处填

49、上一条指令。( DATDB00H,01H,02H,03H,04H,05H,06H,07H,08H,09HASCDB10DUP(?)CON=ASC-DATLEASI,DATLEADI,ASCMOVCX,CONLOP:MOVAL,SIADDAL,30HMOVDI,ALINCSIINCDILOOPLOPHLTMOVCX,CON;ADDAL,30H或ORAL,30H12、某程序段要用单个字符显示的2号DOS功能调用去显示一字符串“STRING”。试在下面空白处填上适当的指令STR1DBSTRING,$,MOVBX,OFFSETSTR1LOP:MOVDL,BXMOVAH,02HINT21H(1)2)JN

50、ELOP1)INCBX(2)CMPBX,?$?13、设字符串的段地址、偏移地址和长度已分别存于的个数,并存于DL中。试把空白处填上适当的指令。MOVAL,PMOVDL,0DS、SI和CX中,要统计其中字符“P”NEXT:CMPAL,SIJNECONTINCDLCONT:INCSILOOPNEXT1)JNECONT或JNZCONT;2)LOOPNEXT14、下面程序段完成用串指令在DA1开始的26个字节单元中依次存放A-Z的ASCII码,在DA2开始的26个字节单元中依次存放Z-A的ASCII码,请在横线处各填一条指令。DA1DB26DUP(?)( DA2DB26DUP(?),LEADI,DA11)MOVAL,?A?MOVCX,26CLDLOP1:STOSB2)INCALLOOPLOP1MOVCX,26LOP2:(3)DECALSTOSBLOOPLOP21)MOVAL,?A?;2)INCAL;3)DECAL15、从键盘逐一输入字符,并从显示器输出,当输入到字符$时,则程序退出返回。请在下列程序中的空格处填入适当指令使其完整。NEXT:MOVAH

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!