存储器知识点小结.doc

上传人:李司机 文档编号:1180530 上传时间:2022-07-14 格式:DOC 页数:7 大小:311KB
返回 下载 相关 举报
存储器知识点小结.doc_第1页
第1页 / 共7页
存储器知识点小结.doc_第2页
第2页 / 共7页
存储器知识点小结.doc_第3页
第3页 / 共7页
存储器知识点小结.doc_第4页
第4页 / 共7页
存储器知识点小结.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《存储器知识点小结.doc》由会员分享,可在线阅读,更多相关《存储器知识点小结.doc(7页珍藏版)》请在三一办公上搜索。

1、CPU工作的实质即为不断从存中取指令并执行指令的过程。一、8086CPU构成CPU的工作:取指令和执行指令1 CPU部两大功能部件:总线接口部件BIU和执行部件EU2部件并行工作提高了CPU的工作效率重点:理解2个独立功能部件的分工和协同配合关系。理解BIU地址加法器的作用,理解指令队列的作用。2 掌握CPU部存放器的作用包括:通用存放器A*,B*,C*,D*,BP,SP,SI,DI段存放器CS,DS,SS,ES指令指针存放器IP标志存放器FLAG二、存储器的根底知识1物理地址8086的存储器是以字节(即每个单元存放8位二进制数为单位组织的。8086CPU具有20条地址总线,所以可访问的存储器

2、地址空间容量为220即字节表示为1MB。每个单元对应一个唯一的20位地址,对于1MB存储器,其地址围用16进制表示为00000H0FFFFFH,如图1所示。地址高端地址低端图1 1MB存储器地址表示物理地址:存储器的每个单元都有一个唯一的20位地址,将其称为物理地址。2字节地址与字地址存储器两个连续的字节,定义为一个字,一个字中的每个字节,都有一个字节地址,每个字的低字节低8位存放在低地址中,高字节高8位存放在高地址中。字的地址指低字节的地址。各位的编号方法是最低位为位0,一个字节中,最高位编号为位7;一个字中最高位的编号为位15。字数据在存储器中存放的格式如图2所示。地址低端地址高端图2 字

3、数据在存储器中的存放单元地址内容3单元地址与容图3 如图3,地址是00100H的字节单元的容为27H,表示为00100H= 27H。图3中字数据3427H存放在地址是00100H和00101H的两个字节单元中,其中低字节27H在低地址的字节单元00100H中,高字节34H在高地址的字节单元00101H中,字数据3427H的地址是低地址00100H。地址是00100H的字单元的容为3427H,表示为00100H= 3427H可见一个地址既可作字节单元的地址,又可作字单元的地址,视使用情况而定。总结:字节单元:00100H=27H字单元:00100H=3427H设存放器DS=0000H,用MOV指

4、令访问字节单元:MOV AL,0100H用MOV指令访问字单元: MOV A*,0100H三、存储器的分段1 为什么要分段8086CPU有20位地址总线,可寻址的最大存空间达1M字节,地址围为00000H-0FFFFFH。存中每个字节单元有唯一的20位物理地址,CPU存取存中的程序和数据必须使用20位物理地址。问题:8086 CPU访问1MB空间的存必须有20位地址,而其部的存放器均为16位的,则在传输地址时一次只能传输16位地址,即只能访问64K字节地址空间。8086 CPU应如何提供20位地址,以寻址1MB存.2如何分段为了使8086 CPU能访问到1MB存空间中任何一个单元,8086巧妙

5、地采用了地址分段方法即将1MB空间分成假设干个逻辑段,从而将寻址围扩大到了1MB。分段的规则:1为了能在1MB空间进展全围寻址,即可访问到1MB存储器的任何一个存储单元,把lMB存储器分成假设干段(segment),每一段最大为64KB。2在分段时,要求段起始单元的20位物理地址的低4位全为0即是16的整数倍,写成十六进制,最后一位应是0,即*0H*为任一个十六进制数码。图4 分段示意图分析:既然段起始地址的低4位为零,则只需将段起始地址的高16位保存到CPU部的存放器中保存段起始地址的存放器称之为段存放器3有关存地址的概念段基址:将段起始地址的高16位称为段基址。偏移量:段各存储单元相对段的

6、起始单元都有一个距离,称为段偏移量,又称偏移地址或有效地址EA。因段的大小不超过64KB,所以段任何一个单元距离段首的偏移量均在0000H-FFFFH之间,即偏移量可以用一个16位二进制数表示。总结:段基址决定了一个段在存的开场位置即段首地址,偏移地址描述了该单元与段首的距离。可见,由段基址与偏移地址可描述出一个单元在存的空间位置。例如:一个单元所在段的段基址为1234H,该单元与段首的距离为2,该单元在存的位置表示如图5。地址低端逻辑地址表示:1234H:0000H12340H-段首物理地址表示该单元所在的段基址为1234H,它距离段首偏移2个单元逻辑地址表示:1234H:0002H地址高端

7、图5 存单元的物理地址与逻辑地址表示把1MB的存贮空间分成假设干个逻辑段以后,对一个段的任意存贮单元,都可以用两局部地址来描述,一局部地址为段基址,另一局部为段偏移地址(有效地址EA),段基址和段偏移地址都是16位二进制数,常用4位十六进制数表示。逻辑地址:使用段基址:偏移地址表示存单元的地址形式称为逻辑地址。上图中单元的地址用逻辑地址表示为:1234H:0002H 4物理地址的形成在整个1M地址空间中,存储单元的物理地址等于段起始地址加上段偏移。*存储单元的逻辑地址,该单元的物理地址PA的计算方法为:物理地址=段基址*10H+段偏移地址。8086CPU 的总线接口部件BIU中设置了地址加法器

8、,它用来完成物理地址的计算。图6 物理地址的形成例1:*单元的逻辑地址为1234H:1000H,则该存储单元的物理地址为:物理地址PA=段地址*10H+EA=1234H* 10H+1000H=12340H+1000H=13340H例2:物理地址为00020H单元,其逻辑地址可以有:0000H:0020H和0001H:0010H可见,一个单元的物理地址是唯一的,逻辑地址确有多个。5信息的分段存储与段存放器的关系用8086汇编语言编写程序时,要把程序中的不同信息安排在不同的段。而程序中的信息包括:程序代码信息;数据信息;堆栈信息。其中,代码信息存放在代码段,其地址由CS:IP提供。堆栈信息存放在堆

9、栈段,其地址由SS:SP提供。数据信息,通常情况下,存放在数据段段基址由DS提供,当然也可以存放在附加数据段段地址由ES提供,其段偏移地址依据寻址方式的不同来求得。图 7 信息的分段存储与段存放器的关系其中段基址由段存放器提供:CS 提供当前代码程序段的段基址;DS 提供当前数据段的段基址;SS 提供当前堆栈段的段基址;ES 提供当前附加数据段的段基址;一个存储单元用逻辑地址表示后,CPU 访问该单元时应提供两局部地址:段基址和段偏移地址。CPU访问存时,根据对应的操作,形成段基址和偏移地址,具体来说:u 当CPU 从存取指令时,由存放器CS提供代码段的段基址,由指令指针存放器IP提供指令所在单元的偏移地址。在取指令时,CPU会自动引用代码段存放器CS,再加上由IP所给出的16位段偏移,得到要取指令的物理地址。u 当进展堆栈操作时,由存放器SS提供堆栈段的段基址,由存放器SP提供堆栈段的段偏移地址。当涉及堆栈操作时,CPU会自动引用堆栈段存放器SS,再加上由SP所给出的16位段偏移,得到堆栈操作所需的物理地址。u 当CPU 对存储器进展数据读/写操作时,可由存放器B*,SI,DI,BP以*种寻址方式向存储器提供段偏移地址。当段偏移涉及BP存放器时,缺省引用的段存放器为堆栈段存放器SS。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号