汇编语言程序设计试题
- 格式:doc
- 大小:49.50 KB
- 文档页数:7
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、与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分,共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)。
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分,共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.为在一连续的存储单元中,依次存放数据41H,42H,43H,44H,45H,46H,可选用的数据定义语句是(D)A.DB 41,42,43,44,45,46 B.DW 4142H,4344H,4546HC.DW ‘AB’,‘CD’,‘EF’D.DW ‘BA’,‘DC’,‘FE’2.DA2 DB‘AB’,‘CD’┇MOV AX,WORD PTR DA2+1上述语句执行后AX中的值是(D)A.‘AD’B.‘BC’C.‘DA’D.‘CB’3.下列数据定义语句中可实现留空20H个字节存储单元的是(D)A.DB 20 DUP(?) B.DW 20H DUP(?)C.DB 10H DUP(4 DUP(?)) D.DD 08H DUP(?)4.如某存储器分段时,表示偏移地址是17位二进制代码,那么一个段最多的存储单元数是(D)A.32K字节B.32K字C.64K字节D.64K字5.下列寄存器中用来指示堆栈中任意数据区的偏移地址的是(B)A.BX B.BPC.SI D.DI6.下列指令中有语法错误的是(C)A.PUSH AX B.PUSH [20H+SI+BX]C.POP CS D.PUSH CS7.执行PUSH BP指令时,目的操作数的物理地址表达式是(D)A.16*SS+BP B.16*DS+BPC.16*CS+IP D.16*SS+SP8.把BL中的数据输出到端口8CH中正确指令是(C)A.OUT 8CH,BL B.IN 8CH,BLC.MOV AL,BL D.MOV AL,BLOUT 8CH,AL IN 8CH,AL9.结果为零的条件转移指令,其测试条件是(A)A.ZF=1 B.ZF=0C.SF=l D.SF=010.下面程序段完成测试DA-BYTE字节单元中数是否为负数,若是则将全l送DH中,否则全0送DH中,那么程序段中方框里应填的语句是MOV CH,0MOV CH,0FFHZERO:MOV DH,CH(C)A.JNZ ZERO B.JS ZEROC.JZ ZERO D.JC ZERO11.汇编源程序时,出现语法错误的语句是(C)A.MOV [BX+SI],BX B.MOV CL,[BP+DI]C.MOV CS,AX D.MOV DS,AX12.设SP初值为3050H,执行指令PUSH BX后,SP的值是(B)A.304FH B.304EHC.3048H D.3049H13.串操作指令中,每次操作后使SI/DI为减量应设置(C)A.DF=0 B.TF=1C.DF=1 D.TF=014.设AL=57H,BL=24H,执行指令SUB AL,BL后,寄存器内容为(B)A.AL=57H,BL=24H B.AL=33H,BL=24HC.AL=57H,BL=33H D.AL=33H,BL=015. 当执行ADD AX ,BX 指令后,若AX的内容为4E52H 时,设置的奇偶标志位PF=0 ,下面的叙述正确的是( A)A. 表示结果中含 1 的个数是奇数B. 表示结果中含1 的个数是偶数C. 表示该数是奇数D. 表示结果中低8 位中含1 的个数是奇数16. 设物理地址(21000H)=20H, (21001H)=30H,(21002H)=40H 。
《汇编语言程序设计》必考试题及答案一、选择题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) 不允许单步⼆.不定项选择题,漏错多选不得分。
《汇编语言程序设计》习题一、选择题1. 机器数为10000000B, 它代表-127D,则它是()。
A. 补码B. 原码C. 反码D. 原码或反码2.已知V AR为字节变量,下面是关于①MOV BX, OFFSET V AR和②LEA BX, V AR 指令的说明,正确的是()。
A.指令①执行速度比指令②执行速度快B.指令①中OFFSET只能与简单的符号地址相连,不能与诸如V AR[SI]等复杂数相连。
指令②LEA没有这个限制C.指令①有错误,因为V AR为字节变量,而BX为字D.指令①与指令②的作用完全相同3.下列指令中正确的是( )。
A.MOV 100,CL B.MOV CL,100HC.MOV CL,1000 D.MOV CL,1004.设(BX)=8D16H,执行指令序列MOV CL,7 SAR BX,CL 后BX寄存器的内容是()。
A.011AH B.0FF1AH C.2D1AH D.0B00H 5.在程序运行过程中,确定下一条指令的物理地址的计算表达式是()。
A.CS*16+IP B.BX*16+DIC.SS*16+SP D.ES*16+SI6.提示下列指令序列执行后的正确结果是()。
MOV BX,OFFFCHMOV CL,2SAR BX,CLA.3FFFH B.0FFFH C.0FFFCH D.0FFF5H7.下列指令中不影响标志位的是()。
A.SUB AX,BX B.ROR AL,1C.JNC LABLE D.INT n8.将寄存器AX的内容取负的正确操作是()。
A.NEG AX B.CMP AX,0FFFHC.NOT AX D.CMP AX,AX9. 指令SCAS的寻址方式是()。
A源操作数为寄存器寻址,目的操作数为寄存器间接寻址B 源操作数为寄存器间接寻址,目的操作数为寄存器间接寻址C 源操作数为寄存器间接寻址,目的操作数为寄存器寻址D 源操作数为寄存器寻址,目的操作数为寄存器寻址10. TABLE为字变量,下面是关于指令①MOV AX,TABLE与指令②LEA AX,TABLE的说明,错误的是()。
高校计算机专业汇编语言程序设计练习题1. 程序题一:编写一个汇编程序,实现将前n个自然数的和存储在寄存器AX中。
要求通过键盘输入n的值,并将计算结果输出到屏幕上。
程序思路如下:- 读取键盘输入的n值,存储到内存变量n_value中。
- 使用循环将前n个自然数求和,计算结果存储到寄存器AX中。
- 将寄存器AX中的结果输出到屏幕上。
2. 程序题二:编写一个汇编程序,实现求一个正整数的二进制表示中1的个数。
要求通过键盘输入一个正整数,并将结果输出到屏幕上。
程序思路如下:- 读取键盘输入的正整数值,存储到内存变量num中。
- 使用循环和位运算的方式,统计num的二进制表示中1的个数。
- 将得到的1的个数结果输出到屏幕上。
3. 程序题三:编写一个汇编程序,实现对一个已经存储在内存中的字符串进行反转。
要求将反转后的字符串输出到屏幕上。
程序思路如下:- 将待反转的字符串存储到内存变量str中。
- 使用循环和栈操作的方式,对字符串进行反转。
- 将反转后的字符串输出到屏幕上。
4. 程序题四:编写一个汇编程序,实现对一个已经存储在内存中的数组进行排序。
要求将排序后的数组输出到屏幕上。
程序思路如下:- 将待排序的数组存储到内存变量array中。
- 使用循环和比较交换的方式,对数组进行排序。
- 将排序后的数组输出到屏幕上。
5. 程序题五:编写一个汇编程序,实现求一个已经存储在内存中的数组中的最大值。
要求将最大值输出到屏幕上。
程序思路如下:- 将待求最大值的数组存储到内存变量array中。
- 使用循环和比较的方式,找到数组中的最大值。
- 将最大值输出到屏幕上。
以上是五道高校计算机专业汇编语言程序设计的练习题,希望能够帮助你提升汇编语言编程的能力。
完成这些练习题可以加深对汇编语言程序设计的理解和熟练程度,同时提升解决实际问题的能力。
如果你能够自行尝试解答并编写相应的程序,将会获得更好的学习效果。
祝你在汇编语言程序设计的学习中取得进步!。
汇编语言程序设计试题一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题2分,共50分)1.CPU发出的访问存储器的地址是( A )A.物理地址B.偏移地址C.逻辑地址D.段地址2.使计算机执行某种操作的命令是( B )A.伪指令B.指令C.标号D.助记符3.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=(A)A. 1400HB. 77F8HC. 0000HD. 0FFFFH4.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。
目前,微机中普遍采用的是( C)码。
A. BCD码B.二进制码C.ASCII码D.十六进制码5.下列关于8086CPU的工作原理的描述错误的是__C___。
A.汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制。
B.CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。
C.任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令。
D.传送指令能够更改所有通用寄存器的内容。
6.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是(C)A.12CFBH B.12B6BH C.12C5BH D.12BFEH7. 16位结构的CPU 不一定具备的特性是(D)。
A. 运算器一次最多可以处理16位的数据B. 寄存器的最大宽度为16位C. 寄存器和运算器之间的通路为16位D. 地址总线为16根8. 下列指令的书写正确的是(C)。
A. push alB. mov cs:[0],ds:[10]C. pop siD. mov ds:[0],29.在DEBUG工具中,显示寄存器内容的命令是( D )。
A. GB. DC. TD. R10. 能够将ax中的内容送到内存0000:0200H处的指令序列是(D)。
A.mov ds,0mov bx,200hmov [bx],axB.mov ax,200hmov ds,axmov bx,0mov [bx],axC.mov ax,20hmov ds,axmov bx,0mov [bx],axD.mov bx,20hmov ds,bxmov bx,0mov [bx],ax11.若栈顶的物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为(C)。
A. 20098HB. 20102HC. 200FEHD. 20100H12.执行下列指令后AL寄存器中的值是(A)MOV AL, 0BFHOR AL, 0FCHA.0FFHB. 0ACHC. 0DCHD. 0BBH13. 已知(DS)=2000H,(BX)=1256H,(SI)=528FH,则执行指令JMP BX后,IP 寄存器的内容是(A)。
A. 1256HB. 2000HC. 3256HD. 528FH14.在程序执行过程中,IP寄存器中始终保存的是(B)A.上一条指令的首地址 B.下一条指令的首地址C.正在执行指令的首地址 D.需计算有效地址后才能确定地址15.8088/8086存储器分段,每个段不超过(D)A.64K个字 B.32k个字节C.1兆个字节 D.64k个字节16.关于伪指令相关描述错误的是(B)。
A.伪指令没有对应的机器码,只用来指导汇编过程的。
B.伪指令由编译器处理,在程序中可有可无。
C.编译器要通过执行伪指令才能对源程序进行相应的处理操作,完成编译工作。
D.伪指令是汇编语言源程序不可缺少的组成部分。
17.下列关于堆栈的说法,错误的是(D)A.以“先入后出”为原则。
B.栈区最高地址单元的前一个单元为栈底。
C.运行中SP寄存器动态跟踪栈顶位置。
D.压栈和弹出都是以字节为单位。
18.关于8086/8088微机系列,下列说法哪个是正确的(D)A.一个存储单元由16个二进制位组成,简称字。
B.当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C.在内存中,可以无限分配段,且段的大小不受限制。
D.段与段之间可以邻接,也可以重叠。
19.1KB的存储器有_B个存储单元?A.1000 B. 1024 C. 512 D. 25620. 下列程序中,出现逻辑错误的是( B)。
A. assume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcodeendB. assume cs:codecode segmentmov ax,2add ax,axcode endsendC. aume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcode endsendD. assume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcode ends21. 对于如下程序assume cs:codecode segmentstart:mov ax,codemov ds,axmov ax,0020hmov es,axmov bx,0s:mov al,[bx]mov es:[bx],alinc bxloop smov ax,4c00hint 21hcode endsend下列说法正确的是(C)。
A.指令mov ax,code改为mov ax,start对程序要实现的功能没有任何影响。
B.程序不能通过编译,因为在loop指令之前,没有对寄存器cx进行设定。
C.程序实现的功能是将程序的所有指令复制到内存中以0:200h为起始地址的一段内存空间中。
D.程序实现的功能是用内存中以0:200h为起始地址的一段内存空间中的数据将程序的所有指令覆盖。
22.在Intel8086环境下,下列说法合理的是(C)。
A.汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。
B.一个数据段命名为data,此标号代表这个数据段在内存中的起始地址。
C.如果载入的程序没有返回语句,那么当程序代码执行完毕,将继续读取后续内存空间存储的指令到CPU内部作为指令执行下去,直到遇到返回指令为止。
D.用DW定义进行的数据,只能够以字为单位访问。
23. 关于8086、8088微机系列,下列说法哪个是正确的(D)。
A)一个存储单元由16个二进制组成,简称字。
B)当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C)在内存空间中,可以无限分配段,且段得大小不受限制。
D)段与段之间可以邻接,也可以重叠。
24.生成EXE之后用Debug加载后,查看寄存器内容如下:ds=0c3e es=0c3e ss=0b4e cs=0b4f ip=0000程序的起始地址的段地址是(B)。
A. 0c3eB. 0c4eC. 0c4fD. 025. 在Intel8086环境下,对指令mov ax,[bx]描述错误的是(D)。
A.指令中,源操作数的段地址默认为ds中的内容B.指令中,源操作数的偏移地址为bx中的内容C.指令执行后,(al)=((ds)*16+(bx)),(ah)=((ds)*16+(bx)+1)D.指令执行后,((ds)*16+(bx))=(al),((ds)*16+(bx)+1)=(ah)二、填空题(每空2分,共30分)1.通常所说的计算机系统包括__硬件__和__软件____两大部分。
2. 8086CPU把1MB存储器分成若干逻辑段,段不能起始于任意地址,必须位于_______个字节的边界上。
每个段最大为_______字节,8086cpu中设置了4个寄存器用来存放逻辑段的段地址,它们是:_______、_______、______、_______。
3.若要源程序从标号START开始执行,源程序结束伪指令的格式为 ___END START_____。
4.8086的地址总线有20根,寻址范围为______1M_____字节。
5.汇编语言源程序需经过_____编译______程序汇编,____连接____程序连接才能生成可执行文件。
6.十进制数369转换成8位二进制数为01110001,转换成对应的十六进制数为__ _71H____。
7. mov cx,5s: mov ax,[bx]add bx,2loop s上面指令序列,当指令第一次执行到add bx,2时cx的值_5___。
三、阅读程序题(每题5分,共10分)1.已知21000h处字单元的内容为 BE00H,对于如下程序:(1) mov ax,2000h(2) mov ds,ax(3) mov bx,1000h(4) mov ax,[bx](5) inc bx(6) inc bx(7) mov [bx],ax(8) inc bx(9) inc bx(10) mov [bx],ax(11) inc bx(12) mov [bx],al(13) inc bx(14) mov [bx],al程序执行后,内存中字单元2000:1005中的内容为__000H___。
2. assume cs:codecode segmentstart: mov ax,3jmp s1s: mov bx,0mov ax,bxs1: mov cx,3s2: add ax,2loop s2s3: mov ax,4c00hint 21hcode endsend s上面代码执行到s3处的指令之前,ax的值是__6__。
3. mov dx,0mov ax,1001mov bx,100div bx以上四条指令执行完后,ax值是__1___。
四、完善程序题(每题5分,共10分)1.完善下列程序:实现一次用内存0:0--0:15单元中的数据改写程序中定义的数据。
assume cs:codesgcodesg segmentdw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hstart:mov ax,0mov ds,axmov bx,0mov cx,8S:mov ax,ds:[bx]Mov cs:[bx],axadd bx,2loop smov ax,4c00hint 21hcodesg endsend start2.完善下列程序:实现计算234与567的乘积。
assume cs:codecode segmentmov ax,0mov cx,234s:add 567loop smov ax,4c00hint 21hcode endsend。