大工计算机原理-第3章 8086微处理器的指令系统(1)
更新时间:2023-06-01 07:37:01 阅读量: 实用文档 文档下载
- 大工计算机原理作业答案推荐度:
- 相关推荐
大连理工大学 15年 计算机原理 复习资料
第3章 8086微处理器的指令系统(1)
3.1 指令系统概述
指令系统是一台计算机所能(识别和执行)的全部指令的集合。它与(微处理器)有着密切的关系,不同的微处理器有不同的指令系统。8086CPU包含133条指令
指令是使计算机执行某种(特定操作)的二进制编码。
指令一般包括两个部分:(操作码域)和(地址域)。填空
操作码域:存放指令的操作码,即指明该指令应由计算机完成何种操作。
地址域:确定操作数的值或地址、操作结果的地址,有的指令的地址域还指出下一条指令的地址。 机器指令:计算机能(直接识别)的二进制代码。
汇编语言:汇编语言是一种符号语言,用助记符表示操作码,用符号或符号地址表示操作数或操作数地址,它与机器指令是一一对应的
汇编程序:将汇编语言源程序翻译成机器语言(就是一条一条的机器指令),即目标程序。
3.2寻址方式
根据()确定(的过程,称为寻址。
根据寻址方式计算所得到的地址叫做(有效地址EA),也就是(段内偏移地址)。有效地址还需要与相应的(段基地址)组合才是20位的(物理地址PA) ,该工作由微处理器来完成。
牢记什么是EA?什么是PA?怎么计算?
后面有关于EA和PA的解释及计算方法!
寻址方式在两种方式下被涉及:(操作数)的寻址方式和(指令)的寻址方式。
如果没有特别说明,寻址方式是指源操作数的寻址方式。
操作数寻址
1、隐含寻址(隐含了规定的操作数)
例:DAA指令
,只有操作码,无操作数。规定对AL中的内容进行压缩BCD码转换。
2、立即寻址(操作数(立即数)直接放在指令中,不需访问存储器)
例:MOV AX ,1234H (若CS=1000H ,IP=100H)
3、寄存器寻址(操作数就放在内部寄存器中,例:INC CX ;(CX)←(CX)+1 MOV AX ,BX ;执行后BX4、直接寻址(指令中直接给出操作数的存放地址) 例1:MOV AX ,[4000H] (DS=3000H)
大连理工大学 15年 计算机原理 复习资料
例2:MOV ES:[1234H],BL (ES=4000H)
注意:(1)指令中给出的[4000H]和[1234H]是操作数的偏移地址。
(2)指令前缀指出段寄存器(例2)。
(3)没有指出段寄存器,则默认的段寄存器为DS(例1)。
5、寄存器间接寻址(内存单元的逻辑偏移地址由寄存器间接给出,只能使用BX、BP、SI、DI)
例: MOV AX ,[BX] (若DS=2000H ,
BX=1000H)
大连理工大学 15年 计算机原理 复习资料
8、基址变址寻址和基址变址相对寻址
有效地址EA=(BX)或(BP)中的基址地址+(SI)或(DI)中的变址地址+disp
例3.14 MOV AX,[BP+DI]
EA=SS*10H + BP + DI ;此时隐含的段寄存器为SS
MOV AX,[BX+DI]
EA=DS*10H + BX + DI ;则隐含的段寄存器为DS
(1)BX基地址寄存器、SI源变址寄存器、DI目的变址寄存器与DS数据段寄存器组成物 理地址 (2)BP(基指针寄存器)、SP(堆栈指针寄存器)与SS(堆栈段寄存器)组成物理地址。 (3)IP只能在代码段中(CS)寻址 (4)SP只能在堆栈段(SS)中寻址。 (5)AX、CX、DX一般不能在寄存器间接寻址中使用。
例3.10 MOV AX,[
若(BX
DS)=2100H,(BX)=0158H,(DI)=0002H,(2115AH)=1234H
则 EA= BX+DI =0158H+0002H=015AH
PA=EA+21000H=2115AH
指令执行后,(AX)=1234H
例3.11:MOV AX,[MASK+
若(BX+SI]DS)=3000H,(BX)=2000H, (SI)=1000H, MASK=0250H
(33250H)=34H,(33251H)=12H
则 EA= MASK+BX+SI = 0250H +2000H+1000H=3250H
PA= DS*10H + EA=30000H + 3250H = 33250H
执行该指令后(AX)=1234H
9、I/O端口寻址
8086采用I/O端口与存储器独立编址的方式(第2章的内容)。
8086用20位地址线中的低16位来管理64KB的I/O端口空间,I/O端口的地址空间为0000H~FFFFH(因为64K)。 访问I/O 端口需要专门指令IN和OUT,通过AX/AL来完成。
(1)直接寻址
指令直接给出I/O端口地址,此地址应在0-255(0-FFH)之间( 例如:IN AL,20H ;从端口地址20H读入一个字节
(2)间接寻址,寄存器只能用DX
由DX给出I/O端口地址,此方式适用端口地址为0-65535(0-FFFFH)之间的任意值。(范围任意) 例如:MOV DX , 3E4H
OUT DX , AL
IN指令中目的操作数可为AL或AX;OUT指令中源操作数可为AL或AX
大连理工大学 15年 计算机原理 复习资料
大连理工大学 15年 计算机原理 复习资料
例:分别指出下列指令中的源操作数和目的操作数的寻址方式
(1)MOV BX, [DI]
(2)MOV DX, 100
(3)MOV [DI] , AL
(4)MOV [BX+SI] , CX
(5)MOV DX , [SI+106H]
(6)MOV AX , CX
(7)AND DS:[BP] , AX
(8)AND AX , DX
大连理工大学 15年 计算机原理 复习资料
寻址方式:
1. 立即寻址 MOV AX, 1234H ;1234H是立即数
2. 寄存器寻址 MOV AX, BX ;BX是寄存器
3. 直接寻址 MOV AX, [1234H] ;[1234H]是直接地址
4. 寄存器间接寻址 MOV AX, [BX] ;[BX]是间接地址
5. 基址寻址 MOV AX, [BX+100H] ;BX是基址寄存器
6. 变址寻址 MOV AX, [SI+100H] ;SI是变址寄存器 7. 基址加变址寻址 MOV AX, [BX+SI+100H] ;BX+SI基+变寄存器
存储器操作数的物理地址PA的计算:是将段基地址左移四位加上有效地址EA(偏移地址)得到的。 但是段寄存器和有效地址的配对是有规定的。
执行速度:寄存器操作数 > 立即数操作数>
上面涉及的是操作数的寻址
下面涉及的是指令寻址
同样的指令(如MOV)由于寻址方式和操作数的不同,机器码的长度也不同。
段间。
大连理工大学 15年 计算机原理 复习资料
2 、直接、间接、立即这 3 种寻址方式指令的执行速度有快到慢的排序是( C )
A .直接、立即、间接 B .直接、间接、立即 C .立即、直接、间接 D .立即、间接、直接 3 、指令系统中采用不同寻址方式的目的是( B )
A .实现存储程序和程序控制 B .缩短指令长度,扩大寻址空间,提高编程灵活性
C .可以直接访问外存 D .提高扩展操作码的可能并降低指令译码难度
4 、变址寻址方式中,操作数的有效地址等于( C ) 例:MOV AX,[SI+100H]
A .基址寄存器内容加上偏移量 B .堆栈指示器内容加上偏移量
C .变址寄存器内容加上偏移量 D .程序计数器内容加上偏移量
5 、计算机指令中一般包含哪些字段?分别是什么含义?
答:计算机指令中一般包含地址码和操作码两部分,地址码表示指令的操作对象,指出操作数的地址,操作码表示操作的性能及功能。
6.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8H]的源操作有效地址为( )。
A.5000H B.5008H C.23008H D.32008H
注:有效地址EA就是方括号中表达式的值。EA=BX+SI+8H=2000H+3000H+8H=5008H
7.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理地址为( )。 A.13000H B.23000H C.33000H D. 3000H
注:这是一个骗人的题!ES=2000H是蒙人的!
源操作数[BX],是寄存器间接寻址,BX与段地址DS默认组合。
物理地址PA=DS*10H + EA =10000H + 3000H = 13000H
8.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为( )。
A.20200H B.30200H C.50200H D.200H
注:这也是一个骗人的题!DS=2000H是蒙人的!
目的操作数ES:[SI]是带段超越的寄存器间接寻址,PA=ES*10H+EA=30000H+SI=30000H+200H=30200H
9.指令MOV MEM[BX],AX中的MEM是( )。
A.原码 B.反码 C.补码 D.移码
注:MEM是符号,它也对应着一个数值。计算机中所有数值默认以补码形式表示(第1章)
10.用来作为寄存器间接寻址的寄存器有( 4 )个。只能使用BX,BP,SI,DI
A.8 B.6 C.5 D.4
11.指令MOV [BX+SI],AL中的目的操作数使用( )段寄存器。
A.CS B.DS C.SS D.ES
注:[BX+SI]是基址+变址寻址,基址BX与段DS默认组合。
12.指令MOV BX,[BP+5]中的源操作数使用( )段寄存器。
A.CS B.DS C.SS D.ES
注:操作数地址在基址寄存器BX,BP中称为基址寻址;若还有位移量,则称为基址相对寻址。
[BP+5]是基址相对寻址,基址BX与段DS默认组合,基址BP与段SS默认组合。
13.段内间接寻址只改变( )中的内容。
A.CS B.IP C.CS和IP D.PSW
14.段间间接寻址只改变( )中的内容。
A.CS B.IP C.CS和IP D.PSW
15.指令JMP WORD PTR [BX]属于( )寻址。
A.段内直接 B.段内间接 C.段间直接 D.段间间接
16.指令MOV AX,[BX+SI+8]的源操作数属于( )寻址。
A.直接 B.寄存器相对 C.基址变址 D.基址变址相对
注:基址BX变址SI相对8,默认与段DS组合(是由BX决定的)
大连理工大学 15年 计算机原理 复习资料
17.两个整数补码9CH和7AH相加运算后,会产生( )。
A.无溢出且无进位 B.无溢出但有进位
A.74 B.74H C.4AH D.4A 注:压缩型BCD码就是每1位十进制数,对应4位二进制数。7对应0111B,4对应0100B,故结果为74H
10.十进制数字85所对应的非压缩型BCD码的形式是( )。
A.0085 B.0085H C.0805 D.0805H
注:非压缩型BCD码就是每1位十进制数,对应8位二进制数。8对应0000 1000B,5对应0000 0101B,故结果为0805H
20.压栈操作是( )位数的操作。每次压栈都是一个字!背
A.8 B.16 C.32 D.任意
1.在下列寻址方式中,用来访问内存的寻址方式有( )。
A.寄存器寻址 B.寄存器间接寻址 C.寄存器相对寻址 D.直接寻址
2.用来作为寄存器间接寻址的寄存器有( )。只有BX,BP,SI,DI共4个
A.AX B.BX C.BP D. CX
3.在下列指令中,源操作数使用DS段寄存器进行寄存器相对寻址的有( )。
A.MOV AX,[DI+4] B.MOV AX , ES:[SI+8]
C.MOV AX,[BP+4] D.MOV AX , [BX+4]
注:BX,SI,DI与段DS默认组合成物理地址,BP与段SS默认组合。
但是选项B,已经非默认地指定了段ES,所以B错误。正确答案为A,D
4.在下列指令中,源操作数的寻址方式是错误的有( )。
A.MOV AX,[DI+BX] B.MOV AX,[SI+DI]
C.MOV AX,[BP+BX] D.MOV AX,[DX]
注:
A是基+变,正确;
B是变+变,无此形式,错误!
C是基+基,无此形式,错误!
D 的源操作数寻址形式[DX],看似寄存器间接寻址!但是(内存单元的逻辑偏移地址由寄存器间接给出,只能使用BX、BP、SI、DI)
MOV AX,[SI]
MOV AX,[DI]
MOV AX,[BP]
MOV AX,[SX]这四种形式都是正确,但(基+基)和(变+变)形式是错误的!再有就是寄存器间接寻址,只能使用BX、BP、SI、DI。
填空题:
1.在一条指令中,立即数只能作你见过MOV 1234H,AX吗?
大连理工大学 15年 计算机原理 复习资料
2.8086/8088 CPU形成的内存物理地址有
3.指令“MOV AX,[BX+SI]”的源操作数在内存的BX默认与DS段组合
4.指令“MOV BX,[BP+DI]”的源操作数在内存的BP默认与SS段组合
5.指令“MOV AX,ES:[SI]”的源操作数在内存的本来SI和DI默认与DS段组合,但段超越了ES:[SI]
6.入栈指令使用的是这是固定的,背!
7.指令“ADD [BX+SI],AL”的目的操作数是 基址 +变址 寻址方式。基址BX +变址SI(看清楚是源还是目的)
8.指令“SUB BX,A[SI]”的源操作数是寻址方式。变址寄存器SI相对A,A是符号地址
9.指令“JMP DWORD PTR [BX]”属于寻址方式。
10.可作为寄存器间接寻址的寄存器有个。只能用BX,BP,SI,DI
判断对错题
1.ADD AL,BX ;错,两个操作数的类型不一致。AL是8位,BX是16位。
3.SUB
4.CMP
8.MOV
9.MOV
14.MOV
15.ADD
16.OUT
器。
,[SI] ,AL ,[DI+SI] ,200H AX, [BP+BX] AX,[CX] 400,AL ;错,双操作数不能同时是内存中的数据。 ;错,5是立即数,不能作目标地址,只能是源地址。 ;错,DI和SI不能同时使用在一种寻址方式中。同样地BX+BP也是错的 ;错,200H超出一个字节的范围,BL是8位的。 ;错,BP和BX不能同时使用。 ;错,CX不能作寄存器间接寻址。寄存器间接寻址只能用BX,BP,SI,DI共4个 ;错,OUT指令的地址超过255时,必使用DX寄存器作为间接寻址的寄存;MOV DX , 400 ;OUT DX , AL 这样就对了! 5 [BX] AL BL
正在阅读:
大工计算机原理-第3章 8086微处理器的指令系统(1)06-01
中心机房火灾应急预案04-15
2016专四成绩查询02-08
客车驾驶员岗位安全操作规程10-24
经营模拟学生实验指导书修订稿05-07
高考英语新题型 - 语法填空练习及答案01-04
创建solidworks工程图模板图文教程(群文件)08-08
lms算法毕业论文05-28
解读陶渊明的田园诗正文06-04
个人日程管理系统设计报告07-05
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 大工
- 微处理器
- 指令
- 原理
- 计算机
- 系统
- 8086