汇编语言程序设计试题

合集下载

汇编语言程序设计

汇编语言程序设计

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.用来存放下一条将要执行的指令地址的寄存器是 (B )A.SP B.IP C.BP D.CS2.要使串处理从低地址向高地址进行,应把标志位置为 (D )A.IF=1 B.TF=0C.DF=1 D.DF=03.使状态标志位CF清零的错误指令是 (C )A.OR AX,AX B.SUB AX,AXC.MOV CF,0 D.CLC4.设SP=1110H,执行PUSH AX指令后,SP的内容为 (B )A.SP=1112H B.SP=110EHC.SP=1111H D.SP=110FH5.汇编源程序出现语法错误的指令有 (D )A.MOV [BX+SI],AL B. MOV AX,[BP+DI]C.MOV DS,AX D. MOV CS,AX6.下列串操作指令中,必须同时指明源串和目的串地址的指令是 (D )A.STOSW B.LODSWC.SCASW D.CMPSW7.设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是 (B )A.SHR BL,1 B.SHL BL,1C.SAR BL,1 D.RCR BL,18.执行PUSH AX指令的正确步骤是 (A )A.1.SP←SP-1,(SP)←AH B.1.(SP)←AH,SP←SP-12.SP←SP-1,(SP)←AL 2.(SP)←AL,SP←SP-1C.1.SP←SP+1,(SP)←AH D.1.(SP)←AH,SP←SP+12.SP←SP+1,(SP)←AL 2.(SP)←AL,SP←SP+19.CF=1 时转移到目标地址的条件转移指令是 (B )A.JNC B.JC C.JZ D.JS10.在执行NEG指令时,对标志位CF有影响,其影响的规则是 ( C )A.对正数求补时,CF=0 B.对负数求补时,CF=0C.对非零数求补时,CF=1 D.对零求补时,CF=111.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是(A )A.目的操作数最高位为0 B.目的操作数最高位为1C.目的操作数为任意情况 D.无论什么情况都不可能相同12.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是 ( D )A.AX=0032H B.AX=00E0HC.AX=03E0H D.AX=0FFE0H13.指令的操作数中,允许出现表达式,例如BUF1与BUF2均为变量名,下面指令中语法正确的是 (D )A.MOV AX,BUFl*BUF2B.MOV AX,BUF1/BUF2C.MOV AX,BUF1+ES:BUF2D .MOV AX ,BUF2-BUF114.下面指令中,操作数的寻址方式为寄存器间接寻址的指令是 (C )A .INC WORD PTR [BX+SI]B .INC CX ,[SI+COUNT]C .NEG BYTE PTR [BX]D .ADD AX ,B15.NUM EQU 80HDA DB 34HAND DA ,NUM上述语句执行后,DA 中的内容是 (D )A .0B4HB .80HC .34HD .016.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为 (A )A .立即、直接、间接B .直接、间接、立即C .直接、立即、间接D .不一定17.语句DA1 DB 2 DUP(3,5,7)汇编后,该语句可等同于的语句是 (D )A .DA1 DB 3,5,7B .DA1 DB 2,3,5,7C .DA1 DB 3,5,7,2D .DA1 DB 3,5,7,3,5,718. MOV AL ,80HMOV CL ,2SAR AL ,CL上述指令序列执行后,结果是 (D )A .AL=40HB .AL=20HC .AL=0C0HD .AL=0E0H19.下面是实现将AL 内容加1的压缩型BCD 码加法程序段,其中正确的指令序列是 (A ) A .INC ALB .ADD AL ,1DAA DASC .ADD AL ,1 D .STCDAA AAA20.现有数据存储如图所示:30100H 30101H 30102H 30103H设AL=01H ,BX=0100H ,DS=3000H 执行换码指令XLAT 后正确的结果是(B )A .AL=20HB .AL=38HC .AL=00HD .AL=41H21.若定义DAT DW 'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是 (B )A .0041HB .4100H20H38H41H55HC.xx41H D.41xxH[注]选项C. 和D.中的XX表示任意数据。

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

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

