内存地址和内存内容的关系
就像你家的门牌号。比如门牌号是100。 人家就知道到门牌号100的地方去找你。 而内存就像你家的房子,是物理上存在 的,你住在你家的房子里
汇编——存储单元的地址和内容
存储单元地址 :8086系统中,为了标识 和存取每一个存储单元,给每个存储单 元规定一个编号,这就是存储单元地址
存储单元的内容 :一个存储单元中存放 的信息称为该存储单元的内容。 8086系统中一个存储单元可存放一个字 节数据。
程序加载到内存地址空间是一个笼统的概念, 意思就是你(可以认为是数据)住到你家(门牌号 为100的地方)了。而在物理上,数据是存放于 物理地址中的,就像你住在你家的房子里。
地址空间不是物理上存在的。只是对地址的描 述(就像门牌的概念)。数据是存在内存中的 。
汇编——存储单元的地址和内容
内存地址空间是一个抽象的概念。
理解内存地址和内存内容
汇编语言—理解8086内存地址空间 主讲人:王驰
汇编——存储单元的地址和内容
内存地址空间是一个抽象的概念。
就像你家的门牌号。比如门牌号是100。 人家就知道到门牌号100的地方去找你。 而内存就像你家的房子,是物理上存在 的,你住在你家的房子里
汇编——存储单元的地址和内容
汇编——存储单元的地址和内容
汇编——存储单元的地址和内容
>>段寄存器(CS、DS、SS、ES、FS、 GS) 存放段地址,确定一个段的的起始 地址. 用途各不相同: 代码段(CS):存放当前正在运行的程序 数据段(DS):存放当前运行程序所用的 数据 ,或串处理指令中的源操作数
汇编——存储单元的地址和内容
用jmp指令 jmp 1373:1100,然后用R指令 查看CPU状态,体会代码和数据
汇编——存储单元的地址和内容
这样 上图中第二个标注单元的地址为: 段地址为:00001111111111110000 偏移量(或偏移地址)为: 10 它的物理地址为: 段地址+偏移量 即:00001111111111110010
汇编——存储单元的地址和内容
汇编——存储单元的地址和内容
--逻辑地址 (2个16)是程序中使用的地 址,它由段基址和段内偏移值所组成, 段基址与段内偏移值都为16位的二进制 数。 段地址:段起始地址的高16位(DS) 偏移地址:段内相对于段起始地址的偏 移值(16位)(有效地址EA)
汇编——存储单元的地址和内容
思考:为什么8086CPU的地址线设计为 20位(或内存单元的物理地址为什么设 计成20位?)?如果设计成16位(和寄 存器的宽度一样),内存访问的地址表 达就简单了。请问设计者这样设计的优 点是?
可以扩大CPU的访存空间。 220=1024KB, 216=64KB
从图可看到 , 地址为 34560H 的存储单元 中的内容是34H;
而地址为 34561H 的 字节存储单元中的内 容是12H。
汇编——存储单元的地址和内容
8086CPU的地址线是20位的,存储器的 物理地址是20位,而8086CPU中的寄存 器都是16位的。 那么如何用16位寄存器来表达20位物理 地址信息?
汇编——存储单元的地址和内容
问题解决方法1:将存储器分成若干段, 对某一单元的地址用段地址和相对于段 地址的偏移量(偏移地址)综合表示。
这种方法类似于电影院里对座位的编号 ,这种分段表示可有效缩减地址的长度 。 Nhomakorabea
汇编——存储单元的地址和内容
汇编——存储单元的地址和内容
这样 上图中第一个标注单元的地址为: 段地址为:00000000000000000000 偏移量(或偏移地址)为: 01 它的物理地址为: 段地址+偏移量 即:000000000000000000001
汇编——存储单元的地址和内容
--物理地址 (1个20)也叫实际地址或绝对 地址,是CPU访问存储器时实际使用的地 址,为20位地址。
汇编——存储单元的地址和内容
小结: (1)在1M字节的存储器里,每一个单元都 有一个唯一的20位地址,称为该单元的物 理地址。CPU访问存储器时,必须先确 定要访问的存储单元的物理地址才能取 得(或存入)该单元的内容。
汇编——存储单元的地址和内容
(2)根据要求可把1M字节地址空间划成 若干逻辑段。每个逻辑段必须满足两个条 件:一是逻辑段的起始地址(简称段首址 )必须是16的倍数(即末尾4位是0);二 是逻辑段的最大长度为64K。
汇编——存储单元的地址和内容
(3)20位物理地址由16位段地址和16位 偏移地址组成。 段地址是每一段的起始地址,其低4位一 定是0,这样就可以规定段地址只取段起 始地址的高16位来表示。 偏移地址是指在段内相对于段起始地址 的偏移值。
堆栈段(SS):定义堆栈(后进先出)的 所在区域 附加段(ES):附加的数据区,或串处理 指令中的目的操作数
各段在存储器中的分配:由操作系统负 责负责,但需要时也可指定.
汇编——存储单元的地址和内容
汇编——存储单元的地址和内容
练习 用DEBUG在内存中输入命令A编程并逐条 运行,查看结果并截图,采用立即寻址方 式把数89D8H送到内存单元1373:1100中