汇编语言程序设计试题参考答案
汇编语言程序设计题目以及答案
一、单项选择题(每小题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)。
专升本《汇编语言程序设计》_试卷_答案
专升本《汇编语⾔程序设计》_试卷_答案专升本《汇编语⾔程序设计》⼀、(共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]中,操作数使⽤的段寄存器是_________。
汇编语言程序设计参考答案
汇编语言程序设计参考答案一大题:填空题 (本大题共40空,每空1分,共40分)(1) 【1】___69H_____ 【2】____35H__ 【3】__0EF69H_【4】___2735H__ (2) 【1】____CX__【2】____AX_,__DX__【3】_CS___,_SS___,_ES__, DS【4】___IP_____【5】__SP___【6】__堆栈____(3) 【1】__35C7H____【2】______C76CH______ 【3】_____5612H_________【4】___6C4AH___________ (4) 【1】_____无__【2】_____7437H___【3】___587DH_____【4】____9318H____【5】____174FH____(5) 【1】 ADD AL ,0B5H 【2】_____1__【3】_____0_【4】____0___【5】_______1_______(6) 【1】__直接寻址___________【2】___基址变址寻址___________ (7) 【1】___寻址方式错___【2】__两个存储器操作数___【3】_____操作数类型不匹配___(8) 【1】__OUT 36H , AL___【2】_MOV DX ,1200H___【3】__IN AX ,DX (9) 【1】___显示存储器内容____【2】___写汇编指令_____ (10)【3】____执行一条指令___ 【4】___反汇编显示______ (11)二大题:选择题(共15小题,每题2分,共30分)三大题:综合题(每题10分,共30分)1.2.data segmentBuffer dw 1,2,3,4,5,6,7,8,9,10Sum dw ? Data ends Code segmentAssume cs:code,ds :data Start:Mov ax,data Mov ds,ax Mov ax,0 Mov bx,0 Mov cx,10Repit: add ax,buffer[bx] Add bx,2 Loop repit Mov sum ax Mov ah,4ch Int 21h Code ends End start3.Data segmentCONAME DB ‘SPACE EXPLORERS INC.’ PRLINE DB 20 DUP (?) Data ends Code segmentAssume cs:code,ds:data,es:data Start:Mov ax,data Mov ds,ax Mov es,ax Lea si,coname Lea di,prline CldMov cx,20 Rep movsb Mov ah,4ch Int 21h Code ends End start院系: 专业班级: 姓名: 学号:装 订 线。
《汇编语言程序设计》期末复习题和答案.doc
《汇编语言程序设计》期末复习题及答案一、选择(30题)1.下列是8位带符号二进制数的补码,其中最大的是(B )。
B、000000012.在一段汇编语言程序中多次调用另一段程序,用宏指令比用子程序实现(C )C、占内存空间大,但速度快3.数据定义为:EE DB 3, 4CC DW 3456H, 6789H执行指令“MOV CX, WORD PTR EE+1” 后,(CX) = ( B )B、5604H4.有如下指令序列:MOV AL, 95HMOV CL, 2SAR AL, CL上述指令序列执行后,AL的内容是(D )D、0E5H5.设A=186m B=273R,C=0BB E把这三个数看成无符号数,则它们之间的关系是(D )D、A<B=C6.用一条指令实现寄存器BX和SI的内容相加,并将结果送入AX中,这条指令是(D )D、LEA AX, [BX] [SI]7.要从端口1234H中读入8位数据,其指令应是(C )C、MOV DX, 1234HIN AL, DX8.循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是(B )B、CX尹。
且ZF=O9.8088/8086存储器分段,每个段不超过(D )D、64K个字节10.表示过程定义结束的伪指令是(A )A、ENDP11.用来存放下一条将要执行的指令代码段地址的段寄存器是(D )D、CS12.假定(SS) =1000H, (SP) =0100H, (AX) =5609H,执行指令PUSH AX 后,存放数据56H的物理地址是(D )D、100FFH13.执行“SUB AX, [BP] [DI] ”指令,取源操作数时,使用的物理地址表达式是(A )A、16*SS+BP+DI14.设AX中有一带符号数8520H,执行“SA R AX, 1”指令后,AX中的值是(C )C、0C290H15.设(BX) =1234H, (DS) =2000H, (21234H) =5678H,则指令“LEA SI, [BX] ” 执行后的结果是:(B )B、SI=1234H16.测试BL中的数是否为负数,若为负数则转移至AA1处,横线处的指令应为(A )A、JNE17.设DF=O, (SI) =20H, (CX) =10,执行“REP LODSW"指令后,SI 中的内容是(C )C、34H18.在程序执行过程中,IP寄存器中始终保存的是(B )B、下一条指令的首地址19.设SP初值为2000H,执行指令“POP AX”后,SP的值是(A )A、2002H20.若AX=3500H, CX=56B8H,当AND AX, CX 指令执行后,AX= ( A )A、1400H21.汇编源程序时,出现语法错误的语句是(A )A、MOV DS, 1200H22.将数据1234H存放在存储单元中的伪指令是(C )C、DATA1 DB 34H, 12H23.下面指令执行后,可能改变AL寄存器内容的指令是(D )D、AND AL, BL24.操作数地址存放在寄存器的寻址方式称为(B )B、寄存器间接寻址25.用户为了解决自己的问题,用汇编语言所编写的程序,称为(B )B、汇编语言程序26.用DOS功能调用时,子功能调用的编号应放在(C )C、AH27.提供串指令中目的操作数地址的是(C )C、ES: [DI]28.在寄存器间接寻址方式下,能够提供有效地址的寄存器有(B )B、BX, BP, SI, DI29.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是(A )A、2025 : 0F2A30.中断向量表中的每个中断向量所占内存空间为:(B )B、4个字节二、填空(30题)1.在用直接寻址方式寻址操作数时,系统对段地址的默认值在段寄存器DS 中。
汇编语言程序设计试卷及答案
汇编语言程序设计试卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题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分,共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、分支程序设计(1)设变量单元A、B、C存放有3个数,若三个数都不为0,则求三个数的和,存放在D 中;若有一个为0,则将其余两个也清零。
data segmentA DB 5B DB 2C DB 0D DB ?data endsstack segmentdb 100 dup(?)stack ends推荐下IT学长的淘宝店530213code segmentassume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,axmov ax,stackmov ss,axcmp A,0jz DEcmp B,0jz DEcmp C,0jz DEmov cl,Aadd cl,Badd cl,Cmov D,cljmp stopDE:mov A,0mov B,0mov C,0stop:mov ah,4CHint 21hcode ends推荐下IT学长的淘宝店530213end start(2)已知一个班的成绩放在偏移地址为DATAB开始的顺序单元中(这里为了方便我只写20个单元数据),统计大于或等于90分、80~89分、70~79分、60~69分、小于60分的人数,相应的放在DATA90、DATA80、DA TA70、DA TA60、DATAU数据单元中data SEGMENTARRAY DB 80,72,45,64,77,68,91,85,73,79 DB 63,65,78,94,32,88,61,70,64,81 DA TA90 DB 0DA TA80 DB 0DA TA70 DB 0DA TA60 DB 0DA TAU DB 0data ends推荐下IT学长的淘宝店530213stack segmentdb 100 dup(?)stack endscode segmentassume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,axmov ax,stackmov ss,axlea bx,ARRAYmov cx,20LOP:mov al,[bx]cmp al,90jb L80inc DATA90jmp LL80:cmp al,80jb L70inc DATA80jmp LL70:cmp al,70jb L60inc DATA70jmp LL60:cmp al,60jb LNinc DATA60jmp LLN:inc DATAUloop LOPcode endsend start推荐下IT学长的淘宝店5302132、子程序设计求N的阶乘;当结果超过255时,乘法请使用字和字相乘,而本程序只是实现字节和字节相乘,所以如果结果大于255,请相应调整乘法指令data segmentN db 5 ;存放N的值RES dw ? ;存放N阶乘的结果data endsstack segmentdb 100 dup(?)stack endscode segmentassume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,axmov ax,stackmov ss,axmov si,offset RES ;将存放结果的地址赋给simov ah,0mov al,N ;将N的值赋给axcall FAC ;调用子程序FAC求N阶乘mov [si],ax ;将N阶乘的最后结果放到RES,查看vars中的RES值验证结果mov AH,4CHint 21H推荐下IT学长的淘宝店530213FAC PROCcmp ax,0jnz I1 ;结果不是0,递归mov ax,1 ;递归终止条件,令0!=1jmp stop ;跳出递归I1:push axcall FAC ;I1是递归,每次条件弱化I2:pop cxmul cl ;I2是递归返回后的处理stop:retFAC ENDPcode endsend start3、循环程序设计(从小到大冒泡排序)data segmentARRAY DW 20H,46H,5DH,13H,78H,3FH COUNT EQU $-ARRAYN EQU COUNT/2data ends推荐下IT学长的淘宝店530213code segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov cx,N-1lop1:mov di,cxmov bx,0mov dl,0lop2:mov ax,ARRAY[BX]cmp ax,ARRAY[BX+2]jle lop3xchg ax,ARRAY[BX+2]mov ARRAY[BX],axmov dl,01hlop3:add bx,2loop lop2mov cx,didec cxjz stopand dl,dljnz lop1stop:mov ah,4chint 21hcode endsend start4、输入输出(1)输出‘Hello World’data segmentHW db 'Hello World!','$'data endsstack segmentdb 100 dup(?)stack ends推荐下IT学长的淘宝店530213code segmentassume cs:code,ds:data,ss:stack start:mov ax,datamov ds,axmov ax,stackmov ss,axmov dx,offset HWmov ah,09hint 21hmov ah,4chint 21hcode endsend start(2)回文data segmentHW db 'Hello World!','$'N EQU $-HW-1data endsstack segmentdb 100 dup(?)stack ends推荐下IT学长的淘宝店530213code segmentassume cs:code,ds:data,ss:stack start:mov ax,datamov ds,axmov ax,stackmov ss,axmov bx,0mov di,N-1mov cx,Nshr cx,1lop:mov al,HW[bx]xchg al,HW[di]mov HW[bx],alinc bxdec diloop lopmov dx,offset HWmov ah,09hint 21hmov ah,4chint 21hcode endsend start5、试编写一个汇编语言程序求出首地址ARRAY的字节数组中最小的偶数,并把它存放在AX寄存器中。
《汇编语言程序设计》课程知识 复习 学习材料 试题与参考答案
《汇编语言程序设计》课程知识复习学习材料试题与参考答案一、单选题1.为了使MOV AX,VAR指令执行后,AX寄存器中的内容为4142H,下面哪一条数据定义会产生不正确的结果?(C)A.VAR DW 4142HB.VAR DW 16706C.VAR DB 42H,41HD.VAR DW ‘AB’2.关于8086/8088微机系列,下列说法哪个是正确的(D)A.一个存储单元由16个二进制位组成,简称字。
B.当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C.在内存中,可以无限分配段,且段的大小不受限制。
D.段与段之间可以邻接,也可以重叠。
3.宏指令库以(C)格式存放在磁盘上。
A.可执行代码B.目标代码C.源代码4.计算机处理问题中会碰到大量的字符.符号,对此必须采用统一的二进制编码。
目前,微机中普遍采用的是( D)码。
A.BCD码B.二进制码C.十六进制码D.ASCII码5.运算器能够完成(C)运算。
A.算术运算B.逻辑运算C.算术运算和逻辑运算D.加减运算6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)A.无符号十进制数136B.带符号十进制数-120C.压缩型BCD十进制数88D.8位二进制数-8的补码表示7.用MOV指令将十进制数89以非压缩BCD码格式送入AX,可使用的指令是(B )A.MOV AX,89B.MOV AX,0809HC.MOV AX,89HD.MOV AX,08098.在执行下列指令时,需要使用段寄存器DS的指令是(D)A.STOSWB.ADD AL,CLC.NEG BXD.INC DA[BX]9.假设AL=28H,执行ROL AL,1指令之后的情况是(D ) P125A.AL=14H, CF=1B.AL=50H, CF=1C.AL=14H, CF=0D.AL=50H, CF=010.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是(D )A.AX=0032HB.AX=00E0HC.AX=03E0HD.AX=0FFE0H11.JMP SI的目标地址偏移量为(A)。
汇编语言程序设计复习(附答案完整版)
一、选择1.下面指令执行后,改变AL寄存器内容的指令是( D )。
A.TEST AL,02HB.OR AL,ALC.CMP AL,BLD.AND AL,BL2.对寄存器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,13.设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( A )A.85B92HB.86192HC.BB690HD.12169H4.指令JMP FAR PTR DONE属于 CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址5.将DX的内容除以2,正确的指令是 CA.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,16.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D )。
A.CMPB.SUBC.ANDD.MOV7.汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。
A.名字项B.操作项C.操作数项D.注释项8.假设执行ADD指令后AX=006EH,再执行AAA指令,AX中的值是( B )A. 14HB. 0104HC. 74HD. 04H9.用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是( D )A. MOV AX,89B. MOV AX,0809C. MOV AX,89HD. MOV AX,0809H10.下列语句中能与“DA1 DB 32H,34H”语句等效的是( A )A. MOV DA1,32HB. MOV DA1,32C. MOV WORD PTR DA1,3234HD. MOV WORD PTR DA1,‘24’MOV DA1+1,34H MOV DA1+1,3411.使用DOS功能调用时,子程序的编号应放在寄存器中( A )A. AHB. ALC. AXD. 任意指定12.下列语句中能实现留空8个字节单元的语句是( D )A. DA1 DT ?B.DA2 DW ?,?C. DA3 DD ?D.DA4 DQ ?13.指令JMP FAR PTR DONE属于CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址14.下列叙述不正确的是BA. 在不改变堆栈段寄存器的情况下,堆栈大小为64KBB. 紧跟设置堆栈段寄存器指令可以是设置堆栈指针以外的任何指令C. 中断服务程序的返回地址在堆栈中D. 堆栈中数据存放的特点是先进后出15.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是CA.12CSBH B.12B6BH C.12C59H D.12BFEH16.在下列指令的表示中,不正确的是CA.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL17.在进行二重循环程序设计时,下列描述正确的是AA.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内18.条件转移指令JNE的测试条件为AA.ZF=0 B.CF=0 C.ZF=1 D.CF=119.将DX的内容除以2,正确的指令是CA.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,120.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在(A )中。
《汇编语言》试题(A4)及参考答案
《汇编语言》试题(A4)及参考答案work Information Technology Company.2020YEAR专业级,学生姓名: 学号:2专业级,学生姓名: 学号: (3)考试科目:汇编语言程序设计4专业级,学生姓名: 学号: (5)考试科目:汇编语言程序设计6专业级,学生姓名: 学号: (7)考试科目:汇编语言程序设计8汇编语言试题(A)参考答案一:选择题(每题2分)1.B2.B3.B4.C5.C6.C7.B8.C9.A10.C二:填空题(每题2分)1. 0,5,52.55H3.04034.随机数5..ASM6.200FEH7.10108.169..OBJ10.00H三:简答题(每题5分)1.(1)用DOS 21H中断调用的功能调用4CH在用户程序结束后插入下面语句 MOV AH,4CH INT 21H (2)用BIOS中断调用20H 在用户程序结束后插入:INT 20H 2. FAR;段间调用。
NEAR;段内调用。
3.(1)无符号数乘2:SHL AX,1;RCL DX,1无符号数除2:SHR DX,1;RCR AX,1(2)有符号数乘2:SHL AX,1;RCL DX,1有符号数除2:SAR DX,1;RCR AX,14.MOV BX,OFFSET ADDNUMADD [BX]MOV AL,DS:[BX]5.(1)1200H(2)4C2AH(3)4C2AH(4)65B7H6.AX为地址[1200H]所指内容,AX 为1200H。
10四:编程题( 2题共30分)1.(10分)MOV AX,2E00HMOV DS,AXMOV BX,[0100H]MOV AX,[0100H+2]MOV DS,AXMOV AX,[BX]2.(20分)STACK SEGMENT PARA STACK ‘stack’ (5分)DB 64 DUP(0)STACK ENDSDATA SEGMENT (5分)STRING DB‘……$’RESULT DB 26 DUP(0)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA (5分) MAIN PROC FARSTART: MOV DX,DATAMOV DS,DXMOV CX,0FFH;255MOV AH,0MOV SI,0NEXT: MOV AL,STRING[SI] (5分)SUB AL,61HMOV DI,AXINC RESULT[DI]INC SILOOP NEXTMOV AH,4CHINT 21HMAIN ENDPCODE ENDSEND START汇编语言试题(A)评分标准和评分细则一:选择题(每题2分)1.B2.B3.B4.C5.C6.C7.B8.C9.A10.C二:填空题(每题2分)1. 0,5,52.55H3.04034.随机数5..ASM6.200FEH7.10108.169..OBJ10.00H三:简答题(每题5分)1.(1)用DOS 21H中断调用的功能调用4CH在用户程序结束后插入下面语句 MOV AH,4CH INT 21H (2)用BIOS中断调用20H 在用户程序结束后插入:INT 20H2. FAR;段间调用。
《汇编语言程序设计》必考试题及答案
汇编语言程序设计试题及答案一.名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。
1.寄存器:计算机系统内,位于CPU内部的存储单元,CPU访问此类存储单元不需要使用总线。
2.物理地址:CPU通过地址总线向外发送的20位地址,在访问内存单元前,CPU必须先将CPU内部的逻辑地址转换为物理地址。
3.段基值:逻辑地址的一个组成部分,用于指示一个段在内存中的起始地址。
4.寻址方式:指令获取操作数的方式。
5.补码:计算机系统内部用于表示带符号数的一种编码,正整数的补码为其真值本身,负整数的补码为其真值变反加1的结果。
二.计算题(本大题共5小题,每小题4分,共20分)试按照各小题的要求给出计算结果。
1.将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?答案:二进制为 01100100B,十六进制为64H2.假设(DS)=0C00H,(BX)=0210H,对于指令MOV DS:100H[BX],AL,其目的操作数的物理地址为多少?答案:EA = (BX)+0100H = 0310H,物理地址 = (DS)*16 + EA = 0C000H + 0310H = 0C310H3.假设(BX)=0100H,(SI)=0020H,对于指令ADD DL,[BX][SI],其源操作数的偏移量为多少?答案:EA = (BX)+(SI)+ 0 = 0120H4.假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=?答案:每执行一条PUSH指令,(SP)被减2,因此执行5条PUSH指令后,(SP)=0060H – 5*2 =0060H -000AH = 0056H5.对于一个十进制数– 80,其二进制补码表示形式为多少?答案:首先求得二进制真值为– 01010000B,负数补码为变反加1的结果,即 10110000B三.排错题(本大题共4小题,每小题5分,共20分)每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因,判断正确给2分,分析正确给3分,判断错误不给分。
汇编语言程序设计试题和答案
《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每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) 不允许单步二.不定项选择题,漏错多选不得分。
汇编语言程序设计试题及答案
《汇编语言程序设计》试题专业姓名成绩一、单项选择题(每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.用来存放下一条将要执行的指令地址的寄存器是(B)A.SP B.IP C.BP D.CS2.要使串处理从低地址向高地址进行,应把标志位置为(D)A.IF=1B.TF=0C.DF=1D.DF=03.使状态标志位CF清零的错误指令是(C)A.OR AX,AX B.SUB AX,AXC.MOV CF,0D.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,1B.SHL BL,1C.SAR BL,1D.RCR BL,18.执行PUSH AX指令的正确步骤是(A)A.1.SP←SP-1,(SP)←AH B.1.(SP)←AH,SP←SP-12.SP←SP-1,(SP)←AL2.(SP)←AL,SP←SP-1C.1.SP←SP+1,(SP)←AH D.1.(SP)←AH,SP←SP+12.SP←SP+1,(SP)←AL2.(SP)←AL,SP←SP+19.CF=1时转移到目标地址的条件转移指令是(B)A.JNC B.JC C.JZ D.JS10.在执行NEG指令时,对标志位CF有影响,其影响的规则是(C)A.对正数求补时,CF=0B.对负数求补时,CF=0C.对非零数求补时,CF=1D.对零求补时,CF=111.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是(A)A.目的操作数最高位为0B.目的操作数最高位为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.0B4H B.80H C.34H D.016.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为(A )A.立即、直接、间接B.直接、间接、立即C.直接、立即、间接D.不一定17.语句DA1DB 2DUP(3,5,7)汇编后,该语句可等同于的语句是(D )A.DA1DB 3,5,7B.DA1DB 2,3,5,7C.DA1DB 3,5,7,2D.DA1DB 3,5,7,3,5,718.MOV AL,80HMOV CL,2SAR AL,CL上述指令序列执行后,结果是(D )A.AL=40H B.AL=20HC.AL=0C0H D.AL=0E0H19.下面是实现将AL 内容加1的压缩型BCD 码加法程序段,其中正确的指令序列是(A )A.INC AL B.ADD AL,1DAA DASC.ADD AL,1D.STCDAA AAA20.现有数据存储如图所示:30100H 30101H 30102H 30103H 设AL=01H,BX=0100H,DS=3000H 执行换码指令XLAT 后正确的结果是(B )A.AL=20H B.AL=38HC.AL=00H D.AL=41H21.若定义DAT DW 'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是(B )A.0041H B.4100H 20H38H41H55HC.xx41H D.41xxH[注]选项C.和D.中的XX表示任意数据。
《汇编语言程序设计》必考试题及答案
《汇编语言程序设计》必考试题及答案一、选择题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.2.答:字节单元:(30022H) = AB H,(30024H) = EF H字单元:(30021H) = AB34 H,(30022H) = CDAB H。
3.答:(1)MOV BX, OFFSET BLOCK + 0AHMOV DX, [BX](2)MOV BX, 0AHMOV DX, BLOCK[BX](3)MOV BX, OFFSET BLOCKMOV SI, 0AHMOV DX, [BX][SI]4.答:BYTE_VAR 42 59 54 45 0C EE 00 ?? - 01 02 01 02 ?? 00 ?? 0102 01 02 ?? 00 ?? 01 02 - 01 02 ??WORD_VAR 00 00 01 00 02 00 00 00 - 01 00 02 00 00 00 01 0002 00 00 00 01 00 02 00 - 00 00 01 00 02 00 ?? ??FB FF 59 42 45 54 56 02 -5.答:宏展开:2 DATA0 DW ?2 DATA1 DW ?6.答:可以用来指示存储器地址的寄存器有BX、SP、BP、DI、SI、IP、CS、DS、7.答:该程序的第一个字的物理地址是0AAA40H。
8.答:(1) 064DH(2) 0691H(3) 05ECH9.答:(1)MOV AX, [ BX+0CH ]MOV ZERO, AX(2)MOV AX, ARRAY[BX]MOV ZERO, AX10答:DATASG SEGMENT AT 0E000HWORD_ARRAY LABEL WORDBYTE_ARRAY DB 100 DUP (?)DATASG ENDSSTACKSG SEGMENT PARA STACK 'STACK'DW 32 DUP (?)TOS LABEL WORDSTACKSG ENDSCODESG SEGMENTORG 1000HMAIN PROC FARASSUME CS:CODESG, DS:DATASG, ES:DATASG, SS:STACKSG START:MOV AX, STACKSGMOV SS, AXMOV SP, OFFSET TOSPUSH DSSUB AX, AXPUSH AXMOV AX, DATASGMOV DS, AXMOV ES, AX……RETMAIN ENDPCODESG ENDSEND START11.答: CLRB MACRO N, ARRAYCLDMOV CX, NMOV AL, 20HLEA DI, ARRAYREP STOSBENDM12.答:(1)AX、BX、CX、DX、AH、AL、BH、BL、CH、CL、DH、DL、13.答:唯一正确的是D。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇编语言程序设计参考答案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对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。
20. 简述中断技术的优点。
①CPU与外设可并行操作。
②可对实时信息进行采集、处理和控制。
③可对计算机出现的故障进行随机处理。
四、计算与分析(本大题共3小题,每小题5分,共15分)21. 请将(158.625)10转为二进制。
结果:(10011110.101)222. 若一个程序段开始执行前,(CS)=33A0H,(IP)=0130H,则该程序段启动执行指令的实际地址PA是多少?PA=(CS)×10H+(IP)=33A0H×10H+0130H=33B30H23. 有两个16位的字31DAH和5E7FH,它们在8086系统存储器中的地址分别为00130H和00134H,试画出它们的存储示意图。
五、编程题(本大题共3小题,共25分)24. 给定如下数据段,请指出该程序段完成的功能及运算结果。
(5分)MOV AX , 0MOV BX , 1MOV CX , 5LP: ADD AX , BXADD BX , 2LOOP LPHLT⑴该程序完成的主要功能是1+3+5+7+9 。
⑵程序运行后,(AX)= 0019H ;(BX)= 000BH ;(CX)= 0000H;. 25. 已知在内存中有1B单元的X,存有带符号数据,请设计程序计算出它的绝对值后,放入RESULT单元中。
(10分)DA TA SEGMENTX DB -23RESULT DB ?DA TA ENDSCODE SEGMENTASSUME DS:DATA , CS:CODESTART: MOV AX , DATAMOV DS , AXMOV AL , XTEST AL , 80HJZ NEXTNEG ALNEXT: MOV RESULT , ALMOV AH , 4CHINT 21HCODE ENDSEND START26. 编制程序完成1~50之间的自然数中的偶数累加和,结果送到RESULT单元中。
(10分)DATA SEGMENTRESULT DW ?CN EQU 25DATA ENDSCODE SEGMENTASSUME DS:DATA , CS:CODESTART MOV AX , DATAMOV DS , AXMOV AX , 0MOV CX , CNMOV BX , 2NEXT: ADD AX , BXADD BX , 2LOOP NEXTMOV RESULT , AXMOV AH , 4CHINT 21HCODE: ENDSEND STARTB卷一、单项选择题(本大题共8小题,每小题2分,共16分)1.B2.B3.C4.A5.C6.C7.A8.A9.D 10.B二、名词解释(本大题共5小题,每小题4分,共20分)11.机器指令:指发送给CPU的命令,每条指令对应一种特定的操作。
12.寻址方式:就是寻找操作数或操作数地址的方式,根据寻址方式可方便地访问各类操作数。
13.端口:指I/O接口电路中供CPU直接存取访问的那些寄存器或某些特定电路。
一个I/O接口总要包括数据、命令、状态和方式等端口。
14.中断源:指能引起中断的外部设备或内部原因。
15.汇编程序:是将汇编语言源程序翻译成机器能够识别和执行的目标程序的一种系统软件。
三、简答题(本大题共4小题,每小题5分,共20分)16.微处理器的基本功能有哪些??微处理器具有以下4个方面的基本功能:①指令控制:即程序的顺序控制。
②操作控制:将指令产生的一系列控制信号分别送往相应的部件,完成规定的工作。
③时间控制:主要包括时序控制和总线控制。
④数据加工:对数据或信息的各种处理功能。
17.什么是逻辑地址?他由哪两部分组成?计算机存储器中给每个逻辑段编址的地址称逻辑地址。
逻辑地址是在程序中使用的地址,他由段地址和偏移地址两部分构成。
18. 简述中断处理的四个过程是什么??①中断请求;②中断响应;③中断服务;④中断返回;19. 汇编语言源程序的基本结构是什么?一般情况下汇编语言源程序应该由以下3个逻辑段组成:①数据段:用来在内存中建立一个适当容量的工作区,以存放常数,变量等程序需要对其进行操作的数据;②堆栈段:用来在内存中建立一个适当容量的堆栈区,以便在中断、子程序调用时使用;③代码段:包括了许多以符号表示的指令,其内容就是程序需要执行的具体操作。
20. 简述输入/输出接口的主要功能。
输入/输出接口一般具有以下基本功能:①数据的寄存和缓冲功能;②信号电平转换功能;③信息格式转换;④设备选择功能;⑤对外设的控制和检测功能;⑥产生中断请求及DMA请求功能;⑦可编程功能;四、计算与分析(本大题共3小题,每小题5分,共15分)21. 请将(1001.11001)2转为十进制。
结果:(9.78125)1022. 给定指令MOV AX , [BX+SI];寄存器内容为(DS)=1200H,(BX)=0100H,(SI)=0050H,计算操作并分析指令的执行情况。
PA=(DS)×10H+(BX)+(SI)=1200H×10H+0100H+0050H=12150H23. 有两个16位的字31DAH和5E7FH,它们在8086系统存储器中的地址分别为00130H和00134H,试画出它们的存储示意图。
五、编程题(本大题共3小题,共25分)24. 给定如下数据段,请指出该程序段完成的功能及运算结果。
(5分)MOV AX , 0MOV BX , 1MOV CX , 5LP: ADD AX , BXADD BX , 2LOOP LPHLT⑴该程序完成的主要功能是1+3+5+7+9 。
⑵程序运行后,(AX)= 0019H ;(BX)= 000BH ;(CX)= 0000H;. 25. 编制程序实现求S=( X2 + Y2 ) / 2的值,并将结果放入RESULT单元中。
(10分)DA TA SEGMENTX DB 15Y DB 34RESULT DW ?DA TA ENDSCODE SEGMENTASSUME DS:DATA , CS:CODESTART: MOV AX , DATAMOV DS , AXMUL XMOV BX , AXMOV AX , YMUL YADD AX , BXSHR AX , 1MOV RESULT , AXMOV AH , 4CHINT 21HCODE ENDSEND START26. 编制程序完成1~50之间的自然数中的奇数累加和,结果送到RESULT单元中。
(10分)DATA SEGMENTRESULT DW ?CN EQU 25DATA ENDSCODE SEGMENTASSUME DS:DATA , CS:CODESTART MOV AX , DATAMOV DS , AXMOV AX , 0MOV CX , CNMOV BX , 1NEXT: ADD AX , BXADD BX , 2LOOP NEXTMOV RESULT , AXMOV AH , 4CHINT 21HCODE: ENDSEND START。