汇编语言程序设计试卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题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.下面指令中,合理而有意义的指令是()。

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

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

汇编语言程序设计参考答案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对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。

第四章汇编语言程序设计题库

第四章汇编语言程序设计题库

第四章汇编语言程序设计题库第四章汇编语言程序设计练习题一、单项选择题(共40题)1、关于指令MOV [BX],AX,以下叙述正确的是:A、目的操作数是寄存器操作数B、源操作数是内存操作数C、目的操作数是内存操作数D、源操作数是立即操作数2、执行下列程序,设(SS)=2000H,执行后(SP)=?MOV SP,2000HMOV AX,1234HPUSH AXA.21FFEH B.20000H C.22000H D.22002H3、运算型指令的寻址和转移型指令的寻址,其不同点在于A.前者取操作数,后者决定程序的转移地址B.后者取操作数,前者决定程序的转移地址C.两者都是取操作数D.两者都是决定程序的转移地址4、MOV ( ),300A、WORD PTR [DX]B、BYTE PTR [BX]C、WORD PTR [BP]D、AL5、汇编语言程序代码必须位于代码段中,形成代码段物理地址的寄存器对是A.SS: SP B.CS: IP C. DS: BX D. CS: BX6、若定义DAT DW 'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是()A.0041H B.4100HC.××41H D.4l××H7、执行下面的程序段后,(AX)=()TAB DW 1,2,3,4,5,6ENTRY EQU 3MOV BX,OFFSET TABADD BX,ENTRTMOV AX,[BX]A.0003H B.0300HC.0400H D.0004H8、下面表示段定义结束的命令是()A.ENDP B.ENDS C. ENDM D.END9、设AL、BL,中都是带符号数,当AL<BL时转至NEXT处,在CMP AL,BL指令后应选用正确的条件转移指令是()A.JBE B.JLC.JNA D.JNLE10、指令LOOPZ它的循环执行条件是( )A.CX不等于0且ZF=0 B.CX不等于0或ZF=0C.CX不等于0且ZF=1 D.CX不等于0或ZF=111、执行下列指令后,SP寄存器的值是()MOV SP,1000HPUSH AXA.0FFEH B.0FFFHC.1001H D.1002H12、完成将有符号数BX的内容除以2的正确指令是()A.SHR BX,1 B.SAR BX,1C.ROR BX.1 D.RCR BX,113、汇编语言源程序经汇编后不能直接生成()A.OBJ文件B.LST文件C.EXE文件D.CRF文件14、执行下列程序(AL)=( )。

汇编语言程序设计题库练习题1--详细答案

汇编语言程序设计题库练习题1--详细答案

汇编语言程序设计题库练习题1--详细答案汇编语言程序设计练习题一、单项选择题1、与100.5不相等的数据是【 C 】A. 64.8HB. 1100100.1BC. 64.5HD. 144.4O2、指向程序代码段的段寄存器是【 A 】A. CSB. DSC. SSD. FS3、在内存字单元(20000)中存放数1324H,即(20000)=1324H,则从字节单元20001H 中取出一个字节为【 A 】A. 13H B. 24HC. 1324HD. 2413H4、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是【 A 】A. MOV AL,00HB. AND AL,00HC. XOR AL,ALD. SUB AL,AL5、指令JMP BX转移的目标地址的偏移量为【 C 】A. IP+BX的内容B. IP+[BX]C. BX的内容D. BX所指向的内存字单元的内容6、DA1 DW 2A05HDA2 DB 07AH┇MOV AL,BYTE PTR DA1SUB DA2,AL上述指令执行后,DA2中的内容是【 C 】A. 7AH B. 02AHC. 075HD. 050H7、某存储单元的物理地址是12345H,可以作为它的段地址有【 d 】A. 2345HB. 12345HC. 12340HD. 1234H8、设有数据定义X2 DW 10 DUP (0,1,2),定义了多少字节的缓冲【 C 】A. 6B. 30C. 60D. 409、有符号数AX除以2的指令是【 B 】A. SHR AX,1B. SAR AX,1C. ROR AX,1D. RCR AX,110、DEC BYTE PTR[BX]中的操作数的数据类型是【 C 】A. 字B. 双字C. 字节D. 四字11、设SP=4AH,执行段内返回指令RET后,SP的值是【 C 】A. 44HB. 48HC. 4CHD. 50H12、指令“LOOP 标号”转移到标号的的条件是【 A 】A. CX≠0B. ZF=0C. CX≠0 AND ZF=0D. CX≠0 OR ZF=108086二、填空题1、汇编语言源程序经【编译】后,形成目标文件,再经过【链接】后,形成可执行文件。

