微机原理第3章习题(1)

合集下载

微机原理与接口技术 张颖超 叶彦斐 第3章 习题答案

微机原理与接口技术 张颖超 叶彦斐 第3章 习题答案
MOVAL, CL
MULCL
MOVCX, AX
MOVAL, CL
MOVAH, 0
MULCX
13.假设DX:AX中存放一个双字的数据:
NEG DX
NEG AX
SBB DX,0
请问:
(1)上述程序段完成什么功能?
(2)设执行前,DX=0001H,AX=FFFFH,上述程序段执行后,DX、AX的值是什么?
(1)清累加器AX;
(2)清进位标志位
(3)将累加器内容乘以2(不考虑溢出)
(4)将累加器内容除以2(不考虑余数)
答:
(1) a.XORAX, AX
b.SUBAX, AX
c.ANDAX,0
d.MOVAX,0
(2) a.SUBAX, AX
b.ANDAX, AX
c.ORAX, AX
d.XORAX, AX
(7)检查BX中的第2、6、10和12位是否同时为0。
答:
(1) ANDDL, 0FCH;1111 1100B
(2)ORSI, 0E000H;1110 0000 0000 0000B
(3)ANDAX, 0FFF0H;1111 1111 1111 0000B
ORAX, 0380H; 0000 0011 1000 0000B
(1) IN AL, PORT; AL=
(2) IN AL, 40H;AX=
(3) OUTDX,AL; (DX)=
(4) OUT DX, AX; (DX)=
答:
(1)AL=22H
(2) IN AX, 40H; AX=226EH
(3) OUTDX,AL; (DX)=6EH
(4) OUT DX, AX; (DX)=226EH

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

第3章3.1:汇编语言有什么特点解:汇编语言是一种以处理器指令系统为基础的低级程序设计语言,它采用助记符表达指令操作码,采用标识符号表示指令操作数,可以直接、有效地控制计算机硬件,因而容易创建代码序列短小、运行快速的可执行程序3.2编写汇编语言源程序时,一般的组成原则是什么?解:(1)完整的汇编语言源程序由段组成(2)一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列(3)需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点(4)所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内(5)通常,程序还需要一个堆栈段3.3 MODEL伪指令是简化段定义源程序格式中必不可少的语句,它设计了哪7种存储模式?各用于创建什么性质的程序?解:3.4如何规定一个程序执行的开始位置,主程序执行结束应该如何返回DOS,源程序在何处停止汇编过程?解:开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编3.5逻辑段具有哪些属性?解:段定位、段组合和段类型。

3.6给出采用一个源程序格式书写的例题3.1源程序例题3.1:创建一个在屏幕上显示一段信息的程序……解:stack segment stackdb 1024(0)stack endsdata segmentstring db 'Hello,Assembly!',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start3.7DOS支持哪两种可执行程序结构,编写这两种程序时需要注意什么?解:(1). EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序(2). COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序(MASM 6.x需要采用TINY模式)3.8举例说明等价“EUQ”伪指令和等号“=”伪指令的用途解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值。

微机原理第三章课后习题解答

微机原理第三章课后习题解答

3.1已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H,SI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H ,(1E4F6H)=091DH。

在以上给出的环境下,试问下列指令段之行后的结果如何?(1)MOV CL,[BX+20H][SI];物理地址=DS*10H+BX+SI+20H=091D0H+0024H+0012H+0020H=09226H(09226H)=00F6H,(09226H)=F6H, (09227H)=00H执行后:CL=F6H(2)MOV [BP][DI], CX物理地址=SS*10H+BP+DI=1E4A0H +0024H+0032H=1E4F6HCX=5678H 执行后:(1E4F6H) = 5678H(3)LEA BX, [BX+20H][SI];BX=BX+20H+SI=0056HMOV AX, [BX+2];物理地址=DS*10H+BX+2=091D0H +0058H=09228H (09228H)=1E40H 执行后:AX=1E40H(4)LDS SI, [BX][DI];物理地址=DS*10H+BX+DI=091D0H +0056H=09226H (09226H)=00F6H (09228H)=1E40H执行后:BX=(09226H)=00F6HDS=(09228H)=1E40HMOV [SI],BX物理地址=DS*10H+SI =1E400H +0012H=1E412HBX=0024H, 执行后:(1E412H)=0024H (5)XCHG CX,[BX+32H]物理地址=DS*10H+BX+32H =091D0H +0056H =09226H (09226H)=00F6H , CX=5678H执行后:(09226H)=5678H , CX=00F6HXCHG [BX+20H][SI], AX物理地址=DS*10H+BX+20H+SI =091D0H +0056H =09226H (09226H)=5678H , AX=1234H执行后:(09226H)=1234H , CX=5678H3.2设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=0E7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H。

微机原理与接口技术 张颖超 叶彦斐 第3章 习题解答

微机原理与接口技术 张颖超 叶彦斐 第3章 习题解答

