四川大学汇编语言程序设计20152016期末试题(附答案)
汇编语言程序设计期末考试-试卷及参考答案
汇编语言程序设计期末考试-试卷及参考答案【汇编语言程序设计】期末考试-试卷及参考答案执行上述两条指令后,正确的结果是( 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寄存器中。
《汇编语言程序设计》期末复习题和答案.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 中。
汇编语言程序设计试题参考答案
汇编语言程序设计参考答案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对数据交换的控制,数据传送速度快,但这种方式电路结构复杂,硬件开销大。
汇编语言期末考试试题及答案
汇编语言期末考试试题及答案------------------------------------------作者------------------------------------------日期汇编语言模拟试题及答案一,单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题 分,共 分).指令☺ ∙☞✌∙❆∙☠☜属于参考答案为 ✌.段内转移直接寻址.段内转移间接寻址.段间转移直接寻址.段间转移间接寻址☯解析 略.下列叙述正确的是参考答案为 ✌.对两个无符号数进行比较采用 指令,对两个有符号数比较用 指令 .对两个无符号数进行比较采用 指令,对两个有符号数比较用 指令 .对无符号数条件转移采用☺✌☜☺☠指令,对有符号数条件转移用☺☝☜☺☠☹指令.对无符号数条件转移采用☺☝☜☺☠☹指令,对有符号数条件转移用☺✌☜☺☠指令☯解析 对于无符号数和有符号数的比较都采用 指令;指令是串比较指令;对两个无符号数的条件转移指令应是:☺✌☜、☺☠、☺ ☜、☺☠✌;对两个有符号数的条件转移指令应是:☺☝☜、☺☠☹、☺☹☜、☺☠☝。
.一个有 个字的数据区,它的起始地址为 ✌☟: ✌☟,请给出这个数据区最末一个字单元的物理地址是参考答案为 ✌. ☟. ☟. ☟. ☞☜☟☯解析 末字与首字相隔( - =) 个字,且每个字占用 个字节,因此末字单元的物理地址应为:首字单元的物理地址+( - ) 即∙✌☟☟+ ✌☟+( - ) = ☟。
.在下列指令的表示中,不正确的是参考答案为 ✌. ✞∙✌☹,☯✠✋.☺ ∙☟❆∙☠✋. ☜∙☯✠. ✞☹∙☹☯解析 当只有一个存储器操作数时,这个操作数的类型不明确,例如选项 中的☯✠,没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如☜∙✡❆☜∙❆∙☯✠∙或∙☜∙∙❆∙☯✠但是在题目的选项 中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
【汇编语言程序设计】期末考试-试卷及参考答案
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
(word版)汇编语言期末考试试题及答案
汇编语言模拟试题及答案一,单项选择题〔在每题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每题1分,共20分〕1.指令JMPFARPTRDONE 属于参考答案为:CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址[解析]略2.以下表达正确的选项是参考答案为:CA.对两个无符号数进行比拟采用CMP指令,对两个有符号数比拟用CMPS指令B.对两个无符号数进行比拟采用CMPS指令,对两个有符号数比拟用CMP指令C.对无符号数条件转移采用JAE/JNB 指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令[解析]对于无符号数和有符号数的比拟都采用CMP指令;CMPS指令是串比拟指令;对两个无符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个有符号数的条件转移指令应是:JGE、JNL、JLE、JNG。
3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:CA.12CSBHB.12B6BHC.12C59HD.12BFEH[解析]末字与首字相隔〔128-1=〕127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址+〔128-1〕×2即12ABH×10H+00ABH+〔128-1〕×2=12C59H。
4.在以下指令的表示中,不正确的选项是参考答案为:CA.MOVAL,[BX+SI]B.JMPSHORTDONIC.DEC[BX]D.MULCL[解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的[BX],没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DECBYTEPTR[BX] 或DECWORDPTR[BX]但是在题目的选项C中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
汇编语言期末考试试题及答案
汇编语言期末考试试题及答案汇编语言模拟试题及答案一,单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.指令JMP FAR PTR DONE属于参考答案为:CC.段间转移直接寻址2.下列叙述正确的是参考答案为:CC.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL 指令3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:C C.12C59H4.在下列指令的表示中,不正确的是参考答案为:CC.DEC [BX]5.在进行二重循环程序设计时,下列描述正确的是参考答案为:A A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内6.条件转移指令JNE的测试条件为参考答案为:AA.ZF=07.8086CPU在基址加变址的寻址方式中,变址寄存器可以为参考答案为:D D.SI或DI8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在()中。
参考答案为:AA.数据段中偏移量为3236H的字节9.执行如下程序:MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX)=参考答案为:CA.99B.100C.101D.10210.上题的程序执行后(AX)=参考答案为:BB.505011.对于下列程序段:AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用______指令完成同样的功能。
参考答案为:AA.REP MOVSB12.下面指令序列执行后完成的运算,正确的算术表达式应是MOV AL,BYTE PTR XSHL AL,1DEC ALMOV BYTE PTR Y,AL参考答案为:DD.y=x2-113.在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来。
汇编语言程序设计期末考试题,DOC
汇编语言程序设计期末考试题学院(系):学号:姓名:计分:一、项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共10分)1.CPU发出的访问存储器的地址是()A.物理地址B.偏移地址C.逻辑地址D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是()A.编译程序B.汇编程序C.解释程序D.目标程序3.DECBYTEPTR[BX]指令中的操作数的数据类型是()A.4.5.6.A.7.8.若A.9.()码。
10.A.二、1.在2.3.8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是________、________、________、________。
4.现有AX=2000H,BX=1200H,DS=3000H,DI=0002H,(31200H)=50H,(31201H)=02H,(31202H)=40H,请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位ZF、CF的值。
A.ADDAX,1200H;问AX=________H,ZF=________B.SUBAX,BX;问AX=________H,ZF=________C.MOVAX,[BX];问AX=________HCF=________D.NEGWORDPTR[1200H];问(31200H)=________HCF=________5.设DS=2200H,BX=1000H,SI=0100H,偏移量D=0A2B1H,试计算出下列各种寻址方式下的有效地址,填入括号中。
A.使用D的直接寻址()B.使用BX的寄存器间接寻址()C.使用BX和D的寄存器相对寻址()D.使用BX、SI和D的相对基址变址寻址()E.使用BX、SI的基址变址寻址()三、简答题(共20分)1.程序在数据段中定义的数组如下:(4分)ARRAY DB 'YESIS'DB 20┇DB 'DONOT'请指出下列指令是否正确?若不正确,错在哪里?(答案做在旁边)??INC2.如AX寄存3.MOVCL,LENGTHTAB34.子程序的说明文件中应包括哪几方面的内容?(5分)5、分别指出下列指令中源操作数的寻址方式:(5分,答案写在对应指令的右边)A.MOVSI,100立即寻址B.MOVCX,DATA[SI]寄存器相对寻址C.MOV[SI],AX寄存器寻址D.ADDAX,[BX][DI]基址变址寻址三、简答题(共20分)1.A.正确B.数据类型不匹配错C.前两条指令正确,第三条数据类型不匹配D.前两条正确,后两条不正确,在汇编过程中,OFFSET操作将得到变量的偏移值,但对相对基址变址寻址方式形成的值在汇编指令时还是未知的,所以第三条指令不正确。
四川大学汇编考试题及答案1教学提纲
四川大学汇编考试题及答案1四川大学期末考试试题(闭卷)(2006-200学年第2学期)课程号: ________ 课程名称:汇编语言程序设计(B 卷) ________ 任课教师: _______________ 适用专业年级:计算机科学与技术05级学号: ________________ 姓名: _______________要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分1.下面的数值表示中,和100相等的是哪一个( )2•如果(SF ) =30H,执行 PUSH BX 旨令后,(SP )=( ) (A ) 28H (B ) 2EH (C ) 32H(D ) 31H3.如果(AL ) =35H,执行AND AL , 0FFH 指令后,CF=( )(A ) 0(B ) 1(C ) 2(D )和执行AND AL ,0FFH 指令前的取值保持一致4.以下指令中,执行后要影响标志位的指令为( )(A )MOV AL ,BL(B ) SAHF (C ) NOT CL (A) B(B ) 100H(C ) 64H(D ) 64(D ) PUSHF5. 对于SAR指令的相关原理,正确的描述为( )(A)执行SAR指令后,目的操作数最高位补充0(B)该指令实质上与SHR指令没有区别(C)如果移位次数大于1,则移位次数必须预先存放在CL寄存器(D)该指令不影响CF标志位6•关于SUB指令对OF标志的影响,正确的描述为( )(A)当程序员把SUB指令的操作数看作无符号数时,SUB指令不影响OF标志(B)当程序员把SUB指令的操作数看作无符号数时,SUB指令要影响OF标志,但是程序员认为它此时没有意义(C)SUB指令有时会影响OF标志,但有时不会(D)程序员使用SUB指令时总是认为它所影响的OF标志是有意义的7. DEBUG中,T命令的功能为( )(A)显示当前系统时间(B)查看指定内存单元的内容(C)单步执行下一条指令(D)修改指定寄存器的内容8. DEBUG中,R命令的功能为( )(A)查看内存单元内容(B)查看或修改指定寄存器的内容(C)单步执行(D)连续执行9•条件转移指令的最大转移范围为 ( )(A)没有转移范围的限制(B) -128到127个字节(C) -3276到32767个字节(D) 0到255个字节10•如果(AL) =0DH,执行SUB AL 80H指令后,正确的结果为哪一个( )(A) (AL) =8DH, OF=1(B)(AL) =0DH, OF=011.如果(SP =80H 执行指令CALL FAR PTR P 后 (SP =( )(A) 80H(B ) 84H(C ) 7CH7EH12.如果数据段中一个内存单元对应的物理地址为2F724H (DS ) =2F00H 那么使用DS 段寄存 器指明该单元的段基值时,需要使用哪一个偏移量才能正确访问该单元( )(A) 0024H (B ) 0F724H(C ) 0724H(D )2724H13•如果(AL ) =B ,执行ROL AL 1指令后,正确的结果为( )(A) (AL ) = B (B )(AL ) = B (C )(AL ) = B(D )(AL ) = B14•以下指令中,没有使用基址寻址的指令是哪一个( )(A ) AND CL ,100H[BX] (B ) MOV [BP] BX (C ) SBB TAB1[BX] AH(D ) XOR AX 200H[BP]15.如果(AL ) =66H,执行如下程序片段后,正确的执行结果为( )STC OR AL ,1 ADC AL ,82H16•假设PR1是一个FAR 类型的子程序名称,那么CALL PR 指令执行的正确步骤为以下哪一个 ( )(A) 先将CS IP 的内容压栈,再按照PR1对应的逻辑地址修改CS IP,使程序流程转移至PR1 子程序入口(C )(AL ) =8DH, OF=0(D )(AL ) =0D1H OF=1(D )(A)(AL ) =0E9H CF=1(C )(AL ) =0EAH, CF=0 (B) (AL ) =0E9H CF=0(D )(AL ) =0EAH, CF=1(B)先按照PR1对应的逻辑地址修改CS IP的内容,使程序流程转移至PR1子程序入口,然后将CS IP的内容压栈,保存返回点(C)先将IP的内容压栈,再按照PR1对应的段内偏移量修改IP,使程序流程转移至PR1子程序入口(D)先将CS IP、FR的内容压栈,再按照PR1对应的逻辑地址修改CS IP,使程序流程转至PR1子程序入口17•如果(AL) =03H (BL) =05H执行如下程序片段后,正确的执行结果为以下哪一个( )SUB AL BLAAS(A) (AL) =0FEH CF=1 (B)(AL) =0F8H CF=1(C)(AL) =08H CF=1 (D)(AL) =08H CF=0 18•在8086/808汇编语言程序设计中,源程序中能够合法使用的内存单元地址是以下哪一种( )(A)逻辑地址(B)物理地址(C)段基址(D)位地址19. 如果(SI) =0088H (DS) =5570H对于物理地址为55788H勺内存字单元,其内容为0235H对于物理地址为5578AH勺内存字单元,其内容为0E60H那么执行指令LDS SI [SI]以后,正确的执行结果为( )(A )(DS) =5570H (SI) =0088H (B)(DS) =0235H (SI) =0E60H(C)(DS) =0E60H (SI) =0235H (D)(DS) =0088H (SI) =5570H20. 如果(BX) =0054H (SI) =0033H (DS) =0022H (SS =0030H 在指令ADD AL100H[BX][S中,其源操作数的EA为( )(A) 0187H (B) 12A7H (C) 1387H(D) 0087H、多项选择题(本大题共5小题,每小题2分,共10分)在每小题列出的五个备选项中有二个至五个是符合题目要求的,请将其代码填写在题后的括号内。
期末汇编语言试题及答案
期末汇编语言试题及答案(正文开始)第一节:多项选择题1. 汇编语言是一种_____。
A. 低级语言B. 高级语言C. 中级语言D. 汇编语言不属于编程语言范畴答案:A2. 汇编语言是一种_____。
A. 机器语言B. 人机交互语言C. 使用英文单词和符号的编程语言D. 汇编语言不属于编程语言范畴答案:C3. 在汇编语言中,用来表示无符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:A4. 汇编语言中,用来表示有符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:B5. 汇编语言中的寻址方式包括_____。
A. 直接寻址B. 寄存器寻址C. 间接寻址D. 所有选项都是正确的答案:D第二节:填空题1. 汇编语言的基本单元是_____。
答案:指令(instruction)2. 汇编语言中,用来表示寄存器的通用约定是_____。
答案:以字母E或R作为前缀(例如:EAX、RBX)3. 汇编语言中,关键字和指令通常是以_____开头的。
答案:小写字母4. AL寄存器是_____位的寄存器。
答案:85. 汇编语言中,用来表示内存地址的数据类型是_____。
答案:PTR第三节:简答题1. 简述汇编语言的优点和缺点。
答:汇编语言的优点包括:- 直接操作底层硬件,可以实现高度的性能优化。
- 对机器指令的控制更加精细,可以实现特定的功能。
- 内存占用小,执行效率高。
汇编语言的缺点包括:- 学习曲线陡峭,需要掌握底层硬件架构和指令集。
- 编写和维护成本高,可读性差。
- 可移植性差,需要针对不同硬件平台编写不同版本的汇编代码。
2. 简述汇编语言指令的执行过程。
答:汇编语言指令的执行过程包括以下几个步骤:1. 从内存中读取指令:处理器根据程序计数器(Program Counter,PC)的值,从内存中读取指令。
2. 解析指令:处理器将读取到的指令解析成可执行的操作码和操作数。
汇编语言期末考试试题及答案
汇编语言期末考试试题及答案汇编语言模拟试题及答案一,单项选择题 (在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20 分) 1.指令JMP FAR PTR DONE 属于参考答案为:CA .段内转移直接寻址B ?段内转移间接寻址C .段间转移直接寻址D ?段间转移间接寻址[解析]略2. 下列叙述正确的是参考答案为:CA ?对两个无符号数进行比较采用CMP 指令,对两个有符号数比较用CMPS 指令B ?对两个无符号数进行比较采用CMPS 指令,对两个有符号数比较用CMP 指令C .对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D .对无符号数条件转移采用JGE/JNL 指令,对有符号数条件转移用JAE/JNB 指令[解析]对于无符号数和有符号数的比较都采用CMP 指令;CMPS 指令是串比较指令;对两个无符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个有符号数的条件转移指令应是:JGE、JNL、JLE、JNG。
3. 一个有128个字的数据区,它的起始地址为12ABH:00ABH ,请给出这个数据区最末一个字单元的物理地址是参考答案为:CA . 12CSBHB . 12B6BHC. 12C59HD . 12BFEH[解析]末字与首字相隔(128- 1 =) 127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址+( 128 —1) >2即12ABHX 10H + OOABH +( 128 —1) X2 = 12C59H。
4. 在下列指令的表示中,不正确的是参考答案为:CA . MOV AL ,[BX+SI]B. JMP SHORT DONIC. DEC [BX]D . MUL CL[解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的[BX] ,没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DEC BYTE PTR [BX] 或DEC WORD PTR [BX] 但是在题目的选项C 中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
《汇编语言程序设计》期末考试-试卷及答案
《汇编语言程序设计》期末考试-试卷及答案一、 选择题(每题1分,共20分)1、下面存储器中属于辅助存储器的是:(、下面存储器中属于辅助存储器的是:(CDE CDE CDE)) A. RAM B. ROM C.C.磁盘磁盘 D.D.光盘光盘 E. 硬盘2、通常说计算机的内存为32M 32M、、64M 或128M 指的是:(指的是:(C C )A. RAM 的容量B. ROM 的容量C. RAM 和ROM 的容量D.硬盘的容量3、下面的说法正确的是:(、下面的说法正确的是:(AE AE AE))A. 存储器是计算机中存放程序和数据的记忆部件。
存储器是计算机中存放程序和数据的记忆部件。
B. 存储器中的信息被读出后即从存储器中消失。
存储器中的信息被读出后即从存储器中消失。
C. 存储器中如果已经存有数据,则不能再向其中写入新的数据。
D. 半导体存储器的存取速度比CD-ROM 的存取速度要慢。
的存取速度要慢。
E. 辅助存储器需要CPU 通过I/O 接口访问,因而速度较慢。
4、下面属于系统软件的有(、下面属于系统软件的有(A A )A. WINDOWS A. WINDOWSB. MASMC. Visual C++D. WORD 5. 5. 汇编语言的优点不包括汇编语言的优点不包括汇编语言的优点不包括__D_____D_____D___。
A A 直接有效地控制硬件直接有效地控制硬件直接有效地控制硬件B B B 生成的代码序列短小生成的代码序列短小生成的代码序列短小C C 运行速度快运行速度快运行速度快D D 编程容易6. 6. 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( AB) A 、AX AX,,BX BX,,CX CX,,DX B 、BX BX,,BP BP,,SI SI,,DI C 、SP SP,,IP IP,,BP BP,,DX D 、CS CS,,DS DS,,ES ES,,SS7. 7. 可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是(可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是( D D))。
四川大学汇编语言程序设计答案
2)该指令对 CF 标志的影响是有意义的
. 3)程序员将该指令的操作数解释为完整的无符号数(若为超过 16 位的长操作数运算,操作 w数可能不是完整的,其解释请参见第 5 章中的带进位加法指令,CF 对长补码运算的进位衔
接仍然有效)
wwOF(Overflow Flag)标志的含义是带符号数溢出标志,多数情况下用于标识最近的算术运 算(通常是加减运算)中,如果将操作数解释为补码,其运算结果有没有超出字节或字(与
课 后 答 案 网
4.IP 寄存器的功能是什么?(IP)在哪些情况下会被修改? 答:IP 是指令指针寄存器,其功能为提供 BIU 单元将要从内存读取的下一条指令的偏移量, 该寄存器固定与 CS 段寄存器搭配使用,形成下一条指令的完整物理地址。CPU 顺序执行内 存中的指令序列时,会不断修改(IP),使之指向下一条指令;除此之外,转移指令、循环 控制指令、子程序调用、返回指令、中断调用、返回指令都是通过修改(IP)来达到程序流 程转移的目的。
ww分析:8 位补码表示范围为-128~127,需 9 位补码才能表示-175,因此不能作补码运算
(5)-78-9
[-78]补=10110010
[-9] 补=11110111
10110010
+
11110111
1 10101001
溢出分析:负+负=负,运算正确,无溢出
(6)66+75
[66] 补=01000010
a 接定位,8086、8088CPU 的地址总线为 20 条,即物理地址为 20 位,寻址范围为 220=1M 字
节。由于 8086、8088CPU 内部的寄存器均为 16 位,无法直接表示 20 位的物理地址,因此
《汇编语言程序的设计》期末复习试题_
《汇编语言程序的设计》期末复习试题_一、填空题1.一个十进制数35.625其对应的二进制数为100011.101B 、十六进制数为23H2.将 8存放在一个字单元中 , 则该单元中二进制代码是 0008H3.计算机软件分为两个部分即系统软件和应用软件而汇编程序属于系统软件 , 汇编语言应用程序属于应用软件4.把汇编语言源程序翻译成计算机能够识别、执行的目标程序的软件称为汇编程序5.8086/8088 CPU内部一般用来存放数据的寄存器有 AX BX CX DX6.8086/8088 CPU内部用来存放段地址寄存器的有 CS DS SS ES7.逻辑地址由段地址与偏移地址组成8.一个语句的名字项可以是标号或变量 , 在程序中它们两个在书写形式上的主要区别是标号以冒号结尾而变量不以冒号结尾9. 在 PSW 中 , 用以记录当前运算结果特征信息的那些位称为状态标志位 , 一般是由 CPU自动设置。
10.存储器单元与物理地址的关系是一一对应 ,在一个逻辑段内 , 每个单元对应的段地址是相同的 ,而偏移地址是不同的11.在 I/O接口中 , 为每个可访问的寄存器分配的地址是端口地址12.用以指示当前堆栈栈顶的指针寄存器是 SP13.机器指令是一组规定计算机的操作类型及相关操作数的二进制代码14. 假设执行指令前 BX=5678H, CL=8,指令 ROL BX, CL 执行后BX 的内容是7856H15.一条指令的基本结构一般由操作码字段和操作数字段两个部分组成。
16.8086/8088 存储器地址分段时,每个段起始地址的特征是二进制表示的地址中低四位都为 017.所谓“寻址方式”是指在指令中用以说明操作数所在地址或位置的方法18.在指令中直接给出操作数的寻址方式称为立即数寻址19.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如, JL 指令另一个指令助记符是 JNGE20.8086/8088指令系统中, 用以描述(说明寄存器操作数的寻址方式是寄存器寻址方式21.设 MASK 为一个变量 , 在“ MOV AX,MASK[SI+BX]”指令中 , 源操作数的寻址方式是基址变址寻址方式22.CPU执行“ JMP BX”指令只改变 2P 内容 ,而不改变 CS 内容。
汇编期末试题及答案
汇编期末试题及答案一、选择题1. 汇编语言是一种 _____。
A. 高级编程语言B. 低级编程语言C. 自然语言D. 机器语言答案:B. 低级编程语言2. 汇编语言使用的是 _____。
A. 英文单词B. 二进制数C. 十进制数D. 十六进制数答案:D. 十六进制数3. 汇编语言的特点之一是 _____。
A. 语法严谨B. 代码简洁C. 易于理解和学习D. 可移植性强答案:A. 语法严谨4. 汇编语言最终需要翻译成 _____ 才能被计算机执行。
A. 高级编程语言B. 汇编器C. 操作系统D. 机器语言答案:D. 机器语言5. 汇编语言中,寄存器是 _____。
A. 存储数据的地方B. 存储指令的地方C. 进行运算的地方D. 执行输入输出的地方答案:A. 存储数据的地方二、填空题1. 汇编语言中,用于表示立即数的符号是 _____。
答案:#2. 用于表示寄存器的符号是 _____。
答案:$3. 汇编语言中,用于表示变量的符号是 _____。
答案:@4. 汇编指令 "mov ax, 5" 的作用是 _____。
答案:将立即数5存入寄存器ax中5. 汇编指令 "add bx, ax" 的作用是 _____。
答案:将寄存器bx的值与寄存器ax的值相加,并将结果存入寄存器bx中三、简答题1. 简述汇编语言相比高级编程语言的优缺点。
答:汇编语言相比高级编程语言的优点包括:- 可执行性强:汇编语言编写的程序可以直接在计算机上执行,无需额外的翻译和解释工作;- 控制权高:汇编语言可以直接操作硬件,对于特定应用领域的程序开发非常有优势;- 精确控制:汇编语言可以直接控制底层细节,如内存和寄存器,具有高度的灵活性和精准度。
汇编语言相比高级编程语言的缺点包括:- 可读性低:由于汇编语言的语法严谨,代码较为冗长,使得程序的可读性非常低;- 开发效率低:相比高级编程语言,汇编语言的开发效率较低,需要编写更多的代码才能完成相同的功能;- 可移植性差:汇编语言依赖于具体的硬件平台,不同的计算机体系结构可能需要不同的汇编语言程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川大学期末考试试题(闭卷)
(2015——2016学年第 1 学期)A卷
课程号:课序号:课程名称:任课教师:成绩:
一、单项选择题(本大题共20小题,每小题1分,共20分)提示:
评阅教师得分
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在
下面的表格中。
错选、多选或未选均无分。
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
1.以下寄存器中,哪一个不属于地址指针寄存器?( A )
(A)AX (B)BX (C)SI (D)DI
2.以下标志位中,哪一个不属于状态标志位?( C )
(A)CF (B)OF (C)IF (D)AF
3.以下寄存器中,哪一个用于指示堆栈的栈顶位置?( C )
(A)IP (B)SI (C)SP (D)BX
4.以下寄存器中,哪一个用于提供代码段的段基值?( C )
(A)SS (B)DS (C)CS (D)AX
5.以下指令中,不影响标志位的是哪一条?( D )
(A)INC (B)AND (C)SUB (D)XCHG
试卷编号:
二、多项选择题(本大题共5小题,每小题2分,共10分)提示:在
每小题列出的五个备选项中有二个至五个是符合题目要求的,请将其代码填写
在下表中。
错选、多选、少选或未选均无分。
1 2 3 4 5
1.以下哪些指令会影响CF 标志位?( CD )
(A )INC (B )DEC (C )AND (D )SUB (E )JC
2.以下指令中,哪些会访问堆栈段?( ABDE ) (A )CALL (B )RET (C )JMP (D )PUSH (E )POPF
3.假设(AL )=92H ,CF=1,执行指令ADC AL,88H 后,以下结果哪些是正确的? ( ACE )
(A )(AL)=1BH (B )(AL)=1AH (C )CF=1 (D )OF=0 (E )ZF=0
4.假设(AL )=86H ,执行指令SAR AL,1后,以下结果哪些是正确的?( ACDE ) (A )(AL)=0C3H (B )(AL)=0CH (C )CF=0 (D )OF=0 (E )PF=0
5.以下指令中,哪些使用了存储器寻址方式?( BCD )
(A )ADD AL,02H (B )SUB BL,[0104H] (C )INC BYTE PTR [BX] (D )AND AL,[SI] (E )XOR BL,CL
三、判断改错题(本大题共5小题,每小题4分,共20分)提示:下
列各语句可能有语法错误,判断各语句正确与否,对于错误的语句,需解释其错误的原因,对于正确的语句,若做出正确判断则给4分,对于错误的语句,做出正确判断给2分,做出正确的解释再给2分。
1. NEG 145 X NEG 指令不能跟立即数
2. JZ BX X
条件转移指令JZ 不能寄存器寻址,只能跟标号
评阅教师
得分
评阅教师 得分
3. OR BL,SI
对
4. MOV BYTE PTR [SI], BYTE PTR [BX] X
MOV指令的两个操作数不能都为内存单元
5. XCHG AL,05H X
XCHG指令的操作数不能有立即数
四、程序分析题(本大题共5小题,每小题5分,共25分)。
提示:
评阅教师得分
每小题给出了一个程序片段,请按各小题的要求分析程序片段的执行结果或
功能,并在空白处填写分析结果,分析正确则按照每空后标注的分值给分,
如果分析错误则该空不得分。
1. 有如下程序片段:
MOV AL,35H
MOV CL, 04H
SHL AL, CL
执行该程序片段后,(AL)的十六进制形式为 50H (3分),PF = 1 (1分),
ZF = 0 (1分)
2. 有如下程序片段:
MOV AL, 76H
AND AL, 0FH
OR AL, 80H
执行该程序片段后,(AL)的十六进制形式为 86H (3分),CF = 0 (1分),
OF = 0 (1分)
5. 有如下程序片段:
MOV AL, 92H
MOV AH, 03H
CMP AL, AH
JG L1
JMP L2
L1:MOV AL,0
JMP L3
L2: MOV AL,0FFH
L3:……
执行该程序片段后,(AL)的十六进制形式为 0FFH (3分),OF = 0 (1分),
SF = 1 (1分)
五、程序设计题(本大题共2小题,第1小题12分,第2小题13
评阅教师得分
分,共25分)。
提示:每小题给出了一个程序设计要求,请按照要求写出
源程序代码,如果源程序代码中出现语法错误或逻辑错误,则酌情扣分。
1.试编写一个子程序,统计指定8位补码数组中负数的个数,假设指定数组最大长度不超过255字节。
子程序的入口参数包括指定数组的偏移量、指定数组的长度,要求使用堆栈传递入口参数,传递顺序按上述顺序;子程序的出口参数为数组中负数的个数,要求使用AL寄存器传递出口参数。
(注:仅写出子程序相关源代码,不写调用该子程序的相关源代码)
GRA VES PROC FAR
PUSH BP
MOV BP,SP
PUSH DS
PUSH SI
PUSH CX
PUSH BX
PUSH AX
MOV BX,[BP+6]
MOV CX,[BP+8]
XOR AH,AH
百度文库- 让每个人平等地提升自我
10。