77范文网 - 专业文章范例文档资料分享平台

8086CPU指令系统

来源:网络收集 时间:2019-04-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第三章 8086CPU指令系统

本章重点: 1.寻址方式:

立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,基址寻址,变址寻址,基址加变址寻址,串寻址,端口寻址,隐含寻址。

2.8086指令系统:

数据传送指令,算术运算指令,移位指令,程序控制指令,串操作指令,处理器控制指令,I/O指令,中断指令。 学习目标:

1.掌握寻址方式;

2.掌握常用指令的功能和用法。 难点:

区别指令的正确与错误。

§1.寻址方式

指令在存储器中是顺序存放的,而操作数的存放没有规律,因此操作数的寻址方法相对比较复杂。 一、 指令的基本格式 1.组成:

一条指令包括操作码和操作数两部分。 操作数:源操作数,目标操作数。 2.寻址方式:

寻找指令中操作数的方法。 3.操作数类型:(8086系统)

寄存器操作数,存储器操作数,立即数(在指令代码中)和I/O端口操作数。 二、 寻址方式 1.立即数寻址 ⑴方式:

指令中所需的操作数直接包含在指令代码中(即由指令直接提供),立即数可以是8位,也可以是16位。

例:MOV AL,80H ;将十六进制数80H送入AL

MOV AX,1090H;将1090H送AX:90H→AL ,10H→AH ⑵说明:

? 采用立即数寻址方式的指令主要用来对寄存器赋值。因为操作数可以从

指令中直接取得,不需要运行总线周期,所以,其显著特点就是速度快。 ? 规定:立即数只能是整数,不能是小数,变量或者其他类型的数据;另

外,立即数只能作为源操作数。 2.寄存器寻址 ⑴方式:

如果操作数就在CPU的内部寄存器中,那么寄存器名可在指令中指出,这种寻址方式就叫寄存器寻址。

对16位操作数来说,寄存器可以为AX,BX,CX,DX,SI,DI,SP或BP,而对8位操作数来说寄存器可以为AH??DH,AL??DL。

例: INC CX ;将CX内容加1

ROL AH, 1 ;将AH中的内容循环左移1位。 ⑵说明:

? 不需要使用总线周期,因此,执行速度快。

? 一条指令中,可以对源操作数采用寄存器寻址方式,也可对目的操作数

采用寄存器寻址方式,或两者都用。 ※以下各种寻址方式,操作数都在存储器中。 3.直接寻址。 ⑴方式:

数据总是在存储器中,存储单元的有效地址由指令直接指出。

例: MOV AX,[1070H];将DS段的偏移量1070H、1071H的内容装入AX。

即,若DS=2000H,则将21070H和21071H两单元的内容取出送AX。 ⑵说明:

? 直接寻址是对存储器进行访问时可采用的最简单的方式,且可用符号地

址代替数值地址。

? 若要对其它段寄存器所指出的存储区进行直接寻址,则必须指出段寄存

器名。

例:MOV BX ,CS:[3000H];

设CS=5100H,则取54000H和54001H两单元内容送BX。 4.寄存器间接寻址 ⑴方式:

将操作数所在的存储单元的偏移地址放在指令给出的寄存器中,而不像直接寻址那样直接给出。

例: MOV AX,[SI]; AX←DS:[SI] MOV [BX],AX; DS:[BX]←AX ⑵说明:

? 可用于这种寻址方式的寄存器只能是SI、DI、BP和BX。 ? SI,DI,BX约定的段寄存器是DS;而BP约定的段寄存器是SS。 5.基址寻址: ⑴方式:

操作数的有效地址偏移量是基址寄存器BX或基址指针BP的内容与指令给

定的位移量(8位或16位)之和。

例: MOV AX,ARRAY[BX] 等价 MOV AX,[ARRAY+BX] 将DS:[BX]+ARRAY 的内容→AX ⑵说明:

? BX约定的段寄存器为DS,BP约定SS,可使用段跨越前缀。 ? 物理地址=16×(DS)+(BX)+位移量(8或16位)

或 16×(SS)+(BP)+位移量(8或16位)

6.变址寻址

操作数的有效地址是变址寄存器SI、DI的内容与指令给定的位移量(8位或16位)之和。段寄存器约定在DS中,允许段超越。

例:MOV [DI+12H],AX; DS:[DI+12H]←AX MOV BX,SS:[DI+45H]; BX←SS:[DI+45H] 7.基址变址寻址。 ⑴方式:

操作数的有效地址是指令给定的位移量和一个基址寄存器(BX或BP)及一个变址寄存器(SI或DI)的内容之和。段寄存器约定由基址寄存器决定,BX约定DS,BP约定SS,允许段超越。

例:

MOV AX, ARRAY[BX] [SI];

等价 MOV AX, [BX+SI+ARRAY]; 即:AX←DS:[BX+SI+ARRAY] ⑵说明:

基址寄存器BX,BP不能同时出现在一个方括号内;变址寄存器SI,DI亦如此。

8.串操作寻址方式:

用于串操作指令,其操作数虽然也在寄存器中,但不使用上述寻址方式,而是隐含地运用,SI指出源串偏移地址,DI指出目的串偏移地址。指令执行后,SI和DI的内容根据方向标志DF的值进行增减,DF=0增,DF=1减。若串操作按字节进行,增/减“1”;若串操作按字进行,增/减“2”。

? 约定源串段地址在DS中,目的串段地址在ES中,不允许段超越。即

SI→DS DI→ES

例:MOVSB ;字节传送:ES:[DI]←DS:[SI]。传送完后,SI±1,DI±1。

9.I/O端口寻址:操作数在外设端口中。 ⑴直接端口寻址:

指令中直接给出的8位常数是外设端口地址。(0~255) 例:IN AL,34H;AL←[34H] OUT 34H,AL;[34H]←AL

⑵间接端口寻址:指令中外设端口的16位地址在DX中。 例:MOV DX, 280H

IN AX,DX; AX←[280H]

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库8086CPU指令系统在线全文阅读。

8086CPU指令系统.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/621092.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: