预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共20页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

参考书籍网站资源第2章8086/8088微处理器1、存储单元地址与内容3EH容量——地址的位数决定了可以编号的字节的个数,也就是内存储器的大小。 用20位二进制表示存储器地址,最小地址为00000H,最大地址为0FFFFFH,共有1M=220个不同的地址,最多可以连接1MB的存储器。 8086CPU有20位地址线,可以连接最多1MB=220B的内存储器.多字节数据占用多个连续的存储单元. 高位数据存放在高地址单元,低位数据存放在低地址单元。 用低地址表示该数据的地址.字数据: (00010H)=203EH例:若当前存储器内容如下所示,将1个字数据1E22H写入00012H单元。8086/8088系统有20位地址线,能表示220个不同地址(00000H~0FFFFFH),能访问1MB内存空间。 但8086/8088CPU中寄存器都为16位,如何存放20位地址?解决方案:内存分段。段是内存中用来存放某一类信息的,最大长度为64KB的内存储区域;每个段内地址是线性增长的。段的起始地址必须是低4位为0的地址:00000H、00010H、……FFFE0H、FFFF0H 段地址—每个段起始地址的高16位值,存放在专门的段寄存器中。 偏移地址—在段内相对于段起始地址的16位偏移值,访问一个内存单元只需要给出其偏移地址即可。 物理地址—每个存储单元的唯一的20位地址 逻辑地址—段地址:偏移地址 8086/8088CPU中最多可以有多少个不同的段地址?每个段最多可以有多少个不同的偏移地址?如何由逻辑地址求物理地址? 地址加法器用来完成逻辑地址向物理地址的变换。 物理地址=16D×段地址+偏移地址逻辑地址与物理地址是否1对1的对应关系? 每个逻辑地址对应于一个唯一的物理地址;每个物理地址可对应多个逻辑地址. 如:3017H:000AH=3017AH 3015H:002AH=3017AH 3010H:007AH=3017AH若8086某存储单元物理地址为12345H,则与它对应的逻辑地址中,偏移地址及段地址的最大值和最小值分别为多少? 偏移地址最小值:0005H段地址最大值:1234H 偏移地址最大值:FFF5H段地址最小值:0235H思考问题5:16位寄存器,存放段地址。 代码段寄存器CS(codesegment) 数据段寄存器DS(datasegment) 堆栈段寄存器SS(stacksegment) 附加段寄存器ES(extrasegment)将程序的各部分定义在相应段中各段在存储器中的分配是由操作系统负责的。每个段最多可占64K字节。 各段可邻接、部分重叠、重叠或不邻接。