汇编语言程序设计试卷

合集下载

汇编语言程序设计

汇编语言程序设计

06年10月一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.CPU要访问的某一存储单元的实际地址称(C )A.段地址B.偏移地址C.物理地址D.逻辑地址2.某存储单元的物理地址是12345H,可以作为它的段地址有(D)A.2345HB.12345HC.12340HD.1234H3.执行后使BX=0的同时也使CF=0,OF=0的指令是(A)A.XOR BX,BXB.OR BX,BXC.AND BX,BXD.CMP BX,BX4.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是( B )A.CX≠0且ZF=1B.CX≠0且ZF=0C.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为四条逻辑运算指令,下面的解释正确的是( C )A.指令XOR AX,AX执行后,AX内容不变,但设置了标志位B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C.指令AND AX,OFH执行后,分离出AL低四位D.NOT AX,执行后,将AX清07.在执行下列指令时,需要使用段寄存器DS的指令是( D )A.STOSWB.ADD AL,CLC.NEG BXD.INC DA[BX]8.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是( B )A.ADD BH,01HB.OR BH,01HC.XOR BH,01HD.TEST BH,01H9.完成对CL寄存器的内容乘以4的正确操作是( C )A.ROL CL,1B.MUL 4ROL CL,1C.SHL CL,1D.MOV CL,2SHL CL,1 SHL CL,CL10.下面各传送指令中,正确的是( C )A.MOV [DI],[SI]B.MOV[DX+DI],ALC.MOV WORD PTR [BX],0100HD.MOV AL,BX11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法( B )A.名字的第一个字符可以是大写英文字母及小写英文字母B.名字的第一个字符可以是字母、数字及?、@、_C.名字的有效长度≤31个字符D.在名字中不允许出现$12.要实现使BETA的值为56,应采用语句为( C )A.BETA DB 56B.BETA DB 56HC.BETA EQU 56D.BETA EQU 56H13.REPZ CMPSW指令,重复执行的终止条件是( A )A.CX=0或ZF=0B.CX=0且ZF=0C.CX=0或ZF=1D.CX=0且ZF=114.下面程序段执行后,AL中的内容是( B )MOV AX,8833HADD AL,AHDAAA.21B.21HC.0C1HD.0DDH15.比较两个带符号的数A、B,当A=B时程序转移,测试的条件为( A )A.ZF=1B.ZF=0C.SF=1D.SF=016.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是( A )A.JNC LOP1B.JA LOP1C.JC LOP1D.JGE LOP117.在下列串操作指令中,同时使用源串和目的串地址指针的指令是()A.STOSWB.LODSWC.SCASWD.CMPSW18.设AL=0AH,下列指令执行后能使AL=05H的是( C )A.NOT ALB.AND AL,0FHC.XOR AL,0FHD.OR AL,0FH19.DA1 D W‘AB’,‘CD’,‘EF’,‘GH’( D )┇MOV AX,DA1+3指令执行后AX中的内容是A.‘EF’B.‘CD’C.‘BC’D.‘FC’20.使用DOS系统功能调用时,使用的软中断指令是( D )A.INT 21B.INT 10HC.INT 16HD.INT 21H二、填空题(本大题共12空,每空0.5分,共6分)请在每小题的空格中填上正确答案。

汇编语言程序设计题目以及答案

汇编语言程序设计题目以及答案

一、单项选择题(每小题1分,共20分)1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是(A)A、85B92HB、86192HC、BB690HD、12169H2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS3、循环指令LOOPNZ终止循环的条件是(B)。

A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX10,且ZF=0D、CX10,或ZF=14、对寄存器AX的内容乘以4的正确指令序列是(B)。

A、SHR AX,1 /SHR AX,1B、SHL AX,1/ SHL,AX,1C、ROL AX,1 /ROL AX,1D、RCR AX,1/ RCR AX,15、执行INC指令除对SF、ZF有影响外,还要影响的标志位是(A)。

A、OF,AF,PFB、OF,AF,CFC、OF,PF,CFD、AF,PF,CF6、设DH=10H,执行NEG DH指令后,正确的结果是(D)。

A、DH=10H CF=1B、DH=0F0H CF=0C、DH=10H CF=0D、DH=0F0H CF=17、下列传送指令中有语法错误的是(A)。

A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX8、下面指令执行后,改变AL寄存器内容的指令是(D)。

A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL9、执行除法指令后,影响的标志位是(D)。

A、CF,OFB、SF,ZFC、CF,OF,SFD、AF,CF,OF,PF,SF,ZF都不确定10、执行下面指令序列后,结果是(A)。

MOV AL,82H / CBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H11、与MOV BX,OFFSET VAR指令完全等效的指令是(D)。

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

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

汇编语言程序设计期末考试-试卷及参考答案【汇编语言程序设计】期末考试-试卷及参考答案执行上述两条指令后,正确的结果是( 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,DX2.MOV CS,AX;代码段寄存器CS不能作目的操作数,改正为MOV DS,AX3.ADD AX,DS;段寄存器DS的内容不能作为加法指令的操作数,改正为MOV BX,DSADD AX,BX4.TEST BX,[CX];不能使用CX实现寄存器间接寻址,改正为MOV SI,CXTEST 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个字节数的总和并保存在AX寄存器中。

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

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

汇编语言程序设计试卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

① 无符号十进制数136② 带符号十进制数-120③ 压缩型BCD码十进制数88④ 8位二进制数-8的补码表示2.指令指针寄存器是()。

① IP② SP③ BP④ PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

① 表示结果中含1的个数为偶数② 表示结果中含1的个数为奇数③ 表示该数为偶数④ 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

① MOV AL,00H② AND AL,00H③ XOR AL,AL④ SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。

① AND② NEG③ NOT④ INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

① MOV AX,BX② MOV BX,AX③ PUSH AXPOP BX④ MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

① AH=01,AL=05② AH=1 AL=15③ AH=0 AL=0FH④ AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为① OF=1,CF=0② OF=1,CF=1③ OF=0,CF=0④ OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

① CX=0且ZF=0② CX=0且ZF=1③ CX=0或ZF=0④ CX=0或ZF=110.下面指令中,合理而有意义的指令是()。

专升本《汇编语言程序设计》_试卷_答案

专升本《汇编语言程序设计》_试卷_答案

专升本《汇编语⾔程序设计》_试卷_答案专升本《汇编语⾔程序设计》⼀、(共75题,共150分)1. 使⽤寄存器_________作间址寄存器,寄存器间接寻址的操作数系统默认在堆栈段。

(2分)A.BXB.SPC.BPD.SI标准答案:C2. 两个有符号数相加,通过标志位_________判断结果是否溢出。

(2分)A.ZFB.CFC.SFD.OF标准答案:D3. 汇编语句MOV AX,[AX]语法错误,其原因是_________ (2分)A.源操作数和⽬的操作数不能同时为存贮器操作数.B.操作数类型模糊C.源操作数不能为⽴即⽅式D.AX不能⽤于寄存器间接⽅式标准答案:D4. 设VAR为字变量, A为符号常量,下⾯四个语句中有⼀个错误的,这个错误语句是________. (2分)A.MOV VAR , AB.MOV AX , VARC.MOV A , VARD.MOV VAR , AX标准答案:C5. 在使⽤除法指令作字除法时,余数应放在寄存器________中。

(2分)A.BXB.DXC.CXD.AX标准答案:BCMP AX,BX_______ L (2分)A.JAB.JBC.JGD.JL标准答案:C7. 已知(AX)=1111H (BX)=2222H (CX)=3333H,执⾏“PUSH BX”两次,“PUSH CX”⼀次,“POP AX”两次后, (AX)等于_________。

(2分)A.1111HB.2222HC.3333HD.0标准答案:B8. 若(AX)=3412H,则(AL)的值为_________。

(2分)A.12HB.34HC.1234HD.3412H标准答案:A 9. 在语句INC BYTE PTR [BX]中,操作数使⽤的寻址⽅式是_________。

(2分)A.寄存器寻址B.寄存器间接寻址C.直接寻址D.⽴即寻址标准答案:B10. 在语句INC [BX]中,操作数使⽤的段寄存器是_________。

汇编语言程序设计试卷

汇编语言程序设计试卷

《汇编语言程序设计》试卷一.单项选择题(本大题共5小题,每小题1分,共5分)1.段寄存器__________给定了当前可使用附加数据段的段首址。

A.DS B.ES C.SS D.CS2.在语句"MOV AX,5[BX+SI]"中, 源操作采用的是______寻址方式。

A. 直接B. 寄存器间接C. 变址D. 基址加变址3.SBB指令的功能为_________。

A. (OPD)-(OPS)→OPDB. (OPD)-(OPS)-CF→OPDC. (OPS)-CF→OPDD. (OPD)-CF→OPD4.若有符号数运算结果溢出,则_______位置1。

A.OF B.CF C.ZF D.SF5.使用串操作指令时,目的串一定要放在当前________ 中。

A.代码段B.数据段C.附加数据段D.堆栈段二.改错题(本大题共10小题,每小题1分,共10分)1.SAL AX,2 2.LEA POINT,BUF3.IDIV AX,10 4.POP BL5.ADD [BX],[SI] 6.CWD AX,DX7.MOV DX,5[SI+DI] 8.OUT DX,…A‟9.STACK SEGMENT PARA PUBLIC …STACK ;定义堆栈段10.TEST AX,01H ;测试AX最高位三.已知数据段DATA中依次定义了如下数据:(本大题共10分)DATA SEGMENTN1 DB …ABCD$‟N2 EQU $-N1N3 DW -28,100,30N4 DB 1,2N5 DW (N5-N2)/2DATA ENDS①画出存储分配示意图;②N2=?(N5)=?③如果将“ N2 EQU $-N1”改为“N2 DW $-N1”后,(N5)=?四.简答题(本大题共5小题,每小题3分,共15分)1.简述宏指令与子程序的区别。

2.已知(AX)=0FBADH,执行“AND AX,0F0FH”后(AX)=?3.已知(AX)=0FBADH,执行以下语句序列后,(AX)=?XCHG AH,ALOR AX,0FF00H4.如何计算待取出指令的物理地址?5.已知AX和BX中均为无符号数且需(AX)>(BX)时转NEXT处执行:CMP AX,BX()NEXT可在括号内填入哪几种转移指令?五.已知子程序C2_10的功能为:将AX中的无符号二进制数以十进制形式在光标当前位置处输出,该子程序的调用不破坏任何寄存器的内容请为下列程序段添加注释,说明该程序段所完成的功能和执行完该程序后屏幕上显示的内容。

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

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

汇编语言程序设计试卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。

① 无符号十进制数136② 带符号十进制数-120③ 压缩型BCD码十进制数88④ 8位二进制数-8的补码表示2.指令指针寄存器是()。

① IP② SP③ BP④ PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

① 表示结果中含1的个数为偶数② 表示结果中含1的个数为奇数③ 表示该数为偶数④ 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。

① MOV AL,00H② AND AL,00H④ SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。

① AND② NEG③ NOT④ INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

① MOV AX,BX② MOV BX,AX③ PUSH AXPOP BX④ MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。

① AH=01,AL=05② AH=1 AL=15③ AH=0 AL=0FH④ AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为② OF=1,CF=1③ OF=0,CF=0④ OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

① CX=0且ZF=0② CX=0且ZF=1③ CX=0或ZF=0④ CX=0或ZF=110.下面指令中,合理而有意义的指令是()。

① REP LODSB② REP SCASB③ REP CMPSB④ REP MOVSB11.在汇编语言程序中,对END语句的叙述正确的是()。

汇编语言程序设计试题和答案

汇编语言程序设计试题和答案

《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每1分,共15分).1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()A.07FFH 3021DB. 6FEH 1021DC. 07FFH 2012DD. 07FFH 2047D2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在指令中用一个字节来表示端口号。

