微机原理第三章练习题及解.

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

微机原理第三章练习题及解
一:单项选择题
●指令MOV AX,[BX] 中,源操作数的缺省段是( A 。

A:DS B:ES C:SS D:CS
●指令PUSH [BX] 中,目的操作数的段寄存器是( C 。

A:DS B:ES C:SS D:CS
●指令MOVSB 中,目的块的段寄存器是( B 。

A:DS B:ES C:SS D:CS
●下列指令中,不正确的指令是( D 。

A:MOV AX,BX B:MOV AX,[BX]
C:MOV AX,CX D:MOV AX,[CX]
●下列指令中, 不正确的指令是( D 。

A:MOV AL,BL B:MOV AL,[BX]
C:MOV AL,CL D:MOV AL,[BL]
●下列指令中,不正确的指令是( D 。

A:MOV [BX+SI],AX B:MOV AX,[BX + SI]
C:MOV AX,SI D:MOV AX,[BX + CX]
●若要使寄存器AL中的高4 位不变,低4 位0,使用指令( B 。

A:AND AL,0FH B:AND AL,0F0H
C:OR AL,0FH D:OR AL,0F0H
●若要使寄存器AL中的高4 位不变,低4 位1,使用指令( C 。

A:AND AL,0FH B:AND AL,0F0H
C:OR AL,0FH D:OR AL,0F0H
●若要使寄存器AL中的高4 位为0,低4 位不变,使用指令( A 。

A:AND AL,0FH B:AND AL,0F0H
C:OR AL,0FH D:OR AL,0F0H
●若要使寄存器AL中的高4 位为1,低4 位不变,使用指令( D 。

A:AND AL,0FH B:AND AL,0F0H
C:OR AL,0FH D:OR AL,0F0H
●条件转移指令JNZ的转移条件是( B 。

A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1
●条件转移指令JZ的转移条件是( D 。

A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1
●8086CPU响应可屏蔽中断的条件是( B 。

A:IF = 0 B:IF = 1 C:TF = 0 D:TF = 1
●8086CPU向I/O端口地址30H 写字节数据应使用指令( A 。

A:OUT 30H,AL B:OUT 30H,AX
C:OUT AL,30H D:OUT AX,30H
●8086CPU向I/O端口地址30H 写字数据应使用指令( B 。

A:OUT 30H,AL B:OUT 30H,AX
C:OUT AL,30H D:OUT AX,30H
●8086CPU从I/O端口地址80H读字节数据应使用指令( A 。

A:IN AL,80H B:IN AX,80H
C:IN 80H,AL D:IN 80H,AX
●8086CPU从I/O端口地址80H读字数据应使用指令( B 。

A:IN AL,80H B:IN AX,80H
C:IN 80H,AL D:IN 80H,AX
●8086CPU向I/O端口地址430H 写字数据应使用指令( D 。

A:OUT 430H,AL B:OUT 430H,AX
C:MOV DX,430H D:MOV DX,430H
OUT DX,AL OUT DX,AX
●8086CPU向I/O端口地址430H 写字节数据应使用指令( C 。

A:OUT 430H,AL B:OUT 430H,AX
C:MOV DX,430H D:MOV DX,430H
OUT DX,AL OUT DX,AX
●若DF = 1,执行串操作指令MOVSW时,地址指针自动变化是( D 。

A:SI + SI + 1、DI = DI + 1 B:SI = SI + 2、DI = DI + 2
C:SI = SI – 1、DI = DI - 1 D:SI = SI – 2、DI = DI – 2
●若DF = 0,执行串操作指令MOVSW时,地址指针自动变化是( B 。

A:SI + SI + 1、DI = DI + 1 B:SI = SI + 2、DI = DI + 2
C:SI = SI – 1、DI = DI - 1 D:SI = SI – 2、DI = DI – 2
●若DF = 1,执行串操作指令MOVSB时,地址指针自动变化是( C 。

A:SI + SI + 1、DI = DI + 1 B:SI = SI + 2、DI = DI + 2
C:SI = SI – 1、DI = DI - 1 D:SI = SI – 2、DI = DI – 2
●两个组合十进制数46H、35H相加,调整指令DAA完成的是( B 。

A:加00H调整B:加06H调整
C:加60H调整D:加66H调整
二:填空题
●在寄存器寻址操作时,操作数在(寄存器中;在立即数寻址操作时,操作数在(代码段中。

●存储器寻址中所用的间址寄存器有(BX 、(BP 、(SI 和(DI 。

●指令MOV AX,[BX]的隐含段是(DS ;MOV AL,[BP]的隐含段是(SS 。

●执行MOV指令时,控制线M//IO输出电位为(高电平;执行OUT指令时, 控制线M//IO输出电位为(低电平。

●若寄存器(AL= 47H,(BL= 9AH,完成(AL+(BL→(BL功能的指令为(ADD BL,AL ,执行完该指令后,(AL=(47H ,
(BL=(E1H ,CF =(0 。

●若寄存器(AL= 0FFH,(BL= 02H,完成(AL+(BL→(A L功能的指令为
(ADD AL,BL ,执行完该指令后,(BL=(02H ,
(AL=(01H ,CF =( 1 。

●要使指令ADD和ADC功能一样,应使(CF = 0 。

●符号数和无符号数使用(相同的加减法指令;使用(不同的乘除法指令。

●组合BCD码即一字节含(两个BCD码;非组合BCD码即一字节含(一个BCD码。

●组合BCD码加法调整指令是(DAA ;非组合BCD码加法调整指令是(AAA 。

●十进制数57的组合BCD码表示为(57H ;7的非组合BCD码表示为(07H 。

●两个组合BCD码56H加77H,和在AL中,执行DAA指令完成加(66H 调整。

●两个组合BCD码13H加36H,和在AL中,执行DAA指令完成加(00H 调整。

●指令MUL BYTE PTR[BX] 的功能为(AX = AL×[BX] 。

●指令MUL WORD PTR[BX] 的功能为(DX、AX = AX×[BX] 。

●执行指令DIV BL后,商存放在(AL 中;余存放在(AH 中。

●执行指令DIV BX后,商存放在(AX 中;余存放在(DX 中。

●若寄存器(AL= 47H,执行指令CBW后,寄存器(AX=(0047H 。

●若寄存器(AL= 9AH,执行指令CBW后,寄存器(AX=(FF9AH 。

●若寄存器(AX= 89H,执行指令CWD后,寄存器(DX=(FFFFH 。

●与指令LEA AX,BUF 功能相同的指令为(MOV AX,OFFSET BUF 。

●指令AAM对积进行调整,指令AAD对(被除数进行调整。

●指令MUL和AAM的使用顺序为先(MUL ,后(AAM 。

●指令DIV和AAD的使用顺序为先(AAD ,后(DIV 。

●指令AND具有位(清0 的功能;指令OR具有位(置1 的功能。

●与指SHL AL,1相同功能的指令是(SAL AL,1 。

●逻辑右移指令SHR的高位补0;算术右移指令SAR的高位补(符号。

●JMP SHORT LABEL是(段内短转移指令,操作数是8位相对量,转移范
围为(-128 ~ +127。

●JMP NEAR LABEL是(段内近转移指令,操作数是16位相对量,转移范
围为(-32768 ~ +32767 。

●JMP FAR LABEL是(段间远转移指令,操作数是32位目标地址量,16位
目标地址偏移量送寄存器(IP ;16位目标地址段基地送寄存器(CS 。

●JMP WORD PTR [BX] 是(段内间接转移指令;JMP DWORD PTR [BX]
是(段间间接转移指令。

●若DS段偏移地址2000H开始存放4个字节数据30H、40H、50H、60H, 执行指令JMP WORD PTR[2000H] 后,CS =(不变,IP =(4030H
执行指令JMP DWORD PTR[2000H] 后,CS =(6050H ,IP =(4030H 。

●字符串操作时,源数据块存放在(DS 段,目的数据块存放在(ES 段;源
块的指针存放在寄存器(SI 中,目的块的指针存放在寄存器(DI 中。

●字符串操作时用增址传送数据块时,控制标志DF =(0 ,减址传送数据块时,控
制标志DF =( 1 。

●若MAIN为定义的远过程,当执行指令CALL MAIN时保护的断点是(CS当前
和(IP当前。

若MAIN为定义的近过程,当执行指令CALL MAIN时保护的断点仅是(IP当前。

●与两条指令DEC CX、JNZ AG功能相同的一条指令是(LOOP AG 。

●将寄存器AL中的低4位清0高4位不变的指令是(AND AL,0F0H 。

●将寄存器AL中的低4位置1高4位不变的指令是(OR AL,0FH 。

●将寄存器AL中的数左移1位的指令是(SHL AL,1 。

●PC/XT机提供(256 个中断类型码,中断服务程序的入口地址存放在存储器空间
的(00000H 至(003FFH 中。

●中断相量表地址00040H中存放了中断类型码(10H 的中服程序的入口地址。

●执行指令INT 21H时,中断服务程序入口的IP值应从存储器地址(00084H中获
得;CS值应从存储器地址(00086H中获得。

●指令IRET恢复现场的顺序是(IP 、(CS 和( F 。

●执行指令LEA BX,BUFF后,BX中存放的是(BUFF表示的偏移地址值;执
行指令MOV BX,BUFF后,BX中存放的是(符号地址BUFF存放的字数据。

●串重复操作前缀REP的功能是当(CX = 0 时退出串重复操作。

●IN、OUT指令的长格式要求I/O端口地址值为(8 位;短格式要求I/O端口地址值为(16 位。

●8086从I/O端口地址20H输入字节数据的指令是(IN AL,20H 。

●8086向I/O端口地址2000H输出字数据的指令是(MOV DX,2000H 及(OUT DX,AX 。

●指令CLC的功能是(CF = 0 ;STC的功能是(CF = 1 。

●NOP是空操作指令,不执行任何操作仅占用(执行时间。

三:判断题
●串操作中,标志位DF控制地址指针自动增量的大小(×。

●执行指令CALL或INT时,推入堆栈的内容相同(×。

●执行指令SHL AL,CL后AL中的值为原数的4倍,CL中的值应为2(√。

●指令SHL AL,CL和指令SAL AL,CL的功能相同(√。

●指令SHR AL,CL和指令SAR AL,CL的功能相同(×。

●指令MOV AX,[BX +20H] 与指令MOV AX,20H[BX] 的功能相同(√。

●执行指令LEA BX,[2000H] 或指令MOV BX,2000H后BX中的值不同(×。

●指令MOV AL,[BP] 省缺的段应为DS段(×。

●指令MOV AL,[BX] 省缺的段应为DS段(√。

●若AL、BL中的值相等,执行指令CMP AL,BL 后ZF = 0(×。

●若AL大于BL,执行指令CMP AL,BL 后CF = 0(√。

●若AL小于BL,执行指令CMP AL,BL 后OF⊕SF = 1(×。

●指令AND和TEST的功能是源、目的操作数的位与操作(√。

●指令AND和TEST的功能完全一样(×。

●8086CPU的字存储中,低地址存字的高8位, 高地址存字的低8位(×。

●指令MOV AX,2000H和指令MOV AX,[2000H] 的功能一样(×。

●执行指令DIV BL后,商存入AH中、余数存入AL中(×。

●指令MOV AH,0和指令CBW的功能一样(×。

●指令MOV AX,0和指令SUB AX,AX的结果一样(√。

●指令DAA对累加器AL中的和进行调整(√。

●一字节内含2个BCD码称为组合BCD码(√。

●一字节内含1个BCD码称为非组合BCD码(√。

●指令MUL和AAM的编程顺序是先MUL后AAM(√。

●指令DIV和AAD的编程顺序是先DIV后AAD(×。

●若(AL= 98H,执行指令CBW后(AX= 0FF98H(√。

●指令CDW是将寄存器AX中的符号位扩展到寄存器DX中(√。

●指令MUL [BX] 完成的是(AX=(AL*([BX]功能(×。

●指令LEA BX,BUFF和指令MOV BX,BUFF的功能一样(×。

●调用近过程时应将当前的CS、IP值推入堆入堆栈保存(√。

●8086CPU段寄存器之间可以直接传送数据(×。

●8086CPU通用寄存器之间可以直接传送数据(√。

●程序设计中寄存器用名访问,存储器用地址访问(√。

●指令JMP SHORT LABEL是段间转移指令(×。

●指令JMP SHORT rel中rel值的范围为0 ~ 255(×。

●指令JMP [BX]是段间转移指令(×。

●条件转移指令只能用于段内直接短转移(√。

●REP是串操作的重复前缀, 其退出条件是(CX= 0(√。

四:简答题
●指令中操作数存在的几种方式?
【解】:在寄存器寻址中,操作数存在于寄存器中;在立即寻址中,操作数存在于代码段中;
在存储器寻址中,操作数存在于数据段DS(ES、SS、CS中。

●存储器寻址中间址寄存器的使用特点?
【解】:存储器寻址中可用的间址寄存器有BX、BP、SI、DI,当存储器间址寻址时,BX、SI、DI对应的缺省段是DS;BP对应的缺省段是SS。

当存储器基址变址寻址时, BX+SI、BX+DI对应的缺省段是DS;BP+SI、BP+DI对应的缺省段是SS。

●MOV指令中源、目的操作数的禁用特点?
【解】:MOV指令中源、目的操作数有如下禁用特点:
立即数不能作目的操作数;寄存器CS、IP不能作目的操作数;源、目的操作数不能同时为存储器操作数;源、目的操作数不能同时为段寄存器操作数;立即数不能赋给段寄存器。

●CMP指令对状态标志位的影响?
【解】:当两操作数比较是否相等是,影响状态标志位ZF,即两数相等ZF=1,不等ZF=0;
当两操作数比较大小时,无符号数比较和有符号数比较会影响不同的状态标志位。

若无符号数比较,当目的操作数大于源操作数时,CF = 0,反之CF = 1;
若有符号数比较,当目的操作数大于源操作数时OF⊕SF=0,反之OF⊕SF = 1。

●MUL、DIV指令中专用寄存器的使用?
【解】:在8×8→16模式中,专用被乘数寄存器是AL、专用积寄存器是AX;
在16×16→32模式中,专用被乘数寄存器是AX、专用积寄存器是DX、AX。

在16÷8→8、8模式中,专用被除数寄存器是AX、专用商余积寄存器是AL、AH;
在32÷16→16、16模式中,专用被除数寄存器是DX、AX、专用商余积寄存器是AX、DX。

●AAM、AAD指令的使用特点?
【解】:AAM是BCD乖法调整指令,作用是对积进行调整即将真实的积调整为用BCD表示的积,应用时先用MUL指令后用AAM指令;
AAD是BCD除法调整指令,作用是对被除数进行调整即将用BCD表示的被除数调整为真实的被除数,应用时先用AAD指令后用DIV指令。

●串操作指令中的传用寄存器?
【解】:专用源操作数串寄存器:专用串存放段寄存器DS、专用串指针寄存器SI;
专用目的操作数串寄存器:专用串存放段寄存器ES、专用串指针寄存器DI;
专用串操作数数量计数(寄托器CX;专用串指针自动移动方向控诉标志DF。

●串操作中控制标志DF、指令尾符B、W的使用特点?
【解】:当控制标志DF=0时,串指针SI、DI为自动增址方式;
当控制标志DF=1时,串指针SI、DI为自动减址方式;
当尾符为B时,为字节串操作,自动增、减址量为±1;
当尾符为W时,为字串操作,自动增、减址量为±2。

JMP 指令对目的 CS:IP 的影响?:的影响?:当指令为段内无条件转移时,【解】当 JMP 指令为段内无条件转移时,目的 CS 不变仅影响目的IP;:;指令为段间无条件转移时,当 JMP 指令为段间无条件转移时,将影响目 CS 和目的 IP。

中断类型码、中断向量、中断向量表之间的关系?中断类型码、中断向量、中断向量表之间的关系?个中断类型码,【解】 8086 提供 256 个中断类型码,:计为 0~255;;每个中断类型码有 4 字节的中断向量中(断服务程序的入口地址)共计 1024 字节;中断向量存放在存储器地址为, 00000H~003FFH 的存储单元中。

0 号中断类型码的中断向量存放在地址为 0000H~0003H 的存储单元中,其中低地址两单元存放中服程序入口的IP、高地址的存储单元中,、两单元存放中服程序入口的 CS,即若中断类型码为 N,则它的存放中断向量的表,,首地址为 4×N。

×。

的相同点和不问点?指令 CALL 和 INT 的相同点和不问点?:相同点均为调用一段功能程序【解】
相同点均为调用一段功能程序,且都需要保护断点(现场)和恢复现场。

不同点是:相同点均为调用一段功能程序,且都需要保护断点(现场)和恢复现场。

和恢复现场的内容不同,保护断点现场)(现场)和恢复现场的内容不同, CALL 为近调用则仅需保护和恢复 IP;若;若 CALL 为远调用则仅需保护和恢复 CS、IP;而 INT 需保护和恢复 F、CS、IP。

、;、、。

的影响?指令 PUSH、POP 对堆栈指针 SP 的影响?、:执行入栈指令【解】执行入栈指令 PUSH 时,堆栈指针 SP 先减 2,字数据后推入 SP 所指的:,栈顶;栈顶存放的字数据先弹出,栈顶;执行出栈指令 POP 时,栈顶存放的字数据先弹出,堆栈指针 SP 后加2。

相关文档
最新文档