习题1.指出下列指令中操作数的寻址方式(1) MOV BX, 20H (2) MOV AX, [1245H](3) MOV DX, [SI] (4) MOV 100[BX], AL(5) MOV [BP][SI], AX (6) MOV [BX+100][SI], AX(7) MOV [1800H], AL (8) MOV [SI], AX答:源操作数目的操作数1 立即寻址寄存器寻址2 直接寻址寄存器寻址3 寄存器间接寻址寄存器寻址4 寄存器寻址寄存器相对寻址5 寄存器寻址基址加变址寻址6 寄存器寻址相对基址加变址寻址7 寄存器寻址直接寻址8 寄存器寻址寄存器间接寻址2. 判断下列操作数寻址方式的正确性,对正确的指出其寻址方式,错误的说明其错误原因:(1) [AX] (2) [SI+DI](3) BP (4) BH(5) DS (6) [BL+44](7) [BX+BP+32] (8) [DX](9) [CX+90] (10) [BX*4](11) BX+90H (12) SI[100H]答:(1) 错误,AX不能用于访问内存单元(2) 错误,两个变址寄存器SI和DI不能同时用于内存单元的有效地址(3) 正确,寄存器寻址方式(4) 正确,寄存器寻址方式(5) 正确,寄存器寻址方式(6) 错误,寄存器BL不能用于表示内存单元的有效地址(7) 错误,BX和BP都是基址寄存器,不能同时用于内存单元的有效地址(8) 错误,DX不能用于表示内存单元的有效地址(9) 错误,CX不能用于表示内存单元的有效地址(10)错误,16位寄存器不能乘以比例因子(11) 错误,没有这样的寻址方式(12) 错误,书写方式不对,应该写成100H[SI]3. 已知DS=2000H,ES=1000H,SS=1010H,SI=1100H,BX=0500H,BP=0200H,请指出下列源操作数字段是什么寻址方式?源操作数字段的物理地址是多少?(1) MOV AL, [2500H](2) MOV AX, [BP](3) MOV AX, ES:[BP+10](4) MOV AL, [BX+SI+20]答:(1)源操作数属于直接寻址,物理地址=DS⨯16+2500H=20000H+2500H=22500H;(2)源操作数属于寄存器间接寻址,物理地址=SS⨯16+(BP)=10100H+0200H=10300H(3)源操作数属于寄存器相对寻址,物理地址=ES⨯16+(BP)+100=10000H+0200H+0AH=1020AH(4)源操作数属于基址加变址寻址,物理地址=DS⨯16+(BX)+(SI)+20=20000H+0500H+1100H+14H=21614H4. 判断下列指令的对错,如果错误请说明原因。

微机原理第三章习题答案

微机原理第三章习题答案

习题3答案1. 指出下列指令的错误原因。

(1) AND AX, DL ;类型不匹配(2) ADD CS, DX ;CS不能作为目的操作数(3) MOV AX, IP ;IP不能作为指令的操作数(4) MOV [BP][SI], [SI] ;两个操作数不能同时为内存操作数(5) SUB [BP][SI], ES:DX ;段超越前缀只能用在内存操作数之前(6) XCHG AL, [SI][DI] ;没有[SI][DI]这种操作数形式(7) JGE AX ;条件转移指令的操作数只能是标号(8) PUSH DL ;对堆栈不能进行字节操作2. 用一条指令将BX清0。

(请给出3种方法)方法1:MOV BX, 0方法2:SUB BX, BX方法3:AND BX, 0 ;将BX和0做与,可以将BX清零方法4:XOR BX, BX3. 写出实现下列功能的指令序列。

(1) 判断AX的值,若AX等于0,则转到标号LABEL处。

(请写出3种方法)方法1:CMP AX, 0JZ LABEL ; 如果ZF = 0,说明AX为0,因为CMP指令是做减法,但是不写回结果; 因此指令执行后AX内容不会受到破坏方法2:TEST AX, 0FFHJZ LABEL ; 如果ZF = 0,说明AX为0,TEST指令做与运算,可是不写回结果,只影响标志位。

; 和0与清零,和1与不变,所以和FFH做与的结果是AX本身,但是此时标志位已; 经改变了,所以可以利用标志位来判断,但是AX内容却没有受到任何破坏方法3:AND AX, 0FFH ;这个方法的原理和方法2其实是完全一致的JZ LABEL(2) 将AL的高4位与低4位分别放入AH与AL的低4位,并将AH与AL的高4位清0。

MOV AH, ALAND AL, 0FH ; AL高4位通过与清零,而低4位保持不变MOV CL, 4SHR AH, CL ; 这两条指令通过逻辑右移将AH的高4位清零,因为SHR在右移后,高位补零(3) 若AX和BX中的数恰好1个是奇数、1个是偶数,则将奇数放入AX,偶数放入BX;否则,AX和BX不变。

南邮 微机原理(微型计算机与接口技术)第3章习题解答

南邮 微机原理(微型计算机与接口技术)第3章习题解答

解:先将物理地址写成逻辑地址 源逻辑地址为 1000H:2345H 目的逻辑地址为 2000H:3456H MOV AX,1000H ;设置DS段寄存器 MOV DS, AX MOV AX, 2000H ;设置ES段寄存器 MOV ES, AX MOV SI, 2345H ;设置源偏移地址 MOV DI, 3456H ;设置目的偏移地址 MOV CX, 1024 ;设置长度值 CLD ;设置地址为增量方向 REP MOVSB ;重复传送指令
第3章习题解答
3.5 (1)方法1 MOV AX,WORD PTR FIRST MOV BX,WORD PTR SECOND MOV WORD PTR FIRST,BX MOV WORD PTR SECOND,AX 注意: PTR用于临时修改属性,常用方法是 在存储器操作数之前使用。 例如: WOR PTR FIRST WORD PTR [BX] BYTE PTR [SI+BX]
;移位次数=8 ;含进位的循环左移一位 ;含进位的循环右移一位 ;移位次数有无达到8次 ;有无达到8次,没有转L1 ;将结果传送到AL
3.10 第1小题的框图
置源数据区指针 置正数缓冲区指针 置负数缓冲区指针 置数据长度
从源缓冲区 取一个数
Y
=0吗?
N
N
是正数吗?
Y
传送到负数缓冲区 传送到正数缓冲区 负数缓冲区指针加1 正数缓冲区指针加1 源数据区指针加1 数据长度减1
S1: CMP BYTE PTR [BX],0 ;与0比较 JZ COM ;=0 准备取下一个数判断 JL M1 ;为负数转到M1处理 MOV AL,[BX] ;取数 MOV [SI],AL ;将正数存入PLUS缓冲区 INC SI ;修改正数缓冲区地址指针 JMP COM ;转到长度计数部分 M1: MOV AL,[BX] ;取数 MOV [DI], AL ;将负数存入MINUS缓冲区 INC DI ;修改负数缓冲区地址指针 COM: INC BX ;修改源数据地址指针 LOOP S1 ;数据长度减1,并判断 HLT ;结束