试问可以直接由指令指定的I/o端口号有多少个?( )A. 127DB.255DC. 256DD.128D3. 设MYDAT是一个字变量,下列指令中,错误的是()A.MOV BX,10100BB.MOV DS,AXC.ADD BX,[10100H]D.MOV BX,MYDAT[SI]4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()A.5678HB.4C2AHC.2A4CHD.7856H5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节( ),试用16进制数表示该机的地址范围()A.1M 0~FFFFFHB.64K 0~FFFFHC.128K 0~FFFFHD.128K –FFH~FFH6. 如果在一个程序段开始执行之前,(cs)=0A7F0H,(1P)=2B40H,试问该程序段的第一个字的物理地址是()A.BAA40HB.AAB40HC.AAA40HD.0D603H7.下列指令哪个是错误的(设OP1,OP2 是已经用DB定义的变量名)( )A.CMP BL,OP1B.MOV [BX],111001BC. INC OP2D.SAR AX,CL8.假定(DX)=10111001B,(CL)=05,(CF)=1试确定:RCL DL,CL 指令执行后,DX中的值是()A.00CEHB.009DHC.00B9HD.003BH9. 有符号定义语句如下:BUFF DB 1,2,3,‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值为多少( )A.6DB.7DC.3DD.5D.10. IBMPC机中下列那些寄存器可以用来存储存储器地址()A、BX,BP,SP,CXB、AX,SI,DI,DXC、BX,SI,DI,SPD、DX,SI,DI,SP11.下列指令中正确的是()A.MOV [BX],[SI]B.MOV AX,[SI][DI]C.MOV BX,OFFSET NAME[SI]D.MOV BYTE PTR [100],10012下列程序段执行后,寄存器BX中的内容是什么()MOV CL , 3MOV BX , 0B7HROL BX , 1RCR BX , CLA、0EDHB、0DEHC、0CDHD、0CCH13JB指令的测试条件是( )A. CF=0B. CF=1 C .OF∨CF=1 D.OF=114在DEBUG中()命令用来汇编一句汇编语言语句15 A 、A B、U C 、E D、D16. 指令STI 的功能是( )17(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步二.不定项选择题,漏错多选不得分。

汇编语言程序设计试题参考答案

汇编语言程序设计试题参考答案

汇编语言程序设计参考答案A卷一、单项选择题(本大题共8小题,每小题2分,共16分)1.C2.B3.B4.A5.C6.A7.A8.C9.D 10.B二、名词解释(本大题共5小题,每小题4分,共20分)11.微处理器:也成中央处理器(CPU),是微型计算机的核心部件,包含运算器、控制器、寄存器组及总线接口等,负责对计算机系统各部件进行统一的协调和控制。

12.寻址方式:就是寻找操作数或操作数地址的方式,根据寻址方式可方便地访问各类操作数。

13.伪指令:是发送给汇编程序的命令,在汇编过程中由汇编程序进行处理,如定义数据、分配存储区、定义段及定义过程等。

14.中断源:指能引起中断的外部设备或内部原因。

15.汇编语言:是一种面向CPU指令系统的程序设计语言,采用指令助记符来表示操作码和操作数,用符号地址表示操作数地址。

三、简答题(本大题共4小题,每小题5分,共20分)16.微型计算机系统软件的主要特点是什么?计算机系统软件的主要特点是简化计算机操作,支持应用软件的运行并提供相关服务,通常包括操作系统、语言处理程序等。

17.什么是逻辑地址?他由哪两部分组成?计算机存储器中给每个逻辑段编址的地址称逻辑地址。

逻辑地址是在程序中使用的地址,他由段地址和偏移地址两部分构成。

18.一个完整的汇编源程序由那些逻辑段组成?各逻辑段的主要作用是什么?一般情况下汇编语言源程序应该由以下3个逻辑段组成:①数据段:用来在内存中建立一个适当容量的工作区,以存放常数,变量等程序需要对其进行操作的数据;②堆栈段:用来在内存中建立一个适当容量的堆栈区,以便在中断、子程序调用时使用;③代码段:包括了许多以符号表示的指令,其内容就是程序需要执行的具体操作。

19. DMA数据传送方式的特点是什么?DMA数据传送方式把外设与内存交换信息的操作与控制交给DMA控制器,简化了CPU对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。

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

【汇编语言程序设计】期末考试-试卷及参考答案
MOVBX,DS ADDAX,BX 4.TESTBX,[CX];不能使用 CX 实现寄存器间接寻址,改正为 MOVSI,CX TESTBX,[SI] 5.SUB[BX],[BP+SI];两个操作数不能同为存储器操作数,且两个操作数的数据类型 不确定,改正为:MOVAX,[BX] SUBAX,[BP+SI] 或:MOVAL,[BX] SUBAL,[BP+SI] 6.SHLDX;没有给出移位次数,改正为 SHLDX,1 或 SHLDX,CL 三、程序填空题(注意:每空只能填一条指令,并注释说明所填指令的作用!每空 3 分, 共 18 分) 1.在表 TABLE 处存放着 N 个无符号字节数,求表中前 10 个字节数的总和并保存在 AX 寄存器中。如果总和值超过 AX 寄存器的容量,则置 AX 寄存器内容不变。请在程序 中的空格处填入适当指令使其完整。 LEA?BX,TABLE?
JC?EXIT
DONE:INC?BX
(3)LOOPNEXT;将计数器 CX 减 1,并判断是否继续下一次循环
EXIT:HLT
2.BUFFER 为起始地址的存储区域中存放有 100 个字节数据,现将其首、尾颠倒过来, 重新排放这 100 个字节数据。请在程序中的空格处填入适当的指令使其完整。 MOV?CX,32H;循环 50 次
letterDB26DUP(?) countEQU$-letter
dataENDS codeSEGMENT ASSUMEcs:code,da:data start:movax,data
movds,ax movcx,count leasi,letter moval,‘A’ next:mov[si],al
movah,9;9 号功能调用显示提示信息
int21h

汇编语言程序设计试卷

汇编语言程序设计试卷

汇编语言程序设计试卷一. (共75 题,共150 分)1.下列说法错误的是。

(2 分)A.机器指令的形式包含操作码和地址码B.计算机只能够识别规定好的机器指令C.不同计算机系统之间的机器指令能够相互兼容D.汇编语言的主要操作和机器指令基本上一一对应★检查答案标准答案:C2.两个有符号数相减,通过标志位判断结果是否溢出。

(2 分)A.ZFB.CFC.SFD.OF★检查答案标准答案:D(2 分)3.汇编语言和高级语言的比较,下列说法错误的是A.汇编语言和高级语言都不能被机器直接识别B.完成同样的功能,汇编语言占据空间小C.高级语言可以使用变量,但汇编语言不行D.汇编语言中有类似于高级语言的宏功能★检查答案标准答案:C4.下列寄存器中,哪个寄存器不能供汇编程序直接访问. (2 分)A.SPB.BPC.CSD.IP★检查答案标准答案:D5.下列寄存器,哪个不能作基址寄存器。

(2 分)A.BXB.BPC.SID.ESI★检查答案标准答案:C6.设有关寄存器及存储单元的内容如下:则指令MOV AX, 1100H[BX][SI] 执行完毕后,AX 寄存器中的值是。

(2 分)A.65B7HB.3412HC.4C2AHD.7856H★检查答案标准答案:AA.可以作立即寻址的操作数B.也可作某些存贮器操作数的的位移量组成部分C.在数据定义伪指令语句中给变量赋初值D.可以作目的操作数★检查答案标准答案:D8.若(ECX)=0ABCD1234H(BL)=0E3H,则语句MOVSX ECX,BL执行后:(ECX)的值为。

(2 分)A.0ABCD1234HB.0FFFFFFE3HC.000000E3HD.0ABCD12E3H★检查答案标准答案:B(2 分)9.若(AX)=0FFFDH ,则语句ADD AX,7FFFH 执行后,下列说法正确的是。

A.(AX) =7FFCH,(OF)=1 ,(CF)=1B.(AX) =17FFCH ,(OF)=1 ,(CF)=1C.(AX)=7FFCH,(OF)=0 ,(CF)=1 D.(AX)=17FFCH ,(OF)=0 ,(CF)=1★检查答案标准答案:C10.在语句INC SS:[BX] 中,操作数使用的段寄存器是。

1!《汇编语言程序设计》试题

1!《汇编语言程序设计》试题

1!《汇编语⾔程序设计》试题《汇编语⾔程序设计》试题1.将8进制的数23转化为3进制的数,其值为(201)。

23(8)=2*8^1+3*8^0=19(10) 19(10)=201(3)2.汇编语⾔程序的开发过程要经历编辑、(汇编)、链接和运⾏调试等⼏个阶段。

3.Intel 8086 CPU中的段寄存器有CS、DS、ES和(SS)。

段寄存器CS、DS、ES、SS4.汇编语⾔指令中操作数分为⽴即数操作数、寄存器操作数和(内存操作数)三类。

5.永远指向堆栈段栈顶单元的寄存器为(SP)。

6. 英⽂⼤写字母A的ASCII码为41H,则英⽂⼤写字母D的ASCII码为(44H)。

A=41H B=42H C=43H D=44H...7. BCD码分为压缩的BCD码和(⾮压缩BCD码)两类。

8. 8086/8088CPU有(20)根地址线,可寻址1M字节的内存空间。

8086/8088CPU提供的地址总线有20位,2的20次⽅等于1M同理,寄存器是16位的,所以就是2的16次⽅等于64K9.80x86CPU有实模式和保护模式两种操作模式,⽽8086/8088CPU只能⼯作在(实)模式下。

10.(堆栈)是内存中的⼀块特定区域,其中的内容是按照后进先出的原则进⾏操作的。

11. 8086/8088CPU中变址寄存器有SI和(DI )两个。

12.主程序和⼦程序之间的参数传递通常有如下三种⽅法:通过寄存器传递、通过存储器传递和通过(堆栈)传递。

13.循环指令loop指令隐含的计数器是(CX )寄存器。

14. 已知8位⼆进制表⽰的整数X的补码为10011011,则-X的补码的⼆进制编码为(01100101)。

先各位取反,0变成1,1变成0。

然后最低位加⼀。

例⼦11111111,0011100;X=10011011 -X=01100101 -2X=(-X左移⼀位补零,多的那位忽略)11001010;1/2 X=11001101(看X,右移⼀位原来第⼀位是什么现在还是什么) ;-1/2X=00110010(同理,看-X)15.有如下定义:BUF DW 4,6,$+2,若汇编时BUF分配的偏移地址是0042H,则汇编后BUF数组中第三个字的值是(0048h)。

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

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

《汇编语言程序设计》期末考试-试卷及答案一、选择题(每题1分,共20分)1、下面存储器中属于辅助存储器的是:(CDE)A.RAMB.ROMC.磁盘D.光盘E.硬盘2、通常说计算机的内存为32M、64M或128M指的是:(C)A.RAM的容量B.ROM的容量C.RAM和ROM的容量D.硬盘的容量3、下面的说法正确的是:(AE)A.存储器是计算机中存放程序和数据的记忆部件。

B.存储器中的信息被读出后即从存储器中消失。

C.存储器中如果已经存有数据,则不能再向其中写入新的数据。

D.半导体存储器的存取速度比CD-ROM的存取速度要慢。

E.辅助存储器需要CPU通过I/O接口访问,因而速度较慢。

4、下面属于系统软件的有(A)A. WINDOWSB. MASMC. Visual C++D. WORD5. 汇编语言的优点不包括__D___。

A 直接有效地控制硬件B 生成的代码序列短小C 运行速度快D 编程容易6. 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( AB)A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS7. 可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是( D)。

A.AX,BX,CX,DXB.DS,ES,CS,SSC.SP,BP,IP,BXD.SI,DI,BP,BX8.某存储单元的物理地址是12345H,可以作为它的段地址有(D )A.2345H B.12345HC.12340H D.1234H9、循环指令LOOPNZ终止循环的条件是(B )。

A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX≠0,且ZF=0D、CX≠0,或ZF=110.执行下列指令后,正确的结果是(B )。

MOV AL,100MOV BL,-2A、 AL=100H BL=02HB、 AL=64H BL=0FEHC、 AL=64H BL=82HD、 AL=100H BL=0FEH11、执行INC指令除对SF、ZF有影响外,还要影响的标志位是( A)。

汇编语言程序设计试题及答案

汇编语言程序设计试题及答案

《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每1分,共15分).1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()A.07FFH 3021DB. 6FEH 1021DC. 07FFH 2012DD. 07FFH 2047D2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在指令中用一个字节来表示端口号。

试问可以直接由指令指定的I/o端口号有多少个?( )A. 127DB.255DC. 256DD.128D3. 设MYDAT是一个字变量,下列指令中,错误的是()A.MOV BX,10100BB.MOV DS,AXC.ADD BX,[10100H]D.MOV BX,MYDAT[SI]4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()A.5678HB.4C2AHC.2A4CHD.7856H5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节( ),试用16进制数表示该机的地址范围()A.1M 0~FFFFFHB.64K 0~FFFFHC.128K 0~FFFFHD.128K –FFH~FFH6. 如果在一个程序段开始执行之前,(cs)=0A7F0H,(1P)=2B40H,试问该程序段的第一个字的物理地址是()A.BAA40HB.AAB40HC.AAA40HD.0D603H7.下列指令哪个是错误的(设OP1,OP2 是已经用DB定义的变量名)( )A.CMP BL,OP1B.MOV [BX],111001BC. INC OP2D.SAR AX,CL8.假定(DX)=10111001B,(CL)=05,(CF)=1试确定:RCL DL,CL 指令执行后,DX中的值是()A.00CEHB.009DHC.00B9HD.003BH9. 有符号定义语句如下:BUFF DB 1,2,3,‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值为多少( )A.6DB.7DC.3DD.5D.10. IBMPC机中下列那些寄存器可以用来存储存储器地址()A、BX,BP,SP,CXB、AX,SI,DI,DXC、BX,SI,DI,SPD、DX,SI,DI,SP11.下列指令中正确的是()A.MOV [BX],[SI]B.MOV AX,[SI][DI]C.MOV BX,OFFSET NAME[SI]D.MOV BYTE PTR [100],10012下列程序段执行后,寄存器BX中的内容是什么()MOV CL , 3MOV BX , 0B7HROL BX , 1RCR BX , CLA、0EDHB、0DEHC、0CDHD、0CCH13JB指令的测试条件是( )A. CF=0B. CF=1 C .OF∨CF=1 D.OF=114在DEBUG中()命令用来汇编一句汇编语言语句A 、A B、U C 、E D、D15. 指令STI 的功能是( )(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步二.不定项选择题,漏错多选不得分。

《汇编语言程序设计》考试练习题及答案

《汇编语言程序设计》考试练习题及答案

《汇编语言程序设计》考试练习题及答案一、单选题1. 计算机中存取信息或数据的最小单位为()A 、位B 、字节C 、字D 、双字答案:B2. 调用子程序的指令为()A 、CALLB 、RETC 、HLTD 、NOP答案:A3. DOS功能调用是通过()指令去调用DOS系统提供的软件中断处理程序A 、INT 21HB 、INT 23HC 、INT 12HD 、INT 11H答案:A4. 满足()时,CPU允许中断A 、IF=0B 、IF=1C 、DF=0D 、DF=1答案:B5. 完成对CL寄存器的内容乘以4的正确操作是()。

A 、ROL CL,1 ROL CL, 1B 、MUL 4C 、SHL CL, 1 SHL CL, 1D 、MOV CL , 2 SHL CL, CL答案:C6. 下面寄存器中可以分为两个独立8位寄存器的是()A 、AXB 、DIC 、CSD 、SI答案:A7. ()是用二进制编码的机器指令的集合及一组使用机器指令的规则,是CPU能直接识别的唯一语言。

A 、汇编语言B 、机器语言C 、JAVA语言D 、C语言答案:B8. 源程序模块结束语句为()A 、ORGB 、ENDC 、SEGMENTD 、START答案:B9. 8位补码表示的有符号数的表示范围是()A 、0~255B 、-128~+127C 、0~65535D 、-32768~+32767答案:B10. 在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来,下列说法正确的是()A 、占内存空间小,但速度慢B 、占内存空间大,但速度快C 、占内存空间相同,但速度快D 、占内存空间相同,但速度慢答案:B11. 与LEABX ,BUF指令完全等效的指令是()。

A 、MOV BX ,BUFB 、LDS BX ,BUFC 、MOV BX ,OFFSET BUFD 、MOV BX ,WORD PTR BUF答案:C12. 14的非压缩BCD码为()A 、00010100B 、01000001C 、0000000000010100D 、0000000100000100答案:D13. 要实现使BETA的值为56,应采用的语句是()A 、BETA DB 56B 、BETA DB 56HC 、BETA EQU 56HD 、BETA EQU 56答案:D14. ()不可以做目的操作数A 、立即数B 、寄存器C 、存储器操作数D 、累加器答案:A15. 计算机一般由中央处理器、存储器和输入/输出子系统组成,其中()可以存放程序、数据、信息及中间结果。

《汇编语言程序设计》必考试题及答案

《汇编语言程序设计》必考试题及答案

《汇编语言程序设计》必考试题及答案一、选择题1. 汇编语言属于 ____。

A. 高级语言B. 机器语言C. 低级语言D. 自然语言答案:C. 低级语言2. 在汇编语言中,寄存器eax主要用于 ____。

A. 存储返回值B. 存储函数参数C. 存储局部变量D. 存储全局变量答案:A. 存储返回值3. 汇编语言中,jmp指令用于 ____。

A. 设置循环条件B. 调用子程序C. 跳转到指定地址D. 返回主程序答案:C. 跳转到指定地址二、简答题1. 请简述汇编语言与高级语言的区别。

汇编语言是一种低级语言,使用助记符来代表机器指令,每条汇编指令对应一条机器指令。

而高级语言更加抽象,采用更接近人类自然语言的表达方式,通过编译器将高级语言编写的程序转换为机器语言。

2. 请列举汇编语言常用的寄存器及其作用。

汇编语言常用的寄存器包括:- eax:主要用于存储返回值。

- ebx、ecx、edx:通用寄存器,用于暂存计算结果。

- esi、edi:源操作数寄存器和目的操作数寄存器,用于存储数据传输时的源地址和目的地址。

- ebp、esp:用于管理函数调用过程中的栈帧。

- eip:指令指针寄存器,存储下一条将要执行的机器指令的地址。

三、编程题请编写汇编语言程序,实现从键盘输入两个数,并将其相加后输出的功能。

```assemblysection .dataprompt db '请输入两个数,以空格分隔:', 0result db '两数相加的结果为:%d', 0section .bssnum1 resb 4num2 resb 4section .textglobal _start_start:; 输出提示信息mov eax, 4mov ebx, 1mov ecx, promptmov edx, 20int 0x80; 输入第一个数mov ebx, 0mov ecx, num1 mov edx, 4int 0x80; 输入第二个数 mov eax, 3mov ebx, 0mov ecx, num2 mov edx, 4int 0x80; 将两个数相加 mov eax, [num1] mov ebx, [num2] add eax, ebx; 输出结果mov ebx, eaxmov eax, 1mov ecx, resultint 0x80; 退出程序mov eax, 1xor ebx, ebxint 0x80```以上为一个简单的汇编语言程序,实现了从键盘输入两个数,并将其相加后输出的功能。

汇编语言程序设计试题和答案

汇编语言程序设计试题和答案

汇编语⾔程序设计试题和答案《汇编语⾔程序设计》试题专业姓名成绩⼀、单项选择题(每1分,共15分).1将下列⼆进制数0111,1111,1111 转换为16进制数和10进制数是()A.07FFH 3021DB. 6FEH 1021DC. 07FFH 2012DD. 07FFH 2047D2. 在1BM Pc机的IN和OUT 指令中,I/o端⼝号通常是由Dx寄存器来提供的,但有时也可以在指令中⽤⼀个字节来表⽰端⼝号。

试问可以直接由指令指定的I/o端⼝号有多少个?( )A. 127DB.255DC. 256DD.128D3. 设MYDAT是⼀个字变量,下列指令中,错误的是()A.MOV BX,10100BB.MOV DS,AXC.ADD BX,[10100H]D.MOV BX,MYDAT[SI]4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执⾏后,AX寄存器内是()A.5678HB.4C2AHC.2A4CHD.7856H5.⼀台微型计算机的字长为16位,如果采⽤字节编址,那么它可以访问的最⼤存储空间是多少字节( ),试⽤16进制数表⽰该机的地址范围()A.1M 0~FFFFFHB.64K 0~FFFFHC.128K 0~FFFFHD.128K –FFH~FFH理地址是()A.BAA40HB.AAB40HC.AAA40HD.0D603H7.下列指令哪个是错误的(设OP1,OP2 是已经⽤DB定义的变量名)( )A.CMP BL,OP1B.MOV [BX],111001BC. INC OP2D.SAR AX,CL8.假定(DX)=10111001B,(CL)=05,(CF)=1试确定:RCL DL,CL 指令执⾏后,DX中的值是()A.00CEHB.009DHC.00B9HD.003BH9. 有符号定义语句如下:BUFF DB 1,2,3,‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值为多少( )A.6DB.7DC.3DD.5D.10. IBMPC机中下列那些寄存器可以⽤来存储存储器地址()A、BX,BP,SP,CXB、AX,SI,DI,DXC、BX,SI,DI,SPD、DX,SI,DI,SP11.下列指令中正确的是()A.MOV [BX],[SI]B.MOV AX,[SI][DI]C.MOV BX,OFFSET NAME[SI]12下列程序段执⾏后,寄存器BX中的内容是什么()MOV CL , 3MOV BX , 0B7HROL BX , 1RCR BX , CLA、0EDHB、0DEHC、0CDHD、0CCH13JB指令的测试条件是( )A. CF=0B. CF=1 C .OF∨CF=1 D.OF=114在DEBUG中()命令⽤来汇编⼀句汇编语⾔语句15 A 、A B、U C 、E D、D16. 指令STI 的功能是( )17(A)允许中断(B)不允许中断(C)允许单步(D) 不允许单步⼆.不定项选择题,漏错多选不得分。

汇编语言程序设计方案试卷及答案(AB卷)

汇编语言程序设计方案试卷及答案(AB卷)

2010—2011学年度第(1)学期期末考试试卷科 目:汇编语言程序设计 (A )卷考试形式:闭卷 考试时间: 120 分钟系别、班级: 姓名: 学号:一、单项选择题:(本题共20小题,每小题1分,共20分) 1. 设DS=5788H ,偏移地址为94H ,该字节的物理地址是 。

(A) 57974H (B) 57914H (C) 5883H (D) 58ECH 2. IP 指令指针寄存器是属于 。

(A) 通用寄存器 (B) 段寄存器 (C) 变址寄存器 (D) 控制寄存器 3. 下面有语法错误的指令是 。

(A) ADD AL,AH(B) ADD [BX+3],AL (C) ADD AH,[DI](D) ADD [BX],DA1(DA1是变量名)4. 完成对DX 的有符号数除以2的指令是 。

(A) IDIV 2 (B) SAR DX,1 (C) DIV 2 (D) RCR DX,1 5. 使进位位置1的指令是 。

(A) CLC (B) CMC (C) STC(D) NOP6. 设AL=-100,要使AL=100应执行的指令是 。

(A)NEG AL (B)NOT AL(C)INC AL (D)DEC AL7.在条件转移指令中,结果为负数则转移的指令是。

(A)JNS (B)JZ(C)JS (D)JC8.下面的XCHG指令中,语法正确的是。

(A)XCHG AL,DS (B)XCHG BH,[BX](C)XCHG AL,OFH (D)XCHG BUF1,BUF29.一条指令中目的操作数不允许使用的寻址方式是。

(A)寄存器寻址(B)立即数寻址(C)变址寻址(D)直接寻址10.设SP=1FFFH,执行下列指令后,SP寄存器的值是。

┇POPFPUSH BXPUSH BX┇(A)2000H (B)2002H(C)1FFCH (D)1FFEH11.LES SI ,[2000H]指令的全部功能是。

(A)把地址2000H送SI(B)把地址2000H字单元的内容送SI(C)把地址2000H字单元内容送SI,把2002H字单元内容送ES(D)把地址2000H字单元内容送ES,把2002H字单元内容送SI12.设AL=04H,CL=0F8H,执行MUL CL指令后,结果是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汇编语言程序设计题号ⅠⅡⅢⅣⅤⅥⅦ合分得分一,单项选择题(每小题1分,共20分)1.指令JMP FAR PTR DONE属于()A.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2.下列叙述正确的是()A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是()A.12CSBH B.12B6BH C.12C59H D.12BFEH4.在下列指令的表示中,不正确的是()A.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC[BX]D.MUL CL5.在进行二重循环程序设计时,下列描述正确的是()A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内6.条件转移指令JNE的测试条件为()A.ZF=0B.CF=0C.ZF=1D.CF=17.8086CPU在基址加变址的寻址方式中,变址寄存器可以为()A.BX或CX B.CX或SI C.DX或SI D.SI或DI8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在()中。

A.数据段中偏移量为3236H的字节B.附加段中偏移量为3234H的字节C.数据段中偏移量为3234H的字节D.附加段中偏移量为3236H的字节9.执行如下程序:()MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX)=()A.99B.100C.101D.10210.上题的程序执行后(AX)=()A.5000B.5050C.5100D.515011.对于下列程序段:()AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用______指令完成同样的功能。

