1 / 34
文档名称:

寄存器的使用与寻址方式.ppt

格式:ppt   大小:865KB   页数:34页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

寄存器的使用与寻址方式.ppt

上传人:相惜 2021/1/30 文件大小:865 KB

下载得到文件列表

寄存器的使用与寻址方式.ppt

文档介绍

文档介绍:三、寄存器的使用与寻址方式
一、 CS+IP:指令寻址
DS+偏移地址:数据寻址
二、 几个常用指令
三、 寻址方式
1
整理课件
问题一: 寄存器和存储器有什么不同?




2
整理课件
问题二: 内存被划分成了一个一个的段,每一个段有一个段地址?
内存并没有分段,段的划分来自于CPU,由于8086CPU用“(段地址×16)+偏移地址=物理地址”的方式给出内存单元的物理地址,使得我们可以用分段的方式来管理内存。
3
整理课件
问题三: 8086 CPU寻址使用 段地址+偏移地址原因是什么?
8086 CPU具有以下几个方面特征:
1、运算器一次最多可以处理16位的数据。
2、寄存器的最大宽度为16位。
3、寄存器和运算器之间的通路是16位的。
4、8086有20位地址总线,可传送20位地址,寻址能力为1M。
5、8086内部为16位结构,它只能传送16位的地址,表现出的寻址能力却只有64K
4
整理课件
问题四: 如果给定一个段地址,仅通过变化偏移地址来访问内存,最多可以访问(定位)多少内存单元?
偏移地址为16位,
16 位地址的寻址能力为:2 = 64K,
所以一个段的长度最大为64K。
5
整理课件
问题五: 物理地址为:22345H,请写CPU访问该单元时可能使用的段地址和偏移地址?
物理地址 段地址 偏移地址
22345 2234 5
22345 2230 45
22345 2231 35
22345 2232 25
22345 2200 345
22345 2000 2345
22345 1F00 3345
…… …… ……
6
整理课件
问题六: CPU如果找到要执行指令在内存中的位置?
指示了CPU当前要读取指令的地址。
CS为代码段寄存器; IP为指令指针寄存器
从CS:IP指向内存单元读取指令,读取的指令进入指令缓冲器;
IP = IP + 所读取指令的长度,从而指向下一条指令;
执行指令。 转到步骤 (1),重复这个过程。
7
整理课件
问题七: 在DUBUG中如果让CPU执行内存中自己编写的程序?
用DUBUG的R命令修改CS和IP的值,使其指向自己程序的第一行指令。
修改CS:指向自己程序的段地址
修改IP :指向自己程序的第一行指 令的偏移地址
T :单步每行。
8
整理课件
问题八: 如果将数据123456H存放在内存地址为10000H空间中,数据是如何存放的?
56
34
12
10000
10001
10002
10003
10004
10005
10006
10007
(10000H)= 123456H
9
整理课件
问题九: 8086 CPU 寄存器共有多少个?名字是什么?
8086寄存器组:
数据寄存器:
指针及变址寄存器:SP、BP、SI、DI
段寄存器: CS、DS、SS、ES
控制寄存器: IP、FLAGS
AX
BX
CX
DX
AH AL
BH BL
CH CL
DH DL
高8位 低8位
10
整理课件