(完整版)微机原理第三章(1)及答案

(完整版)微机原理第三章(1)及答案

第三章习题集二.选择题(每小题1分,共15分)1. 逻辑地址1000:2000对应的物理地址为( B )。

A、1200HB、12000HC、2100HD、21000H2. 下面哪个寄存器使用时的默认段寄存器为SS( C )。

A、AXB、BXC、SPD、SI3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在( B )段内寻址。

A.程序B.堆栈C.数据D.附加4.在下面四组寄存器中,第 D 组都可用于对存储器间接寻址方式的寄存器。

A. AX,BX,CX,IP;B. BX,SP,DX,SIC. IP,SP,BP,AXD. BP,BX,SI,DI5. 含有立即数的指令中,该立即数被存放在 A 。

A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中6. 用段基值及偏移量来指明内存单元地址的方式称为( C )。

A、有效地址B、物理地址C、逻辑地址D、相对地址7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应的段基地址放在DS中,则DS=( B )。

A、0FFFFHB、0F47FHC、2032HD、0F000H8. 含有立即数的指令中,该立即数被存放在 B 。

A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中9.寄存器间接寻址方式中,操作数在 C 中。

A. 通用寄存器B. 堆栈C. 存储单元D. 段寄存器10.下列指令中,有语法错误的指令是(B D)。

A. MOV AX,[1000H]B. LEA AL,1000HC. MOV [1000H],ALD. MOV 1000H,AX11. 下列指令语法有错的是:CA. MOV AX,1000HB. MOV AX,BXC. MOV [AX],[1000H]D. MOV AX,[1000H]12. 8086/8088中除___C___两种寻址方式外,其它各种寻址方式的操作数均在存储器中。

微机原理与接口技术张颖超叶彦斐第3章习题答案

微机原理与接口技术张颖超叶彦斐第3章习题答案

习题1.指出下列指令中操作数的寻址方式(1) MOV BX, 20H (2) MOV AX, [1245H](3) MOV DX, [SI] (4) MOV 100[BX], AL(5) MOV [BP][SI], AX (6) MOV [BX+100][SI], AX(7) MOV [1800H], AL (8) MOV [SI], AX答:源操作数目的操作数1 立即寻址寄存器寻址2 直接寻址寄存器寻址3 寄存器间接寻址寄存器寻址4 寄存器寻址寄存器相对寻址5 寄存器寻址基址加变址寻址6 寄存器寻址相对基址加变址寻址7 寄存器寻址直接寻址8 寄存器寻址寄存器间接寻址2. 判断下列操作数寻址方式的正确性,对正确的指出其寻址方式,错误的说明其错误原因:(1) [AX] (2) [SI+DI](3) BP (4) BH(5) DS (6) [BL+44](7) [BX+BP+32] (8) [DX](9) [CX+90] (10) [BX*4](11) BX+90H (12) SI[100H]答:(1) 错误,AX不能用于访问内存单元(2) 错误,两个变址寄存器SI和DI不能同时用于内存单元的有效地址(3) 正确,寄存器寻址方式(4) 正确,寄存器寻址方式(5) 正确,寄存器寻址方式(6) 错误,寄存器BL不能用于表示内存单元的有效地址(7) 错误,BX和BP都是基址寄存器,不能同时用于内存单元的有效地址(8) 错误,DX不能用于表示内存单元的有效地址(9) 错误,CX不能用于表示内存单元的有效地址(10)错误,16位寄存器不能乘以比例因子(11) 错误,没有这样的寻址方式(12) 错误,书写方式不对,应该写成100H[SI]3. 已知DS=2000H,ES=1000H,SS=1010H,SI=1100H,BX=0500H,BP=0200H,请指出下列源操作数字段是什么寻址方式?源操作数字段的物理地址是多少?(1) MOV AL, [2500H](2) MOV AX, [BP](3) MOV AX, ES:[BP+10](4) MOV AL, [BX+SI+20]答:(1)源操作数属于直接寻址,物理地址=DS⨯16+2500H=20000H+2500H=22500H;(2)源操作数属于寄存器间接寻址,物理地址=SS⨯16+(BP)=10100H+0200H=10300H(3)源操作数属于寄存器相对寻址,物理地址=ES⨯16+(BP)+100=10000H+0200H+0AH=1020AH(4)源操作数属于基址加变址寻址,物理地址=DS⨯16+(BX)+(SI)+20=20000H+0500H+1100H+14H=21614H4. 判断下列指令的对错,如果错误请说明原因。

微机原理及应用习题库与答案

微机原理及应用习题库与答案

微机原理及应用习题库与答案习题与练习题1第1章绪论1.计算机分那几类?各有什么特点?2.简述微处理器、微计算机及微计算机系统三个术语的内涵。

答:微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影响。

微计算机包括80X86微处理器有几代?各代的名称是什么?80386/80486:32位机。

4.采用一种总线标准进行微型计算机的硬件结构设计具有什么优点?5.一个总线的技术规范应包括哪些部分?6.总线的定义是什么?简述总线的发展过程。

7.微型计算机系统总线由哪三部分组成?它们各自的功能是什么?第3章微处理器结构及微计算机的组成1.8086是多少位的微处理器?为什么?2.EU与BIU各自的功能是什么?如何协同工作?3.086/8088与其前一代微处理器8085相比,内部操作有什么改进?4.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

AX、BX、CX、确定5ch+98h后各标志位的值。

并说明结果的正确性。

5.8086对存储器的管理为什么采用分段的办法?6.在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。

7.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。

8.8086/8088为什么采用地址/数据引线复用技术?9.8086与8088的主要区别是什么?10.怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同11.8086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?12.8086基本总线周期是如何组成的?各状态中完成什么基本操作?13.结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。

14.8086中断分哪两类?8086可处理多少种中断?15.8086可屏蔽中断请求输入线是什么?“可屏蔽”的涵义是什么?16.8086的中断向量表如何组成?作用是什么?17.8086如何响应一个可屏蔽中断请求?简述响应过程。

东华理工 微机原理第三章习题答案

东华理工 微机原理第三章习题答案

3.1给定(BX)=637DH,(SI)=2A9BH,位移量D=7237H,试确定在以下各种寻址方式下的有效地址是什么?(1) 立即寻址(2) 直接寻址(3) 使用BX的寄存器寻址(4) 使用BX的简接寻址(5) 使用BX的寄存器相对寻址(6) 基址变址寻址(7) 相对基址变址寻址答:(1) 操作数在指令中,即立即数;(2) EA=D=7237H;(3) 无EA,操作数为(BX)=637DH;(4) EA=(BX)=637DH;(5) EA=(BX)+D=0D5B4H;(6) EA=(BX)+(SI)=8E18H;(7) EA=(BX)+(SI)+D=1004FH;超过了段的边界,最高进位位丢失,因此EA=004FH。

3.2试根据以下要求写出相应的汇编语言指令(1) 把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器中。

(2) 用寄存器BX和SI的基址变址寻址方式把存储器中的一个字节与AL寄存器的内容相加,并把结果送到AL寄存器中。

(3) 用寄存器BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和(CX)相加,并把结果送回存储器中。

(4) 用位移量为0524H的直接寻址方式把存储器中的一个字与数2A59H相加,并把结果送回存储单元中。

(5) 把数0B5H与(AL)相加,并把结果送回AL中。

答:(1) ADD DX, BX(2) ADD AL, [BX][SI](3) ADD [BX+0B2H], CX(4) ADD WORD PTR [0524H], 2A59H(5) ADD AL, 0B5H3.3写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令。

要求使用以下几种寻址方式:(1) 寄存器间接寻址(2) 寄存器相对寻址(3) 基址变址寻址答:(1) MOV BX, OFFSET BLOCK ADD BX, (6–1)*2MOV DX, [BX](2) MOV BX, OFFSET BLOCKMOV DX, [BX+(6–1)*2]BLOCK[BX](3) MOV BX, OFFSET BLOCKMOV SI, (6–1)*2MOV DX, [BX][SI]3.4现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器的内容。

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

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

微机原理第三章练习题及解一:单项选择题●指令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,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位不变,低4 位1,使用指令( C )。

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

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

A:AND AL,0FH B:AND AL,0F0HC: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 )。

微机原理第3章习题(答案)

微机原理第3章习题(答案)

微机原理第3章习题(答案)1.下列各条指令是否有错?如果有,请指出错误之处并改正(1)MOVDS 1000H(2)MOV[100],23H(3)ADDAX [BX + BP+ 6](4)PUSHDL(5)INAX, [3FH](6)0UT3FFH AL(7)LESSS [SI](8)POP[AX](9)IMUL4CH(10)SHLBX 5(11)INT300(12)XCHGD, 0FFFH答:(1)错误。

不允许直接向段寄存器送立即数,可改为:MOVAX 1000HMOVD, AX(2)错误。

该指令在语法上是对的,即可以把一个立即数送入一个存储单元;但是如果考虑实际编译,则第一操作数前应加上BYTEPT或WORDPT说明,否则汇编程序会因不能确定操作数长度而指示出错。

可改为:MOVBYTEPTR[1O0] 23H(3)错误。

不能同时使用两个基址寄存器BX、BP进行间接寻址,可改为:ADDAX [BX + DI + 6](4)错误。

堆栈操作应以字为单位进行,而DL是一个字节。

可改为:PUSHDX(5)错误。

在输入/输出指令中,8位端口地址应直接写在操作数处。

可改为:INAX, 3FH(6)错误。

端口地址3FFH已超出8位二进制表示范围,16位端口地址应用DX可改为:MOVD, 3FFHOUTDXAL(7)错误。

LES指令的目操作数应该是通用寄存器,不能是段寄存器。

可改为:LESBX [SI](8)错误。

AX不能用于间接寻址,间接寻址只能用BXBP、SI、DI四个寄存器之一。

可改为:POP[BX](9)错误。

立即数不能做乘法指令的操作数,可改为:MOVBJL 4CHIMULBL(10)错误。

当逻辑移位的次数大于1时,应该用CL指示次数。

可改为MOVCL 5SHLBX CL(11)错误。

操作数300>255,已超出有效的中断类型码范围。

(12)错误。

XCHG指令不允许立即数做它的操作数。

可改为:MOVC, 0FFFHXCHGDXCX2•请指出以下各指令的源、目的操作数所使用的寻址方式(1)MOVSI 2100H(2)SBBDISP[BX], 7(3)AND[DI] , AX(4)ORAX [609EH](5)MOV[BXb DI + 30H], CX(6)PUSHES [BP](7)CALL[DI]DISP(8)JNZShort_label答:(1)源操作数:立即数寻址;目的操作数:寄存器寻址(2)源操作数:立即数寻址;目的操作数:基址寻址(3)源操作数:寄存器寻址;目的操作数:寄存器间接寻址(4)源操作数:直接寻址;目的操作数:寄存器寻址5)源操作数:寄存器寻址;目的操作数:(带位移量的)基址变址寻址(6)源操作数:带段超越的寄存器间接寻址;目的操作数:隐含寻址(7)只有一个操作数,为变址寻址(8)只有一个操作数,为相对寻址3. 已知DS=2000H 有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT 勺偏移地址为1200H。

第三章微机原理习题课

第三章微机原理习题课

.第三章习题课一、选择题1、在汇编语言程序的开发过程中使用宏功能的顺序是()。

A、宏定义,宏调用B、宏定义,宏展开C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是()。

A、名字项B、操作项C、操作数项D、注释项3、下列叙述正确的是()A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令4、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有().A、CMPB、SUBC、ANDD、MOV5、测试BL寄存器容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是()。

A TEST BL,4FHJZ NEXTB XOR BL,4FHJZ NEXTC AND BL,4FHJZ NEXTD OR BL,4FHJZ NEXT6、检查BUF的容是否为正偶数,如是正偶数,则令AL=0。

下面程序段正确的是( )。

A、MOV AL,BUF JS K1SHR AL,1JNC K1MOV AL,0K1:……B、MOV AL,BUF AND AL,11 JNZ K2MOV AL,0K2:……C 、MOV AL ,BUF TEST AL ,81H JNZ K3 MOV AL ,0 K3:……7、下列描述中,执行循环的次数最多的情况是()。

A .MOV CX ,0B .MOV CX ,1 LOP :LOOP LOP LOP :LOOP LOPC .MOV CX ,0FFFFHD .MOV CX ,256 LOP :LOOP LOP LOP :LOOP LOP8、在下列指令中,指令的执行会影响条件码中的CF 位。

微机原理与接口技术(第四版)课后习题答案(1)

微机原理与接口技术(第四版)课后习题答案(1)

第1章微型计算机系统〔习题1.1〕简答题(2)总线信号分成哪三组信号?(3)PC机主存采用DRAM组成还是SRAM组成?(5)ROM-BIOS是什么?(6)中断是什么?(9)处理器的“取指-译码-执行周期”是指什么?〔解答〕②总线信号分成三组,分别是数据总线、地址总线和控制总线。

③ PC机主存采用DRAM组成。

⑤ ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。

⑥中断是CPU正常执行程序的流程被某种原因打断、并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返回被中断的指令继续执行的过程。

⑨指令的处理过程。

处理器的“取指—译码—执行周期”是指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。

〔习题1.3〕填空题(2)Intel 8086支持___________容量主存空间,80486支持___________容量主存空间。

(3)二进制16位共有___________个编码组合,如果一位对应处理器一个地址信号,16位地址信号共能寻址___________容量主存空间。

(9)最初由公司采用Intel 8088处理器和()操作系统推出PC 机。

② 1MB,4GB③ 216,64KB(9)IBM,DOS〔习题1.4〕说明微型计算机系统的硬件组成及各部分作用。

〔解答〕CPU:CPU也称处理器,是微机的核心。

它采用大规模集成电路芯片,芯片内集成了控制器、运算器和若干高速存储单元(即寄存器)。

处理器及其支持电路构成了微机系统的控制中心,对系统的各个部件进行统一的协调和控制。

存储器:存储器是存放程序和数据的部件。

外部设备:外部设备是指可与微机进行交互的输入(Input)设备和输出(Output)设备,也称I/O设备。

I/O设备通过I/O接口与主机连接。

微机原理与接口技术(第二版)习题答案-第三章

微机原理与接口技术(第二版)习题答案-第三章

习题31.假定(DS)=2000H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H,数据变量V AL的偏移地址为0050H,请指出下列指令原操作数是什么寻址方式,其物理地址是多少?(1)MOV AX, 0ABH (2) MOV AX, [100H](3) MOV AX, V AL (4) MOV BX, [SI](5) MOV AL, V AL[BX] (6) MOV CL, [BX][SI](7) MOV V AL[SI], BX (8) MOV [BP][SI], 100答:(1) 立即数寻址,无物理地址(2) 直接寻址,物理地址=2000H×10H+100H=20100H(3) 直接寻址,物理地址=2000H×10H+0050H=20050H(4) 寄存器间接寻址,物理地址=2000H×10H+00A0=200A0H(5) 相对寄存器寻址,物理地址=2000H×10H+(0050+0100H)=20150H(6) 基址加变寻址,物理地址=2000H×10H+(0100H+00A0H)=201A0H(7) 寄存器寻址,无物理地址(8) 立即数寻址,无物理地址2.已知(SS)=0FFA0H,(SP)=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。

答:“8057H”进栈,则SP自动从00B0H指向00B2H,“0F79H”进栈,则SP 自动从00B2H指向00B4H;执行一条POP指令,“0F79H”被弹出栈,SP从00B4H 指向00B2H。

图略。

3.设有关寄存器及存储单元的内容如下:(DS)=2000H, (BX)=0100H, (AX)=1200H, (SI)=0002H, (20100H)=12H, (20101H)=34H, (20102H)=56H, (20103H)=78H, (21200H)=2AH, (21201H)=4CH, (21202H)=0B7H, (21203H)=65H.试说明下列各条指令单独执行后相关寄存器或存储单元的内容。

微机原理第三章习题与参考答案

微机原理第三章习题与参考答案

第三章习题与参考答案3.1 已知 (DS) = 1000H,(ES) = 2000H,(SS) = 3000H,(SI) = 0050H,(BX) =0100H,(BP) =0200H,数据变量DISP的偏移地址为1000。

指出下列指令的寻址方式和物理地址。

(1) MOV AX,0ABH 立即寻址无(2) MOV AX,BX 寄存器寻址无(3) MOV AX,[l000H] 直接寻址 10000H(4) MOV AX,DATA 直接寻址 (DS*16+DATA )(5) MOV AX,[BX] 寄存器间接寻址 10100H(6) MOV AX,ES:[BX] 寄存器间接寻址 20100H(7) MOV AX,[BP] 寄存器间接寻址 30200H(8) MOV AX,[SI] 寄存器间接寻址 10050H(9) MOV Ax,[BX+l0] 寄存器相对寻址 1010AH(10) MOV AX,DISP[BX] 寄存器相对寻址 11100H(1l) MOV AX,[BX+SI] 基址变址寻址 10150H(12) MOV AX,DISP[BX][SI] 相对基址变址寻址 11150H3.2 分别说明下例指令采用的寻址方式和完成的操作功能。