A.REP MOVSB B.REP LODSB C.REP STOSB D.REPE SCASB 12.下面指令序列执行后完成的运算,正确的算术表达式应是()MOV AL,BYTE PTR XSHL AL,1DEC ALMOV BYTE PTR Y,ALA.y=x2+1B.x=y2+1C.x=y2-1D.y=x2-1 13.在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来。

()A.占内存空间小,但速度慢B.占内存空间大,但速度快C.占内存空间相同,速度快D.占内存空间相同,速度慢14.在程序执行过程中,IP寄存器中始终保存的是()A.上一条指令的首地址B.下一条指令的首地址C.正在执行指令的首地址D.需计算有效地址后才能确定地址15.PSW寄存器中共有______位条件状态位,有______位控制状态位。

()A.6、3B.3、6C.8、4D.4、816.下列指令执行时出错的是()A.ADD BUF1,BUF2B.JMP DWORD PTR DAT[BX]C.MOV AX,[BX+DI]NUM D.TEST AL,08H17.已知(AX)=1234H,执行下述三条指令后,(AX)=()MOV BX,AXNEG BXADD AX,BXA.1234H B.0EDCCH C.6DCCH D.0000H18.在下列指令中,______指令的执行会影响条件码中的CF位。

()A.JMP NEXT B.JC NEXT C.INC BX D.SHL AX,1 19.串指令中的目的操作数地址是由______提供。

()A.SS:[BP]B.DS:[SI]C.ES:[DI]D.CS:[IP] 20.将DX的内容除以2,正确的指令是()A.DIV2B.DIV DX,2C.SAR DX,1D.SHL DX,1二,简答题(每小题4分,共12分)1.假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条指令单独执行后,DX中的值。

(1)SHR DX,1(2)RCR DL,1(3)RCL DX,CL2.写出完成下述功能的程序段:(1)传送25H到AL寄存器(2)将AL的内容乘以2(3)传送15H到BL寄存器(4)AL的内容乘以BL的内容并请写出最后(AX)=?3.写一程序段,求双字长数DX∶bX的相反数。

三,程序分析题(每小题6分,共36分)1.现有如下程序段:DATA SEGMENT DA3EQU1234HORG0020H DA4EQU$-DA2DA1DW12H,23H DA5DB31H,32HDA2DB11H,21H DATA ENDS请回答:(1)该程序段已占有的存储字节数是多少?2.执行下列程序段后,回答问题。

ORG1221H MOV BX,OFFSET NUMNUM DW12H MOV CL,BYTE PTR NUM+1…MOV CH,TYPE NUMMOV AX,NUM HLT请问:(AX)=______,(BX)=______,(CX)=______。

3.阅读如下程序:ADRR DB XXH,XXH,……,XXH CMP ADRR[BX],0NUM EQU$-ADRR LOOPZ DONRETT DB?JNZ NEXT…MOV BL,OFFHMOV CX,NUM NEXT:MOV RETT,BLMOV BX,-1HLTDON:INC BX请问:(1)该程序完成的功能是什么?(2)程序执行后指出RETT字节单元中的内容是什么?4.现有一子程序:SUB1PROC PLUS:TEST BL,80HTEST AL,80H JE EXITOJE PLUS XCHANGE:XCHG AL,BLTEST BL,80H EXITO:RETJNE EXITO SUB1ENDPJMP XCHANGE试回答:(1)子程序的功能是什么?(2)若调用子程序前AL=9AH,BL=77H,则返回主程序时,AL=______,B L=______。