汇编语言程序设计习题

汇编语言程序设计习题

1.假设字节单元(06925H)=12H,(06926H)=45H,(06927H)=78H,那么字单元(06925H)= C ,字单元(06926H)= D 。

a. 1245Hb. 4578Hc. 4512Hd. 7845H2.逻辑运算指令都是按A进行操作的,指令执行后只设置标志位,不保留结果的逻辑运算指令是H。

a. 位b. 字节c. 字d. BCD码e. ANDf. ORg. XORh. TEST3.和指令AND AL,55 AND 0F0H 等效的指令是,和MOV BX,0FH EQ 1111B等效的指令是。

a. AND AL,55Hb. AND AL,0F5Hc. AND AL,50Hd. AND AL,0F0He. MOV BX,0000Hf. MOV BX,0FHg. MOV BX,0FFHh. MOV BX,0FFFFH4.过程定义开始的伪指令是 C 。

宏定义结束的伪指令是G 。

a. SEGMENTb. MACROc. PROCd. ASSUMEe. ENDf. ENDSg. ENDMh. ENDP5.将数据37H定义为字节变量X1的语句是 A,数据37H定义为字变量X2的语句是 D 。

a. X1 DB 37b. X2 DB 37c. X1 DW 37Hd. X2 DW 37He. X1 DB 37H g. X2 DB 37H6.互换指令XCHG可以在两个寄存器之间互换数据,也可以在 A 与 C 之间互换数据。

a. 寄存器b. 立即数c. 存储单元d. 堆栈7.对程序流向的控制和转移,就是对执行指令地址的修改。

如在同一段内偏移,则修改 A ,如在两个段之间转移,则修改 C 。

a. IPb. CSc. CS和IPd. CS或IP1.8088/8086 CPU内部共有14个寄存器,其中有8个通用寄存器、2个变址寄存器、4个段寄存器。

2.8088/8086 CPU有7种数据寻址方式,其中采用寄存器寻址方式的指令执行速度最快。

汇编语言程序设计试卷

汇编语言程序设计试卷

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

汇编语言程序设计试题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

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

1.假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,OFEH,则存放字数据OFE52H的字地址是()A.7462HB.7463HC.7464HD.7465H2.下列寄存器组中,在访问存储器操作数地址时,可以提供偏移地址的是()A.BP、BX、SI、DIB.AX、BX、CX、DXC.SP、IPD.BX、SI、DI、DS3.当堆栈为空时,如SS=0805H,SP=40H,栈底字单元的物理地址是()A.08090HB.08089HC.0808EHD.08450H4.执行POP BP指令时,源操作数的物理地址表达式是()A.16*SS+SPB.16*SS+BPC.16*DS+BPD.16*CS+BP5.设ADRT=100H,不符合语法规则的语句是()A.MOV AX,ADRTB.MOV AX,[ADRT+SI]C.MOV [ADRT],AXD.MOV ADRT[SI],AX6.下面XCHG指令语句中,语法正确的是()A.XCHG AX,DSB.XCHG BL,[BX]C.XCHG AL,OFHD.XCHG[SI],[DI]7.设(AL)=63H(BL)=29H执行下面指令后()SUB AL,BLDASAX的内容是A.(AX)=0304HB.(AX)=0034C.(AX)=0034HD.(AX)=03048.设BX=1234H,DS=2000H,(21234H)=5678H,则指令“LEA SI,[BX]”执行后的结果是()A.SI=5678H B.SI=1234HC.SI=2000HD.SI=3234H9.设DF=0,SI=20H,CX=10,执行REP LODSW指令后,SI中的内容是()A.20HB.30HC.34HD.40H10.设AL=0A8H,CL=23H,执行乘法指令MUL CL后,标志位OF,CF的值分别是()A.OF=1,CF=1B.OF=1,CF=0C.OF=0,CF=1D.OF=0,CF=011.MOV BX,OFFFEHNEG BXNOT BX上述三条指令执行后,BX中的内容是()A.-1B.-2C.-3D.-412.设数据段有:DA1 DB XX ;是任一数据DA2 DB OFEH下列两条指令:MOV DL, DA1OR DL,DA2执行后,DL中的内容可能是()A.0FFH或0FEHB.只能是0FEHC.只能是0FFHD.只能是01H13.NUM1=200NUM2=0C8HMMOV AL,NUM1 XOR NUM2上述语句执行后AL中的值是()A.200B.0C8HC.0D.0FFH14. ORG 100HNUM EQU 8042HDA1 DB 56HMMOV BX,0FFSET DA1上述程序段执行后BX中的值是()A.56HB.100HC.101HD.102H15.设数据段中定义语句DA1 DB 12H,34HDA2 DW 12H,34H下面有语法错误..的语句是()A.BUF1 DW DA1B.MOV DA1+1,AXC.MOV BYTE PTR DA2+1,ALD.MOV WORD PTR DA1,AX16.在同一程序段中,定义下面伪指令,错误..的是()A.PORT1 EQU ALB.PORT2=ALC.PORT2=2A50H AND OFFHD.PORT3 EQU 2A50HPORT3 EQU 2A50H AND OFFH 17.X DB 20H DUP(0)Y DW ‘7A’,‘8B’MMOV CH,LENGTH YMOV CL, LENGTH X执行上述指令后,CX中的内容是()A.0120HB.2010HC.207AHD.7A20H18.执行SUB AX,[BP][DI]指令,取源操作数时,使用的物理地址表达式是()A.16*SS+BP+DIB.16*ES+BP+DIC.16*DS+BP+DID.16*CS+BP+DI19.BUFF单元开始,连续存放了十个字节数据,欲找出与AL中内容不同的数,并将不同数据的地址偏移量送ADR单元,应选用的指令序列是()A.REPZ CMPSBB.KEPNZ CMPSBJZ K1 JZ K1MOV ADR,DI MOV ADR,DI,K1:……K1:……C.REPZ SCASBD.REPNZ SCASBJZ K1 JNZ K1DEC DI DEC DIMOV ADR,DI MOV ADR,DIK1:……K1:……20. TEST V AR,55HJE ZER0ZER0:……上述程序段执行JE ZER0指令后能够产生分支的条件是()A.V AR=0B.V AR=55HC.V AR中第1,3,5,7位均为0D.V AR中第0,2,4,6位均为0二、填空题(本大题共5小题,每小题1分,共5分)21.逻辑地址由___________组成。

22.假设执行指令前BX=5678H,CL=8,指令ROL BX,CL执行后BX=___________。

23.每次进行串扫描指令SCAS时,要进行递增或递减修改的变址寄存器是___________。

24.在指令语句操作数项上,引用一个段名,就是获取段地址的___________数据。

25.V AR1 DD 10H DUP(?)语句实现留空___________个字节单元。