(1) MOV CX,2000H 立即寻址将立即数2000H送CX寄存器(2) MOV DS,AX 寄存器寻址将AX寄存器内容送DS段寄存器(3) AND CH,[1000H] 直接寻址将[DS*16+1000H]单元的内容送CH寄存器(4) ADD [DI],BX 寄存器间接寻址将CL寄存器的内容送[DS*16+DI]单元(5) MOV SS:[3000H],CL 直接寻址将CL寄存器的内容送[SS*16+3000H]单元(6) SUB [BX][SI],1000H 直接寻址将立即数1000H送[DS*16+BX+SI+50H]单元(7) ADD AX,50H[BX][SI] 相对基址变址寻址将[DS*16+BX+SI+50H]单元的内容送AX寄存器(8) PUSH DS 寄存器寻址将DS寄存器的内容送[SS*16+SP]单元(9) CMP [BP][DI],AL 寄存器寻址将AL寄存器的内容送[SS*16+DI+BP]单元3.3 判断下列指令正误,如果错误请指出原因。

微机原理与接口技术习题答案

微机原理与接口技术习题答案

第3章8086/8088指令系统与寻址方式习题3.3 8086系统中,设DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。

(1)MOV BX,12 ;目标操作数为寄存器寻址(2)MOV [BX],12 ;目标操作数为寄存器间址PA=10300H(3)MOV ES:[SI],AX ;目标操作数为寄存器间址PA=20200H(4)MOV VAR,8 ;目标操作数为存储器直接寻址PA=10600H(5)MOV [BX][SI],AX ;目标操作数为基址加变址寻址PA=10500H(6)MOV 6[BP][SI],AL ;目标操作数为相对的基址加变址寻址PA=12306H (7)MOV [1000H],DX ;目标操作数为存储器直接寻址PA=11000H(8)MOV 6[BX],CX ;目标操作数为寄存器相对寻址PA=10306H(9)MOV VAR+5,AX ;目标操作数为存储器直接寻址PA=10605H3.4 下面这些指令中哪些是正确的那些是错误的如果是错误的,请说明原因。

(1)XCHG CS,AX ;错,CS不能参与交换(2)MOV [BX],[1000] ;错,存储器之不能交换(3)XCHG BX,IP ;错,IP不能参与交换(4)PUSH CS(5)POP CS ;错,不能将数据弹到CS中(6)IN BX,DX ;输入/输出只能通过AL/AX(7)MOV BYTE[BX],1000 ;1000大于255,不能装入字节单元(8)MOV CS,[1000] ;CS不能作为目标寄存器(9)MOV BX,OFFSET VAR[SI] ;OFFSET只能取变量的偏移地址(10)MOV AX,[SI][DI] ;SI、DI不能成为基址加变址(11)MOV COUNT[BX][SI],ES:AX ;AX是寄存器,不能加段前缀3.7 设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么当前栈顶的地址=2FF00H当执行PUSH BX 指令后,栈顶地址=2FEFEH(2FEFEH)=57H(2FEFFH)=34H3.8 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。

大学微机原理第三章习题

大学微机原理第三章习题

大学微机原理第三章习题8086/8088的寻址方式和指令系统习题一.单项选择题1.设置BX=2000h,Si=3000h,指令movax的源操作的有效地址[BX+Si+8]为()。

a、5000hb.5008hc.23008hd.32022h2.设ds=1000h,es=2000h,bx=3000h,指令addal,[bx]的源操作数的物理址为()。

a.13000hb.23000hc.33000hd.3000h3.设ds=2000h,es=3000h,si=200h,指令moves:[si],al的目的操作数的物理地址为()。

a.20210hb.30200hc.50200hd.200h4.指令movmem[bx],ax中的mem是()。

a.原码b.反码c.补码d.移码5.用来作为寄存器间接寻址的寄存器有()个。

a.8b.6c.5d.46.指令mov[BX+Si],Al中的目标操作数使用()段寄存器。

a、 csb.dsc.ssd.es7.指令movbx,[bp+5]中的源操作数使用()段寄存器。

a.csb.dsc.ssd.es8.段内间接寻址只改变()中的内容。

a、 csb之间的间接寻址。

ipc。

政务司司长和知识产权署。

psw9。

仅更改()中的内容。

a.csb.ipc.cs和ipd.psw10.下述指令中不改变psw的指令是()。

a.movax,bxb.andal,0fhc.shrbx,cld.addal,bl11.下述指令中不影响cf的指令是()。

a.shlal,1b.inccxc、添加[bx],ald.subax,bx12.两个整数补码9ch和7ah相加运算后,会产生()。

a.无溢出且无进位b.无溢出但有进位c.有溢出且有进位d.有溢出但无进位13.指令jmpwordptr[bx]属于()寻址。

a、段内直接B.段内间接C.段间直接D.段间间接14。

指令movax的源操作数[BX+Si+8]属于()寻址。

微机原理第五版第三章习题答案.doc

微机原理第五版第三章习题答案.doc

]、2题略,看书!3. 51系列单片机有哪儿种寻址方式?对内部RAM的。

〜7FH操作有那些寻址方式?对SFR 有哪些寻址方式?答:51单片机共有:寄存器寻址,直接寻址,寄存器间接寻址,立即寻址,基址寄存器加变址寄存器间接寻址和相对寻址等6中寻址方式。

对内部RAM的0〜7FH操作可通过直接寻址,寄存器间接寻址对SFR只能通过直接寻址访问对内部RAM的80H〜OFFH的操作只能通过寄存器间接寻址。