5.阅读程序段:BLOCK DB20H,1FH,08H,81H,OFFH…LOP1:CMP AL,[SI+1]RESULT DB?JNG NEXT…MOV AL,[SI+1]START:LEA SI,BLOCK NEXT:INC SIMOV CX,[SI]LOOP LOP1INC SI MOV RESULT,ALMOV AL,[SI]HLT请问:(1)该程序完成的功能是什么?(2)该程序循环的次数是多少?6.阅读如下程序段,回答所提出的问题,假定X1,X2,XN为无符号数。

ORG100HBLOK DW X1,X2, (X)COUNT EQU($-BLOLOK)/2RESULT DW COUNT,?LEA BX,BLOK-2MOV CX,RESULTXOR AX,AXGOON:ADD BX,2CMP AX,[BX]JAE NEXTMOV AX,[BX]NEXT:LOOP GOONMOV RESULT+2,AX程序段执行完,回答下述问题RESULT+2字存储单元的内容=______BX=______程序循环次数=______汇编语言程序设计答案一,单项选择题1.C2.C3.C4.C5.A6.A7.D8.A9.C10.B11.A12.D13.B14.B15.A16.A17.D18.D19.C20.C二,简答题(每小题4分,共12分)1.答:(1)005CH(2)00DCH(3)05CCH2.答:(1)MOV AL,25H(2)SHL AL,1(3)MOV BL,15H(4)MUL BL最后,(AX)=612H=15543.答:NEG DXNEG AXSBB DX,0三,程序分析题(每小题6分,共36分)1.答:(1)该程序段已占有的存储字节数是8个字节。

(2)符号名DA4的值为2,符号名DA5的值是0026H。

2.答:(AX)=0012H(BX)=1221H(CX)=0200H3.答:(1)在以ADRR为起始地址的数组中,查找第一个非0数据。

(2)若找到则将第一个非0数据在数组中的偏移量送入RETT单元中;若无非0数据,则将OFFH送入RETT单元中。

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

(2)AL=77H,BL=9AH5.答:(1)该程序完成的功能是从20H(32)个有符号数中找出最小的数送入RESUL T单元中。

(2)该程序的循环次数是1FH(31)。

6.答:RESULT+2字存储单元的内容是MAX(X1,X2,…XN)BX=100H+2×(COUNT-1)程序循环次数=COUNT四,程序填空题1.答:(1)ADD AL,[BX](2)MOV AX,SUM(3)LOOP NEXT。

相关文档
最新文档