三、简答题(本大题共3小题,每小题2分,共6分)26.下面指令是错误吗,哪条有错?什么错误①MOV 34H,BL②XCHG DS,AX27.完成下列操作选用什么指令或指令序列①将2BC0H减去1A05H②将变量DAB1的段地址送AX。

28.设执行前SI=1000H,DS=2000H,存储单元(21000H)=1245H,下面二条指令分别执行后BX 中的值各是多少?①MOV BX,[SI]②LEA BX,[SI]四、程序分析题(本大题共7小题,每小题5分,共35分)29.MOV AX,7452HADD AL,AHDAAXCHG AH,ALSUB AL,AHDAS程序段运行后,AX=____________,CF=____________。

30.已知AX=7865H,BX=89AAHCLCADD AX,BXOR BX,AXRCR AX,1RCL BX,1程序执行后,AX=____________BX=____________CF=____________31.①AND AL,0FAHXOR AL,0FFH②XOR AL,0AFHOR AL,50H阅读上述指令,分别回答各指令序列完成什么功能?32.DA1 DB 1AH,2BH,3CH,4DH,5EH,6FHDA2 DB 6 DUP(0)LEA SI,DA1+5MOV BX,0FFSET DA2MOV CX,604HSTDLOP: LODSBROL AL,CLMOV [BX],ALINC BXDEC CHJNZ LOP①程序执行后DA2中各字节内容是什么?②程序中ROL AL,CL是否用ROR AL,CL指令替代,其功能不变。

33. DA1 DB‘ABCDE $ FGHI’DA2 DB $ -DA1 DUP(?)MCALL SUB1MSUB1 PROCMOV BX,0LOP:CMP BYTE PTR DA1[BX],‘$’JZ ARMOV AL,DA1[BX]MOV DA2 [BX],ALINC BXJMP LOPAR:RETSUB1 ENDP①上述子程序的功能是什么?②返回主程序时,BX=____________。

34.AR1 DB ‘ABCDEFGH’AR2 DB OMMOV AH,1INT 21H ;键盘输入AND AL,0FHDEC ALLEA BX,AR1XLAT AR1MOV AR2,AL①假设键盘输入数字4,则执行后(AR2)=____________;②执行后CF=____________。

35.BCD1 DB 46HMMOV AL,BCD1MOV CL,4SHR AL,CLSAL AL,1MOV CL,ALSAL AL,1SAL AL,1ADD AL,CLMOV CL,BCD1AND CL,0FHADD AL,CL上述程序段完成的功能是什么?程序段运行结束后AL=____________。

五、程序填空题(本大题共2小题,每小题6分,共12分)36.下面程序段是判AL和BL中的数据是否同号,若是,则把AL中的数据变负并送到AH 中,否则O→AH。

横线处填入适当指令(每处仅填一条指令)。

____________①JNS KMOV AH,0JMP END0K: ____________②MOV AH,ALEND0:……37.已知寄存器AX和BX分别存放有二个非压缩BCD码,下面程序段完成AX+BX→AX中,请在横线中各填一条指令(假设结果小于等于99)MOV CH,AHADD AL,BLAAA____________①ADC AL,BHAAA____________②MOV AL,CH六、编制程序题(本大题共3小题,共22分)38.限用三条指令实现将DA1和DA2二个字节存储单元的内容进行交换。

(5分)39.试编制一程序段,用串操作指令STOSB实现向DA数据区依次相间存放字母字符A,B,……J和数字字符0~9。

相间顺序是:A,0,B,1,C,2…,I,8,J,9。

(设DA数据区所在段已由ES指向)。

(5分)40.已知三个带符号的字节数据a,b,c存放在ADR开始的连续单元中,若a,b,c同时为正数则FLAG单元置0,若同时为负数,则FLAG单元置1,否则FLAG单元置全1,请编写完整源程序。

(12分)。

相关文档
最新文档