(因为SFR的地址也在80H〜OFFH的范围内,故通过采用互不相同的寻址方式,来区分该段地址是指向内部RAM还是指向SFR)4.请写出下列功能对应的数据传送指令⑴MOV A,R0;MOV A,40H;MOVA,@RO;MOV A,#80H(2 )MOV R0,78H;MOV R6,A;MOV R7,#88H;⑶MOV 50H,A;MOVP1,70H;MOVP1,R3;MOVP1,#80H(4 )MOV @R0,A;MOV @R0,30H;MOV @R0, #30H(5)MOV DPTR,#8000H(6)PUSH ACC (不能写成PUSH A,必须用累加器的符号ACC,因为此处是直接寻址);PUSH DPH;POPDPH;POP ACC(7) XCH A,@R0;XCHD A,@R05.写出指令功能(1)((R1))—A; (50H)—A; (Rl)—A(2)(30H)->R7; (A)->R4; 3-R7(3)(A)->50H; (4OH)->P1; (R3)-P1(4)(A)->(Rl); (30H)->(Rl); 5OH->(R1)(5)9000H-DPTR(6)(ACC)-堆栈;(B)—堆栈;堆栈一DPL⑺ A - — ((R1)), (A)o~3 - - ((R1 ))o~3(8) ((P2)(R0))—A; ((A)+(PC)) — A; ((A)+(DPTR))—A; ((DPTR))->A;注意:MOVX指令访问的是外部RAM数据存储器单元;MOVC指令访问的是程序存储器中的地址单元。

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

• 3.7已知(AL)=7BH,( )=38H,试问执 . 已知 已知( ) ,(BL) ,( , 行指令ADD AL,BL后,AF、CF、OF、PF、 行指令 , 后 、 、 、 、 SF和ZF的值各为多少? 的值各为多少? 和 的值各为多少 解: (AL)=B3H ) AF=1,CF=0,OF=1, , , , PF=0,SF=1,ZF=0 , , • 3.8试比较无条件转移指令、条件转移指令、调 . 试比较无条件转移指令 条件转移指令、 试比较无条件转移指令、 用指令和中断指令有什么异同?( ?(略 用指令和中断指令有什么异同?(略)
(6)MOV DATA[SI],ES:AX ) , : 源操作数形式错, 源操作数形式错,寄存器操作数不加段重设符 (7)JMP BYTE PTR[BX] ) 转移地址的字长至少应是16位 转移地址的字长至少应是 位 (8)OUT 230H,AX ) , 指令, 对I/O指令,端口地址超过 位,必须采用间接寻址 指令 端口地址超过8位 (9)MOV DS,BP ) , 正确 (10)MUL 39H ) MUL指令中操作数不能为立即数 指令中操作数不能为立即数
• 3.10按下列要求写出相应的指令或程序段 . 按下列要求写出相应的指令或程序段 内容为0的指令 (1)写出两条使 内容为 的指令; )写出两条使AX内容为 的指令; MOV AX,0 , XOR AX,AX , AND AX,0 , SUB AX,AX , 寄存器中的高4位和低 位互换; (2)使BL寄存器中的高 位和低 位互换; ) 寄存器中的高 位和低4位互换 MOV CL,4 CL, ROL BL,CL , 或 ROR BL,CL , (3)屏蔽CX寄存器的 )屏蔽 寄存器的b11、b7和b3位; 、 和 位 寄存器的 AND CX,0F777H , 中的b0和 位是否为 位是否为1。 (4)测试 中的 和b8位是否为 。 )测试DX中的 TEST DX,0101H ,
PA=(ES)× 10H+( )= ( ) +(BX)= +( )=20800H
(7)寄存器间接寻址 )
PA=(SS)× 10H+( )=16200H ( ) +(BP)= +( )=
(8)寄存器相对寻址 )
PA=(DS) × 10H+( )+ ( ) +(BX)+ +( )+20H=60820H =
第三章 习题
• 3.1什么叫寻址方式?8086/8088CPU共有哪几种寻址方 . 什么叫寻址方式 什么叫寻址方式? 共有哪几种寻址方 ?(略 式?(略) • 3.2设(DS)=6000H,( )=2000H,( ) . 设 ,(ES) ,(SS) ) ,( ,( =1500H,( )=00A0H,( )=0800H,( ) ,(SI) ,(BX) ,(BP) ,( ,( ,( =1200H,数据变量 ,数据变量VAR为0050H。 为 。 请分别指出下列各条指令源操作数的寻址方式? 请分别指出下列各条指令源操作数的寻址方式?它的物理 地址是多少? 地址是多少? (1)MOV AX,BX ) , (3)MOV AX,VAR ) , (4)MOV AX,VAR[BX][SI] ) , (5)MOV AL,‘B’ ) , (6)MOV DI,ES:[BX] ) , : (7)MOV DX,[BP] ) , (8)MOV BX,20H[BX] ) , (2)MOV DL,80H ) ,
• 3.13将+46和-38分别乘以 ,可应用什么 . 将 分别乘以2, 和 分别乘以 指令来完成?如果除以2呢 指令来完成?如果除以 呢? 解: 分别乘以2, ①将+46和-38分别乘以 ,可分别用逻辑左移 和 分别乘以 指令SHL和算术左移指令 和算术左移指令SAL完成。SHL 完成。 指令 和算术左移指令 完成 针对无符号数,SAL针对有符号数,也可 针对无符号数, 针对有符号数, 针对有符号数 用MUL(无符号数)和IMUL(有符号数) (无符号数) (有符号数) 除以2, 实现+ ②除以 ,用SHR或DIV实现+46/2,用SAR 或 实现 , 实现- 或IDIV实现-38/2。 实现 。
• 3.11分别指出以下两个程序段的功能。 . 分别指出以下两个程序段的功能 分别指出以下两个程序段的功能。
(1)MOV CX,10 ) , LEA SI,FIRST , LEA DI,SECOND , STD REP MOVSB 将数据段中FIRST为最 为最 将数据段中 高地址的10个字节数据 高地址的 个字节数据 按减地址方向传送到附 加段SECOND为最高地 加段 为最高地 址的向前10个单元中 个单元中。 址的向前 个单元中。 (2)CLD ) LEA DI,[1200H] , MOV CX,0F00H , XOR AX,AX , REP STOSW 将附加段中偏移地址 为1200H单元开始的 单元开始的 0F00H个字单元清零。 个字单元清零。 个字单元清零
• 3.6指出下列指令的错误。 指出下列指令的错误。 . 指出下列指令的错误 (1)MOV AH,CX ) , 类型不匹配或两操作数字长不相等 (2)MOV 33H,AL ) , 立即数不能做目的操作数 (3)MOV AX,[SI][DI] ) , 两变址寄存器不能同时使用 (4)MOV [BX],[SI] ) , 两操作数不能同时为存储器操作数 (5)ADD BYTE PTR[BP],256 ) , 两操作数类型不匹配
• 3.9试判断下列程序执行后,BX中的内容。 . 试判断下列程序执行后 试判断下列程序执行后, 中的内容 中的内容。 MOV CL,3 , MOV BX,0B7H , ROL BX,1 , ROR BX,CL , 内容不带进位循环左移1位 解:该程序是首先将BX内容不带进位循环左移 位, 该程序是首先将 内容不带进位循环左移 右移3位 即相当于将BX内容不带进位循 再循环 右移 位,即相当于将 内容不带进位循 环右移2位 环右移 位, 所以结果为( ) 所以结果为(BX)=C02DH
• 3.3假设(DS)=212AH,( )=0200H, . 假设 假设( ) ,(CS) ,( , ,(BX) (IP)=1200H,( )=0500H, ) ,( , 位移量DATA=40H 位移量 ,(217E0H)=0400H, (217A0H)=2300H,( ) ,( ) , (217E2H)=9000H, ) , 试确定下列转移指令的转移地址。 试确定下列转移指令的转移地址。
• 3.16写出完成下述功能的程序段。 写出完成下述功能的程序段。 . 写出完成下述功能的程序段 中传送一个数据56H到AL寄 (1)从地址 :0012H中传送一个数据 )从地址DS: 中传送一个数据 到 寄 存器。 存器。 MOV DS:BYTE PTR[0012H],56H : , MOV AL,[0012H] , 中的内容左移两位。 (2)将AL中的内容左移两位。 ) 中的内容左移两位 MOV CL,2 , SHL AL,CL , 的内容与字节单元DS: 中的内容相乘。 (3)AL的内容与字节单元 :0013H中的内容相乘。 ) 的内容与字节单元 中的内容相乘 MUL DS:BYTE PTR[0013H] : (4)乘积存入字单元 :0014H中。 )乘积存入字单元DS: 中 MOV DS:[0014H],AX : ,
解: (1)寄存器寻址 ) 无物理地址 (2)立即寻址 ) 无物理地址 (3)立即寻址 ) 无物理地址 (4)基址-变址-相对寻址 )基址-变址-
PA=(DS)×10H+VAR+( )+( )= ( ) +(BX)+( )=608F0H + +( )+(SI)=
(5)立即寻址 ) 无物理地址 (6)寄存器间接寻址 )
• 3.14已知 . 已知 已知AX=8060H,DX=03F8H,端口 , ,端口PORT1 的地址是48H,内容为 的地址是84H, 的地址是 ,内容为40H;PORT2的地址是 ; 的地址是 , 内容为85H。请指出下列指令执行后的结果。 内容为 。请指出下列指令执行后的结果。 (1)OUT DX,AL ) , 输出到地址为03F8H的端口中 将60H输出到地址为 输出到地址为 的端口中 (2)IN AL,PORT1 ) , 读入一字节数据, )=40H 从PORT1读入一字节数据,则(AL)= 读入一字节数据 )= (3)OUT DX,AX ) , 从地址为03F8H的端口输出 将AX=8060H从地址为 = 从地址为 的端口输出 (4)IN AX,48H ) , 端口读入16位的数据 由48H端口读入 位的数据 端口读入 (5)OUT PORT2,AX ) , 从地址为84H的端口输出 将8060H从地址为 从地址为 的端口输出
• 3.12执行以下两条指令后,标志寄存器 . 执行以下两条指令后 标志寄存器FLAGS 执行以下两条指令后, 的六个状态位各为什么状态? 的六个状态位各为什么状态? MOV AX,84A0H , ADD A加法运算时 位数进行加法运算时, 在两个 位数进行加法运算时,对CF、ZF、SF、 、 、 、 OF会产生影响,但对 和AF标志位,只有其低 会产生影响, 标志位, 会产生影响 但对PF和 标志位 只有其低8 位运算影响它们的状态。 位运算影响它们的状态。 AF=0,PF=1,CF=1, , , , ZF=0,SF=0,OF=1 , ,
• 3.4试说明指令 . 试说明指令 试说明指令MOV BX,5[BX]与指令 与指令LEA BX,5[BX] , 与指令 , 的区别。 的区别。 答: 是数据传送类指令, ①MOV BX,5[BX]是数据传送类指令,表示将数据段中以 , 是数据传送类指令 位数据送寄存器BX中 (BX+5)为偏移地址的 位数据送寄存器 中。 )为偏移地址的16位数据送寄存器 是取偏移地址指令, ② LEA BX,5[BX]是取偏移地址指令,结果为 , 是取偏移地址指令 (BX)=(BX)+5,即操作数的偏移地址为(BX)+5 ) ( ) ,即操作数的偏移地址为( ) • 3.5设堆栈指针 的初值为 设堆栈指针SP的初值为 ,(AX) . 设堆栈指针 的初值为2300H,( )=50ABH, ,( , (BX)=1234H。执行指令 ) 。执行指令PUSH AX后,( )=?, 后,(SP) ?, 再执行指令PUSH BX及POP AX之后,(SP)=?( ) 再执行指令 及 之后,( ) ?(AX) 之后,( ?( =?( )=? ?(BX) ? ?( 执行指令PUSH AX后,( )=22FEH 解:执行指令 后,(SP) 执行指令PUSH BX及POP AX之后, 之后, 执行指令 及 之后 ,(AX) ( ) (SP)=22FEH,( )=(BX)=1234H ) ,(
相关文档
最新文档